1
0
mirror of https://github.com/OpenTTD/OpenTTD synced 2026-01-16 00:42:45 +01:00

Codechange: Pass ScriptInstance by reference.

This commit is contained in:
Peter Nelson
2025-03-24 10:24:39 +00:00
committed by Peter Nelson
parent 13fcc0900e
commit 72ca962b84
14 changed files with 67 additions and 67 deletions

View File

@@ -55,7 +55,7 @@ ScriptInstance::ScriptInstance(std::string_view api_name)
void ScriptInstance::Initialize(const std::string &main_script, const std::string &instance_name, CompanyID company)
{
ScriptObject::ActiveInstance active(this);
ScriptObject::ActiveInstance active(*this);
this->controller = new ScriptController(company);
@@ -142,7 +142,7 @@ bool ScriptInstance::LoadCompatibilityScripts(Subdirectory dir, std::span<const
ScriptInstance::~ScriptInstance()
{
ScriptObject::ActiveInstance active(this);
ScriptObject::ActiveInstance active(*this);
this->in_shutdown = true;
if (instance != nullptr) this->engine->ReleaseObject(this->instance);
@@ -175,7 +175,7 @@ void ScriptInstance::Died()
void ScriptInstance::GameLoop()
{
ScriptObject::ActiveInstance active(this);
ScriptObject::ActiveInstance active(*this);
if (this->IsDead()) return;
if (this->engine->HasScriptCrashed()) {
@@ -199,7 +199,7 @@ void ScriptInstance::GameLoop()
this->is_save_data_on_stack = false;
}
try {
this->callback(this);
this->callback(*this);
} catch (Script_Suspend &e) {
this->suspend = e.GetSuspendTime();
this->callback = e.GetSuspendCallback();
@@ -265,54 +265,54 @@ void ScriptInstance::GameLoop()
void ScriptInstance::CollectGarbage()
{
if (this->is_started && !this->IsDead()) {
ScriptObject::ActiveInstance active(this);
ScriptObject::ActiveInstance active(*this);
this->engine->CollectGarbage();
}
}
/* static */ void ScriptInstance::DoCommandReturn(ScriptInstance *instance)
/* static */ void ScriptInstance::DoCommandReturn(ScriptInstance &instance)
{
instance->engine->InsertResult(ScriptObject::GetLastCommandRes());
instance.engine->InsertResult(ScriptObject::GetLastCommandRes());
}
/* static */ void ScriptInstance::DoCommandReturnVehicleID(ScriptInstance *instance)
/* static */ void ScriptInstance::DoCommandReturnVehicleID(ScriptInstance &instance)
{
instance->engine->InsertResult(EndianBufferReader::ToValue<VehicleID>(ScriptObject::GetLastCommandResData()));
instance.engine->InsertResult(EndianBufferReader::ToValue<VehicleID>(ScriptObject::GetLastCommandResData()));
}
/* static */ void ScriptInstance::DoCommandReturnSignID(ScriptInstance *instance)
/* static */ void ScriptInstance::DoCommandReturnSignID(ScriptInstance &instance)
{
instance->engine->InsertResult(EndianBufferReader::ToValue<SignID>(ScriptObject::GetLastCommandResData()));
instance.engine->InsertResult(EndianBufferReader::ToValue<SignID>(ScriptObject::GetLastCommandResData()));
}
/* static */ void ScriptInstance::DoCommandReturnGroupID(ScriptInstance *instance)
/* static */ void ScriptInstance::DoCommandReturnGroupID(ScriptInstance &instance)
{
instance->engine->InsertResult(EndianBufferReader::ToValue<GroupID>(ScriptObject::GetLastCommandResData()));
instance.engine->InsertResult(EndianBufferReader::ToValue<GroupID>(ScriptObject::GetLastCommandResData()));
}
/* static */ void ScriptInstance::DoCommandReturnGoalID(ScriptInstance *instance)
/* static */ void ScriptInstance::DoCommandReturnGoalID(ScriptInstance &instance)
{
instance->engine->InsertResult(EndianBufferReader::ToValue<GoalID>(ScriptObject::GetLastCommandResData()));
instance.engine->InsertResult(EndianBufferReader::ToValue<GoalID>(ScriptObject::GetLastCommandResData()));
}
/* static */ void ScriptInstance::DoCommandReturnStoryPageID(ScriptInstance *instance)
/* static */ void ScriptInstance::DoCommandReturnStoryPageID(ScriptInstance &instance)
{
instance->engine->InsertResult(EndianBufferReader::ToValue<StoryPageID>(ScriptObject::GetLastCommandResData()));
instance.engine->InsertResult(EndianBufferReader::ToValue<StoryPageID>(ScriptObject::GetLastCommandResData()));
}
/* static */ void ScriptInstance::DoCommandReturnStoryPageElementID(ScriptInstance *instance)
/* static */ void ScriptInstance::DoCommandReturnStoryPageElementID(ScriptInstance &instance)
{
instance->engine->InsertResult(EndianBufferReader::ToValue<StoryPageElementID>(ScriptObject::GetLastCommandResData()));
instance.engine->InsertResult(EndianBufferReader::ToValue<StoryPageElementID>(ScriptObject::GetLastCommandResData()));
}
/* static */ void ScriptInstance::DoCommandReturnLeagueTableElementID(ScriptInstance *instance)
/* static */ void ScriptInstance::DoCommandReturnLeagueTableElementID(ScriptInstance &instance)
{
instance->engine->InsertResult(EndianBufferReader::ToValue<LeagueTableElementID>(ScriptObject::GetLastCommandResData()));
instance.engine->InsertResult(EndianBufferReader::ToValue<LeagueTableElementID>(ScriptObject::GetLastCommandResData()));
}
/* static */ void ScriptInstance::DoCommandReturnLeagueTableID(ScriptInstance *instance)
/* static */ void ScriptInstance::DoCommandReturnLeagueTableID(ScriptInstance &instance)
{
instance->engine->InsertResult(EndianBufferReader::ToValue<LeagueTableID>(ScriptObject::GetLastCommandResData()));
instance.engine->InsertResult(EndianBufferReader::ToValue<LeagueTableID>(ScriptObject::GetLastCommandResData()));
}
@@ -323,7 +323,7 @@ ScriptStorage *ScriptInstance::GetStorage()
ScriptLogTypes::LogData &ScriptInstance::GetLogData()
{
ScriptObject::ActiveInstance active(this);
ScriptObject::ActiveInstance active(*this);
return ScriptObject::GetLogData();
}
@@ -501,7 +501,7 @@ static const SaveLoad _script_byte[] = {
void ScriptInstance::Save()
{
ScriptObject::ActiveInstance active(this);
ScriptObject::ActiveInstance active(*this);
/* Don't save data if the script didn't start yet or if it crashed. */
if (this->engine == nullptr || this->engine->HasScriptCrashed()) {
@@ -739,7 +739,7 @@ bool ScriptInstance::IsPaused()
void ScriptInstance::LoadOnStack(ScriptData *data)
{
ScriptObject::ActiveInstance active(this);
ScriptObject::ActiveInstance active(*this);
if (this->IsDead() || data == nullptr) return;
@@ -803,7 +803,7 @@ SQInteger ScriptInstance::GetOpsTillSuspend()
bool ScriptInstance::DoCommandCallback(const CommandCost &result, const CommandDataBuffer &data, CommandDataBuffer result_data, Commands cmd)
{
ScriptObject::ActiveInstance active(this);
ScriptObject::ActiveInstance active(*this);
if (!ScriptObject::CheckLastCommand(data, cmd)) {
Debug(script, 1, "DoCommandCallback terminating a script, last command does not match expected command");
@@ -827,7 +827,7 @@ bool ScriptInstance::DoCommandCallback(const CommandCost &result, const CommandD
void ScriptInstance::InsertEvent(class ScriptEvent *event)
{
ScriptObject::ActiveInstance active(this);
ScriptObject::ActiveInstance active(*this);
ScriptEventController::InsertEvent(event);
}