From a8250fd244f725f88bb7659a6c1f948502c50bcd Mon Sep 17 00:00:00 2001 From: Marco Cawthorne Date: Fri, 26 Jan 2024 19:08:48 -0800 Subject: [PATCH] Fixes against upstream Nuclide. Added zpak001.pk3dir/def/bot.def and make use of it. --- src/server/bot.qc | 7 +++++-- src/server/gamerules_deathmatch.qc | 2 ++ src/server/gamerules_multiplayer.qc | 14 -------------- zpak001.pk3dir/def/bot.def | 4 ++++ 4 files changed, 11 insertions(+), 16 deletions(-) create mode 100644 zpak001.pk3dir/def/bot.def diff --git a/src/server/bot.qc b/src/server/bot.qc index 720b9a7..db1fbd8 100644 --- a/src/server/bot.qc +++ b/src/server/bot.qc @@ -23,7 +23,7 @@ vector getEntityCenterPos(entity e) { return newVec; } -class csbot:bot +class csbot:NSBot { void(void) csbot; @@ -372,6 +372,10 @@ void csbot::AimLerp(vector aimpos, float flLerp) { void csbot::PostFrame(void) { + if (team == 0) { + CSEv_JoinAuto(); + } + team = infokeyf(this, "*team"); m_gflagsBackup = gflags; }; @@ -439,7 +443,6 @@ csbot::GetVIPSafetyZoneByIndex(int index) void csbot::csbot(void) { - bot::bot(); targetname = "_csbot_"; team = infokeyf(this, "*team"); m_actionIsPlanting = FALSE; diff --git a/src/server/gamerules_deathmatch.qc b/src/server/gamerules_deathmatch.qc index 9b6838c..5cec6f9 100644 --- a/src/server/gamerules_deathmatch.qc +++ b/src/server/gamerules_deathmatch.qc @@ -252,6 +252,7 @@ CSDeathmatchRules::ConsoleCommand(NSClientPlayer pp, string cmd) tokenize(cmd); switch (argv(0)) { +#if 0 case "bot_add": bot pete = (bot)Bot_AddQuick(); Bot_RandomColormap(pete); @@ -262,6 +263,7 @@ CSDeathmatchRules::ConsoleCommand(NSClientPlayer pp, string cmd) pete.SetInfoKey("model", argv(2)); search_end(pm); break; +#endif case "jumptest": makevectors(pp.v_angle); traceline(pp.origin + pp.view_ofs, pp.origin + pp.view_ofs + v_forward * 1024, FALSE, pp); diff --git a/src/server/gamerules_multiplayer.qc b/src/server/gamerules_multiplayer.qc index 5be30a4..5b80491 100644 --- a/src/server/gamerules_multiplayer.qc +++ b/src/server/gamerules_multiplayer.qc @@ -1082,26 +1082,12 @@ CSMultiplayerRules::PlayerSpawn(NSClientPlayer pl) forceinfokey(pl, "*team", "0"); } -void -CSMultiplayerRules_BotJoin(void) -{ - spawnfunc_csbot(); - CSEv_JoinAuto(); -} - bool CSMultiplayerRules::ConsoleCommand(NSClientPlayer pp, string cmd) { tokenize(cmd); switch (argv(0)) { - case "bot_add": - entity bot_ent = Bot_AddQuick(); - if (bot_ent) { - bot_ent.think = CSMultiplayerRules_BotJoin; - bot_ent.nextthink = time; - } - break; default: return (false); } diff --git a/zpak001.pk3dir/def/bot.def b/zpak001.pk3dir/def/bot.def new file mode 100644 index 0000000..7fbc892 --- /dev/null +++ b/zpak001.pk3dir/def/bot.def @@ -0,0 +1,4 @@ +entityDef bot +{ + spawnclass csbot +} \ No newline at end of file