dP
c73b88ddca
Fix: Don't send unused tile field over the network ( #10507 )
2023-02-24 22:50:11 +01:00
Rubidium
c5ff61c5f2
Add: script specific Randomizer instances
2023-01-14 22:00:11 +01:00
Rubidium
6abad681bd
Codechange: move choice for randomizer of scripts to a single location
2023-01-14 22:00:11 +01:00
Michael Lutz
1c205b2cda
Fix #10212 : [Script] Nested ScriptAccounting scopes are not restored properly.
2022-12-04 11:27:24 +01:00
Michael Lutz
41fa16f325
Codechange: Don't use globals for return values from vehicle command procs.
2021-12-16 22:28:32 +01:00
Michael Lutz
57b82e2e99
Codechange: Don't use globals for story/goal/sign/group command proc return values.
2021-12-16 22:28:32 +01:00
Michael Lutz
3e85e833a7
Codechange: Add support for additional command result values.
2021-12-16 22:28:32 +01:00
Michael Lutz
8503854655
Codechange: Pass unpacked command arguments to command callbacks (except Script).
2021-12-16 22:28:32 +01:00
Michael Lutz
6691ee3b96
Codechange: Template script command calls.
2021-12-16 22:28:32 +01:00
Michael Lutz
eab18f06a4
Codechange: Pass additional data as byte stream to command callbacks.
2021-12-16 22:28:32 +01:00
Michael Lutz
e740c24eb7
Codechange: Template DoCommand to automagically reflect the parameters of the command proc.
...
When finished, this will allow each command handler to take individually
different parameters, obliviating the need for bit-packing.
2021-12-16 22:28:32 +01:00
Michael Lutz
a38bbefe1b
Codechange: Untangle command code, flags and error string for DoCommand*.
2021-12-16 22:28:32 +01:00
Michael Lutz
549caca39c
Codechange: Move command arguments to the back of the networked command function calls.
2021-12-16 22:28:32 +01:00
rubidium42
55a11710a6
Codechange: convert printf DEBUG statements to fmt Debug statements
2021-06-13 12:45:45 +02:00
rubidium42
2e136285e1
Codechange: move from C-string to std::string for DoCommand
2021-05-29 19:02:18 +02:00
Patric Stout
665e3c1f45
Fix: ScriptObject::DoCommand could modify "text" while defined "const"
...
This could have unwanted side-effects, as it could change the
source for ever and ever.
2021-05-29 16:23:59 +02:00
Patric Stout
ca9a7df752
Codechange: rename str_validate to StrMakeValid(InPlace) ( #9304 )
...
This to be more explicit the function changes the value, and not
returns yes/no.
2021-05-29 11:21:38 +02:00
rubidium42
44ca7d9377
Change: Use gender-neutral pronouns
2021-05-15 10:16:48 +02:00
S. D. Cloudt
13cc8a0cee
Cleanup: Removed SVN headers
2019-11-10 17:59:20 +00:00
Niels Martin Hansen
0549a81c30
Fix b3fd7879: Ignore command flags when verifying script commands
...
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-07 19:38:13 +02:00
glx22
b3fd787959
Fix #7188 : check the validity of command callback for scripts ( #7701 )
2019-09-07 17:37:01 +01:00
Niels Martin Hansen
140a96b3a0
Change: Limit memory allocations for each Squirrel instance
...
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-05-11 15:34:33 +02:00
Henry Wilson
7c8e7c6b6e
Codechange: Use null pointer literal instead of the NULL macro
2019-04-10 23:22:20 +02:00
Patric Stout
e3c639a09f
Remove: ENABLE_NETWORK switch
...
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.
2019-03-20 19:24:55 +01:00
rubidium
9ed12b0f07
(svn r26509) -Codechange: replace strdup with stredup (the latter ensures the return is not NULL)
2014-04-25 15:40:32 +00:00
rubidium
0463dbdc9e
(svn r26482) -Codechange: add an include that allows us to undefine/redefine "unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values
2014-04-23 20:13:33 +00:00
rubidium
0460b78515
(svn r26093) -Fix (r26092): compilation error
2013-11-24 19:53:35 +00:00
rubidium
168fa4129d
(svn r26092) -Fix [FS#5818]: prevent scripts from crashing OpenTTD when they send text with command codes to user editable texts such as sign and station names
2013-11-24 19:46:16 +00:00
rubidium
19eca468fc
(svn r25488) -Fix [FS#5613]: do not send encoded texts to names, but decode them into a plain C string and then pass them on
2013-06-27 19:57:41 +00:00
zuu
9aa1bf0264
(svn r25342) -Add: StoryPage data structures and GS API
2013-06-09 12:19:09 +00:00
zuu
a58427115c
(svn r25305) -Fix [FS#5561]: Game Script APIs that execute a DoCommand were returning the same result as in TestMode during world generation
2013-05-29 19:31:58 +00:00
rubidium
22637f139f
(svn r24008) -Cleanup/doc: try not to mention (No)AI in script APIs
2012-03-04 16:54:12 +00:00
rubidium
df963509f6
(svn r23778) -Fix [FS#4957]: trim all control codes and the likes from 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 21:51:08 +00:00
rubidium
4479f90843
(svn r23777) -Codechange: refactor allocating memory and fetching strings into a single function for scripts
2012-01-08 21:48:05 +00:00
rubidium
6d6be50ae0
(svn r23740) -Codechange: remove some 300 unneeded includes from the .cpp files
2012-01-03 21:32:51 +00:00
truebrain
cc3f42794d
(svn r23632) -Add: GSCompanyMode, to change company in GameScripts
2011-12-19 21:05:25 +00:00
truebrain
3ada3b9cc5
(svn r23630) -Add: a Goal GUI to show your current goals
2011-12-19 21:03:17 +00:00
truebrain
83f2785f54
(svn r23611) -Add: run the begin of the script already while generating, and don't sleep on DoCommand while doing so
2011-12-19 20:56:50 +00:00
frosch
0a7b49e398
(svn r23515) -Cleanup: Remove unused ScriptObject::GetNewTunnelEndtile() and relatives.
2011-12-14 20:13:18 +00:00
truebrain
2c877b074e
(svn r23369) -Codechange: use script includes when possible, not ai includes
2011-11-29 23:27:17 +00:00
truebrain
880f377fa6
(svn r23367) -Codechange: refactor GetSetting to ScriptInstance, to avoid global variable in script_controller
2011-11-29 23:27:01 +00:00
truebrain
ae8540f5e0
(svn r23361) -Codechange: move multiplayer DoCommand callback code so other script users can call their own
2011-11-29 23:21:42 +00:00
truebrain
3da8b5097a
(svn r23360) -Codechange: move AIInstance to ScriptInstance, making it reusable by other script API instances
2011-11-29 23:21:33 +00:00
truebrain
75c4bd280a
(svn r23359) -Codechange: move AI_VMSuspend to Script_Suspend (and to its own file)
2011-11-29 23:21:24 +00:00
truebrain
bbd9facb44
(svn r23358) -Codechange: move AI_FatalError to Script_FatalError (and to its own file)
2011-11-29 23:21:13 +00:00
truebrain
99cb93ef6f
(svn r23357) -Codechange: move AIStorage to ScriptStorage
2011-11-29 23:21:04 +00:00
truebrain
98103121d4
(svn r23355) -Codechange: rename all AI* to Script* (Rubidium)
2011-11-29 23:15:35 +00:00
truebrain
afdb67a353
(svn r23354) -Codechange: move all src/ai/api/ai_*.[hc]pp files to src/script/api/script_* (Rubidium)
2011-11-29 23:07:38 +00:00