Rubidium and rubidium42
281a65b3e1
Cleanup: simplify some boolean expressions
2021-06-17 16:18:30 +02:00
Rubidium and rubidium42
3237e97b35
Cleanup: [Script] Use nullptr instead of 0 or NULL
2021-06-17 16:18:30 +02:00
Patric Stout and Patric Stout
97b94bdc9a
Change: prefix SL_ARR with the length of the array
...
This means that during loading we can validate that what is saved
is also that what is expected. Additionally, this makes all list
types similar to how they are stored on disk:
First a gamma to indicate length, followed by the data.
The size still depends on the type.
2021-06-15 16:45:04 +02:00
Rubidium and rubidium42
d31a535c87
Cleanup: remove some unneeded c_str() calls
2021-06-15 06:13:00 +02:00
rubidium42 and rubidium42
55a11710a6
Codechange: convert printf DEBUG statements to fmt Debug statements
2021-06-13 12:45:45 +02:00
rubidium42 and rubidium42
bf500c39c9
Codechange: make the name of SettingDesc a std::string
2021-06-13 10:26:58 +02:00
rubidium42 and rubidium42
71f3c35288
Fix #9353 : [Script] Garbage collecting on priority queues could crash the game
2021-06-12 19:58:14 +02:00
Loïc Guilloux and GitHub
16ebf7861f
Fix 4079c47: Missed a file when removing generated .sq files from the repo ( #9350 )
2021-06-11 16:59:19 +02:00
Loïc Guilloux and GitHub
ee5f23382d
Fix: [Script] doxygen_filter is very strict about DOXYGEN_API usage ( #9351 )
2021-06-11 16:40:04 +02:00
rubidium42 and rubidium42
2924ac48c5
Fix: [Script] Ensure the saved script strings are properly validated and terminated when being read from the savegame
2021-06-10 22:03:23 +02:00
Patric Stout and Patric Stout
648ee88a02
Codechange: merge guiflags and flags in settings .ini files
...
It was rather confusing which one was for what, especially as some
SaveLoad flags were settings-only. Clean up this mess a bit by
having only Setting flags.
2021-06-06 21:45:01 +02:00
Patric Stout and Patric Stout
28e90769f7
Codechange: use "[[maybe_unused]]" instead of a wide variety of other ways we had
...
While at it, replace OTTD_ASSERT with WITH_ASSERT, as this
is always set if assert() is valid. No matter if NDEBUG is set
or not.
2021-06-03 17:30:00 +02:00
Patric Stout and GitHub
9fff00ba20
Codechange: C++-ify lists for SaveLoad ( #9323 )
...
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-31 22:26:44 +02:00
Patric Stout and GitHub
921ab68a48
Codechange: use AsIntSetting()->Read() wrapper if possible ( #9324 )
2021-05-31 10:56:06 +02:00
rubidium42 and rubidium42
e58581f1f8
Codechange: [Network] Let admin-game script use std::string
2021-05-30 10:15:22 +02:00
rubidium42 and rubidium42
29f2bd27c4
Codechange: [Game] Pass the length instead of '\0' terminating (and undoing that) in the middle of a C-string
2021-05-30 10:15:22 +02:00
Patric Stout and GitHub
d70fb74ac6
Codechange: use setting name instead of index for CmdChange(Company)Setting ( #9306 )
...
This is mostly done as there are now constraints on settings.ini you might not
expected. For example, conditional settings always have to come last, as otherwise
they would influence the index.
2021-05-29 23:27:01 +02:00
glx22 and Loïc Guilloux
5799402f7a
Codechange: Rename window related DeleteXXX to match new behaviour
2021-05-29 21:08:25 +02:00
rubidium42 and rubidium42
2e136285e1
Codechange: move from C-string to std::string for DoCommand
2021-05-29 19:02:18 +02:00
Patric Stout and Patric Stout
7713c3e3cc
Codechange: move casting a "const char *" to "char *" to the caller
...
It is not nice to have your definition say you won't change a value
while in fact the whole reason for your existance is to change it.
2021-05-29 16:23:59 +02:00
Patric Stout and 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 and GitHub
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 and rubidium42
86c9ef8134
Codechange: remove SettingDescType in lieu of the actual classes
2021-05-27 18:49:43 +02:00
rubidium42 and rubidium42
425d50372f
Codechange: let SettingDesc extend SettingDescBase
2021-05-27 18:49:43 +02:00
rubidium42 and rubidium42
8ffb4122df
Codechange: just pass the SettingDesc to SetSettingValue and remove distinction between (non)company
2021-05-27 18:49:43 +02:00
rubidium42 and rubidium42
4d246cda73
Codechange: [Network] Let NetworkClientInfo use std::string
2021-05-16 10:07:51 +02:00
rubidium42 and rubidium42
44ca7d9377
Change: Use gender-neutral pronouns
2021-05-15 10:16:48 +02:00
rubidium42 and rubidium42
0f062b3882
Codechange: clean up C-string support from settings
2021-05-13 23:13:17 +02:00
rubidium42 and rubidium42
a032714dc4
Codechange: move script settings to std::string
2021-05-13 23:13:17 +02:00
Rubidium and rubidium42
7755f81bb8
Codechange: make explicit that virtual functions in a con/destructor are resolved statically
...
This as during construction the sub class has not been initialized yet, and
during destruction the sub class has already been destroyed, so the overriding
virtual function would be accessing uninitialized data.
2021-05-13 10:03:26 +02:00
glx22 and Loïc Guilloux
38c97e1492
Codechange: Replace TILE_AREA_LOOP with range-based for loops
2021-05-13 00:13:54 +02:00
William Davis and GitHub
881e1da51d
Change: Use gender-neutral pronouns in console command messages (and comments) ( #9203 )
2021-05-08 11:02:30 +01:00
glx22 and Loïc Guilloux
983c7ade60
Codechange: Replace FOR_ALL_SEARCHPATHS with range-based for loops
2021-05-03 19:46:57 +02:00
glx22 and Loïc Guilloux
34215f7faa
Codechange: Replace FOR_ALL_TARS with range-based for loops
2021-05-03 19:46:57 +02:00
glx22 and Loïc Guilloux
9a8756d7ed
Codechange: Replace FOR_ALL_CARGOSPECS with range-based for loops
2021-04-29 21:08:24 +02:00
Loïc Guilloux and GitHub
356bbbb90a
Fix: [MinGW] Set minimum OS version to Windows XP ( #9135 )
2021-04-29 14:26:08 +02:00
peter1138 and Michael Lutz
c56fce70b4
Codechange: Replace CMD_SET_GROUP_REPLACE_PROTECTION with generic CMD_SET_GROUP_FLAG.
2021-04-22 22:57:00 +02:00
peter1138 and Michael Lutz
27a956ba62
Codechange: Replace Group::replace_protection with Group::flags
2021-04-22 22:57:00 +02:00
Rubidium and Michael Lutz
e5fedcd6da
Fix #6322 : [Script] Try to let the script die when no memory can be allocated instead of crashing the whole game
2021-04-17 22:24:52 +02:00
Rubidium and Michael Lutz
4400bbfa96
Change: [Script] Let Script_FatalError use std::string instead of const char *
2021-04-17 22:24:52 +02:00
Patric Stout and GitHub
9bfa7198fd
Change: Heading for 1.12 now ( #8862 )
2021-03-14 20:47:31 +01:00
Patric Stout and GitHub
9a3dbf3122
Fix 02e770ff: allow estimating CloneVehicle if short on money ( #8748 )
...
CheckCompanyHasMoney() was also executed when not using DC_EXEC,
resulting in an error about shortage of money instead of the
estimation.
This mostly is a problem for AI players, as they will have no
way to know how much it would have cost.
2021-02-26 16:22:58 +01:00
dP and Loïc Guilloux
91cc414588
Feature: [GS] Allow non-question type windows to have no buttons
2021-02-14 23:21:43 +01:00
dP and Charles Pigott
bab7de6cf2
Feature: Allow GameScripts to add additional text to Industry view window
2021-01-22 09:50:53 +00:00
Pavel Stupnikov and GitHub
4b42ecb0f6
Feature: Add tile parameter for GSCompany.ChangeBankBalance to show text effect if needed ( #8573 )
2021-01-22 10:28:26 +01:00
SamuXarick and Michael Lutz
6298d9221a
Fix 218f40e: Warning about 32-bit shift implicitly converted to 64 bits
2021-01-10 22:31:01 +01:00
Patric Stout and GitHub
218f40eea2
Add: [Script] ScriptCargo::GetName, to get the human readable name of a cargo ( #8544 )
...
Of course this translates into AICargo.GetName() for AIs and
GSCargo.GetName() for GameScripts.
2021-01-09 15:15:14 +01:00
Charles Pigott and GitHub
9b800a96ed
Codechange: Remove min/max functions in favour of STL variants ( #8502 )
2021-01-08 11:16:18 +01:00
glx22 and glx22
f7e48cac87
Fix #8453 : [Script] Don't truncate loan variation to 32bit
2020-12-28 16:51:15 +01:00
SamuXarick and GitHub
dc5b8020cc
Fix #6452 : Reset only editable and visible settings from GUI ( #7890 )
...
Also enables the Reset button while in-game for AI configs.
2020-12-27 15:05:47 +01:00