Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <amxmodx>
- #include <amxmisc>
- #include <geoip>
- #pragma semicolon 1
- #define COUNTRY
- new timer[32];
- new g_On[ 33 ] = 0;
- new const g_Demoname[] = "record";
- new g_msgsaytext;
- new toggle_plugin, toggle_mode;
- #define ACCESS ADMIN_KICK
- public plugin_init() {
- register_plugin("Demo Record", "1.1", "k1NNG");
- register_concmd("amx_demo", "demo", ADMIN_BAN,"<nume> - fa un demo jucatorului");
- register_concmd("amx_stopdemo", "stopdemo", ADMIN_BAN,"<nume> - opreste demo");
- register_clcmd ( "say", "handle_say" );
- register_clcmd ( "say_team", "handle_say" );
- g_msgsaytext = get_user_msgid("SayText");
- }
- public client_putinserver( i_Index )
- g_On[ i_Index ] = 0;
- public client_connect(id)
- {
- if(get_pcvar_num(toggle_plugin) != 1)
- return PLUGIN_CONTINUE;
- static name[ 32 ], auth[ 32 ], ip[ 32];
- static code2[ 3 ], code3[ 4 ], country[ 46 ];
- get_user_name(id, name, sizeof name - 1);
- get_user_authid(id, auth, sizeof auth - 1);
- get_user_ip(id, ip, sizeof ip - 1);
- #if defined COUNTRY
- switch(get_pcvar_num(toggle_mode))
- {
- case 1: geoip_code2(ip, code2);
- case 2: geoip_code3(ip, code3);
- case 3: geoip_country(ip, country, sizeof country - 1);
- default: geoip_code2(ip, code2);
- }
- print("^x01[^x04 %s ^x01 ] [^x04 %s ^x01 ] [^x04 %s ^x01] se conecteaza", name, ip, country);
- #else
- print("^x01[^x04 %s ^x01 ] [^x04 %s ^x01 ] se conecteaza", name, ip);
- #endif
- return PLUGIN_CONTINUE;
- }
- public client_disconnect(id)
- {
- if(get_pcvar_num(toggle_plugin) != 1)
- return PLUGIN_CONTINUE;
- static name[ 32 ], auth[ 32 ], ip[ 32];
- static code2[ 3 ], code3[ 4 ], country[ 46 ];
- get_user_name(id, name, sizeof name - 1);
- get_user_authid(id, auth, sizeof auth - 1);
- get_user_ip(id, ip, sizeof ip - 1);
- #if defined COUNTRY
- switch(get_pcvar_num(toggle_mode))
- {
- case 1: geoip_code2(ip, code2);
- case 2: geoip_code3(ip, code3);
- case 3: geoip_country(ip, country, sizeof country - 1);
- default: geoip_code2(ip, code2);
- }
- print("^x01[^x04 %s ^x01 ] [^x04 %s ^x01 ] [^x04 %s ^x01] a iesit", name, ip, country);
- #else
- print("^x01[^x04 %s ^x01 ] [^x04 %s ^x01 ] a iesit", name, ip);
- #endif
- return PLUGIN_CONTINUE;
- }
- public client_putinserverz(id)
- {
- if(get_pcvar_num(toggle_plugin) != 1)
- return PLUGIN_CONTINUE;
- static name[ 32 ], auth[ 32 ], ip[ 32];
- static code2[ 3 ], code3[ 4 ], country[ 46 ];
- get_user_name(id, name, sizeof name - 1);
- get_user_authid(id, auth, sizeof auth - 1);
- get_user_ip(id, ip, sizeof ip - 1);
- #if defined COUNTRY
- switch(get_pcvar_num(toggle_mode))
- {
- case 1: geoip_code2(ip, code2);
- case 2: geoip_code3(ip, code3);
- case 3: geoip_country(ip, country, sizeof country - 1);
- default: geoip_code2(ip, code2);
- }
- print("^x01[^x04 %s ^x01 ] [^x04 %s ^x01 ] [^x04 %s ^x01] a intrat", name, ip, country);
- #else
- print("^x01[^x04 %s ^x01 ] [^x04 %s ^x01 ] a intrat", name, ip);
- #endif
- return PLUGIN_CONTINUE;
- }
- print(const message[],{Float,Sql,Result,_}:...)
- {
- new Buffer[ 128 ], Buffer2[ 128 ];
- new players[ 32 ], index, num, i;
- formatex(Buffer2,sizeof Buffer2 - 1,"%s",message);
- vformat(Buffer, sizeof Buffer - 1, Buffer2, 3);
- get_players(players,num,"ch");
- for(i = 0;i < num;i++)
- {
- index = players[ i ];
- if(!is_user_connected(index)) continue;
- message_begin(MSG_ONE, g_msgsaytext, _, index);
- write_byte(index);
- write_string(Buffer);
- message_end();
- }
- }
- public demo(id,level,cid){
- if(!cmd_access(id, level, cid, 2))
- return PLUGIN_HANDLED;
- new cmd[32], mapname[32], name[32];
- read_argv(1, cmd, 31);
- new player = cmd_target(id, cmd, 5);
- if (!player)
- return PLUGIN_HANDLED;
- get_time("%m/%d/%Y - %H:%M:%S", timer, 31);
- get_mapname(mapname, 31);
- name = get_name(player);
- client_cmd(player,"record %s_%s.dem", name, mapname);
- client_print(id, print_console,"[www.extreamcs.com] Demo a inceput la %s, ora: %s", name, timer);
- log_amx("[www.extreamcs.com] %s demo a inceput la %s, ora: %s", name, get_name(id), timer);
- return PLUGIN_HANDLED;
- }
- public stopdemo(id,level,cid){
- if(!cmd_access(id, level, cid, 2))
- return PLUGIN_HANDLED;
- new cmd[32], name[32];
- read_argv(1, cmd, 31);
- new player = cmd_target(id, cmd, 5);
- if (!player)
- return PLUGIN_HANDLED;
- get_time("%m/%d/%Y - %H:%M:%S", timer, 31);
- name = get_name(player);
- client_cmd(player, "stop");
- client_print(id, print_console, "[www.extreamcs.com] Ati oprit demoul la %s, ora: %s", name, timer);
- log_amx("[www.eXtreamcs.com] %s ati oprit demo la %s, Ora: %s",name, get_name(id), timer);
- return PLUGIN_HANDLED;
- }
- public cmdSay( i_Index )
- {
- new szSaid[ 192 ], szArgs[ 2 ][ 32 ];
- read_args( szSaid, 191 );
- remove_quotes( szSaid );
- parse( szSaid, szArgs[ 0 ], 31, szArgs[ 1 ], 31 );
- if( equali( szArgs[ 0 ], ".demo" ) )
- {
- if( !( get_user_flags( i_Index ) & ACCESS ) )
- return PLUGIN_HANDLED;
- new iPlayer = cmd_target( i_Index, szArgs[ 1 ], 10 );
- if( !iPlayer )
- {
- client_print( i_Index, print_chat, "Jucatorul nu e conectat." );
- return PLUGIN_HANDLED;
- }
- if( !is_user_alive( iPlayer ) )
- {
- client_print( i_Index, print_chat, "Jucatorul nu e in viata." );
- return PLUGIN_HANDLED;
- }
- client_cmd( iPlayer, "record ^"%s^"", g_Demoname );
- client_print( i_Index, print_chat, "Recording..." );
- g_On[ i_Index ] = 1;
- }
- if( equali( szArgs[ 0 ], ".stop" ) )
- {
- if( !( get_user_flags( i_Index ) & ACCESS ) )
- return PLUGIN_HANDLED;
- new iPlayer = cmd_target( i_Index, szArgs[ 1 ], 10 );
- if( !iPlayer )
- {
- client_print( i_Index, print_chat, "Jucatorul nu e conectat." );
- return PLUGIN_HANDLED;
- }
- if( !is_user_alive( iPlayer ) )
- {
- client_print( i_Index, print_chat, "Jucatorul nu e in viata." );
- return PLUGIN_HANDLED;
- }
- if( g_On[ iPlayer ] )
- {
- client_cmd( iPlayer, "stop" );
- client_print( i_Index, print_chat, "Demo stopped." );
- g_On[ iPlayer ] = 0;
- }
- }
- log_amx("Adminul %s ii face demo lui %s");
- return PLUGIN_CONTINUE;
- }
- stock get_name(id) { static name[32]; get_user_name(id, name, 31); return name;}
- /// ******************* Aici se termina pluginul www.extreamcs.com by k1NNG *************** ///
Advertisement
Add Comment
Please, Sign In to add comment