Code: Select all
#include <amxmodx>#include <amxmisc>#include <geoip> #define VERSION "1.4" new amx_show_activitynew cvar_hostnamenew cvar_complainnew cvar_tagnew say_textnew show_message public plugin_init(){ /* Register plugin name and author */ register_plugin("AMXX Snapshot", VERSION, "God@Dorin"); /* Register plugin version */ register_cvar("screen_version", VERSION, FCVAR_SERVER | FCVAR_SPONLY); set_cvar_string("screen_version", VERSION); /* Register language file */ register_dictionary("screen_message.txt"); register_cvar("amx_msg_type", "1") /* Register cvars */ amx_show_activity = get_cvar_pointer("amx_show_activity") cvar_hostname = get_cvar_pointer("hostname"); cvar_complain = register_cvar("amx_website", "amx_ss") cvar_tag = register_cvar("amx_chattag", "") show_message = register_cvar("amx_msg_type", "1") //CVar ayarżnż dešižtirmeyin yoksa oyun iēi yazżlar bozulur /* Register admin commands */ register_concmd("amx_ss","cmdSS",ADMIN_KICK,"<[Player Nick] or [userid]>") /* Make possible color chat printing */ say_text = get_user_msgid("SayText");} public cmdSS(id,level,cid) { if(!cmd_access(id, level, cid, 2)) return PLUGIN_HANDLED; new arg[32] read_argv(1, arg, 31) new target = cmd_target(id, arg, 1) new hostname[64], admin[32], timer[32], player[32], authid[32] new ip[32], country[33], site[64], chattag[32] get_user_name(id, admin, 31) get_user_name(target, player, 31) get_user_ip(target, ip, 31, 1) get_user_authid(target, authid, 31) geoip_country(ip, country) get_time("%d/%m/%Y - %H:%M:%S", timer, 63) get_pcvar_string(cvar_hostname, hostname, charsmax(hostname)) get_pcvar_string(cvar_complain, site, charsmax(site)) get_pcvar_string(cvar_tag, chattag, charsmax(chattag)) if(!target) return PLUGIN_HANDLED; if(get_pcvar_num(show_message) == 1) { /* Show screen messages in chat */ client_printc(target,"%L", target, "SS_MSG1", chattag, admin) client_printc(target,"%L", target, "SS_MSG2", chattag, timer, hostname) client_printc(target,"%L", target, "SS_MSG3", chattag, player, ip, authid, country) client_printc(target,"%L", target, "SS_MSG4", chattag, site) client_cmd(target,"wait;wait;snapshot;wait;snapshot;wait;snapshot") } else if(get_pcvar_num(show_message) == 2) { /* Show screen messages in hud */ set_hudmessage(150, 0, 255, -1.0, 0.1, 0, 0.25, 1.0, 0.0, 0.0, 4) show_hudmessage(target, "%L", target, "SS_MSG_HUD", timer, hostname, player, ip, authid, country, site) client_cmd(target,"wait;wait;snapshot;wait;snapshot;wait;snapshot") } else if(get_pcvar_num(show_message) == 3) { /* Show screen messages in chat */ client_printc(target,"%L", target, "SS_MSG1", chattag, admin) client_printc(target,"%L", target, "SS_MSG2", chattag, timer, hostname) client_printc(target,"%L", target, "SS_MSG3", chattag, player, ip, authid, country) client_printc(target,"%L", target, "SS_MSG4", chattag, site) /* Show screen messages in hud */ set_hudmessage(150, 0, 255, -1.0, 0.1, 0, 0.25, 1.0, 0.0, 0.0, 4) show_hudmessage(target, "%L", target, "SS_MSG_HUD", timer, hostname, player, ip, authid, country, site) client_cmd(target,"wait;wait;snapshot;wait;snapshot;wait;snapshot") } /* show message in chat to all players by amx_show_activity */ switch(get_pcvar_num(amx_show_activity)) { case 2: client_printc(0,"%L", LANG_PLAYER, "SS_CASE2", admin, player) case 1: client_printc(0,"%L", LANG_PLAYER, "SS_CASE1", player) } /* Confirm for the admin in console that he used amx_ss command */ console_print(id,"%L", id, "SS_CONSOLE", player) return PLUGIN_HANDLED;} stock client_printc(const id, const string[], {Float, Sql, Resul,_}:...) { new msg[191], players[32], count = 1; vformat(msg, sizeof msg - 1, string, 3); replace_all(msg,190,"!g","^4"); replace_all(msg,190,"!y","^1"); replace_all(msg,190,"!t","^3"); if(id) players[0] = id; else get_players(players,count,"ch"); for (new i = 0 ; i < count ; i++) { if (is_user_connected(players[i])) { message_begin(MSG_ONE_UNRELIABLE, say_text,_, players[i]); write_byte(players[i]); write_string(msg); message_end(); } }}