Jonathan G Rennison
c2fde53495
VarAction2: Remove redundant variable loads
2 years ago
Jonathan G Rennison
30f74c5b74
Sprite group: Add getter function for sprite groups
2 years ago
Jonathan G Rennison
d8f9641dc9
VarAction2: Remove redundant UMIN operation on already boolean values
2 years ago
Jonathan G Rennison
3c9201ebd5
VarAction2: Fix dead store elimination through randomised sprite groups
2 years ago
Jonathan G Rennison
e0581db2a1
VarAction2: Remove dead stores and redundant adjusts in more cases
2 years ago
Jonathan G Rennison
d71e38446e
Improve performance of string lookup in AddGRFString
2 years ago
Jonathan G Rennison
994dc683a2
VarAction2: Fix calculated result groups being incorrectly pruned
2 years ago
Jonathan G Rennison
b102e912b3
VarAction2: Allow temp store dead store elmination with industries
2 years ago
Jonathan G Rennison
4687a8c2a4
VarAction2: Prune group ranges for constant values
...
Add chicken bit to control pruning
2 years ago
Jonathan G Rennison
c894d5a86d
VarAction2: Add temp store dead store elimination
2 years ago
Niels Martin Hansen
5587e439a9
Fix: Industry layouts with zero regular tiles should be invalid
2 years ago
Jonathan G Rennison
a8eb52f061
VarAction2: Simplify handling of first adjustment
2 years ago
Jonathan G Rennison
a5f5be2dff
VarAction2: Detect ops on previous constants which become loads
2 years ago
Jonathan G Rennison
1fec7d6ddb
VarAction2: Detect and replace reversed commutative op via temp storage
2 years ago
Jonathan G Rennison
762cfb3df7
VarAction2: Track temp store loads with respect to stores
2 years ago
Jonathan G Rennison
6953150898
VarAction2: Move optimisation pass to separate function
...
Simplify logic slightly
2 years ago
Jonathan G Rennison
145536e1fd
VarAction2: Detect and replace reverse subtract via temp storage
2 years ago
Jonathan G Rennison
dd2e1fe956
Add chicken bit to disable varact2 optimisation
2 years ago
Jonathan G Rennison
f0a0b2e200
VarAction2: Flatten constant operations on constants in more cases
2 years ago
Jonathan G Rennison
2360b3e93e
VarAction2: Detect and replace scaled reads of train/RV/ship current speed
2 years ago
Jonathan G Rennison
13cdef2a2d
VarAction2: Remove redundant and with 1 when value is already bool
2 years ago
Jonathan G Rennison
2f09eff404
VarAction2: Convert boolean, invert sequence to ternary
2 years ago
Jonathan G Rennison
90a2aa57fc
VarAction2: Detect and replace signed relational comparisons
2 years ago
Jonathan G Rennison
e732042785
VarAction2: Remove redundant constant loads
2 years ago
Jonathan G Rennison
74e1a40f7c
VarAction2: Remove trivially resolvable deterministic sprite groups
2 years ago
Jonathan G Rennison
3b5eede3fc
VarAction2: Detect and replace operations which always produce 0
2 years ago
Jonathan G Rennison
a21ae12c90
VarAction2: Remove redundant temp store loads after stores
2 years ago
Jonathan G Rennison
db5be4f92e
VarAction2: Remove constant parameter redirection via variable 7B
2 years ago
Jonathan G Rennison
da629e4cfa
VarAction2: Replace divs of powers of 2 with shifts where possible
2 years ago
Jonathan G Rennison
fad5973161
VarAction2: Reduce shift right and mask ops into adjust shift/mask
2 years ago
Jonathan G Rennison
012d73ef34
VarAction2: Detect equality comparisons
...
Remove redundant equality with 0 comparison before ternary
2 years ago
Jonathan G Rennison
7283825638
VarAction2: Detect and replace ternary operator pattern
2 years ago
Jonathan G Rennison
e3df522111
VarAction2: Delete provably zero adjustment operations
2 years ago
Jonathan G Rennison
a54416afbc
Add GRF variable to use extra station names even when default names remain
2 years ago
Jonathan G Rennison
34af4844d1
Merge branch 'master' into jgrpp
2 years ago
Michael Lutz
08a5478a93
Add: [NewGRF] Map seed as global variable.
...
This is useful to provide a feature-agnostic, stable random value that differs between games.
One of the possible uses is to e.g. use it to create pseudo-random regions for towns or industries.
2 years ago
Jonathan G Rennison
cb573a1523
Add road stop property to set cost multipliers
2 years ago
Jonathan G Rennison
5a2cc24190
Fix initialisation of new road stop specs
2 years ago
Jonathan G Rennison
2cbbae16da
Add roadstop GRF properties to set bridge heights and disallowed pillars
2 years ago
Jonathan G Rennison
23c472d2a0
Add support for road stop animation, availability callback
...
Add animation, callback mask, general flags properties
Add animation frame variables
2 years ago
Jonathan G Rennison
67d967befb
Add road stop support for Action 3 cargo type groups
2 years ago
Jonathan G Rennison
a69eba31fe
Implement NewGRF road stop root sprite group selection
2 years ago
Jonathan G Rennison
1084bb8566
Initial support for NewGRF road stops (bus and lorry stops)
2 years ago
Jonathan G Rennison
a3c003546b
Implement extended NewGRF variable parameter support
2 years ago
Jonathan G Rennison
d4f11eca42
Add NewGRF object properties to set viewport map mode/smallmap tile type
2 years ago
Jonathan G Rennison
a03453da49
Add properties to set lighthouse and transmitter generation amounts
2 years ago
Jonathan G Rennison
eeef6c485a
Initial implementation of NewGRF feature ID mapping
2 years ago
Jonathan G Rennison
ef3916928c
Initial abstraction around NewGRF feature ID bytes
2 years ago
Jonathan G Rennison
bb848331b6
Fix narrowing conversion warning
2 years ago
Jonathan G Rennison
33dc6c9688
Add NewGRF VarAction2 variable remapping infrastructure
2 years ago
Jonathan G Rennison
1a4b0d6ecf
Prevent NewGRFs from using Action A to replace internal sprites
2 years ago
Jonathan G Rennison
b807f0d50e
Fix setting of object spec ctrl flags from GRF properties
3 years ago
Jonathan G Rennison
24fb390e9f
Add NewGRF object property for flood-resistance
...
Does not imply being able to be built on water
3 years ago
Jonathan G Rennison
d9116106ca
Add NewGRF object property for new edge foundation mode
3 years ago
Jonathan G Rennison
ff714b7648
Add setting to disable "big GUI" NewGRFs
3 years ago
Jonathan G Rennison
924ffb013f
Add NewGRF object property/flag to use land as object ground sprite
...
This handles variable ground densities, snow/desert, etc.
3 years ago
Jonathan G Rennison
906fde15c7
Move NewGRF extension feature/property lists to separate file
3 years ago
Jonathan G Rennison
0691b25e17
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/saveload/afterload.cpp
3 years ago
Jonathan G Rennison
fc58ed9987
Codechange: Remove CargoSpec::multipliertowngrowth which is unused ( #9701 )
...
This is set by cargo property 19.
This property is only implemented in TTDPatch.
3 years ago
Jonathan G Rennison
3d4261a33a
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/order_cmd.cpp
# src/table/settings/news_display_settings.ini
3 years ago
Michael Lutz
95c8467670
Fix 65cbde4b: Writing to uninitialized string when loading a currency NewGRF.
3 years ago
Jonathan G Rennison
9e946d4c5d
Merge branch 'master' into jgrpp-beta
...
# Conflicts:
# src/command.cpp
# src/console_cmds.cpp
# src/group_gui.cpp
# src/lang/catalan.txt
# src/lang/czech.txt
# src/lang/danish.txt
# src/lang/greek.txt
# src/lang/hungarian.txt
# src/lang/irish.txt
# src/lang/japanese.txt
# src/lang/luxembourgish.txt
# src/lang/norwegian_bokmal.txt
# src/lang/romanian.txt
# src/lang/russian.txt
# src/lang/serbian.txt
# src/lang/simplified_chinese.txt
# src/lang/slovak.txt
# src/lang/spanish_MX.txt
# src/lang/swedish.txt
# src/lang/tamil.txt
# src/lang/traditional_chinese.txt
# src/lang/turkish.txt
# src/lang/ukrainian.txt
# src/lang/vietnamese.txt
# src/network/network.cpp
# src/network/network_client.cpp
# src/network/network_func.h
# src/network/network_internal.h
# src/network/network_server.cpp
# src/network/network_server.h
# src/saveload/afterload.cpp
# src/saveload/newgrf_sl.cpp
# src/saveload/saveload.h
# src/script/script_instance.cpp
# src/toolbar_gui.cpp
# src/toolbar_gui.h
# src/vehicle_gui.cpp
# src/widgets/rail_widget.h
# src/widgets/vehicle_widget.h
# src/window.cpp
3 years ago
Jonathan G Rennison
3ef1a0943b
Merge branch 'master' into jgrpp-beta
...
# Conflicts:
# src/lang/chuvash.txt
# src/lang/czech.txt
# src/lang/english_AU.txt
# src/lang/english_US.txt
# src/lang/german.txt
# src/lang/japanese.txt
# src/lang/korean.txt
# src/lang/latvian.txt
# src/lang/russian.txt
# src/tree_gui.cpp
# src/vehicle.cpp
3 years ago
Jonathan G Rennison
faf32200cf
Merge tag '12.0-beta1' into jgrpp-beta
...
# Conflicts:
# CMakeLists.txt
# bin/ai/CMakeLists.txt
# bin/game/CMakeLists.txt
# src/build_vehicle_gui.cpp
# src/console_cmds.cpp
# src/core/overflowsafe_type.hpp
# src/fios.cpp
# src/lang/english.txt
# src/lang/german.txt
# src/lang/korean.txt
# src/lang/polish.txt
# src/network/core/game_info.cpp
# src/network/core/game_info.h
# src/network/core/tcp_game.cpp
# src/network/core/tcp_game.h
# src/network/network.cpp
# src/network/network_client.cpp
# src/network/network_client.h
# src/network/network_coordinator.cpp
# src/network/network_gui.cpp
# src/network/network_server.cpp
# src/network/network_server.h
# src/newgrf_engine.cpp
# src/openttd.cpp
# src/rev.cpp.in
# src/settings_type.h
# src/train.h
# src/train_cmd.cpp
3 years ago
Jonathan G Rennison
f764fcfb1f
Merge branch 'master' into jgrpp-beta
...
# Conflicts:
# src/console_cmds.cpp
# src/debug.cpp
# src/lang/vietnamese.txt
# src/network/core/address.cpp
# src/network/core/address.h
# src/network/core/config.h
# src/network/core/os_abstraction.cpp
# src/network/core/os_abstraction.h
# src/network/core/tcp_listen.h
# src/network/core/udp.cpp
# src/network/core/udp.h
# src/network/network.cpp
# src/network/network_client.cpp
# src/network/network_gamelist.cpp
# src/network/network_server.cpp
# src/network/network_udp.cpp
# src/newgrf.cpp
# src/openttd.cpp
# src/saveload/saveload.h
# src/settings.cpp
# src/settings_table.cpp
# src/settings_type.h
# src/table/settings/network_settings.ini
3 years ago
Jonathan G Rennison
f54d69a60a
Merge branch 'master' into jgrpp-beta
...
# Conflicts:
# src/economy.cpp
# src/elrail.cpp
# src/graph_gui.cpp
# src/linkgraph/linkgraph_gui.cpp
# src/network/core/game_info.cpp
# src/newgrf_station.cpp
# src/saveload/saveload.cpp
# src/settings.cpp
# src/station_cmd.cpp
# src/station_gui.cpp
# src/strings_func.h
# src/table/settings/network_settings.ini
# src/table/settings/settings.ini
3 years ago
Jonathan G Rennison
da282c3ecc
Merge branch 'master' into jgrpp-beta
...
# Conflicts:
# .github/workflows/ci-build.yml
# CMakeLists.txt
# src/lang/finnish.txt
# src/lang/french.txt
# src/lang/korean.txt
# src/lang/norwegian_bokmal.txt
# src/lang/russian.txt
# src/lang/spanish.txt
# src/misc_gui.cpp
# src/newgrf.cpp
3 years ago
Jonathan G Rennison
544da99102
Merge branch 'master' into jgrpp-beta
...
# Conflicts:
# src/cargopacket.h
# src/lang/korean.txt
# src/linkgraph/linkgraph.h
# src/linkgraph/linkgraphjob.h
# src/linkgraph/linkgraphschedule.h
# src/network/network_admin.h
# src/network/network_func.h
# src/network/network_server.cpp
# src/network/network_server.h
# src/order_base.h
# src/rail_cmd.cpp
# src/saveload/company_sl.cpp
# src/saveload/depot_sl.cpp
# src/saveload/economy_sl.cpp
# src/saveload/linkgraph_sl.cpp
# src/saveload/map_sl.cpp
# src/saveload/newgrf_sl.cpp
# src/saveload/order_sl.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/saveload/signs_sl.cpp
# src/saveload/station_sl.cpp
# src/saveload/subsidy_sl.cpp
# src/saveload/town_sl.cpp
# src/saveload/vehicle_sl.cpp
# src/script/api/script_object.cpp
# src/settings.cpp
# src/string.cpp
# src/string_func.h
# src/table/CMakeLists.txt
# src/table/settings/settings.ini
# src/viewport_sprite_sorter_sse4.cpp
3 years ago
Jonathan G Rennison
4042480806
Merge branch 'jgrpp' into jgrpp-beta
...
# Conflicts:
# src/settings.cpp
# src/settings_gui.cpp
# src/settings_internal.h
# src/table/company_settings.ini
# src/table/currency_settings.ini
# src/table/gameopt_settings.ini
# src/table/misc_settings.ini
# src/table/settings.h.preamble
# src/table/settings.ini
# src/table/win32_settings.ini
# src/table/window_settings.ini
3 years ago
PeterN
f5561ac212
Fix #9562 : Handle case of invalid action2 with zero results. ( #9564 )
...
(cherry picked from commit 7e70ead396
)
3 years ago
Jonathan G Rennison
fd605e3cf3
Merge branch 'master' into jgrpp-beta
...
# Conflicts:
# .github/workflows/commit-checker.yml
# src/company_cmd.cpp
# src/console_cmds.cpp
# src/crashlog.cpp
# src/lang/english.txt
# src/lang/german.txt
# src/lang/indonesian.txt
# src/lang/japanese.txt
# src/lang/korean.txt
# src/lang/swedish.txt
# src/linkgraph/linkgraphjob.cpp
# src/linkgraph/mcf.cpp
# src/network/core/tcp.cpp
# src/network/core/tcp.h
# src/network/core/tcp_game.h
# src/network/core/udp.h
# src/network/network.cpp
# src/network/network_admin.cpp
# src/network/network_admin.h
# src/network/network_chat_gui.cpp
# src/network/network_client.cpp
# src/network/network_client.h
# src/network/network_func.h
# src/network/network_internal.h
# src/network/network_server.cpp
# src/network/network_server.h
# src/newgrf.cpp
# src/newgrf_station.cpp
# src/order_gui.cpp
# src/rail_cmd.cpp
# src/saveload/saveload.cpp
# src/settings.cpp
# src/settings_gui.cpp
# src/settings_internal.h
# src/settings_type.h
# src/station_cmd.cpp
# src/stdafx.h
# src/table/currency_settings.ini
# src/table/misc_settings.ini
# src/table/settings.h.preamble
# src/table/settings.ini
# src/terraform_cmd.cpp
# src/timetable_gui.cpp
# src/train_cmd.cpp
# src/tree_cmd.cpp
# src/water_cmd.cpp
3 years ago
PeterN
7e70ead396
Fix #9562 : Handle case of invalid action2 with zero results. ( #9564 )
3 years ago
Charles Pigott
16dca0d7bc
Codechange: Object non-zero dimension check was not logically correct
3 years ago
Jonathan G Rennison
5d351a14d2
Add new signal type: no-entry signal
...
This is only passable in one direction, but does not have a signal
or show an aspect in the opposite direction
Add a setting for whether this is shown in the signal UI.
Off by default.
3 years ago
Jonathan G Rennison
b2ef6c0de8
Add implementation of multi-aspect signalling and GRF support
...
Requires realistic braking
See: #247
3 years ago
Jonathan G Rennison
f1fde8c684
Enable recolouring of custom signal graphics (global and per-railtype)
3 years ago
Jonathan G Rennison
322a046f49
NewGRF: Allow using Action 2/3 for custom signal sprites
...
This is mostly the same format as the railtype custom signal mechanism
3 years ago
Vít Šefl
2183fd4dab
Feature: [NewGRF] Maximum curve speed modifier for rail vehicles ( #9346 )
3 years ago
Jonathan G Rennison
4174fe727c
Add NewGRF feature: Extra station name strings
...
These are used when all the default names have been used up,
instead of "Town Station #NNN".
3 years ago
Rubidium
178ea3196b
Remove: includes to network/core/config.h from headers when only three cpp files need it
3 years ago
Patric Stout
6f0c6fb2ae
Fix a4987233: NewGRFs could no longer be loaded from the NewGRF folder.
...
This statement was removed by accident, as it felt it could be removed.
But it is used to know if the NewGRF is from the baseset folder or
from the NewGRF folder.
3 years ago
rubidium42
a498723345
Remove: arbitrary limit on number of statically loaded NewGRFs ( #9431 )
3 years ago
glx22
a543a4b7bb
Codechange: Remove FOR_EACH_SET_CARGO_ID
3 years ago
glx22
89ab8b79a5
Codechange: Remove FOR_EACH_SET_BIT
3 years ago
rubidium42
55a11710a6
Codechange: convert printf DEBUG statements to fmt Debug statements
3 years ago
Peter Nelson
40cec34836
Change: Skip creating a RealSpriteGroup when there is only one result.
...
This avoids checking RSG for empty sets every time they are evaluated.
This might alter behaviour in cases of a malformed NewGRF file.
3 years ago
Jonathan G Rennison
054c820521
Implement custom sprite detection with new sprite mechanism
3 years ago
Rubidium
e227bbaff0
Cleanup: remove the old FIO slot functions
...
(cherry picked from commit fa6abe1646
)
3 years ago
Rubidium
eecf7c8525
Codechange: let NewGRF make use of SpriteFile instead of most of the FIO slot functions
...
(cherry picked from commit 10e35ca8e4
)
3 years ago
Rubidium
6bd12e24d7
Codechange: introduce SpriteFile to be used by the sprite loader instead of the global FIO slot functionality
...
(cherry picked from commit fdc11a9f94
)
3 years ago
Rubidium
525f6adcd0
Codechange: let NewGRF sounds make use of RandomAccessFile instead of the FIO slot functions
...
(cherry picked from commit c097bc9d7d
)
3 years ago
Rubidium
7c4d803265
Fix: memory leak due to assigning result of strdup to a std::string
...
(cherry picked from commit 296194ad36
)
3 years ago
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.
3 years ago
rubidium42
ae85af98eb
Codechange: Use std::string GetString where convenient
3 years ago
rubidium42
44ca7d9377
Change: Use gender-neutral pronouns
3 years ago
Rubidium
e6f0d63e25
Codechange: comparison result is always the same due to earlier check
...
Practically the length of the handlers not being equal to the number of
features is the problem as it means something was forgotten when adding
a new feature, so static assert to that and let the existing check on
the feature number take care of invalid data from the NewGRFs.
3 years ago
frosch
1da0ba95b2
Feature: Define refittability of default vehicles using cargo classes.
...
This ensures that default vehicles can transport any NewGRF defined cargos, albeit with weird graphics and vehicle names.
This also changes the refittability of default vehicles with default industries.
3 years ago
frosch
9f8d0b1bee
Fix: Resolve cargo-types of default vehicles via their cargo label.
...
Default vehicles now behave as if they had a cargo translation table. This fixes default vehicles carrying seemingly random cargos, if NewGRF industry sets are present.
This behavior is disabled, when a NewGRF touches any of the cargo-type or refitting properties. In that case it's up to the NewGRF to define its own cargo translation table.
3 years ago
rubidium42
65cbde4b30
Codechange: move currency settings to std::string
3 years ago
Rubidium
296194ad36
Fix: memory leak due to assigning result of strdup to a std::string
3 years ago
Rubidium
10e35ca8e4
Codechange: let NewGRF make use of SpriteFile instead of most of the FIO slot functions
3 years ago
Rubidium
fdc11a9f94
Codechange: introduce SpriteFile to be used by the sprite loader instead of the global FIO slot functionality
3 years ago
Rubidium
c097bc9d7d
Codechange: let NewGRF sounds make use of RandomAccessFile instead of the FIO slot functions
3 years ago
Peter Nelson
01d40812fa
Codechange: Validate custom station platform layout tiles are permitted values only.
...
(cherry picked from commit 756034fa27
)
3 years ago
Peter Nelson
da571d6481
Codechange: Use std::vector for NewGRF station tile sprite layouts.
...
(cherry picked from commit a3e49178d1
)
3 years ago
Peter Nelson
72bc8c7595
Codechange: Use std::vector for NewGRF station platform layouts.
...
This avoids the need to custom memory management and additional members.
This also resolves use-after-free if modifying copied layouts, so presumably nobody has ever done that.
(cherry picked from commit bd1a20f6ee
)
3 years ago
Peter Nelson
0b4d45af93
Codechange: Warn if randomaction2 group count is not a power of 2.
...
Previously noted by a comment, this does not need to be guarded against as non-powers of 2 will not cause issues beyond the choice of results being reduced.
(cherry picked from commit 18fb1c3866
)
3 years ago
Peter Nelson
f5722a999e
Cleanup: Use std::vector in RandomSpriteGroup.
...
(cherry picked from commit 913d8a7f28
)
3 years ago
Peter Nelson
a69a1d19a9
Cleanup: Use std::vector in DeterministicSpriteGroup.
...
(cherry picked from commit 1aeaf39954
)
3 years ago
Peter Nelson
d3b9d19c5a
Cleanup: Use std::vector in RealSpriteGroup.
...
(cherry picked from commit f785a70a2b
)
3 years ago
glx22
050b95e351
Codechange: Replace FOR_ALL_CARGOSPECS with range-based for loops
...
(cherry picked from commit 9a8756d7ed
)
3 years ago
Peter Nelson
756034fa27
Codechange: Validate custom station platform layout tiles are permitted values only.
3 years ago
Peter Nelson
a3e49178d1
Codechange: Use std::vector for NewGRF station tile sprite layouts.
3 years ago
Peter Nelson
bd1a20f6ee
Codechange: Use std::vector for NewGRF station platform layouts.
...
This avoids the need to custom memory management and additional members.
This also resolves use-after-free if modifying copied layouts, so presumably nobody has ever done that.
3 years ago
Peter Nelson
18fb1c3866
Codechange: Warn if randomaction2 group count is not a power of 2.
...
Previously noted by a comment, this does not need to be guarded against as non-powers of 2 will not cause issues beyond the choice of results being reduced.
3 years ago
Peter Nelson
913d8a7f28
Cleanup: Use std::vector in RandomSpriteGroup.
3 years ago
Peter Nelson
1aeaf39954
Cleanup: Use std::vector in DeterministicSpriteGroup.
3 years ago
Peter Nelson
f785a70a2b
Cleanup: Use std::vector in RealSpriteGroup.
3 years ago
glx22
9a8756d7ed
Codechange: Replace FOR_ALL_CARGOSPECS with range-based for loops
3 years ago
Jonathan G Rennison
6a62b94263
Add NewGRF railtype flag to disable realistic braking for vehs of that type
...
See: #242
3 years ago
Jonathan G Rennison
f39b6f4ba3
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/cheat_gui.cpp
# src/genworld_gui.cpp
# src/landscape.cpp
# src/lang/english.txt
# src/saveload/afterload.cpp
# src/screenshot.cpp
# src/settings_gui.cpp
# src/settings_internal.h
# src/settings_type.h
# src/table/settings.ini
# src/tile_type.h
# src/widgets/genworld_widget.h
3 years ago
Jonathan G Rennison
83ac5aa27a
Fix: Memory leak of airport tile layout in AirportChangeInfo (prop 0A) ( #8928 )
3 years ago
Jonathan G Rennison
7ae5e5b89f
Fix memory leak of airport tile layout in AirportChangeInfo
3 years ago
Patric Stout
1a1049bc0d
Change: rename setting "max_heightlevel" to "map_height_limit"
...
This better reflects what it is, and hopefully removes a bit of
the confusion people are having what this setting actually does.
Additionally, update the text on the setting to better inform
users what it is doing exactly, so they can make an educated
decision on how to change it.
Next commit will introduce an "auto" value, which should be the
new default. The rename has as added benefit that everyone will
start out on the "auto" value.
3 years ago
Jonathan G Rennison
2e20da40ed
Cache current value of snow line height
3 years ago
Jonathan G Rennison
1c1d272b57
Merge branch 'master' into jgrpp
3 years ago
Charles Pigott
8157af6d68
Fix #8276 : Crash when a NewGRF object's size was not set
3 years ago
Jonathan G Rennison
b7ddd486cf
Merge branch 'master' into jgrpp
...
# Conflicts:
# cmake/CompileFlags.cmake
# src/aircraft_cmd.cpp
# src/blitter/32bpp_anim.cpp
# src/cargopacket.cpp
# src/cheat_gui.cpp
# src/company_cmd.cpp
# src/company_gui.cpp
# src/core/pool_func.hpp
# src/date.cpp
# src/economy.cpp
# src/error_gui.cpp
# src/ground_vehicle.cpp
# src/ground_vehicle.hpp
# src/group_gui.cpp
# src/industry_cmd.cpp
# src/lang/dutch.txt
# src/lang/french.txt
# src/lang/german.txt
# src/linkgraph/linkgraph_gui.cpp
# src/linkgraph/mcf.cpp
# src/network/network_content.cpp
# src/network/network_server.cpp
# src/network/network_udp.cpp
# src/newgrf_engine.cpp
# src/newgrf_station.cpp
# src/order_cmd.cpp
# src/order_gui.cpp
# src/pathfinder/follow_track.hpp
# src/pathfinder/yapf/yapf_common.hpp
# src/saveload/saveload.cpp
# src/settings_gui.cpp
# src/station_cmd.cpp
# src/station_kdtree.h
# src/string_func.h
# src/table/settings.ini
# src/tgp.cpp
# src/timetable_cmd.cpp
# src/timetable_gui.cpp
# src/toolbar_gui.cpp
# src/town_cmd.cpp
# src/train_cmd.cpp
# src/train_gui.cpp
# src/tree_gui.cpp
# src/tunnelbridge_cmd.cpp
# src/vehicle.cpp
# src/vehicle_gui.cpp
# src/video/sdl2_v.cpp
# src/video/sdl_v.cpp
# src/video/win32_v.cpp
# src/viewport.cpp
# src/viewport_sprite_sorter_sse4.cpp
# src/window.cpp
3 years ago
Jonathan G Rennison
6c3e5642f8
Merge branch 'master' into jgrpp
...
# Conflicts:
# cmake/CompileFlags.cmake
# src/crashlog.cpp
# src/fileio.cpp
# src/fileio_func.h
# src/fios_gui.cpp
# src/ini_load.cpp
# src/ini_type.h
# src/lang/english.txt
# src/lang/german.txt
# src/lang/korean.txt
# src/network/network_client.cpp
# src/order_base.h
# src/order_cmd.cpp
# src/os/windows/win32.cpp
# src/road_cmd.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/settings.cpp
# src/station_cmd.cpp
# src/stdafx.h
# src/table/settings.ini
# src/tree_cmd.cpp
# src/tree_gui.cpp
# src/vehicle_base.h
# src/video/cocoa/cocoa_v.mm
# src/video/cocoa/event.mm
# src/video/cocoa/wnd_quartz.mm
# src/viewport.cpp
# src/widgets/tree_widget.h
3 years ago
Jonathan G Rennison
43980639de
Merge branch 'master' into jgrpp
...
# Conflicts:
# .gitignore
# CMakeLists.txt
# src/3rdparty/optional/optional.hpp
# src/group_cmd.cpp
# src/industry_cmd.cpp
# src/misc_gui.cpp
# src/video/sdl2_v.cpp
3 years ago
Charles Pigott
9b800a96ed
Codechange: Remove min/max functions in favour of STL variants ( #8502 )
3 years ago
frosch
e94656b5a5
Fix: [NewGRF] Action 7/9 conditions 0x0F to 0x12 failed, if 'param' was 0x88. ( #8382 )
...
Fix: [NewGRF] Action 7/9 conditions 0x0B to 0x12 failed, if 'param' was 0x85.
These conditions are supposed to ignore 'param' entirely.
(cherry picked from commit d5f05fb781
)
3 years ago
Charles Pigott
860c270c73
Codechange: Replace assert_compile macro with static_assert
3 years ago
Michael Lutz
1478fa93b3
Add: [NewGRF] Patch flag to test if inflation is on or off.
3 years ago
frosch
d5f05fb781
Fix: [NewGRF] Action 7/9 conditions 0x0F to 0x12 failed, if 'param' was 0x88. ( #8382 )
...
Fix: [NewGRF] Action 7/9 conditions 0x0B to 0x12 failed, if 'param' was 0x85.
These conditions are supposed to ignore 'param' entirely.
4 years ago
Michael Lutz
79240eab1e
Codechange: Make use of the improved C++17 emplace_back function.
4 years ago
Jonathan G Rennison
e51c585f45
GRF: Fix rail/road type reservation phase with extended properties
4 years ago
Jonathan G Rennison
75a964acb0
GRF: Add extra road/tram type flag: not available to AI/GS
4 years ago
Jonathan G Rennison
14adcbac80
Add NewGRF bridge property to prevent town or AI/GS building bridge type
4 years ago
Jonathan G Rennison
b6f583a799
GRF: Add railtype custom signal sprite restricted flag, and control flag
4 years ago
Jonathan G Rennison
d32672a325
GRF: Allow railtype custom signal sprites for programmable pre-signals
4 years ago
Jonathan G Rennison
810bfd276e
Add several NewGRF variables to vehicle image callback whitelist
...
Add vehicle flags to control cached image invalidation
Various refactorings
4 years ago
Jonathan G Rennison
53f9fa139d
Remove redundant year/month date globals
4 years ago
Jonathan G Rennison
43c538fa7d
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/town_cmd.cpp
4 years ago
Yexo
1507902d00
Codechange: remove has_newindustries global
4 years ago
Yexo
a82572d0f5
Codechange: remove has_newhouses global
4 years ago
Jonathan G Rennison
677940cfc6
Merge branch 'master' into jgrpp
4 years ago
Yexo
f827bc8c1a
Fix #8166 : don't crash on loading an invalid roadtype newgrf
...
Initialization code for GRFFile::roadtype_map was copied from
railtype_map. But while RailType is a byte-sized enum and could thus
be initialized via memset, RoadType doesn't have a defined size.
4 years ago
Jonathan G Rennison
f8d6e781ba
Merge branch 'master' into jgrpp
...
# Conflicts:
# projects/openttd_vs140.vcxproj.filters
# projects/openttd_vs141.vcxproj.filters
# projects/openttd_vs142.vcxproj.filters
# src/base_consist.h
# src/company_base.h
# src/newgrf_config.cpp
# src/newgrf_config.h
# src/openttd.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/saveload/station_sl.cpp
# src/settings.cpp
# src/signs_base.h
# src/string.cpp
# src/string_func.h
# src/table/misc_settings.ini
# src/table/settings.h.preamble
# src/town_cmd.cpp
# src/vehicle.cpp
# src/vehicle_cmd.cpp
# src/video/cocoa/cocoa_v.mm
# src/video/null_v.cpp
4 years ago
Michael Lutz
9c2e47d03c
Codechange: Use std::string for storing GRF error messages.
4 years ago