Commit Graph

583 Commits

Author SHA1 Message Date
Rubidium
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
4400bbfa96 Change: [Script] Let Script_FatalError use std::string instead of const char * 2021-04-17 22:24:52 +02:00
Patric Stout
9bfa7198fd
Change: Heading for 1.12 now (#8862) 2021-03-14 20:47:31 +01:00
Patric Stout
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
91cc414588 Feature: [GS] Allow non-question type windows to have no buttons 2021-02-14 23:21:43 +01:00
dP
bab7de6cf2 Feature: Allow GameScripts to add additional text to Industry view window 2021-01-22 09:50:53 +00:00
Pavel Stupnikov
4b42ecb0f6
Feature: Add tile parameter for GSCompany.ChangeBankBalance to show text effect if needed (#8573) 2021-01-22 10:28:26 +01:00
SamuXarick
6298d9221a Fix 218f40e: Warning about 32-bit shift implicitly converted to 64 bits 2021-01-10 22:31:01 +01:00
Patric Stout
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
9b800a96ed
Codechange: Remove min/max functions in favour of STL variants (#8502) 2021-01-08 11:16:18 +01:00
glx22
f7e48cac87 Fix #8453: [Script] Don't truncate loan variation to 32bit 2020-12-28 16:51:15 +01:00
SamuXarick
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
Michael Lutz
b408fe77f7 Codechange: Use std::string in file scanners. 2020-12-27 13:19:25 +01:00
Michael Lutz
65f65ad2ad Codechange: Convert some more FIO functions to take std::string. 2020-12-27 13:19:25 +01:00
Michael Lutz
f3326d34e7 Codechange: Use std::string in FIO search path handling. 2020-12-27 13:19:25 +01:00
glx22
d8605ad18d Codechange: Replace FOR_VEHICLE_ORDERS with range-based for loops 2020-12-27 10:28:46 +00:00
Patric Stout
f66baa444f
Codechange: use C++11 constructs for for-each loops (#8432) 2020-12-25 19:38:18 +01:00
Patric Stout
29e3331055 Codechange: move block a bit lower to increase readability
It was rather confusing that "library_name" was calculated, and
then not used to do the FindLibrary() call. Flipping those two
blocks around makes it a bit more sane to read.
2020-12-25 17:03:44 +01:00
Patric Stout
8c0e4ab07f
Doc: for over 10 years now, we do not load the exact AI version first (#8431)
See commit fae34ee7 for details. The documentation simply never
got updated.
2020-12-25 17:03:31 +01:00
Pavel Stupnikov
9a45a0f535
Feature: Set exclusive access to industry from GS (#8115) 2020-12-22 14:29:48 +01:00
Niels Martin Hansen
b7751c483e
Feature: Influence industry production changes from GS (#7912) 2020-12-22 14:21:31 +01:00
glx22
d1fa6b129c Add: [CMake] Option to only build tools/docs 2020-12-13 22:46:46 +01:00
glx22
6fae0b83d9 Add: [CMake] targets to generate documentation 2020-12-12 15:48:04 +01:00
Rasmus Jonsson
0b2dd2c5cd Fix: [NoAI] don't notify caught exceptions 2020-12-02 17:11:36 +00:00
Charles Pigott
348c231e12 Codechange: Make codestyle for CMake files consistent for 'control' statements 2020-09-25 14:43:13 +01:00
glx
4079c47b6c Change: rewrote squirrel_export in CMake 2020-07-16 00:53:26 +02:00
glx
8794c61f25 Change: rewrote generate_widget in CMake 2020-07-16 00:53:26 +02:00
TrevorShelton
c39d62c245 Update: Disuse of STR_ERROR_INCOMPATIBLE_ROAD 2020-07-10 14:47:55 +01:00
Charles Pigott
dc8d0089e9 Codechange: Make sure script enums are the same size as their normal counterparts 2020-06-27 14:51:14 +01:00
Charles Pigott
e5f931ef42 Fix: Warning about using the wrong enum type 2020-06-27 14:51:14 +01:00
Charles Pigott
64b1c70fdd Codechange: Add WARN_FORMAT to vseprintf and fix the cascade of warnings that followed 2020-06-27 14:51:14 +01:00
Patric Stout
56d54cf60e Add: introduce CMake for project management
CMake works on all our supported platforms, like MSVC, Mingw, GCC,
Clang, and many more. It allows for a single way of doing things,
so no longer we need shell scripts and vbs scripts to work on all
our supported platforms.

Additionally, CMake allows to generate project files for like MSVC,
KDevelop, etc.

This heavily reduces the lines of code we need to support multiple
platforms from a project perspective.

Addtiionally, this heavily improves our detection of libraries, etc.
2020-06-05 19:36:05 +02:00
Michael Lutz
1c0ba07c3c Add: [Script] Native priority queue; useful e.g. for pathfinders. 2020-06-01 21:35:13 +02:00
TechGeekNZ
16e5f610f7 Cleanup: Correct typographic errors in code comments. 2020-05-28 08:26:41 +01:00
Jonathan G Rennison
f11cd8f2d0 Fix: Compilation warnings in story_gui and script_story_page
See: #7896
2020-05-27 22:22:56 +02:00
Niels Martin Hansen
800ade7702
Feature: Push-buttons on storybook pages (#7896)
Allow more direct player-initiated interaction for Game Scripts, by letting the GS put push-buttons on storybook pages. These buttons can either trigger an immediate event, or require the player to first select a tile on the map, or a vehicle.

Additionally this reworks how the storybook pages are layouted and rendered, to allow for slightly more complex layouts, and maybe speeding drawing up a bit.
2020-05-22 22:22:55 +02:00
glx
e0d20a44d2 Codechange: Use a dynamic copyright year 2020-05-06 09:54:36 +01:00
Michael Lutz
1f1345de09 Codechange: [Script] Improve copying a list into another empty list. 2020-04-26 18:09:42 +02:00
SamuXarick
93a7ff6709
Fix: [Script] ScriptMarine::AreWaterTilesConnected failed for aqueducts (#8074) 2020-04-16 20:32:20 +02:00
SamuXarick
e7b901462e Doc: [Script] Make it clear random_deviation and CONFIG_RANDOM range upper bounds are inclusive 2020-03-31 22:33:19 +01:00
SamuXarick
8f9654c5c6 Fix: [Script] Random deviation upper bound range should be inclusive 2020-03-31 22:33:19 +01:00
SamuXarick
4d4005d8b7 Fix #8039: [AI/GS] SetOrderFlags and GetOrderDestination didn't work for oil rigs 2020-03-30 08:18:32 +02:00
SamuXarick
424770d662 Fix: [AI/GS] Consider neutral station setting when creating tile lists 2020-03-14 23:23:33 +01:00
SamuXarick
971201b3b7 Fix: [AI/GS] CanBuildConnectedRoadPartsHere neighbours tiles were at times incorrect 2020-03-13 13:54:11 +00:00
frosch
0ade8b20fe Fix #7998: Crash when scripts tried to access companies with invalid IDs. 2020-02-22 14:32:43 +00:00
Charles Pigott
5c19668fdb Doc: [Script] Add a note about how wagon connectivity works for scripts 2020-02-19 11:26:58 +01:00
glx
2f264f2c92 Change: Heading for 1.11 now 2020-02-08 23:38:49 +01:00
Patric Stout
3b177af826
Add: [Doxygen] Add the current version of documentation in header (#7940)
While at it, renamed the project names to reflect how we currently
refer to them.
2020-01-15 23:07:37 +01:00
Pavel Stupnikov
d7a928a08b Feature: GS method to control engine availability for a specific company (#7791)
* Feature: GS method to allow company to use an engine before its introduction date

* Feature: GS method to retire an engine early for a specific company
2020-01-15 18:46:26 +01:00
SamuXarick
fa71375ec2 Fix e04ca90: squirrel export script got forgotten 2020-01-07 15:07:24 +00:00