Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <amxmodx>
- #define s_File "addons\amxmodx\configs\executeds.ini"
- static Array:g_a_executedes;
- static g_a_Reason[33][64];
- new szNotCheck[][]={
- "menuselect",
- "specmode",
- "VModEnable",
- "vban",
- ""
- }
- public plugin_init() {
- register_plugin("Executed Checker","1.0","Seroff");
- }
- public plugin_cfg() {
- if(!file_exists(s_File)) {
- server_print("[Executed Checker] File 'executeds.ini' not found!");
- return 0;
- }
- else {
- g_a_executedes=ArrayCreate(64);
- new i_File=fopen(s_File,"rt");
- new s_Buffer[64];
- while(!feof(i_File)) {
- fgets(i_File,s_Buffer,63);
- trim(s_Buffer);
- if(!s_Buffer[0] || s_Buffer[0]==';' || (s_Buffer[0]=='/' && s_Buffer[1]=='/')) {
- continue;
- }
- ArrayPushString(g_a_executedes,s_Buffer);
- }
- fclose(i_File);
- }
- return 0;
- }
- public client_command(id) {
- if(!is_user_connected(id) || is_user_bot(id) || is_user_hltv(id)) return 0;
- new s_Arg[64],s_Curexecuted[64],s_Buffer[64];
- read_argv(0,s_Arg,63);
- for(new i=0;i<sizeof(szNotCheck);i++){
- if(equal(szNotCheck[i],s_Arg)) return 0;
- }
- for(new szArray=0;szArray<ArraySize(g_a_executedes);szArray++){
- ArrayGetString(g_a_executedes,szArray,s_Buffer,63);
- new i_StrLen=strlen(s_Buffer);
- if(s_Buffer[0]=='[' && s_Buffer[i_StrLen-1]==']') {
- format(g_a_Reason[id],i_StrLen-2,s_Buffer[1]);
- }
- ArrayGetString(g_a_executedes,(szArray+1),s_Curexecuted,63);
- if(equal(s_Curexecuted,s_Arg)) {
- server_cmd("kick #%d ^"%s^"",get_user_userid(id),g_a_Reason[id]);
- return 0;
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment