ако е възможно да се редактира прикаченият плъгин. По време на загряващия рунд, да се премахне бомбата (c4), също така, след като те убият (по време на загряващия рунд) оръжията да изчезват. Ако може да бъдат премахнати hud съобщенията и чат съобщенията да излизат по 3 пъти (3 реда, в началото на warmup-a и в края).
Благодаря предварително!
Код за потвърждение: Избери целия код
#include <amxmodx>
#include <reapi>
#include <WPMGPrintChatColor>
new p_flWarmUpTime, p_flForceRespawn, p_flBuyTime;
new Float:g_flOldBuyTime, Float:g_flOldForceRespawn;
new HookChain:fwdPlayerSpawn;
new bool:g_bWarmup
new const g_szWeapons[][] =
{
"weapon_ak47", "weapon_m4a1", "weapon_aug", "weapon_awp", "weapon_famas", "weapon_galil",
"weapon_m249", "weapon_scout", "weapon_m3", "weapon_xm1014", "weapon_mac10", "weapon_p90"
};
new const g_szPistols[][] =
{
"weapon_glock18", "weapon_usp", "weapon_deagle", "weapon_elite", "weapon_p228"
};
new const g_iWeaponsBpAmmo[] =
{
90, 90, 90, 30, 90, 90, 200, 90, 32, 32, 100, 100
}
new const g_iPistolsBpAmmo[] =
{
120, 100, 35, 120, 52
}
public plugin_init()
{
register_plugin("Warm UP", "1.0", "TheRedShoko @ AMXX-BG.info");
register_clcmd("drop", "OnDrop")
DisableHookChain((fwdPlayerSpawn = RegisterHookChain(RG_CBasePlayer_Spawn, "FwPlayerSpawnPost", 1)));
p_flWarmUpTime = register_cvar("warmup_time", "120.0");
p_flForceRespawn = get_cvar_pointer("mp_forcerespawn");
p_flBuyTime = get_cvar_pointer("mp_buytime");
}
public OnDrop(id)
{
if(g_bWarmup)
return PLUGIN_HANDLED
}
public plugin_cfg()
{
g_flOldBuyTime = get_pcvar_float(p_flForceRespawn);
g_flOldBuyTime = get_pcvar_float(p_flBuyTime);
set_pcvar_num(p_flBuyTime, 0);
set_pcvar_float(p_flForceRespawn, 0.1);
new Float:flWarmUpTime = get_pcvar_float(p_flWarmUpTime);
set_task(flWarmUpTime, "EndWarmUp");
g_bWarmup = true
EnableHookChain(fwdPlayerSpawn);
set_hudmessage(0, 255, 0, .holdtime = 10.0);
show_hudmessage(0, "Warmup round will end in %.f seconds!", flWarmUpTime);
PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!g[WarmUp]!y Warmup round will end in %.f seconds!", flWarmUpTime);
}
public EndWarmUp()
{
DisableHookChain(fwdPlayerSpawn);
set_pcvar_float(p_flBuyTime, g_flOldBuyTime);
set_pcvar_float(p_flForceRespawn, g_flOldForceRespawn);
set_hudmessage(0, 255, 0, .holdtime = 10.0);
show_hudmessage(0, "Warmup round is over, restarting...");
server_cmd("sv_restart 3");
g_bWarmup = false
PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!g[WarmUp]!y Warm up is over, restarting...");
}
public FwPlayerSpawnPost(id)
{
if (!is_user_alive(id))
{
return;
}
rg_remove_all_items(id);
rg_give_item(id, "weapon_knife");
new iPrimaryWeapon = random(sizeof g_szWeapons);
new iSecondaryWeapon = random(sizeof g_szPistols);
rg_give_item(id, g_szWeapons[iPrimaryWeapon]);
rg_give_item(id, g_szPistols[iSecondaryWeapon]);
rg_set_user_bpammo(id, rg_get_weapon_info(g_szWeapons[iPrimaryWeapon], WI_ID), g_iWeaponsBpAmmo[iPrimaryWeapon]);
rg_set_user_bpammo(id, rg_get_weapon_info(g_szPistols[iSecondaryWeapon], WI_ID), g_iPistolsBpAmmo[iSecondaryWeapon]);
}