bool autocvar_g_overkill_powerups_replace;
+bool autocvar_g_overkill_itemwaypoints = true;
+
bool autocvar_g_overkill_filter_healthmega;
bool autocvar_g_overkill_filter_armormedium;
bool autocvar_g_overkill_filter_armorbig;
if(IS_DEAD(player) || !IS_PLAYER(player) || STAT(FROZEN, player))
return;
- if(PHYS_INPUT_BUTTON_ATCK2(player))
+ if(PHYS_INPUT_BUTTON_ATCK2(player) && time >= player.jump_interval)
if( !forbidWeaponUse(player)
|| (round_handler_IsActive() && !round_handler_IsRoundStarted()) )
- if(time >= player.jump_interval)
{
player.jump_interval = time + WEP_CVAR_PRI(blaster, refire) * W_WeaponRateFactor(player);
makevectors(player.v_angle);
}
}
+bool ok_HandleItemWaypoints(entity e)
+{
+ if(!autocvar_g_overkill_itemwaypoints)
+ return false; // don't handle it
+
+ switch(e.itemdef)
+ {
+ case ITEM_HealthMega: return true;
+ case ITEM_ArmorMedium: return true;
+ case ITEM_ArmorBig: return true;
+ case ITEM_ArmorMega: return true;
+ }
+
+ return false;
+}
+
+MUTATOR_HOOKFUNCTION(ok, Item_RespawnCountdown)
+{
+ entity item = M_ARGV(0, entity);
+ return ok_HandleItemWaypoints(item);
+}
+
+MUTATOR_HOOKFUNCTION(ok, Item_ScheduleRespawn)
+{
+ entity item = M_ARGV(0, entity);
+ return ok_HandleItemWaypoints(item);
+}
+
MUTATOR_HOOKFUNCTION(ok, FilterItem)
{
entity item = M_ARGV(0, entity);