Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

Screenshot dla gracza i admina


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
10 odpowiedzi w tym temacie

#1 bossik

    Życzliwy

  • Użytkownik

Reputacja: 8
Nowy

  • Postów:30
  • GG:
  • Lokalizacja:C: /
Offline

Napisano 10.10.2012 17:03

Od razu piszę szukałem chwilę w bazie tematów i nie zauważyłem nic interesującego, chodzi mi o pluginek, który robi ss i zapisuje je na komputerze gracza oraz admina banującego.

Nie wiem czy jest coś takiego, ale wydaje mi się, że widziałem gdzieś taki plugin.

Z góry dzięki za pomoc.
  • +
  • -
  • 0

#2 sNH.

    Czy MisieQ ukradł ciasteczko?

  • Power User

Reputacja: 299
Wszechwidzący

  • Postów:1 070
  • Steam:steam
  • Imię:Bartek
  • Lokalizacja:Ełk
Offline

Napisano 10.10.2012 17:19

Nie wiem czy coś takiego istnieje, ale można byłoby pobrać pod id gracza, id admina -> może by zadzialało.
  • +
  • -
  • 0

#3 bossik

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 8
Nowy

  • Postów:30
  • GG:
  • Lokalizacja:C: /
Offline

Napisano 10.10.2012 17:44

Nie wiem czy coś takiego istnieje, ale można byłoby pobrać pod id gracza, id admina -> może by zadzialało.


Masz może coś takiego? Skąd pobrać?
  • +
  • -
  • 0

#4 sNH.

    Czy MisieQ ukradł ciasteczko?

  • Power User

Reputacja: 299
Wszechwidzący

  • Postów:1 070
  • Steam:steam
  • Imię:Bartek
  • Lokalizacja:Ełk
Offline

Napisano 10.10.2012 18:00

Daj przykładowy plugin ssów który używasz.
  • +
  • -
  • 0

#5 bossik

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 8
Nowy

  • Postów:30
  • GG:
  • Lokalizacja:C: /
Offline

Napisano 10.10.2012 18:19

Obecnie tego z zapisem na SQL

#include <amxmodx>
#include <amxmisc>

#define SQL_ZAPIS

#define TASK_SCREEN 56323

enum _:cvary { HOST, USER, PASS, DBNAME, MAXSS, INTERVAL, SITE, BAN, BANTIME, BANREASON }
enum { BMP, TGA }


new const menu_ss[][] = {
{ 3, BMP }, { 5, BMP }, // Ilosc, Typ
{ 3, TGA }, { 5, TGA }
};

new const menu_sname[][]  = { "BMP", "TGA" };

new const tag[]  = "[USS]";
new const name[]  = "Ultimate ScreenShot";

new gCvars[cvary];
new gScreens[33];
new gScreened[33];

new g_SyncHud;

#if defined SQL_ZAPIS
#include <sqlx>

new gMapa[33];
new gNazwa[101];

new Handle: g_SqlTuple;

public SqlInit() {
new t[4][33];

get_pcvar_string(gCvars[HOST],  t[HOST], 32);
get_pcvar_string(gCvars[USER],  t[USER], 32);
get_pcvar_string(gCvars[PASS],  t[PASS], 32);
get_pcvar_string(gCvars[DBNAME],  t[DBNAME], 32);

g_SqlTuple = SQL_MakeDbTuple(t[HOST], t[USER], t[PASS], t[DBNAME]);

if(g_SqlTuple == Empty_Handle)
set_fail_state("Nie mozna utworzyc uchwytu do polaczenia");

new iErr, szError[32];
new Handle:link = SQL_Connect(g_SqlTuple, iErr, szError, 31);
if(link == Empty_Handle) {
log_amx("Error (%d): %s", iErr, szError);
set_fail_state("Brak polaczenia z baza danych");
}

new Handle:query;
query = SQL_PrepareQuery(link,
"CREATE TABLE IF NOT EXISTS `screeny` ( \
`id` int(11) NOT NULL auto_increment, \
`uname` varchar(32) NOT NULL, \
`aname` varchar(32) NOT NULL, \
`uip` varchar(20) NOT NULL, \
`usid` varchar(32) NOT NULL, \
`map` varchar(32) NOT NULL, \
`time` int(15) NOT NULL, \
`type` int(1) NOT NULL, \
`amount` int(3) NOT NULL, \
`server` varchar(100) NOT NULL, \
PRIMARY KEY  (`id`) \
)");

SQL_Execute(query);
SQL_FreeHandle(query);
}

public Query(failstate, Handle:query, error[]) {
if(failstate != TQUERY_SUCCESS) {
log_amx("SQL Insert error: %s", error);
return;
}
}
#endif

