summaryrefslogtreecommitdiff
path: root/src/script/script_instance.cpp
diff options
context:
space:
mode:
authortruebrain <truebrain@openttd.org>2011-12-19 21:05:25 +0000
committertruebrain <truebrain@openttd.org>2011-12-19 21:05:25 +0000
commitcc3f42794d134b9f4b6c7efecb07d4b3366887c1 (patch)
tree1cd422d47fc44bd59463d0f9e2ef96f2edb09b50 /src/script/script_instance.cpp
parent403cd3acdb7b7fedf2b5e823326611bb32113385 (diff)
downloadopenttd-cc3f42794d134b9f4b6c7efecb07d4b3366887c1.tar.xz
(svn r23632) -Add: GSCompanyMode, to change company in GameScripts
Diffstat (limited to 'src/script/script_instance.cpp')
-rw-r--r--src/script/script_instance.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/script/script_instance.cpp b/src/script/script_instance.cpp
index 641d939d3..23fd6b24e 100644
--- a/src/script/script_instance.cpp
+++ b/src/script/script_instance.cpp
@@ -64,11 +64,11 @@ ScriptInstance::ScriptInstance(const char *APIName) :
this->engine->SetPrintFunction(&PrintFunc);
}
-void ScriptInstance::Initialize(const char *main_script, const char *instance_name)
+void ScriptInstance::Initialize(const char *main_script, const char *instance_name, CompanyID company)
{
ScriptObject::ActiveInstance active(this);
- this->controller = new ScriptController();
+ this->controller = new ScriptController(company);
/* Register the API functions and classes */
this->engine->SetGlobalPointer(this->engine);
@@ -150,6 +150,8 @@ void ScriptInstance::GameLoop()
if (this->suspend < 0) return; // Multiplayer suspend, wait for Continue().
if (--this->suspend > 0) return; // Singleplayer suspend, decrease to 0.
+ _current_company = ScriptObject::GetCompany();
+
/* If there is a callback to call, call that first */
if (this->callback != NULL) {
if (this->is_save_data_on_stack) {