diff --git a/src/game/g_player.pas b/src/game/g_player.pas
index 23be583051a8a69d66adac8c96af8ae2a4e2ca23..19d6be55027fbad4ea488a2915b2d034f5a464e0 100644 (file)
--- a/src/game/g_player.pas
+++ b/src/game/g_player.pas
procedure g_Bot_AddList(Team: Byte; lname: ShortString; num: Integer = -1; Handicap: Integer = 100);
procedure g_Bot_MixNames();
procedure g_Bot_RemoveAll();
+function g_Bot_GetCount(): Integer;
implementation
begin
if not g_Game_IsServer then Exit;
+// Íå äîáàâëÿåì áîòîâ åñëè ëèìèò óæå äîñòèãíóò
+ if (g_Bot_GetCount() >= gMaxBots) then Exit;
+
// Ñïèñîê íàçâàíèé ìîäåëåé:
m := g_PlayerModel_GetNames();
if m = nil then
begin
if not g_Game_IsServer then Exit;
+// Íå äîáàâëÿåì áîòîâ åñëè ëèìèò óæå äîñòèãíóò
+ if (g_Bot_GetCount() >= gMaxBots) then Exit;
+
// Ñïèñîê íàçâàíèé ìîäåëåé:
m := g_PlayerModel_GetNames();
if m = nil then
Result := Result + 1;
end;
+function g_Bot_GetCount(): Integer;
+var
+ a: Integer;
+begin
+ Result := 0;
+
+ if gPlayers = nil then
+ Exit;
+
+ for a := 0 to High(gPlayers) do
+ if (gPlayers[a] <> nil) and (gPlayers[a] is TBot) then
+ Result := Result + 1;
+end;
+
function g_Player_GetStats(): TPlayerStatArray;
var
a: Integer;