public plugin_init() {
register_plugin(name, "1.1", "byCZEK");

gCvars[HOST]  = register_cvar("ss_hostname", "");
gCvars[USER]  = register_cvar("ss_username", "");
gCvars[PASS]  = register_cvar("ss_password", "");
gCvars[DBNAME]  = register_cvar("ss_database", "");
gCvars[MAXSS] = register_cvar("ss_mscreens", "10");
gCvars[INTERVAL]  = register_cvar("ss_interval", "1.0");
gCvars[SITE] = register_cvar("ss_sitemap", "http://amxx.pl");
gCvars[BAN] = register_cvar("ss_banplayer", "1");
gCvars[BANTIME] = register_cvar("ss_bantime", "0");
gCvars[BANREASON] = register_cvar("ss_banreason", "Wrzuc screeny na forum");

register_concmd("amx_ss",  "ZrobScreena",  ADMIN_BAN, "<authid, nick or #userid> [screens] [type 0/1]");
register_concmd("amx_screen",  "ZrobScreena",  ADMIN_BAN, "<authid, nick or #userid> [screens] [type 0/1]");
register_concmd("amx_screenm",  "MenuScreenow", ADMIN_BAN, " - pokazuje menu screenow");

g_SyncHud = CreateHudSyncObj();

set_task(0.1, "Init"); 
}

public Init() {
#if defined SQL_ZAPIS
get_mapname(gMapa, 32);
get_user_name(0, gNazwa, 100);

SqlInit();
#endif

AddMenuItem("ScreenShot", "amx_screenm", ADMIN_BAN, name);
}

public client_putinserver(id) {
gScreens[id] = 0;
}

public ZrobScreena(id, level, cid) {
if(!cmd_access(id, level, cid, 2)) {
return PLUGIN_HANDLED;
}

new t[3][33], pid;

read_argv(1, t[0], 32);
read_argv(2, t[1], 3);
read_argv(3, t[2], 3);

new Screens  = str_to_num(t[1]);
new Type = str_to_num(t[2]);
new MScreens = get_pcvar_num(gCvars[MAXSS]);

if(!Screens) Screens = 5;

if(Screens > MScreens) {
console_print(id, "%s Nie mozesz zrobic tylu screenow.", tag);
return PLUGIN_HANDLED;
}

pid = cmd_target(id, t[0]);

if(!pid) 
return PLUGIN_HANDLED;

new dane[4];
new Float: Interval = get_pcvar_float(gCvars[INTERVAL]);

dane[0] = id;
dane[1] = pid;
dane[2] = Type;
dane[3] = Screens;

gScreens[pid] = Screens;

set_task(Interval, "ZrobScreena_", TASK_SCREEN + pid, dane, 4, "a", Screens);

#if defined SQL_ZAPIS
new z[4][33], buffer[512];
get_user_name(id,  z[0], 32);
get_user_name(pid,  z[1], 32);
get_user_ip(pid,  z[2], 32, 1);
get_user_authid(pid,  z[3], 32);

replace_all(z[0], 32, "'", "\'");
replace_all(z[0], 32, "`", "\`");

replace_all(z[1], 32, "'", "\'");
replace_all(z[1], 32, "`", "\`");

formatex(buffer, charsmax(buffer), "INSERT INTO `screeny` VALUES (NULL, '%s', '%s', '%s', '%s', '%s', %d, %d, %d, '%s');", z[1], z[0], z[2], z[3], gMapa, get_systime(), Type, Screens, gNazwa); 
SQL_ThreadQuery(g_SqlTuple, "Query", buffer); 
#endif

return PLUGIN_HANDLED;
}

public ZrobScreena_(dane[4]) {
new id  = dane[0];
new pid  = dane[1];
new tid  = dane[2];

new t[6][33];

get_user_name(id, t[0], 32);
get_user_name(pid, t[1], 32);
get_user_ip(pid, t[2], 20, 1);

get_time("%m/%d/%Y - %H:%M:%S", t[3], 31);

set_hudmessage(0, 255, 0, -1.0, 0.3, 0, 0.25, 1.0, 0.0, 0.0, 4);
ShowSyncHudMsg(pid, g_SyncHud, "** %s **^n%s", t[1], t[3]);

client_print(0, print_chat, "%s Admin: %s zrobil screen graczowi: %s (%s) %s %s", tag, t[0], t[1], t[2], t[3], menu_sname[tid]); 

client_cmd(pid, tid ? "screenshot" : "snapshot");

if(get_pcvar_num(gCvars[BAN]) && !--gScreens[pid]) {
new czas = get_pcvar_num(gCvars[BANTIME]);

get_pcvar_string(gCvars[BANREASON],  t[4], 32);
get_pcvar_string(gCvars[SITE],  t[5], 32);

console_print(pid, "%s ==========================================", tag);
console_print(pid, "%s Admin %s zrobil Ci screeny", tag, t[0]);
console_print(pid, "%s Ilosc: %d", tag, dane[3]);
console_print(pid, "%s Typ: %s", tag, menu_sname[tid]);
console_print(pid, "%s Umiesc screeny na: %s", tag, t[5]);
console_print(pid, "%s Pozdro od autora (byCZEK)", tag);
console_print(pid, "%s ==========================================", tag);

client_cmd(id, "amx_ban %d #%d ^"%s^"", czas, get_user_userid(pid), t[4]);
}
}

