diff --git a/src/ai/api/ai_controller.cpp b/src/ai/api/ai_controller.cpp index d11a2add5f..f783bbabb9 100644 --- a/src/ai/api/ai_controller.cpp +++ b/src/ai/api/ai_controller.cpp @@ -56,12 +56,12 @@ AIController::~AIController() this->loaded_library.clear(); } -uint AIController::GetTick() +/* static */ uint AIController::GetTick() { - return this->ticks; + return ::GetCompany(_current_company)->ai_instance->GetController()->ticks; } -int AIController::GetSetting(const char *name) +/* static */ int AIController::GetSetting(const char *name) { return AIConfig::GetConfig(_current_company)->GetSetting(name); } diff --git a/src/ai/api/ai_controller.hpp b/src/ai/api/ai_controller.hpp index d4e2bd6dcb..5304039c2d 100644 --- a/src/ai/api/ai_controller.hpp +++ b/src/ai/api/ai_controller.hpp @@ -41,14 +41,14 @@ public: * Find at which tick your AI currently is. * @return returns the current tick. */ - uint GetTick(); + static uint GetTick(); /** * Get the value of one of your settings you set via info.nut. * @param name The name of the setting. * @return the value for the setting, or -1 if the setting is not known. */ - int GetSetting(const char *name); + static int GetSetting(const char *name); /** * Change the minimum amount of time the AI should be put in suspend mode diff --git a/src/ai/api/ai_controller.hpp.sq b/src/ai/api/ai_controller.hpp.sq index 6b465dc666..911fe42b6d 100644 --- a/src/ai/api/ai_controller.hpp.sq +++ b/src/ai/api/ai_controller.hpp.sq @@ -5,10 +5,10 @@ void SQAIController_Register(Squirrel *engine) { DefSQClass SQAIController("AIController"); SQAIController.PreRegister(engine); - SQAIController.DefSQMethod(engine, &AIController::GetTick, "GetTick", 1, "x"); - SQAIController.DefSQStaticMethod(engine, &AIController::SetCommandDelay, "SetCommandDelay", 2, "xi"); - SQAIController.DefSQStaticMethod(engine, &AIController::Sleep, "Sleep", 2, "xi"); - SQAIController.DefSQStaticMethod(engine, &AIController::GetSetting, "GetSetting", 2, "xs"); - SQAIController.DefSQStaticMethod(engine, &AIController::Print, "Print", 3, "xbs"); + SQAIController.DefSQStaticMethod(engine, &AIController::GetTick, "GetTick", 1, "?"); + SQAIController.DefSQStaticMethod(engine, &AIController::SetCommandDelay, "SetCommandDelay", 2, "?i"); + SQAIController.DefSQStaticMethod(engine, &AIController::Sleep, "Sleep", 2, "?i"); + SQAIController.DefSQStaticMethod(engine, &AIController::GetSetting, "GetSetting", 2, "?s"); + SQAIController.DefSQStaticMethod(engine, &AIController::Print, "Print", 3, "?bs"); SQAIController.PostRegister(engine); }