summaryrefslogtreecommitdiff
path: root/src/script/api/script_object.cpp
AgeCommit message (Collapse)Author
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-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
2019-03-20Remove: ENABLE_NETWORK switchPatric Stout
This switch has been a pain for years. Often disabling broke compilation, as no developer compiles OpenTTD without, neither do any of our official binaries. Additionaly, it has grown so hugely in our codebase, that it clearly shows that the current solution was a poor one. 350+ instances of "#ifdef ENABLE_NETWORK" were in the code, of which only ~30 in the networking code itself. The rest were all around the code to do the right thing, from GUI to NewGRF. A more proper solution would be to stub all the functions, and make sure the rest of the code can simply assume network is available. This was also partially done, and most variables were correct if networking was disabled. Despite that, often the #ifdefs were still used. With the recent removal of DOS, there is also no platform anymore which we support where networking isn't working out-of-the-box. All in all, it is time to remove the ENABLE_NETWORK switch. No replacement is planned, but if you feel we really need this option, we welcome any Pull Request which implements this in a way that doesn't crawl through the code like this diff shows we used to.
2014-04-25(svn r26509) -Codechange: replace strdup with stredup (the latter ensures ↵rubidium
the return is not NULL)
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-24(svn r26093) -Fix (r26092): compilation errorrubidium
2013-11-24(svn r26092) -Fix [FS#5818]: prevent scripts from crashing OpenTTD when they ↵rubidium
send text with command codes to user editable texts such as sign and station names
2013-06-27(svn r25488) -Fix [FS#5613]: do not send encoded texts to names, but decode ↵rubidium
them into a plain C string and then pass them on
2013-06-09(svn r25342) -Add: StoryPage data structures and GS APIzuu
2013-05-29(svn r25305) -Fix [FS#5561]: Game Script APIs that execute a DoCommand were ↵zuu
returning the same result as in TestMode during world generation
2012-03-04(svn r24008) -Cleanup/doc: try not to mention (No)AI in script APIsrubidium
2012-01-08(svn r23778) -Fix [FS#4957]: trim all control codes and the likes from ↵rubidium
strings being passed into the AI. If the AI would be displaying them later we would be showing those control codes as question marks.
2012-01-08(svn r23777) -Codechange: refactor allocating memory and fetching strings ↵rubidium
into a single function for scripts
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 r23611) -Add: run the begin of the script already while generating, and ↵truebrain
don't sleep on DoCommand while doing so
2011-12-14(svn r23515) -Cleanup: Remove unused ScriptObject::GetNewTunnelEndtile() and ↵frosch
relatives.
2011-11-29(svn r23369) -Codechange: use script includes when possible, not ai includestruebrain
2011-11-29(svn r23367) -Codechange: refactor GetSetting to ScriptInstance, to avoid ↵truebrain
global variable in script_controller
2011-11-29(svn r23361) -Codechange: move multiplayer DoCommand callback code so other ↵truebrain
script users can call their own
2011-11-29(svn r23360) -Codechange: move AIInstance to ScriptInstance, making it ↵truebrain
reusable by other script API instances
2011-11-29(svn r23359) -Codechange: move AI_VMSuspend to Script_Suspend (and to its ↵truebrain
own file)
2011-11-29(svn r23358) -Codechange: move AI_FatalError to Script_FatalError (and to ↵truebrain
its own file)
2011-11-29(svn r23357) -Codechange: move AIStorage to ScriptStoragetruebrain
2011-11-29(svn r23355) -Codechange: rename all AI* to Script* (Rubidium)truebrain
2011-11-29(svn r23354) -Codechange: move all src/ai/api/ai_*.[hc]pp files to ↵truebrain
src/script/api/script_* (Rubidium)