Senior Member
Join Date: Oct 2014
Location: Malaysia
|
12-16-2015
, 23:35
Re: Zombie Plague Shade v1.2-debug1 [with Item Limiter] (12 September 2015)
|
#162
|
Quote:
Originally Posted by Depresie
lol, nice find
|
lol, i found out that problem while testing ZPS. Was wondering why Assassin's victim doesnt explode even when the cvar is on.
Also, this looks not really nice, it can be simplified
PHP Code:
// Remove freeze task
public remove_freeze(id)
{
// Not alive or not frozen anymore
if (!g_isalive[id] || !g_frozen[id])
return;
// Unfreeze
g_frozen[id] = false;
// Restore gravity and maxspeed (bugfix)
set_pev(id, pev_gravity, g_frozen_gravity[id])
ExecuteHamB(Ham_Player_ResetMaxSpeed, id)
// Restore rendering
if (g_handle_models_on_separate_ent)
{
// Nemesis, Survivor or Sniper glow / remove glow on player model entity
if (g_nemesis[id] && get_pcvar_num(cvar_nemglow))
fm_set_rendering(g_ent_playermodel[id], kRenderFxGlowShell, 250, 0, 0, kRenderNormal, 25)
else if (g_nemesis[id] && !(get_pcvar_num(cvar_nemglow)))
fm_set_rendering(g_ent_playermodel[id], kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 25)
else if (g_assassin[id] && get_pcvar_num(cvar_assassinglow))
fm_set_rendering(g_ent_playermodel[id], kRenderFxGlowShell, 250, 0, 0, kRenderNormal, 25)
else if (g_assassin[id] && !(get_pcvar_num(cvar_assassinglow)))
fm_set_rendering(g_ent_playermodel[id], kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 25)
else if (g_bombardier[id] && get_pcvar_num( cvar_bombardierglow ) )
fm_set_rendering(g_ent_playermodel[id], kRenderFxGlowShell, 255, 140 , 0, kRenderNormal, 25)
else if (g_bombardier[id] && !( get_pcvar_num( cvar_bombardierglow ) ) )
fm_set_rendering(g_ent_playermodel[id], kRenderFxGlowShell, 0, 0 , 0, kRenderNormal, 25)
else if (g_survivor[id] && get_pcvar_num(cvar_survglow))
fm_set_rendering(g_ent_playermodel[id], kRenderFxGlowShell, 0, 10, 255, kRenderNormal, 25)
else if (g_survivor[id] && !(get_pcvar_num(cvar_survglow)))
fm_set_rendering(g_ent_playermodel[id], kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 25)
else if (g_sniper[id] && get_pcvar_num(cvar_sniperglow))
fm_set_rendering(g_ent_playermodel[id], kRenderFxGlowShell, get_pcvar_num(cvar_snipercolor[0]), get_pcvar_num(cvar_snipercolor[1]), get_pcvar_num(cvar_snipercolor[2]), kRenderNormal, 25)
else if (g_sniper[id] && !(get_pcvar_num(cvar_sniperglow)))
fm_set_rendering(g_ent_playermodel[id], kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 25)
else
fm_set_rendering(g_ent_playermodel[id])
}
else
{
// Nemesis, Survivor or Sniper glow / remove glow
if (g_nemesis[id] && get_pcvar_num(cvar_nemglow))
fm_set_rendering(id, kRenderFxGlowShell, 250, 0, 0, kRenderNormal, 25)
else if (g_nemesis[id] && !(get_pcvar_num(cvar_nemglow)))
fm_set_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 25)
else if (g_assassin[id] && get_pcvar_num(cvar_assassinglow))
fm_set_rendering(id, kRenderFxGlowShell, 250, 0, 0, kRenderNormal, 25)
else if (g_assassin[id] && !(get_pcvar_num(cvar_assassinglow)))
fm_set_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 25)
else if (g_bombardier[id] && get_pcvar_num( cvar_bombardierglow ) )
fm_set_rendering( id, kRenderFxGlowShell, 255, 140 , 0, kRenderNormal, 25)
else if (g_bombardier[id] && !( get_pcvar_num( cvar_bombardierglow ) ) )
fm_set_rendering( id, kRenderFxGlowShell, 0, 0 , 0, kRenderNormal, 25)
else if (g_survivor[id] && get_pcvar_num(cvar_survglow))
fm_set_rendering(id, kRenderFxGlowShell, 0, 10, 255, kRenderNormal, 25)
else if (g_survivor[id] && !(get_pcvar_num(cvar_survglow)))
fm_set_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 25)
else if (g_sniper[id] && get_pcvar_num(cvar_sniperglow))
fm_set_rendering(id, kRenderFxGlowShell, get_pcvar_num(cvar_snipercolor[0]), get_pcvar_num(cvar_snipercolor[1]), get_pcvar_num(cvar_snipercolor[2]), kRenderNormal, 25)
else if (g_sniper[id] && !(get_pcvar_num(cvar_sniperglow)))
fm_set_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 25)
else
fm_set_rendering(id)
}
// Gradually remove screen's blue tint
message_begin(MSG_ONE, g_msgScreenFade, _, id)
write_short(UNIT_SECOND) // duration
write_short(0) // hold time
write_short(FFADE_IN) // fade type
write_byte(0) // red
write_byte(50) // green
write_byte(200) // blue
write_byte(100) // alpha
message_end()
// Broken glass sound
static sound[64]
ArrayGetString(grenade_frost_break, random_num(0, ArraySize(grenade_frost_break) - 1), sound, charsmax(sound))
emit_sound(id, CHAN_BODY, sound, 1.0, ATTN_NORM, 0, PITCH_NORM)
// Get player's origin
static origin2[3]
get_user_origin(id, origin2)
// Glass shatter
message_begin(MSG_PVS, SVC_TEMPENTITY, origin2)
write_byte(TE_BREAKMODEL) // TE id
write_coord(origin2[0]) // x
write_coord(origin2[1]) // y
write_coord(origin2[2]+24) // z
write_coord(16) // size x
write_coord(16) // size y
write_coord(16) // size z
write_coord(random_num(-50, 50)) // velocity x
write_coord(random_num(-50, 50)) // velocity y
write_coord(25) // velocity z
write_byte(10) // random velocity
write_short(g_glassSpr) // model
write_byte(10) // count
write_byte(25) // life
write_byte(BREAK_GLASS) // flags
message_end()
ExecuteForward(g_fwUserUnfrozen, g_fwDummyResult, id);
}
|
|