(svn r2921) -Codechange: moved all AI-code to 1 central place (ai/ai.c)

-Fix: removed the ability for the oldAI to cheat (this will criple him somewhat)
-Add: base-code for many improvements to come in the AI-system
-Add: added base-code for multiplayer AIs (DOES NOT WORK YET!)
This commit is contained in:
truelight
2005-09-07 15:10:11 +00:00
parent e39bf0dc34
commit 991d5c6234
8 changed files with 346 additions and 49 deletions

View File

@@ -39,6 +39,7 @@
#include "signs.h"
#include "depot.h"
#include "waypoint.h"
#include "ai/ai.h"
#include <stdarg.h>
@@ -50,7 +51,6 @@
void GenerateWorld(int mode, uint size_x, uint size_y);
void CallLandscapeTick(void);
void IncreaseDate(void);
void RunOtherPlayersLoop(void);
void DoPaletteAnimations(void);
void MusicLoop(void);
void ResetMusic(void);
@@ -452,6 +452,9 @@ int ttd_main(int argc, char* argv[])
/* initialize all variables that are allocated dynamically */
InitializeDynamicVariables();
/* start the AI */
AI_Initialize();
// Sample catalogue
DEBUG(misc, 1) ("Loading sound effects...");
MxInitialize(11025);
@@ -535,6 +538,9 @@ int ttd_main(int argc, char* argv[])
/* uninitialize variables that are allocated dynamic */
UnInitializeDynamicVariables();
/* stop the AI */
AI_Uninitialize();
/* Close all and any open filehandles */
FioCloseAll();
UnInitializeGame();
@@ -870,10 +876,7 @@ void StateGameLoop(void)
CallVehicleTicks();
CallLandscapeTick();
// To bad the AI does not work in multiplayer, because states are not saved
// perfectly
if (!_networking)
RunOtherPlayersLoop();
AI_RunGameLoop();
CallWindowTickEvent();
NewsLoop();