public client_PreThink ( id )
{
if(!is_user_alive(id)||is_user_bot(id)) return PLUGIN_CONTINUE
new clip,ammo
new weapon = get_user_weapon(id,clip,ammo)
new button2 = get_user_button(id);
if(player_class[id]==Paladyn && weapon == CSW_KNIFE && freeze_ended)
{
if((button2 & IN_DUCK) && (button2 & IN_JUMP))
{
if(JumpsLeft[id]>0)
{
new flags = pev(id,pev_flags)
if(flags & FL_ONGROUND)
{
set_pev ( id, pev_flags, flags-FL_ONGROUND )
JumpsLeft[id]--
new Float:va[3],Float:v[3]
entity_get_vector(id,EV_VEC_v_angle,va)
v[0]=floatcos(va[1]/180.0*M_PI)*560.0
v[1]=floatsin(va[1]/180.0*M_PI)*560.0
v[2]=300.0
entity_set_vector(id,EV_VEC_velocity,v)
write_hud(id)
}
}
}
}
if(flashlight[id] && flashbattery[id] && (get_cvar_num("flashlight_custom")) && (player_class[id] == Mag) || (player_class[id] == Aniol)) {
new num1, num2, num3
num1=random_num(0,2)
num2=random_num(-1,1)
num3=random_num(-1,1)
flashlight_r+=1+num1
if (flashlight_r>250) flashlight_r-=245
flashlight_g+=1+num2
if (flashlight_g>250) flashlight_g-=245
flashlight_b+=-1+num3
if (flashlight_b<5) flashlight_b+=240
new origin[3];
get_user_origin(id,origin,3);
message_begin(MSG_BROADCAST,SVC_TEMPENTITY);
write_byte(27); // TE_DLIGHT
write_coord(origin[0]); // X
write_coord(origin[1]); // Y
write_coord(origin[2]); // Z
write_byte(get_cvar_num("flashlight_radius")); // radius
write_byte(flashlight_r); // R
write_byte(flashlight_g); // G
write_byte(flashlight_b); // B
write_byte(1); // life
write_byte(get_cvar_num("flashlight_decay")); // decay rate
message_end();
new index1, bodypart1
get_user_aiming(id, index1, bodypart1);
if(is_user_alive(index1)) {
if(index1 != 54 && get_user_team(id) != get_user_team(index1) && pev(index1, pev_renderamt) < 220) {
naswietlony[index1] = 1;
set_renderchange(index1);
Display_Icon(index1, ICON_FLASH, "dmg_bio", 200, 100, 0);
if(task_exists(index1+TASK_FLASH_LIGHT)) remove_task(index1+TASK_FLASH_LIGHT);
set_task(7.5, "un_rander", index1+TASK_FLASH_LIGHT);
}
}
}
//Before freeze_ended check
if (((player_b_silent[id] > 0) || (player_class[id] == Zabojca)) && is_user_alive(id))
entity_set_int(id, EV_INT_flTimeStepSound, 300)
new Float:vect[3]
entity_get_vector(id,EV_VEC_velocity,vect)
new Float: sped= floatsqroot(vect[0]*vect[0]+vect[1]*vect[1]+vect[2]*vect[2])
if((get_user_maxspeed(id)*5)>(sped*9))
entity_set_int(id, EV_INT_flTimeStepSound, 300)
//bow model
if (button2 & IN_RELOAD && on_knife[id] && button[id]==0 && player_class[id]==Hunter){
bow[id]++
button[id] = 1;
command_bow(id)
}
if ((!(button2 & IN_RELOAD)) && on_knife[id] && button[id]==1) button[id]=0
//
if (!freeze_ended)
return PLUGIN_CONTINUE
if (earthstomp[id] != 0 && is_user_alive(id))
{
static Float:fallVelocity;
pev(id,pev_flFallVelocity,fallVelocity);
if(fallVelocity) falling[id] = true
else falling[id] = false;
}
if (player_b_jumpx[id] > 0) Prethink_Doublejump(id)
if (player_b_blink[id] > 0) Prethink_Blink(id)
if (player_b_usingwind[id] == 1) Prethink_usingwind(id)
if (player_b_oldsen[id] > 0) Prethink_confuseme(id)
if (player_b_froglegs[id] > 0) Prethink_froglegs(id)
//USE Button actives USEMAGIC
if (get_entity_flags(id) & FL_ONGROUND && (!(button2 & (IN_FORWARD+IN_BACK+IN_MOVELEFT+IN_MOVERIGHT)) || (player_class[id] == Mag && player_b_fireball[id]==0)) && is_user_alive(id) && !bow[id] && (on_knife[id] || (player_class[id] == Mag && player_b_fireball[id])) && player_class[id]!=NONE && player_class[id]!=Nekromanta && invisible_cast[id]==0)
{
if(casting[id]==1 && halflife_time()>cast_end[id])
{
message_begin( MSG_ONE, gmsgBartimer, {0,0,0}, id )
write_byte( 0 )
write_byte( 0 )
message_end()
casting[id]=0
call_cast(id)
}
else if(casting[id]==0)
{
new Float: time_delay = 5.0-(player_intelligence[id]/75.0)
if(player_class[id] == Ninja) time_delay*=2.0
else if(player_class[id] == Hunter) time_delay = 5.0-(player_intelligence[id]/75)
else if(player_class[id] == Mag)
{
time_delay=time_delay = 4.0-(player_intelligence[id]/150.0)
if(player_b_fireball[id]>0) time_delay=random_float(0.5,4.0-(player_intelligence[id]/75.0))
}
else if(player_class[id] == Zabojca) time_delay*=2.0
else if(player_class[id] == Paladyn) time_delay*=1.4
cast_end[id]=halflife_time()+time_delay
new bar_delay = floatround(time_delay,floatround_ceil)
casting[id]=1
message_begin( MSG_ONE, gmsgBartimer, {0,0,0}, id )
write_byte( bar_delay )
write_byte( 0 )
message_end()
}
}
else
{
if(casting[id]==1)
{
message_begin( MSG_ONE, gmsgBartimer, {0,0,0}, id )
write_byte( 0 )
write_byte( 0 )
message_end()
}
casting[id]=0
}
if (pev(id,pev_button) & IN_USE && !casting[id])
Use_Spell(id)
if(player_class[id]==Ninja && (pev(id,pev_button) & IN_RELOAD)) command_knife(id)
else if (pev(id,pev_button) & IN_RELOAD && on_knife[id] && max_knife[id]>0) command_knife(id)
///////////////////// BOW /////////////////////////
if(player_class[id]==Hunter)
{
new clip,ammo
new weapon = get_user_weapon(id,clip,ammo)
if(bow[id] == 1)
{
if((bowdelay[id] + 4.25 - float(player_intelligence[id]/75))< get_gametime() && button2 & IN_ATTACK)
{
bowdelay[id] = get_gametime()
command_arrow(id)
}
entity_set_int(id, EV_INT_button, (button2 & ~IN_ATTACK) & ~IN_ATTACK2)
}
// nade
if(g_GrenadeTrap[id] && button2 & IN_ATTACK2)
{
switch(weapon)
{
case CSW_HEGRENADE, CSW_FLASHBANG, CSW_SMOKEGRENADE:
{
if((g_PreThinkDelay[id] + 0.28) < get_gametime())
{
switch(g_TrapMode[id])
{
case 0: g_TrapMode[id] = 1
case 1: g_TrapMode[id] = 0
}
client_print(id, print_center, "Grenade Trap %s", g_TrapMode[id] ? "[ON]" : "[OFF]")
g_PreThinkDelay[id] = get_gametime()
}
}
default: g_TrapMode[id] = 0
}
}
}
///////////////////////////////////////////////////
return PLUGIN_CONTINUE
}