Raul USHU Admin
Mesaje : 162 Data de înscriere : 13/02/2010 Localizare : Galgau Almas
| Subiect: Plugin - BRB - /say ... /brb .. te pune spectator Lun Feb 15, 2010 12:24 am | |
| BRB Cu Acest Plugin cand scri in .. /SAY ... /brb ... Te pune spectator [Trebuie sa fiti inscris si conectat pentru a vedea acest link] [Trebuie sa fiti inscris si conectat pentru a vedea acest link] [Trebuie sa fiti inscris si conectat pentru a vedea acest link] - Citat :
- #include <amxmodx>
#include <amxmisc> #include <cstrike> #include <engine>
new g_isAFK[33] new g_BrbTime[33] new g_Spawned[33] new g_OldOrigin[33][3]
new cvar_brbtime new cvar_warntime
new SOUND_BRB[] = "barney/ba_later.wav"
static const PLUGIN_NAME[] = "Be Right Back" static const PLUGIN_AUTHOR[] = "Cheap_Suit" static const PLUGIN_VERSION[] = "2.6"
public plugin_init() { register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR) register_cvar(PLUGIN_NAME, PLUGIN_VERSION, FCVAR_SPONLY|FCVAR_SERVER) cvar_brbtime = register_cvar("amx_brbtime", "40") cvar_warntime = register_cvar("amx_warntime", "10")
register_clcmd("say /brb", "cmd_BeRightBack", 0, "- Sends you to spectator") register_clcmd("say_team /brb", "cmd_BeRightBack", 0, "- Sends you to spectator") register_event("ResetHUD", "Event_ResetHUD", "be") set_task(1.0, "task_CheckUser", _, _, _, "b") }
public plugin_precache() { precache_sound(SOUND_BRB) }
public cmd_BeRightBack(id) { if(is_user_afk(id)) return PLUGIN_CONTINUE user_afk(id, 1) return PLUGIN_HANDLED }
public Event_ResetHUD(id) { user_spawned(id, 0) set_user_brbtime(id, 0) if(is_user_alive(id)) { new param[1] param[0] = id set_task(0.75, "task_DelayedSpawn", _, param, 1) } }
public task_DelayedSpawn(param[]) { new id = param[0] get_user_origin(id, g_OldOrigin[id]) user_spawned(id, 1) }
public task_CheckUser() { new Players[32], iNum get_players(Players, iNum, "ac")
for(new i = 0; i < iNum; i++) { new id = Players[i] if(is_user_hltv(id) || !is_user_spawned(id)) continue new iOrigin[3] get_user_origin(id, iOrigin, 0) if(iOrigin[0] == g_OldOrigin[id][0] && iOrigin[1] == g_OldOrigin[id][1] && iOrigin[2] == g_OldOrigin[id][2]) { set_user_brbtime(id, get_user_brbtime(id) + 1) _validateUser(id) } else { g_OldOrigin[id][0] = iOrigin[0] g_OldOrigin[id][1] = iOrigin[1] g_OldOrigin[id][2] = iOrigin[2] set_user_brbtime(id, 0) } if(cs_get_user_team(id) != CS_TEAM_SPECTATOR && is_user_afk(id)) user_afk(id, 0) } }
public _validateUser(id) { new brbTime = get_pcvar_num(cvar_brbtime) new warnTime = get_pcvar_num(cvar_warntime) new userTime = get_user_brbtime(id) if(brbTime - warnTime <= userTime < brbTime) { new timeLeft = brbTime - userTime client_print(id, print_chat, "Tv-VMR.Idle.Ro Ai la dispozitie %d secunde sa te misti sau vei fi trimis Spec pentru ca esti AFK", timeLeft) } else if(userTime >= brbTime) { user_afk(id, 1) set_user_brbtime(id, 0) } return PLUGIN_CONTINUE }
stock is_user_afk(id) return g_isAFK[id] stock is_user_spawned(id) return g_Spawned[id]
stock user_spawned(id, value = 0) g_Spawned[id] = value stock get_user_brbtime(id) return g_BrbTime[id]
stock set_user_brbtime(id, value = 0) g_BrbTime[id] = value
stock user_afk(id, value = 0) { g_isAFK[id] = value if(value > 0) { client_cmd(0, "spk %s",SOUND_BRB) entity_set_int(id, EV_INT_deadflag, DEAD_DISCARDBODY) cs_set_user_team(id, CS_TEAM_SPECTATOR, CS_DONTCHANGE) new playerName[33] get_user_name(id, playerName, 32) client_print(0, print_chat, "[Tv-VMR.Idle.Ro] %s a luat o pauza, a obosit saracul...https://tv-vmr.forumgratuit.ro/", playerName) } } | |
|