Код:
#include <amxmod>
#include <amxmisc>
#include <fun>
#define BPID 341219
#define MAX_TEXT_LENGTH 512
#define MAX_NAME_LENGTH 32
new Float:oldspeed[33]
new ccolor[33]
new IsGhost[33]
new sName[MAX_NAME_LENGTH]
new sMsg[MAX_TEXT_LENGTH]
public changecolor(ids[]) {
new toghost = ids[0]
switch(ccolor[toghost]) {
case 0: {
set_user_rendering(toghost,kRenderFxNone,0,0,0, kRenderTransTexture,0)
ccolor[toghost] = 1
}
case 1: {
set_user_rendering(toghost,kRenderFxNone,0,0,0, kRenderTransTexture,0)
ccolor[toghost] = 2
}
case 2: {
set_user_rendering(toghost,kRenderFxNone,0,0,0, kRenderTransTexture,0)
ccolor[toghost] = 0
}
}
}
public admin_ghost(id,level,cid)
{
if (!cmd_access(id,level,cid,1))
return PLUGIN_HANDLED
new params[3]
params[0] = id
IsGhost[id] = 1
get_user_name(id, sName, 32)
format(sMsg,MAX_TEXT_LENGTH,"%s stal prizpakom!!",sName)
display_msg(sMsg,255,10,100)
oldspeed[id] = get_user_maxspeed(id)
set_user_maxspeed(id,1000.0)
set_user_godmode(id,1)
set_task(0.2, "changecolor", BPID + id, params, 2, "b")
return PLUGIN_HANDLED
}
public admin_unghost(id, level, cid)
{
if (!cmd_access(id,level,cid,1))
return PLUGIN_HANDLED
IsGhost[id] = 0
get_user_name(id, sName, 32)
format(sMsg,MAX_TEXT_LENGTH,"%s ne prizrak..",sName)
display_msg(sMsg,50,75,255)
set_user_maxspeed(id,oldspeed[id])
set_user_godmode(id,0)
set_user_rendering(id,kRenderFxNone,255,255,255, kRenderNormal,16)
remove_task(BPID + id)
return PLUGIN_HANDLED
}
public switchweapon(id)
{
if(IsGhost[id]) set_user_maxspeed(id,1000.0)
return PLUGIN_CONTINUE
}
public round_start(id)
{
if(IsGhost[id]) set_user_godmode(id,1)
return PLUGIN_CONTINUE
}
public client_connect(id){
IsGhost[id] = 0
return PLUGIN_CONTINUE
}
public client_disconnect(id){
IsGhost[id] = 0
return PLUGIN_CONTINUE
}
public display_msg(msg[],r,g,b)
{
set_hudmessage(r,g,b,-1.0,0.30,0,6.0,6.0,0.5,0.15,1)
show_hudmessage(0,msg)
}
public plugin_init() {
register_plugin("Ghost Mode","1.4","Kiosk3")
register_concmd("amx_ghost","admin_ghost")
register_concmd("amx_unghost","admin_unghost")
register_event("CurWeapon","switchweapon","s")
register_event("ResetHUD", "round_start", "s")
return PLUGIN_CONTINUE
}