Name: admin Models
Plugin Author: SHA[D]OW
Plugin Version: 0.7
Modification: Counter - Strike
Category: Fun Stuff
PHP Code:
#include <amxmodx>
#include <fakemeta>
#define STRING_ACCESS "u"
#if cellbits == 32
#define OFFSET_TEAM 114
#else
#define OFFSET_TEAM 139
#endif
new bool:hasAdmin[33] = { false, ... }
new g_model[] = "model"
new g_new_admin_te[] = "[BG]admin_te"
new g_new_admin_ct[] = "[BG]Admin_ct"
public plugin_precache()
{
new temp[64]
format(temp, sizeof temp -1, "models/player/%s/%s.mdl", g_new_admin_te, g_new_admin_te)
if(!precache_model(temp))
log_amx("Can't precache model '%s'", temp)
format(temp, sizeof temp -1, "models/player/%s/%s.mdl", g_new_admin_ct, g_new_admin_ct)
if(!precache_model(temp))
log_amx("Can't precache model '%s'", temp)
}
public plugin_init()
{
register_plugin("New Admin Models", "1.1", "avtor xzn ne ja")
register_cvar(STRING_ACCESS, "c")//Админов с какими флагами нужно переодевать (добавлен квар)
register_forward(FM_PlayerPostThink, "fwd_PlayerPostThink")
register_forward(FM_ClientUserInfoChanged, "fwd_ClientUserInfoChanged")
}
public client_putinserver(id)
set_task(2.0, "cmdCheckUser", id)
public client_disconnect(id)
hasAdmin[id] = false
public cmdCheckUser(id)
{
if(is_user_connected(id))
{
static flags[28], iflag
get_cvar_string(STRING_ACCESS, flags, sizeof flags -1)
iflag = read_flags(flags)
if(get_user_flags(id) & iflag)
{
hasAdmin[id] = true
}
}
}
public fwd_PlayerPostThink(id)
{
if(!hasAdmin[id] || !is_user_alive(id))
return FMRES_IGNORED
switch(get_pdata_int(id, OFFSET_TEAM))
{
case 1: engfunc(EngFunc_SetClientKeyValue, id, engfunc(EngFunc_GetInfoKeyBuffer, id), g_model, g_new_admin_te)
case 2: engfunc(EngFunc_SetClientKeyValue, id, engfunc(EngFunc_GetInfoKeyBuffer, id), g_model, g_new_admin_ct)
}
return FMRES_HANDLED
}
public fwd_ClientUserInfoChanged(id)
return FMRES_SUPERCEDE