Code:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <fakemeta>
#define PrefixProtection "[HLDS-Shield Advanced]"
#define console_max 0x80
#define Pmax 0x21
#define V0nr 0x00
#define V1nr 0x01
/*
.data:01E4E604 dd offset aSvc_disconnect ; "svc_disconnect"
.data:01E4E608 dd offset sub_1D2AA70
//pfnClientPrintf center ------> CL_CenterPrint
//pfnClientPrintf print_notify --------> CL_Print
//SVC_DISCONNECT ------> CL_Disconnect
//SV_Print("Salutare eu sunt %s %d %f %i")
//CL_Print(id,"Hellooooooooo^n");
*/
new const me[][]={"SkillartzHD","1.0.7","HLDS-Project"}
stock SV_Print(msg[]){server_print("%s %s",PrefixProtection,msg);} // fara any:...
stock Argv(){new text[console_max];read_argv(V0nr,text,charsmax(text)); return text;}
stock Register(){ register_plugin(me[0x00],me[0x01],me[0x02]);}
stock Argv1(){new text[console_max];read_argv(V1nr,text,charsmax(text)); return text;}
stock UserName(index){new PlayerName[Pmax];get_user_name(index,PlayerName,charsmax(PlayerName));return PlayerName;}
stock CL_Disconnect(index,message[]){message_begin(0x01,0x02,_,index);write_string(message);message_end();}
stock CL_Print(index,message[]){message_begin(0x01,0x08,_,index);write_string(message);message_end();}
stock CL_CenterPrint(index,message[]){message_begin(0x01,0x1A,_,index);write_string(message);write_byte(0x01);message_end();}
stock CL_Final(index,message[]){message_begin(0x01,0x1F,_,index);write_string(message);message_end();}
new const MessageHook[][]=
{
"#cstrike_","#career_","#vac_",
"#serverbrowser_","#cam_","#valve_",
"#ba_","#t0","#of","#player",
"#vgui_","#spec","#spect",
"#steam","#gameui_","#app_",
"#admin_","#game_","#czero_",
"#obs_","#WizardPanel_","#QueryBox_",
"#textentry_","#FileOpenDialog",
"#PropertyDialog","#MessageBox_OK","#Frame_",
"#SysMenu_","#IME","%s",
"","","",""
}
public plugin_precache()
{
Register()
SV_Print("salut , eu sunt %s %d %f %i")
register_forward(FM_ClientUserInfoChanged,"UserInfoHook")
register_forward(FM_ClientConnect,"ClientConnectHook")
register_forward(FM_ClientCommand,"ClientCommandHook")
}
public ClientConnectHook(id,buffer){if(is_user_connecting(id)){UserInfoHook(id,buffer);}}
public UserInfoHook(id,buffer)
{
new old[Pmax]
get_user_info(id,"name",old,charsmax(old))
for (new i = 0; i < sizeof (MessageHook); i++)
{
if(containi(old,MessageHook[i]) != -1)
{
CL_CenterPrint(id,"My name is skillartzhd^n");
engfunc(EngFunc_InfoKeyValue,buffer,"name",UserName(id))
engfunc(EngFunc_SetClientKeyValue,id,buffer,"name",random_num('A','Z'),random_num('A','z'),random_num('1','9'))
CL_Disconnect(id,"Salut")
return FMRES_SUPERCEDE
}
}
return FMRES_IGNORED
}
public ClientCommandHook(id)
{
for (new i = 0; i < sizeof (MessageHook); i++)
{
if(containi(Argv(),MessageHook[i])!= -1|| containi(Argv1(),MessageHook[i])!= -1)
{
CL_CenterPrint(id,"My name is skillartzhd^n");
CL_Print(id,"Hello eu sunt %s !^n")
CL_Final(id,"You've got cancer ^n Please reconnect")
log_amx("%s User %s used ^"%s %s^"",PrefixProtection,UserName(id),Argv(),Argv1())
return FMRES_SUPERCEDE
}
}
return FMRES_IGNORED
}