summaryrefslogtreecommitdiff
path: root/src/script/script_instance.cpp
AgeCommit message (Collapse)Author
2021-06-12Fix #9353: [Script] Garbage collecting on priority queues could crash the gamerubidium42
2021-06-10Fix: [Script] Ensure the saved script strings are properly validated and ↵rubidium42
terminated when being read from the savegame
2021-05-31Codechange: C++-ify lists for SaveLoad (#9323)Patric Stout
Basically, this changes "SaveLoad *" to either: 1) "SaveLoadTable" if a list of SaveLoads was meant 2) "SaveLoad &" if a single entry was meant As added bonus, this removes SL_END / SLE_END / SLEG_END. This also adds core/span.hpp, a "std::span"-lite.
2021-05-03Codechange: Replace FOR_ALL_SEARCHPATHS with range-based for loopsglx22
2021-04-17Change: [Script] Let Script_FatalError use std::string instead of const char *Rubidium
2020-12-27Codechange: Convert some more FIO functions to take std::string.Michael Lutz
2020-12-27Codechange: Use std::string in FIO search path handling.Michael Lutz
2020-06-01Add: [Script] Native priority queue; useful e.g. for pathfinders.Michael Lutz
2019-11-15Fix #7606: Game crash when trying to clean up a crashed scriptCharles Pigott
Also fix another possible memory leak
2019-11-15Codechange: new instead of mallocCharles Pigott
2019-11-10Cleanup: Removed SVN headersS. D. Cloudt
2019-09-07Fix b3fd7879: Ignore command flags when verifying script commandsNiels Martin Hansen
Multiplayer games has the server add some flags to the cmd value during the handling. These flags should not be included in the verification, mask them out. Without this masking out, scripts tend to die when executing their first command in multiplayer.
2019-09-07Fix #7188: check the validity of command callback for scripts (#7701)glx22
2019-05-15Codechange: catch script exceptions by referenceglx
2019-05-11Change: Limit memory allocations for each Squirrel instanceNiels Martin Hansen
This can avoid out-of-memory situations due to single scripts using up the entire address space. Instead, scripts that go above the maximum are killed. The maximum is default 1 GB per script, but can be configured by a setting.
2019-04-10Codechange: Use null pointer literal instead of the NULL macroHenry Wilson
2014-09-07(svn r26785) -Fix [Squirrel]: loading a value saved as boolean caused it to ↵rubidium
be of type integer instead of boolean
2014-09-06(svn r26771) -Cleanup: remove OTTD2SQ and SQ2OTTDrubidium
2014-04-23(svn r26489) -Codechange: properly account for the end of buffers in the ↵rubidium
file io code instead of assuming MAX_PATH is okay
2014-04-23(svn r26485) -Codechange: Replace ttd_strlcpy and ttd_strlcat with strecpy ↵frosch
and strecat.
2014-04-23(svn r26482) -Codechange: add an include that allows us to undefine/redefine ↵rubidium
"unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values
2013-11-23(svn r26057) -Fix: a number of possibly uninitialised variablesrubidium
2013-06-09(svn r25342) -Add: StoryPage data structures and GS APIzuu
2012-09-21(svn r24538) -Fix-ish: remove compiler warning about initialization orderyexo
2012-09-21(svn r24537) -Feature: Scripts can be suspended even if the game is still ↵zuu
progressing, thus break-on-log now works also for Game Scripts.
2012-08-13(svn r24468) -Add [FS#5219]: API compatibility scripts for Goal Scripts ↵yexo
(Hirundo)
2012-01-03(svn r23740) -Codechange: remove some 300 unneeded includes from the .cpp filesrubidium
2011-12-19(svn r23632) -Add: GSCompanyMode, to change company in GameScriptstruebrain
2011-12-19(svn r23630) -Add: a Goal GUI to show your current goalstruebrain
2011-12-19(svn r23623) -Add: allow bi-directional communication with the AdminPort and ↵truebrain
GameScript
2011-12-01(svn r23387) -Fix: move ai.script_max_opcode_till_suspend to ↵truebrain
script.script_max_opcode_till_suspend
2011-12-01(svn r23386) -Fix: debug script related events to 'script' (removes 'ai')truebrain
2011-11-29(svn r23366) -Codechange: move most of the Dummy code to script/, unifying ittruebrain
2011-11-29(svn r23365) -Codechange: move constants to a single place, to avoid ↵truebrain
duplication (and in time, different values)
2011-11-29(svn r23360) -Codechange: move AIInstance to ScriptInstance, making it ↵truebrain
reusable by other script API instances