Код
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <hamsandwich>
#define TT 1
#define CT 2
new giRoundCounter
new bool:gbWarmupActive, bool:gbIgnoreRestart
public plugin_init()
{
new iMap_Name[32], iMap_Prefix[][] = { "awp_", "aim_", "ka_" }
get_mapname(iMap_Name, charsmax(iMap_Name))
for(new i; i < sizeof(iMap_Prefix); i++)
{
if(containi(iMap_Name, iMap_Prefix[i]) != -1)
{
register_plugin("[Paused] WarmUp", "1.0", "neygomon")
pause("ad")
return
}
}
register_plugin("WarmUp", "1.0", "neygomon")
RegisterHam(Ham_Spawn, "player", "Ham_PlayerSpawn_Post", 1);
register_event("TextMsg", "EventNewGame", "a", "2=#Game_will_restart_in", "2=#Game_Commencing");
register_event("HLTV", "EventNewRound", "a", "1=0", "2=0");
register_clcmd("menuselect", "clcmd_Spawn_Class");
register_clcmd("joinclass", "clcmd_Spawn_Class");
}
public EventNewGame()
{
if(gbIgnoreRestart)
{
gbIgnoreRestart = false
return
}
if(!gbWarmupActive)
{
gbWarmupActive = true;
}
giRoundCounter = 0;
}
public EventNewRound()
{
if(!gbWarmupActive) return;
set_task(2.0, "hud_message", 1337, .flags="b");
if(++giRoundCounter > 1 && gbWarmupActive)
{
gbWarmupActive = false;
gbIgnoreRestart = true;
remove_task(1337);
set_cvar_num("sv_restart", 1);
}
}
public Ham_PlayerSpawn_Post(id)
{
if(!is_user_alive(id) || !gbWarmupActive) return;
if(giRoundCounter)
{
switch(get_user_team(id))
{
case TT:
{
give_item(id, "weapon_ak47");
cs_set_user_bpammo(id, CSW_GLOCK18, 120);
cs_set_user_bpammo(id, CSW_AK47, 90);
cs_set_user_armor(id, 100, CS_ARMOR_VESTHELM);
}
case CT:
{
give_item(id, "weapon_m4a1");
cs_set_user_bpammo(id, CSW_USP, 100);
cs_set_user_bpammo(id, CSW_M4A1, 90);
cs_set_user_armor(id, 100, CS_ARMOR_VESTHELM);
}
}
}
}
public clcmd_Spawn_Class(id)
{
if(!gbWarmupActive) return;
set_task(2.0, "SpawnPlayer", id);
}
public SpawnPlayer(id)
{
if(is_user_alive(id)) return;
switch(get_user_team(id))
{
case TT, CT: ExecuteHamB(Ham_Spawn, id);
}
}
public hud_message()
{
set_hudmessage(255, 0, 0, -1.0, 0.2, 0, 1.0, 2.3, 0.0, 0.0, -1);
show_hudmessage(0, "Разминочный раунд!");
}