// legacy bot roles
.float race_checkpoint;
void havocbot_role_race()
-{
+{SELFPARAM();
if(self.deadflag != DEAD_NO)
return;
}
MUTATOR_HOOKFUNCTION(race_PlayerPhysics)
-{
+{SELFPARAM();
// force kbd movement for fairness
float wishspeed;
vector wishvel;
}
MUTATOR_HOOKFUNCTION(race_PlayerPreThink)
-{
+{SELFPARAM();
if(IS_SPEC(self) || IS_OBSERVER(self))
if(g_race_qualifying)
if(msg_entity.enemy.race_laptime)
}
MUTATOR_HOOKFUNCTION(race_ClientConnect)
-{
+{SELFPARAM();
race_PreparePlayer();
self.race_checkpoint = -1;
}
MUTATOR_HOOKFUNCTION(race_MakePlayerObserver)
-{
+{SELFPARAM();
if(g_race_qualifying)
if(PlayerScore_Add(self, SP_RACE_FASTEST, 0))
self.frags = FRAGS_LMS_LOSER;
}
MUTATOR_HOOKFUNCTION(race_PlayerSpawn)
-{
+{SELFPARAM();
if(spawn_spot.target == "")
// Emergency: this wasn't a real spawnpoint. Can this ever happen?
race_PreparePlayer();
}
MUTATOR_HOOKFUNCTION(race_PutClientInServer)
-{
+{SELFPARAM();
if(IS_PLAYER(self))
if(!gameover)
{
}
MUTATOR_HOOKFUNCTION(race_PlayerDies)
-{
+{SELFPARAM();
self.respawn_flags |= RESPAWN_FORCE;
race_AbandonRaceCheck(self);
return false;
}
MUTATOR_HOOKFUNCTION(race_BotRoles)
-{
+{SELFPARAM();
self.havocbot_role = havocbot_role_race;
return true;
}
MUTATOR_HOOKFUNCTION(race_PlayerPostThink)
-{
+{SELFPARAM();
if(self.cvar_cl_allow_uidtracking == 1 && self.cvar_cl_allow_uid2name == 1)
{
if (!self.stored_netname)