self.state = 1;
self.think = GrapplingHookThink;
self.nextthink = time;
- self.touch = SUB_Null;
+ self.touch = func_null;
self.velocity = '0 0 0';
self.movetype = MOVETYPE_NONE;
self.hook_length = -1;
error("Owner lost the hook!\n");
return;
}
- if(LostMovetypeFollow(self) || intermission_running)
+ if(LostMovetypeFollow(self) || intermission_running || (round_handler_IsActive() && !round_handler_IsRoundStarted()))
{
RemoveGrapplingHook(self.realowner);
return;
self.aiment.flags &~= FL_ONGROUND;
self.aiment.pusher = self.realowner;
self.aiment.pushltime = time + autocvar_g_maxpushtime;
+ self.aiment.istypefrag = self.aiment.BUTTON_CHAT;
}
}
{
self.realowner.pusher = attacker;
self.realowner.pushltime = time + autocvar_g_maxpushtime;
+ self.realowner.istypefrag = self.realowner.BUTTON_CHAT;
}
RemoveGrapplingHook(self.realowner);
}
float s;
vector vs;
- if((arena_roundbased && time < warmup) || (time < game_starttime))
- return;
-
- if(self.freezetag_frozen)
- return;
-
- if(self.vehicle)
- return;
+ if(forbidWeaponUse()) return;
+ if(self.vehicle) return;
makevectors(self.v_angle);