fix: do rotation instantly, and not on round start
so it works on infinite round like in csdm
This commit is contained in:
parent
40a81e3378
commit
19c5e6dd4d
3 changed files with 9 additions and 8 deletions
|
|
@ -1190,6 +1190,7 @@ extern ConVar cv_debug;
|
||||||
extern ConVar cv_debug_goal;
|
extern ConVar cv_debug_goal;
|
||||||
extern ConVar cv_save_bots_names;
|
extern ConVar cv_save_bots_names;
|
||||||
extern ConVar cv_random_knife_attacks;
|
extern ConVar cv_random_knife_attacks;
|
||||||
|
extern ConVar cv_rotate_bots;
|
||||||
|
|
||||||
extern ConVar mp_freezetime;
|
extern ConVar mp_freezetime;
|
||||||
extern ConVar mp_roundtime;
|
extern ConVar mp_roundtime;
|
||||||
|
|
|
||||||
|
|
@ -3001,6 +3001,14 @@ void Bot::frame () {
|
||||||
showChaterIcon (false); // end voice feedback
|
showChaterIcon (false); // end voice feedback
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// kick the bot if stay time is over, the quota maintain will add new bot for us later
|
||||||
|
if (cv_rotate_bots.bool_ () && m_stayTime < game.time ()) {
|
||||||
|
m_kickedByRotation = true; // kicked by roration, so not save bot name if save bot names is active
|
||||||
|
|
||||||
|
kick ();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
// clear enemy far away
|
// clear enemy far away
|
||||||
if (!m_lastEnemyOrigin.empty () && !game.isNullEntity (m_lastEnemy) && pev->origin.distanceSq (m_lastEnemyOrigin) >= cr::square (1600.0f)) {
|
if (!m_lastEnemyOrigin.empty () && !game.isNullEntity (m_lastEnemy) && pev->origin.distanceSq (m_lastEnemyOrigin) >= cr::square (1600.0f)) {
|
||||||
m_lastEnemy = nullptr;
|
m_lastEnemy = nullptr;
|
||||||
|
|
|
||||||
|
|
@ -1236,14 +1236,6 @@ void BotManager::handleDeath (edict_t *killer, edict_t *victim) {
|
||||||
void Bot::newRound () {
|
void Bot::newRound () {
|
||||||
// this function initializes a bot after creation & at the start of each round
|
// this function initializes a bot after creation & at the start of each round
|
||||||
|
|
||||||
// kick the bot if stay time is over, the quota maintain will add new bot for us later
|
|
||||||
if (cv_rotate_bots.bool_ () && m_stayTime < game.time ()) {
|
|
||||||
m_kickedByRotation = true; // kicked by roration, so not save bot name if save bot names is active
|
|
||||||
|
|
||||||
kick ();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// delete all allocated path nodes
|
// delete all allocated path nodes
|
||||||
clearSearchNodes ();
|
clearSearchNodes ();
|
||||||
clearRoute ();
|
clearRoute ();
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue