diff --git a/src/script/api/script_industry.cpp b/src/script/api/script_industry.cpp --- a/src/script/api/script_industry.cpp +++ b/src/script/api/script_industry.cpp @@ -294,3 +294,19 @@ ::Owner owner = (company == ScriptCompany::COMPANY_INVALID ? ::INVALID_OWNER : (::Owner)company); return ScriptObject::Command::Do(industry_id, owner, true); } + +/* static */ SQInteger ScriptIndustry::GetProductionLevel(IndustryID industry_id) +{ + Industry *i = Industry::GetIfValid(industry_id); + if (i == nullptr) return 0; + return i->prod_level; +} + +/* static */ bool ScriptIndustry::SetProductionLevel(IndustryID industry_id, SQInteger prod_level, bool show_news) +{ + EnforceDeityMode(false); + EnforcePrecondition(false, IsValidIndustry(industry_id)); + EnforcePrecondition(false, prod_level >= PRODLEVEL_MINIMUM && prod_level <= PRODLEVEL_MAXIMUM); + + return ScriptObject::Command::Do(industry_id, prod_level, show_news); +}