Ma poate ajuta cineva cu el?
- | Afiseaza codul
/* * *************************************** * * * LinkCS SS v2.0 * * Plugin by x * * http://www.LinkCS.ro * * * *************************************** * * IMPORTANT: Daca nu precizezi un motiv dupa nume nu poti face poze ! * IMPORTANT: Daca jucatorul are imunitate trebuie sa setezi imunitatea OFF ! * * * * Pluginul ii face 3 poze: 1 scor (tab) si 2 normale ! * Dupa care il muta automat spectator si ii arata un motd cu diferite informatii ! * * ** Comanda consola: amx_ss <nume> <motiv> sau admin_ss <nume> <motiv> * * ** Comanda chat: /ss <nume> <motiv> * * * * IMPORTANT: Daca nu precizezi un motiv dupa nume nu poti face poze ! * IMPORTANT: Daca jucatorul are imunitate trebuie sa setezi imunitatea OFF ! * */ #include <amxmodx> #include <hamsandwich> #include <cstrike> new SSURL; new const barutzaLinkCS[] = "/"; new LinkCScomm[][] = { "/ss" }; new LinkCSacc[] = { ADMIN_KICK }; public plugin_init() { register_plugin("LinkCS SS", "2.0", "x") SSURL = register_cvar("amx_address", "www.LinkCS.ro") register_concmd("amx_ss", "cmdLinkCS", ADMIN_KICK, "<nume> <motiv> - faci 3 poze unui jucator si-l pui automat spectator") register_concmd("admin_ss", "cmdLinkCS", ADMIN_KICK, "<nume> <motiv> - faci 3 poze unui jucator si-l pui automat spectator") register_clcmd ("say", "hook_say") } public hook_say(index) { static arg[192], command2[192]; read_args(arg, charsmax (arg)); if (!arg[0]) return PLUGIN_CONTINUE; remove_quotes(arg[0]); for (new x; x < sizeof LinkCScomm; x++) { if(equal(arg, LinkCScomm[x], strlen(LinkCScomm[x]))) { if(get_user_flags(index) & LinkCSacc[x]) { replace(arg, charsmax(arg), barutzaLinkCS, ""); formatex(command2, charsmax(command2), "amx_%s", arg); client_cmd(index, command2); } break; } } return PLUGIN_CONTINUE; } public cmdLinkCS(id, level, cid) { if (!cmd_access(id, level, cid, 2)) return PLUGIN_HANDLED static arg[32], reason[64] read_argv(1, arg, 31) read_argv(2, reason, 63) new LinkCS = cmd_target(id, arg, 9) if (!LinkCS) return PLUGIN_HANDLED if(!is_user_alive(id)) return PLUGIN_HANDLED static Admin[32], name[32] new usrip[32], hostname[64], mapname[32], address[64], time[32] get_user_name(LinkCS, name, 31) get_user_name(id, Admin, 31) get_user_ip(LinkCS, usrip, 31, 1) get_cvar_string("hostname", hostname, 63) get_pcvar_string(SSURL, address, charsmax(address)) get_mapname(mapname, 31) get_time("%m/%d/%Y - %H:%M:%S", time, 31) new szString[1024], iLen if (reason[0]) { client_print(0, print_chat, "Command: ADMIN %s ii face 3 poze lui %s", Admin, name) client_print(0, print_chat, "SS Info: Jucatorul %s pus automat SPECTATOR", name) client_cmd(LinkCS,"snapshotwait;snapshot") client_cmd(LinkCS,"togglescores;wait;snapshot") user_silentkill(LinkCS) cs_set_user_team(LinkCS, CS_TEAM_SPECTATOR) iLen = formatex(szString, sizeof szString - 1, "<body scroll=^"yes^" bgcolor=#000000><font color=#7b68ee><pre>[align=center]"); iLen += formatex(szString[iLen], charsmax(szString) - iLen, "Admin: %s ti-a facut 3 poze ", Admin); iLen += formatex(szString[iLen], charsmax(szString) - iLen, "Nickul tau: %s ", name); iLen += formatex(szString[iLen], charsmax(szString) - iLen, "IP-ul tau: %s ", usrip); iLen += formatex(szString[iLen], charsmax(szString) - iLen, "Data & Ora: %s ", time); iLen += formatex(szString[iLen], charsmax(szString) - iLen, "Motiv poze: %s ", reason); iLen += formatex(szString[iLen], charsmax(szString) - iLen, "Nume server: %s ", hostname); iLen += formatex(szString[iLen], charsmax(szString) - iLen, "Harta jucata: %s ", mapname); iLen += formatex(szString[iLen], charsmax(szString) - iLen, "Poze facute: 3 "); iLen += formatex(szString[iLen], charsmax(szString) - iLen, "Pozele le postezi pe: %s", address); show_motd(LinkCS, szString, "Informatii Poze"); } else { console_print(id, "* Ai nevoie de un motiv dupa nume, exemplu: 'amx_ss LinkCS.ro suspect'") console_print(id, "* Deci.. 'suspect' va fi motivul! De asemenea poti folosi si comanda 'admin_ss' in consola sau '/ss' in chat !") client_print(id, print_chat, "* Ai nevoie de un motiv dupa nume, exemplu: '/ss LinkCS.ro wallhack'") client_print(id, print_chat, "* Deci.. 'wallhack' va fi motivul! De asemenea poti folosi si in consola: 'amx_ss' sau 'admin_ss' !") } return PLUGIN_HANDLED } stock is_user_admin(id) { return (get_user_flags(id) > 0 && !(get_user_flags(id) & ADMIN_USER)); } stock cmd_access(id, level, cid, num) { new has_access = 0; if (id == (is_dedicated_server() ? 0 : 1)) { has_access = 1; } else if (level == ADMIN_ADMIN) { if (is_user_admin(id)) { has_access = 1; } } else if (get_user_flags(id) & level) { has_access = 1; } else if (level == ADMIN_ALL) { has_access = 1; } if (has_access == 0) { client_print(id, print_chat, "Nu ai acces la aceasta comanda!"); console_print(id, "Nu ai acces la aceasta comanda!"); return 0; } if (read_argc() < num) { new hcmd[32], hinfo[128], hflag; get_concmd(cid, hcmd, 31, hflag, hinfo, 127, level); client_print(id, print_chat, "Foloseste comanda: /ss <nume> <motiv>"); console_print(id, "Foloseste comanda: %s %s", hcmd, hinfo); return 0; } return PLUGIN_HANDLED; } stock access(id, level) { if(level == ADMIN_ADMIN) { return is_user_admin(id); } return (get_user_flags(id) & level); } stock cmd_target(id, const arg[], flags = 1) { new player = find_player("bl", arg); if (player) { if (player != find_player("blj", arg)) { client_print(id, print_chat, "Sunt mai multi jucatori care se potrivesc la nume cu ce ai scris tu!"); console_print(id, "Sunt mai multi jucatori care se potrivesc la nume cu ce ai scris tu!"); return 0; } } else if ((player = find_player("c", arg)) == 0 && arg[0] == '#' && arg[1]) { player = find_player("k", str_to_num(arg[1])); } if (!player) { client_print(id, print_chat, "Jucatorul nu a fost gasit!"); client_print(id, print_chat, "Verifica daca ai scris bine sau daca jucatorul mai este pe server, si incearca iar!"); console_print(id, "Jucatorul nu a fost gasit!"); console_print(id, "Verifica daca ai scris bine sau daca jucatorul mai este pe server, si incearca iar!"); return 0; } if (flags & 1) { if ((get_user_flags(player) & ADMIN_IMMUNITY) && ((flags & 2) ? (id != player) : true)) { new imname[32]; get_user_name(player, imname, 31); client_print(id, print_chat, "Jucatorul %s are imunitate!", imname); client_print(id, print_chat, "Poate este ADMIN, cauta comanda de setare imunitate si seteaz-o OFF , daca ai acces!"); console_print(id, "Jucatorul %s are imunitate!", imname); console_print(id, "Poate este ADMIN, cauta comanda de setare imunitate si seteaz-o OFF , daca ai acces!"); return 0; } } if (flags & 4) { if (!is_user_alive(player)) { new imname[32]; get_user_name(player, imname, 31); client_print(id, print_chat, "Jucatorul %s este mort!", imname); client_print(id, print_chat, "Asteapta sa inceapa urmatoarea runda!"); console_print(id, "Jucatorul %s este mort!", imname); console_print(id, "Asteapta sa inceapa urmatoarea runda!"); return 0; } } if (flags & 8) { if (is_user_bot(player)) { new imname[32]; get_user_name(player, imname, 31); client_print(id, print_chat, "Jucatorul %s nu este real, este bot , ce inseamna ca nu poti executa nici o comanda pe el!", imname); console_print(id, "Jucatorul %s nu este real, este bot , ce inseamna ca nu poti executa nici o comanda pe el!", imname); return 0; } } return player; }