diff options
Diffstat (limited to 'src/script')
-rw-r--r-- | src/script/api/game/game_town.hpp.sq | 1 | ||||
-rw-r--r-- | src/script/api/script_town.cpp | 6 | ||||
-rw-r--r-- | src/script/api/script_town.hpp | 10 |
3 files changed, 17 insertions, 0 deletions
diff --git a/src/script/api/game/game_town.hpp.sq b/src/script/api/game/game_town.hpp.sq index b5837bc17..ad0dfe428 100644 --- a/src/script/api/game/game_town.hpp.sq +++ b/src/script/api/game/game_town.hpp.sq @@ -40,6 +40,7 @@ void SQGSTown_Register(Squirrel *engine) SQGSTown.DefSQStaticMethod(engine, &ScriptTown::GetTownCount, "GetTownCount", 1, "."); SQGSTown.DefSQStaticMethod(engine, &ScriptTown::IsValidTown, "IsValidTown", 2, ".i"); SQGSTown.DefSQStaticMethod(engine, &ScriptTown::GetName, "GetName", 2, ".i"); + SQGSTown.DefSQStaticMethod(engine, &ScriptTown::SetText, "SetText", 3, ".i."); SQGSTown.DefSQStaticMethod(engine, &ScriptTown::GetPopulation, "GetPopulation", 2, ".i"); SQGSTown.DefSQStaticMethod(engine, &ScriptTown::GetHouseCount, "GetHouseCount", 2, ".i"); SQGSTown.DefSQStaticMethod(engine, &ScriptTown::GetLocation, "GetLocation", 2, ".i"); diff --git a/src/script/api/script_town.cpp b/src/script/api/script_town.cpp index d213f1d0d..081bccd51 100644 --- a/src/script/api/script_town.cpp +++ b/src/script/api/script_town.cpp @@ -43,6 +43,12 @@ return town_name; } +/* static */ bool ScriptTown::SetText(TownID town_id, const char *text) +{ + EnforcePrecondition(false, IsValidTown(town_id)); + return ScriptObject::DoCommand(::Town::Get(town_id)->xy, town_id, 0, CMD_TOWN_SET_TEXT, text); +} + /* static */ int32 ScriptTown::GetPopulation(TownID town_id) { if (!IsValidTown(town_id)) return -1; diff --git a/src/script/api/script_town.hpp b/src/script/api/script_town.hpp index 0cee78694..d7f0c44f3 100644 --- a/src/script/api/script_town.hpp +++ b/src/script/api/script_town.hpp @@ -128,6 +128,16 @@ public: static char *GetName(TownID town_id); /** + * Set the custom text of a town, shown in the GUI. + * @param town_id The town to set the custom text of. + * @param text The text to set it to. + * @pre IsValidTown(town_id). + * @return True if the action succeeded. + * @api -ai + */ + static bool SetText(TownID town_id, const char *text); + + /** * Gets the number of inhabitants in the town. * @param town_id The town to get the population of. * @pre IsValidTown(town_id). |