Hi everybody, well i use a plugin called round draw blast consist when the round finish this kill all the players, but i want to active on the last 3 seconds, how i can make this?.. thx in advance
This is the code:
PHP Code:
#include <amxmodx>
// Type slash (/) in front of this line for normal gameplay.....
#define ZOMBIE_MOD
/*================================================================================
[Plugin Customization]
=================================================================================*/
// Notice shown to players before the blast
new const warning_notice[] = { "Warning! Umbrella has launched a nuke over the area..." }
// Sounds
new const sound_siren[] = { "ambience/siren.wav" }
new const sound_launch[] = { "weapons/mortar.wav" }
new const sound_blast[] = { "weapons/mortarhit.wav" }
/*============================================================================*/
const BLAST_TASK = 5000
const LOOP_TASK = 100
const TASK_ID = 652450;
new g_msgScreenFade, g_msgDeathMsg,g_maxplayers,c_frezee, blah = false;
// ??? Misterious variables ???
new Float:get_round_time,g_pCvarRoundTime ;
// ??? Misterious variables ???
public plugin_precache()
{
precache_sound(sound_siren)
precache_sound(sound_launch)
precache_sound(sound_blast)
}
public plugin_init()
{
register_plugin("Round End Blast", "2.0", "Anggara_nothing + MeRcyLeZZ")
register_event("HLTV", "event_round_start", "a", "1=0", "2=0")
#if defined ZOMBIE_MOD
register_logevent("logevent_round_end", 2, "1=Round_End" );
#else
register_event( "TextMsg", "logevent_round_end", "a", "2&#Round_Draw", "2&#Target_Saved", "2&#VIP_Escaped" );
#endif
c_frezee = get_cvar_pointer("mp_freezetime")
g_pCvarRoundTime = get_cvar_pointer("mp_roundtime")
g_msgScreenFade = get_user_msgid("ScreenFade")
g_msgDeathMsg = get_user_msgid("DeathMsg")
g_maxplayers = get_maxplayers()
}
public event_round_start()
{
remove_task(TASK_ID) // Bugfix
remove_task(BLAST_TASK) // Bugfix
blah = false
set_task(get_pcvar_float(c_frezee),"remove_noob_looptask")
client_cmd(0, "stopsound")
}
public remove_noob_looptask()
{
blah = true
get_round_time = floatmul(get_pcvar_float(g_pCvarRoundTime) , 60.0) - 10.0
set_task(get_round_time, "nuclear_alarm", TASK_ID);
}
public nuclear_alarm()
client_cmd(0, "spk %s", sound_siren)
public logevent_round_end()
{
// No one won
if (AreBothTeamsAlive() == true)
{
if(blah)
{
// Remove previous tasks and set the new ones
remove_task(BLAST_TASK)
set_task(0.1, "task_siren", BLAST_TASK)
}
}
}
public task_siren()
{
// Show notice
client_print(0, print_chat, "%s", warning_notice)
// Siren sound
client_cmd(0, "spk %s", sound_siren)
set_task(0.7, "task_launch", BLAST_TASK)
}
public task_launch()
{
// Launch sound
client_cmd(0, "spk %s", sound_launch)
// Screen fade effect
message_begin(MSG_BROADCAST, g_msgScreenFade)
write_short((1<<12)*4) // Duration
write_short((1<<12)*1) // Hold time
write_short(0x0001) // Fade type
write_byte (255) // Red
write_byte (255) // Green
write_byte (255) // Blue
write_byte (255) // Alpha
message_end()
set_task(1.7, "task_blast", BLAST_TASK)
}
public task_blast()
{
// Blast sound
client_cmd(0, "spk %s", sound_blast)
static id, deathmsg_block
// Get current blocking state of the deathmsg
deathmsg_block = get_msg_block(g_msgDeathMsg)
// Set it to blocked
set_msg_block(g_msgDeathMsg, BLOCK_SET)
// "Eliminate" players
for (id = 1; id <= g_maxplayers; id++)
if (is_user_alive(id))
user_kill(id, 1)
// Set the previous blocking state
set_msg_block(g_msgDeathMsg, deathmsg_block)
}
// Get Alive CTs -returns number of CTs alive-
/*fnGetAliveCTs()
{
static iCTs, id
iCTs = 0
for (id = 1; id <= g_maxplayers; id++)
{
if (is_user_alive(id))
{
if (cs_get_user_team(id) == CS_TEAM_CT)
iCTs++
}
}
return iCTs;
}
// Get Alive Ts -returns number of Ts alive-
fnGetAliveTs()
{
static iTs, id
iTs = 0
for (id = 1; id <= g_maxplayers; id++)
{
if (is_user_alive(id))
{
if (cs_get_user_team(id) == CS_TEAM_T)
iTs++
}
}
return iTs;
}*/
bool:AreBothTeamsAlive()
{
new iPlayers[ 32 ], iNum;
get_players( iPlayers, iNum, "a" );
new bool:bT, bool:bCT;
for( new i = 0; i < iNum; i++ )
{
switch( get_user_team( iPlayers[ i ] ) )
{
case 1: { // Terrorist
if( bCT )
return true;
bT = true;
}
case 2: { // Counter-Terrorist
if( bT )
return true;
bCT = true;
}
}
}
return false;
}