Jonathan G Rennison
99e6b75337
Move NewGRF sprite dump declarations to new header file
2024-05-30 19:05:32 +01:00
Jonathan G Rennison
1e9fb74451
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/release-windows.yml
# src/autoreplace_gui.cpp
# src/cargotype.cpp
# src/company_base.h
# src/company_cmd.cpp
# src/company_gui.cpp
# src/currency.h
# src/date_gui.cpp
# src/dropdown.cpp
# src/dropdown_func.h
# src/dropdown_type.h
# src/game/game_gui.cpp
# src/genworld.cpp
# src/genworld_gui.cpp
# src/ground_vehicle.hpp
# src/group_gui.cpp
# src/house.h
# src/industry_gui.cpp
# src/network/network_client.cpp
# src/network/network_server.cpp
# src/network/network_type.h
# src/newgrf_class_func.h
# src/newgrf_house.cpp
# src/newgrf_roadstop.h
# src/openttd.cpp
# src/order_gui.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/screenshot_gui.cpp
# src/settings_gui.cpp
# src/settings_type.h
# src/slider.cpp
# src/smallmap_gui.cpp
# src/station_cmd.cpp
# src/stdafx.h
# src/survey.cpp
# src/tile_map.h
# src/town_cmd.cpp
# src/town_gui.cpp
# src/vehicle.cpp
# src/vehicle_gui.cpp
# src/vehicle_gui_base.h
2024-05-28 20:33:35 +01:00
Jonathan G Rennison
18a42664fc
Merge branch 'master' into jgrpp
...
Remove 'byte' typedef
2024-05-07 17:21:50 +01:00
Peter Nelson
668186ca5b
Codechange: Remove macros involved with NewGRFClass. ( #12363 )
...
Use direct class instantiation instead.
2024-03-23 21:55:50 +00:00
Jonathan G Rennison
20b8cb3059
Add setting to use object land ground for purchased land
...
Default on
2024-03-17 12:31:50 +00:00
Patric Stout
a3cfd23cf9
Codechange: rename byte to uint8_t ( #12308 )
2024-03-16 23:59:32 +01:00
Jonathan G Rennison
0e76f774eb
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/landscape.cpp
# src/landscape.h
# src/misc_gui.cpp
# src/newgrf_commons.cpp
# src/order_cmd.cpp
# src/pathfinder/yapf/yapf_base.hpp
# src/station_cmd.cpp
# src/tunnelbridge_cmd.cpp
# src/vehicle.cpp
# src/water_cmd.cpp
# src/window.cpp
2024-03-09 21:44:36 +00:00
Jonathan G Rennison
fdd666f66a
Merge tag '14.0-beta1' into jgrpp
...
# Conflicts:
# src/3rdparty/squirrel/squirrel/sqcompiler.cpp
# src/aircraft.h
# src/animated_tile.h
# src/base_consist.h
# src/cargotype.h
# src/company_gui.cpp
# src/console_cmds.cpp
# src/core/overflowsafe_type.hpp
# src/engine_gui.cpp
# src/industry_gui.cpp
# src/lang/english.txt
# src/music/extmidi.cpp
# src/network/core/network_game_info.cpp
# src/network/network_server.cpp
# src/newgrf.cpp
# src/newgrf_industries.cpp
# src/order_base.h
# src/order_cmd.cpp
# src/order_gui.cpp
# src/order_type.h
# src/os/macosx/misc_osx.cpp
# src/os/windows/crashlog_win.cpp
# src/rail_gui.cpp
# src/rail_gui.h
# src/roadveh.h
# src/roadveh_cmd.cpp
# src/saveload/afterload.cpp
# src/saveload/company_sl.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/saveload/saveload_error.hpp
# src/script/api/script_town.cpp
# src/settingsgen/settingsgen.cpp
# src/ship.h
# src/ship_cmd.cpp
# src/smallmap_gui.cpp
# src/spritecache.cpp
# src/stdafx.h
# src/strgen/strgen.cpp
# src/strgen/strgen.h
# src/table/settings/script_settings.ini
# src/timetable_cmd.cpp
# src/timetable_gui.cpp
# src/town.h
# src/town_cmd.cpp
# src/town_cmd.h
# src/town_gui.cpp
# src/train.h
# src/train_cmd.cpp
# src/tree_cmd.cpp
# src/vehicle.cpp
# src/vehicle_base.h
# src/vehicle_cmd.cpp
# src/vehicle_gui.cpp
# src/vehiclelist.cpp
# src/waypoint_base.h
# src/widget.cpp
2024-02-18 22:22:29 +00:00
Jonathan G Rennison
7ce06e22b8
Split date types into calendar and economy dates
...
See: 735abfe1
2024-02-13 21:34:09 +00:00
frosch
b1718478c8
Codechange: Replace old non-standard attributes with C++17/20 standard attributes.
2024-02-02 22:29:28 +01:00
Jonathan G Rennison
97e6f3062e
Adding of _t to (u)int types, and WChar to char32_t
...
See: eaae0bb5e
2024-01-07 17:20:41 +00:00
Jonathan G Rennison
5b6c0c1f2e
Debug: Change interfaces using SpriteGroupDumper
...
Pass SpriteGroupDumper ref instead of print function
Make use_shadows non-static
2023-12-27 23:46:45 +00:00
Jonathan G Rennison
03e0ec8276
Strong typedef: Use strong typedefs for date, date tick, minutes types
...
Add delta types
Adjust/add type conversion functions
Add various utility methods on types
Remove the various minute macros
Fix some minute conversion inconsistencies
2023-12-19 02:39:54 +00:00
Jonathan G Rennison
0d4d4a9cac
Merge branch 'master' into jgrpp
...
# Conflicts:
# cmake/CompileFlags.cmake
# src/3rdparty/squirrel/squirrel/sqclosure.h
# src/3rdparty/squirrel/squirrel/sqobject.h
# src/3rdparty/squirrel/squirrel/sqvm.h
# src/aircraft.h
# src/airport_gui.cpp
# src/blitter/32bpp_sse_func.hpp
# src/blitter/null.hpp
# src/bridge_gui.cpp
# src/build_vehicle_gui.cpp
# src/cargotype.h
# src/cheat_gui.cpp
# src/command.cpp
# src/command_func.h
# src/company_gui.cpp
# src/console_gui.cpp
# src/date_gui.cpp
# src/depot_gui.cpp
# src/dock_gui.cpp
# src/economy.cpp
# src/error_gui.cpp
# src/fileio.cpp
# src/fios.cpp
# src/fios_gui.cpp
# src/fontcache/spritefontcache.h
# src/framerate_gui.cpp
# src/game/game_text.cpp
# src/gamelog.cpp
# src/genworld_gui.cpp
# src/gfx_layout_fallback.cpp
# src/group_gui.cpp
# src/highscore_gui.cpp
# src/hotkeys.cpp
# src/industry_cmd.cpp
# src/industry_gui.cpp
# src/landscape.cpp
# src/main_gui.cpp
# src/misc_cmd.cpp
# src/misc_gui.cpp
# src/network/core/tcp_game.cpp
# src/network/core/udp.cpp
# src/network/network_chat_gui.cpp
# src/network/network_content_gui.cpp
# src/network/network_gui.cpp
# src/network/network_server.cpp
# src/network/network_server.h
# src/newgrf_airport.cpp
# src/newgrf_airport.h
# src/newgrf_airporttiles.cpp
# src/newgrf_airporttiles.h
# src/newgrf_animation_base.h
# src/newgrf_canal.cpp
# src/newgrf_commons.h
# src/newgrf_config.cpp
# src/newgrf_debug_gui.cpp
# src/newgrf_engine.cpp
# src/newgrf_engine.h
# src/newgrf_generic.cpp
# src/newgrf_gui.cpp
# src/newgrf_house.cpp
# src/newgrf_house.h
# src/newgrf_industries.cpp
# src/newgrf_industries.h
# src/newgrf_industrytiles.cpp
# src/newgrf_industrytiles.h
# src/newgrf_object.cpp
# src/newgrf_object.h
# src/newgrf_railtype.cpp
# src/newgrf_railtype.h
# src/newgrf_roadstop.cpp
# src/newgrf_roadstop.h
# src/newgrf_roadtype.cpp
# src/newgrf_roadtype.h
# src/newgrf_spritegroup.cpp
# src/newgrf_spritegroup.h
# src/newgrf_station.cpp
# src/newgrf_station.h
# src/newgrf_town.cpp
# src/newgrf_town.h
# src/news_gui.cpp
# src/object_gui.cpp
# src/order_gui.cpp
# src/os/macosx/crashlog_osx.cpp
# src/os/unix/crashlog_unix.cpp
# src/os/windows/crashlog_win.cpp
# src/os/windows/win32.cpp
# src/os/windows/win32_main.cpp
# src/pathfinder/npf/npf.cpp
# src/pathfinder/npf/queue.cpp
# src/rail_cmd.cpp
# src/rail_gui.cpp
# src/road_gui.cpp
# src/roadveh.h
# src/saveload/saveload.cpp
# src/screenshot.cpp
# src/script/api/script_text.hpp
# src/settings.cpp
# src/settings_gui.cpp
# src/settings_internal.h
# src/settings_table.cpp
# src/signs_cmd.cpp
# src/signs_gui.cpp
# src/smallmap_gui.cpp
# src/smallmap_gui.h
# src/spriteloader/grf.hpp
# src/station_cmd.cpp
# src/station_gui.cpp
# src/station_map.h
# src/statusbar_gui.cpp
# src/stdafx.h
# src/strgen/strgen.cpp
# src/table/newgrf_debug_data.h
# src/terraform_gui.cpp
# src/timer/timer_game_calendar.cpp
# src/timer/timer_window.cpp
# src/town.h
# src/town_cmd.cpp
# src/town_gui.cpp
# src/train_gui.cpp
# src/transparency_gui.cpp
# src/vehicle_gui.cpp
# src/water_cmd.cpp
# src/waypoint_cmd.cpp
# src/widget.cpp
# src/widget_type.h
# src/widgets/dropdown.cpp
# src/widgets/rail_widget.h
# src/widgets/terraform_widget.h
# src/window.cpp
# src/window_gui.h
2023-11-20 22:27:05 +00:00
Peter Nelson
ab535c0a86
Codechange: Add base() method to StrongType to allow access to the base type without casting. ( #11445 )
...
This removes the ability to explicitly cast to the base type, but the requirement
to use .base() means the conversion is still explicit.
2023-11-06 20:29:35 +00:00
frosch
b6c8f301be
Codechange: Silence warnings about intentionally unused parameters.
2023-09-19 22:49:59 +02:00
Jonathan G Rennison
5a28405ced
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/company_gui.cpp
# src/group_gui.cpp
# src/newgrf.cpp
# src/newgrf_debug_gui.cpp
# src/saveload/saveload.cpp
2023-08-19 01:28:36 +01:00
Patric Stout
07730584d7
Codechange: make explicit when a TileIndex is cast to its basetype ( #11190 )
...
This prevents people accidentially assigning a TileIndex to a Date
or any other type they shouldn't.
2023-08-15 18:12:05 +02:00
Patric Stout
299570b2c1
Codechange: make TimerGameCalendar Date and Year types strongly typed ( #10761 )
2023-08-12 18:14:21 +00:00
Rubidium
eaae0bb5e7
Codechange: automatic adding of _t to (u)int types, and WChar to char32_t
...
for i in `find src -type f|grep -v 3rdparty/fmt|grep -v 3rdparty/catch2|grep -v 3rdparty/opengl|grep -v stdafx.h`; do sed 's/uint16& /uint16 \&/g;s/int8\([ >*),;[]\)/int8_t\1/g;s/int16\([ >*),;[]\)/int16_t\1/g;s/int32\([ >*),;[]\)/int32_t\1/g;s/int64\([ >*),;[]\)/int64_t\1/g;s/ uint32(/ uint32_t(/g;s/_uint8_t/_uint8/;s/Uint8_t/Uint8/;s/ft_int64_t/ft_int64/g;s/uint64$/uint64_t/;s/WChar/char32_t/g;s/char32_t char32_t/char32_t WChar/' -i $i; done
2023-07-19 19:30:14 +02:00
Jonathan G Rennison
3a47b421b0
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/company_cmd.cpp
# src/core/overflowsafe_type.hpp
# src/economy.cpp
# src/engine_base.h
# src/ground_vehicle.cpp
# src/group_gui.cpp
# src/industry_cmd.cpp
# src/industry_gui.cpp
# src/newgrf_commons.cpp
# src/newgrf_engine.cpp
# src/newgrf_industries.cpp
# src/newgrf_object.cpp
# src/newgrf_roadstop.cpp
# src/newgrf_station.cpp
# src/rail_gui.cpp
# src/road_cmd.h
# src/road_gui.cpp
# src/saveload/afterload.cpp
# src/script/api/script_log.cpp
# src/script/api/script_log.hpp
# src/settings_gui.cpp
# src/settingsgen/settingsgen.cpp
# src/station_cmd.cpp
# src/station_cmd.h
# src/station_gui.cpp
# src/strgen/strgen.cpp
# src/string_func.h
# src/string_type.h
# src/table/settings/network_private_settings.ini
# src/tests/math_func.cpp
# src/textfile_gui.cpp
# src/timetable_gui.cpp
# src/town_cmd.cpp
# src/vehicle.cpp
# src/waypoint_cmd.cpp
# src/waypoint_cmd.h
# src/widgets/dropdown.cpp
2023-06-03 19:16:57 +01:00
Jonathan G Rennison
fc80a93672
Fix object town variables when no town is present
2023-06-02 22:19:54 +01:00
PeterN
0b663f709d
Codechange: Sprite mapping for objects doesn't involve cargo types. ( #10905 )
...
Objects have a default sprite group and an optional purchase list sprite
group. There is no need to pretend that these are cargo IDs.
2023-06-02 08:25:13 +00:00
Jonathan G Rennison
fd4d4d341d
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/animated_tile.cpp
# src/cargopacket.h
# src/cheat_gui.cpp
# src/company_cmd.cpp
# src/company_gui.cpp
# src/date.cpp
# src/disaster_vehicle.cpp
# src/dock_gui.cpp
# src/economy.cpp
# src/engine.cpp
# src/error_gui.cpp
# src/fontcache/spritefontcache.cpp
# src/game/game_gui.cpp
# src/game/game_text.cpp
# src/gfx.cpp
# src/graph_gui.cpp
# src/highscore_gui.cpp
# src/industry_cmd.cpp
# src/lang/dutch.txt
# src/lang/english_AU.txt
# src/lang/english_US.txt
# src/lang/finnish.txt
# src/lang/french.txt
# src/lang/italian.txt
# src/lang/portuguese.txt
# src/lang/russian.txt
# src/lang/turkish.txt
# src/lang/vietnamese.txt
# src/main_gui.cpp
# src/misc_gui.cpp
# src/network/network_gui.cpp
# src/network/network_server.cpp
# src/newgrf.cpp
# src/newgrf.h
# src/newgrf_generic.cpp
# src/news_gui.cpp
# src/openttd.cpp
# src/os/unix/unix.cpp
# src/os/windows/font_win32.cpp
# src/os/windows/win32.cpp
# src/rail_gui.cpp
# src/road_gui.cpp
# src/saveload/afterload.cpp
# src/saveload/misc_sl.cpp
# src/saveload/oldloader_sl.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/script/script_gui.cpp
# src/settings_table.cpp
# src/signs_gui.cpp
# src/smallmap_gui.cpp
# src/smallmap_gui.h
# src/spritecache.cpp
# src/spritecache.h
# src/spriteloader/grf.cpp
# src/station_cmd.cpp
# src/statusbar_gui.cpp
# src/stdafx.h
# src/strgen/strgen_base.cpp
# src/subsidy.cpp
# src/table/settings/difficulty_settings.ini
# src/texteff.cpp
# src/timetable_cmd.cpp
# src/timetable_gui.cpp
# src/toolbar_gui.cpp
# src/town_cmd.cpp
# src/town_gui.cpp
# src/townname.cpp
# src/vehicle.cpp
# src/waypoint_cmd.cpp
# src/widgets/dropdown.cpp
# src/window.cpp
2023-05-26 19:36:48 +01:00
Rubidium
fb856e16c1
Codechange: replace some min/clamp constructs to ClampTo
2023-05-06 21:26:13 +02:00
Patric Stout
7aa2b9ab0a
Codechange: move all date-related variables inside the timer ( #10706 )
2023-04-24 15:56:01 +00:00
Peter Nelson
d0c71f2a9e
Codechange: Use reserve/emplace when initializing object definitions.
...
This avoids unnecessary initialization of objects.
2023-04-23 15:58:27 +01:00
Rubidium
7088f5b7c7
Codechange: use string/fmt instead of printf for grfmsg
2023-04-18 23:21:08 +02:00
Peter Nelson
82c70ed3b8
Change: Expose ObjectSpec vector to simplify iteration.
2023-04-02 22:42:38 +01:00
Peter Nelson
1f46f080f0
Codechange: Store objectspecs in std::vector instead of flat array.
2023-04-02 22:42:38 +01:00
Peter Nelson
93197f58b7
Codechange: Bind objectspecs to classes once all finalised.
2023-04-02 22:42:38 +01:00
Jonathan G Rennison
4c1406a4b5
Add: NewGRF road stops
2023-02-26 21:28:30 +01:00
Jonathan G Rennison
c0c9c66f7b
GRF: Initial support for > 255 objects per GRF
2023-02-11 16:22:25 +00:00
Peter Nelson
c95a3be243
Change: Expose ObjectSpec vector to simplify iteration.
...
(cherry picked from commit 51b112139235c66c3adb2c3a75919fc1d3eff9fc)
2023-02-11 00:30:40 +00:00
Peter Nelson
74e4556a85
Codechange: Store objectspecs in std::vector instead of flat array.
...
(cherry picked from commit 1ae263c5467105820e4d770b3d57d25ba01e22b1)
2023-02-11 00:30:40 +00:00
Peter Nelson
d34e1bbbc1
Codechange: Bind objectspecs to classes once all finalised.
...
(cherry picked from commit 5f4a8f730b8982cbec7eec5e2331f0bc9217e69e)
2023-02-11 00:30:40 +00:00
Jonathan G Rennison
1bfd96c7f2
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/3rdparty/fmt/core.h
# src/command_type.h
# src/console_cmds.cpp
# src/core/overflowsafe_type.hpp
# src/landscape.cpp
# src/network/network.cpp
# src/newgrf_object.h
# src/object_cmd.cpp
# src/order_gui.cpp
# src/saveload/vehicle_sl.cpp
# src/script/api/script_industrytype.cpp
# src/script/api/script_object.hpp
# src/script/api/script_town.cpp
# src/table/object_land.h
# src/timetable_cmd.cpp
# src/tree_cmd.cpp
# src/vehicle_gui.cpp
# src/window.cpp
2023-01-15 19:28:37 +00:00
PeterN
2355882ec1
Codechange: Remove object enabled
flag and shuffle members. ( #10358 )
...
`enabled` flag is replaced with IsEnabled() which checks if views is
non-zero.
ObjectSpec is shuffled to reduce its memory footprint.
2023-01-15 10:58:03 +00:00
Jonathan G Rennison
6d4da8afd4
Add setting to ignore object introduction dates
2022-06-02 14:06:21 +01:00
Jonathan G Rennison
6fce46304a
Add setting to disable object expiry after a given year
2022-06-02 13:29:03 +01:00
Jonathan G Rennison
564d7e5029
Debug: Allow clicking to highlight group in sprite group dump window
2022-06-01 21:31:05 +01:00
Jonathan G Rennison
8eb86fa6c7
GRF: Use access mask when evaluating get nearby tile information variable
2022-05-31 01:32:18 +01:00
Jonathan G Rennison
23c472d2a0
Add support for road stop animation, availability callback
...
Add animation, callback mask, general flags properties
Add animation frame variables
2022-02-15 00:22:18 +00:00
Jonathan G Rennison
acc9dffab7
Add object mapped variables for slope after foundation applied
2022-01-24 02:01:09 +00:00
Jonathan G Rennison
33dc6c9688
Add NewGRF VarAction2 variable remapping infrastructure
2022-01-24 02:01:09 +00:00
Jonathan G Rennison
06fa1ae332
Add object shore/flooding support, adjust handling of foundations
...
Add info to debug window
2021-12-05 21:46:09 +00:00
Jonathan G Rennison
d9116106ca
Add NewGRF object property for new edge foundation mode
2021-12-05 21:33:56 +00:00
Jonathan G Rennison
924ffb013f
Add NewGRF object property/flag to use land as object ground sprite
...
This handles variable ground densities, snow/desert, etc.
2021-12-05 11:54:13 +00:00
Jonathan G Rennison
76fcfd3efd
Debug: Add sprite dump support to NewGRF objects
2021-12-03 18:13:58 +00:00
Jonathan G Rennison
0b0d154788
Merge branch 'master' into jgrpp-beta
...
# Conflicts:
# .github/workflows/ci-build.yml
# src/lang/german.txt
# src/lang/romanian.txt
# src/lang/slovak.txt
# src/lang/turkish.txt
# src/network/core/address.cpp
# src/network/core/tcp.h
# src/network/core/udp.cpp
# src/network/network.cpp
# src/network/network_client.cpp
# src/network/network_server.cpp
# src/network/network_server.h
# src/network/network_udp.cpp
# src/openttd.cpp
# src/saveload/newgrf_sl.cpp
# src/tree_cmd.cpp
# src/video/video_driver.hpp
# src/window.cpp
# src/window_gui.h
2021-09-22 21:50:02 +01:00