public MenuScreenow(id, level, cid) {
if(!cmd_access(id, level, cid, 1)) {
return PLUGIN_HANDLED;
}

new players[32], name[33], temp[2][128], num, pl;
get_players(players, num);

new m = menu_create("Lista Graczy", "MenuScreenow_");

for(new i = 0; i < num; i++) {
pl = players[i];

get_user_name(pl, name, 32);
num_to_str(pl, temp[0], 2);
formatex(temp[1], 127, "%s%s", name, (get_user_flags(pl) & ADMIN_KICK) ? "\r *" : "");
menu_additem(m, temp[1], temp[0], _, menu_makecallback("MenuScreenow_c"));   
}

menu_setprop(m, MPROP_EXIT, MEXIT_ALL);
menu_display(id, m, 0);
return PLUGIN_HANDLED;
}

public MenuScreenow_(id, m, i) {
if(i == MENU_EXIT) {
menu_destroy(m);
return PLUGIN_CONTINUE;
}

new data[6], iName[64], access, callback;
menu_item_getinfo(m, i, access, data,5, iName, 63, callback);

gScreened[id] = get_user_userid(str_to_num(data));

new me = menu_create("Ilosc screenow", "MenuScreenow__");

for(new j = 0; j < sizeof(menu_ss); j++) {
formatex(iName, 63, "%d \y%s", menu_ss[j][0], menu_sname[menu_ss[j][1]]);
menu_additem(me, iName);
}


menu_display(id, me, 0);
return PLUGIN_CONTINUE;
}

public MenuScreenow_c(id, m, i) {
new data[6], iName[64], access, callback;
menu_item_getinfo(m, i, access, data,5, iName, 63, callback);

new pl = str_to_num(data);

if(get_user_flags(pl) & ADMIN_IMMUNITY || pl == id)
return ITEM_DISABLED;

return ITEM_ENABLED;
}

public MenuScreenow__(id, m, i) {
new screens  = menu_ss[i][0];
new type = menu_ss[i][1];

client_cmd(id, "amx_ss #%d %d %d", gScreened[id], screens, type);
}

  • +
  • -
  • 0

#6 bossik

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 8
Nowy

  • Postów:30
  • GG:
  • Lokalizacja:C: /
Offline

Napisano 12.10.2012 00:32

Używam również tego zwykłego z amxbans'em gm 1.6

Spoiler


Używam również tego zwykłego z amxbans'em gm 1.6

Spoiler

  • +
  • -
  • 0

#7 bossik

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 8
Nowy

  • Postów:30
  • GG:
  • Lokalizacja:C: /
Offline

Napisano 15.10.2012 15:29

odświeżam

Użytkownik bossik edytował ten post 15.10.2012 15:32

  • +
  • -
  • 0

#8 Chinczyk

    Pomocny

  • Użytkownik

Reputacja: 12
Początkujący

  • Postów:70
  • Imię:Sebastian
  • Lokalizacja:Łódzkie
Offline

Napisano 16.10.2012 10:14

nie ma pluginu ktory robi ss graczowi i zapisuje je u gracza oraz admina...
  • +
  • -
  • 0

#9 Luffy

    Zaawansowany

  • Użytkownik

Reputacja: 13
Początkujący

  • Postów:100
  • Steam:steam
  • Imię:Michał
  • Lokalizacja:Poznań
Offline

Napisano 18.10.2012 19:53

nie ma pluginu ktory robi ss graczowi i zapisuje je u gracza oraz admina...

Nie prawda był kiedyś taki tylko nie pamiętam nazwy.
Lecz nie wiem po co ci ss'y także u admina ?

Użytkownik Luffy edytował ten post 18.10.2012 19:53

  • +
  • -
  • 0

#10 luki3507

    Zaawansowany

  • Użytkownik

Reputacja: 19
Początkujący

  • Postów:120
  • Lokalizacja:częstochowa
Offline

Napisano 18.10.2012 20:38

Nie prawda był kiedyś taki tylko nie pamiętam nazwy.
Lecz nie wiem po co ci ss'y także u admina ?

Jeśli dobrze zrozumiałem to chodzi mu o to że zrobię Ci ss'y a mam je u siebie na komputerze.
  • +
  • -
  • 0

#11 Luffy

    Zaawansowany

  • Użytkownik

Reputacja: 13
Początkujący

  • Postów:100
  • Steam:steam
  • Imię:Michał
  • Lokalizacja:Poznań
Offline

Napisano 19.10.2012 08:45

Nie prawda był kiedyś taki tylko nie pamiętam nazwy.
Lecz nie wiem po co ci ss'y także u admina ?

Jeśli dobrze zrozumiałem to chodzi mu o to że zrobię Ci ss'y a mam je u siebie na komputerze.

Od razu piszę szukałem chwilę w bazie tematów i nie zauważyłem nic interesującego, chodzi mi o pluginek, który robi ss i zapisuje je na komputerze gracza oraz admina banującego.

Nie wiem czy jest coś takiego, ale wydaje mi się, że widziałem gdzieś taki plugin.

Z góry dzięki za pomoc.


Czytaj :)
  • +
  • -
  • 0




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych