Commit Graph

287 Commits (jgrpp)

Author SHA1 Message Date
Michael Lutz 33ca4f2b99 Codechange: Let the compile generate the master command table out of templated command traits.
This is using a non-intrusive type-traits like templated system, which
allows compile-time validation that the command table and the command
enum match up.
3 years ago
Michael Lutz b6933a2ebd Codechange: Move command arguments to the back of the DoCommand function call. 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 06fa1ae332 Add object shore/flooding support, adjust handling of foundations
Add info to debug window
3 years ago
Jonathan G Rennison d9116106ca Add NewGRF object property for new edge foundation mode 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 58d8418f83 Merge branch 'master' into jgrpp
# Conflicts:
#	src/lang/arabic_egypt.txt
3 years ago
Tyler Trahan e9cb9c1135
Fix #9579: Object and HQ construction is Construction cost, not Property Maintenance (#9673) 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 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
Jonathan G Rennison c99eaf72b7 Fix #9591: Update station docking tiles upon placing a water object on a docking tile (#9594)
See: https://github.com/OpenTTD/OpenTTD/issues/9591
See: https://github.com/OpenTTD/OpenTTD/pull/9594

Non-extended savegame bump to be applied later

(cherry picked from commit e404d16929)

# Conflicts:
#	src/object_cmd.cpp
#	src/saveload/afterload.cpp
#	src/saveload/saveload.h
3 years ago
SamuXarick e404d16929
Fix #9591: Update station docking tiles upon placing a water object on a docking tile (#9594) 3 years ago
dP 39662aabef
Add: allow gamescripts to build neutral objects (#9568) 3 years ago
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
3 years ago
Charles Pigott 29df09e917 Fix #9527: Crash when trying to place multitile objects at map edge
(cherry picked from commit a2d93441fab53077c832247f09263762c38c8e90)
3 years ago
Charles Pigott d4588df9f9 Fix #9527: Crash when trying to place multitile objects at map edge 3 years ago
rubidium42 2e136285e1 Codechange: move from C-string to std::string for DoCommand 3 years ago
glx22 38c97e1492 Codechange: Replace TILE_AREA_LOOP with range-based for loops 3 years ago
Jonathan G Rennison 1a29a1ee74 Fix building objects, trees and buoys on water/shore not clearing neighbour flooding states 3 years ago
Jonathan G Rennison e95216b59d Merge branch 'master' into jgrpp
# Conflicts:
#	src/company_cmd.cpp
#	src/core/geometry_func.cpp
#	src/date.cpp
#	src/genworld_gui.cpp
#	src/gfx.cpp
#	src/object_gui.cpp
#	src/openttd.cpp
#	src/settings_type.h
#	src/video/allegro_v.cpp
#	src/video/dedicated_v.cpp
#	src/video/null_v.cpp
#	src/video/sdl2_v.cpp
#	src/video/sdl_v.cpp
#	src/video/win32_v.cpp
3 years ago
Charles Pigott d9df20d102 Change: Use a more specific error message when attempting to bulldoze your own HQ 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 f9956d88c3 Merge branch 'master' into jgrpp
# Conflicts:
#	src/aircraft_cmd.cpp
#	src/company_gui.cpp
#	src/lang/arabic_egypt.txt
#	src/lang/czech.txt
#	src/lang/esperanto.txt
#	src/lang/faroese.txt
#	src/lang/finnish.txt
#	src/lang/german.txt
#	src/lang/korean.txt
#	src/lang/latvian.txt
#	src/lang/malay.txt
#	src/lang/polish.txt
#	src/lang/spanish.txt
#	src/lang/spanish_MX.txt
#	src/lang/unfinished/urdu.txt
#	src/main_gui.cpp
#	src/rail_cmd.cpp
#	src/rail_gui.cpp
#	src/road_cmd.cpp
#	src/settings_type.h
#	src/station_cmd.cpp
#	src/table/settings.ini
3 years ago
Charles Pigott 9b800a96ed
Codechange: Remove min/max functions in favour of STL variants (#8502) 3 years ago
Patric Stout 28c13ec90f
Fix #8168: allow relocating of HQ partial over existing HQ (#8510)
Just in case you want to move it SLIGHTLY to the right.
3 years ago
Jonathan G Rennison 352b361e1b Viewport: Replace viewport mark dirty if zoom level below with flags param
Fix missing flags for tracerestrict and effect vehicles
4 years ago
Jonathan G Rennison f44d75eaf5 Allow building objects by area (1x1 objects only)
Add setting (default on)
4 years ago
Jonathan G Rennison 2d350d26db Add rate limit for object construction 4 years ago
Jonathan G Rennison dc4bd3a0be Skip non-Object tiles in UpdateObjectColours 4 years ago
Jonathan G Rennison 7949de2c05 Add a minimum visible height and no ground tile parameter to DrawTileProc.
Filter out tile parts which are entirely outside the drawing area.
4 years ago
Jonathan G Rennison 7960db35f2 Merge branch 'master' into jgrpp
# Conflicts:
#	config.lib
#	projects/openttd_vs140.vcxproj
#	projects/openttd_vs140.vcxproj.filters
#	projects/openttd_vs141.vcxproj
#	projects/openttd_vs141.vcxproj.filters
#	projects/openttd_vs142.vcxproj
#	projects/openttd_vs142.vcxproj.filters
#	src/aircraft_cmd.cpp
#	src/base_station_base.h
#	src/core/pool_type.hpp
#	src/disaster_vehicle.cpp
#	src/economy.cpp
#	src/engine.cpp
#	src/group.h
#	src/group_cmd.cpp
#	src/group_gui.cpp
#	src/lang/english.txt
#	src/lang/german.txt
#	src/linkgraph/linkgraph_gui.cpp
#	src/network/network_command.cpp
#	src/network/network_server.cpp
#	src/openttd.cpp
#	src/order_cmd.cpp
#	src/road_cmd.cpp
#	src/saveload/afterload.cpp
#	src/saveload/cargopacket_sl.cpp
#	src/saveload/linkgraph_sl.cpp
#	src/saveload/order_sl.cpp
#	src/saveload/station_sl.cpp
#	src/saveload/town_sl.cpp
#	src/saveload/vehicle_sl.cpp
#	src/screenshot.cpp
#	src/screenshot.h
#	src/settings_gui.cpp
#	src/settings_type.h
#	src/smallmap_gui.cpp
#	src/station.cpp
#	src/station_cmd.cpp
#	src/table/settings.ini
#	src/toolbar_gui.cpp
#	src/town_cmd.cpp
#	src/train.h
#	src/train_cmd.cpp
#	src/train_gui.cpp
#	src/vehicle.cpp
#	src/vehicle_base.h
#	src/vehiclelist.cpp
#	src/window_type.h
4 years ago
glx 514565fad6 Codechange: Replace FOR_ALL_OBJECTS with range-based for loops 5 years ago
Jonathan G Rennison cbdd9f84d8 Merge branch 'master' into jgrpp
# Conflicts:
#	src/console_gui.cpp
#	src/lang/korean.txt
#	src/video/sdl2_v.cpp
#	src/video/sdl2_v.h
#	src/window.cpp
#	src/window_gui.h
5 years ago
S. D. Cloudt 13cc8a0cee Cleanup: Removed SVN headers 5 years ago
Samu 3d362f2513 Fix #7697: Add a Missing AddProducedCargo proc for HQ
On TileLoop_Object, HQs are able to produce and move passengers and mail to stations, but querying the HQ tiles for cargo supplied was returning nothing. This makes it so that they return +1 to both passengers and mail.
5 years ago
Jonathan G Rennison edfd378e93 Merge branch 'master' into jgrpp
# Conflicts:
#	source.list
#	src/blitter/32bpp_anim.cpp
#	src/linkgraph/linkgraphjob.cpp
#	src/order_cmd.cpp
#	src/vehicle.cpp
#	src/vehicle_type.h
5 years ago
JMcKiern 04f659e768 Fix: Some typos found using codespell 5 years ago
Jonathan G Rennison 674732cd68 Merge: Codechange: Use null pointer literal instead of the NULL macro 5 years ago
Henry Wilson 7c8e7c6b6e Codechange: Use null pointer literal instead of the NULL macro 5 years ago
Jonathan G Rennison 361758b516 Merge branches 'crashlog_improvements', 'save_ext' into jgrpp
# Conflicts:
#	Makefile.src.in
#	projects/openttd_vs140.vcxproj
#	projects/openttd_vs140.vcxproj.filters
#	projects/openttd_vs141.vcxproj
#	projects/openttd_vs141.vcxproj.filters
#	projects/openttd_vs142.vcxproj
#	projects/openttd_vs142.vcxproj.filters
#	src/core/smallstack_type.hpp
#	src/linkgraph/linkgraphjob.cpp
#	src/linkgraph/linkgraphjob.h
#	src/misc.cpp
#	src/network/network_udp.cpp
#	src/openttd.cpp
#	src/saveload/saveload.cpp
5 years ago
PeterN 812886ca61
Fix #7478: Don't remove NewGRF objects on company take-over. (#7483) 5 years ago
Jonathan G Rennison ba34ec7ade Merge branch 'master' into jgrpp
Replace build and refit, and group collapse implementations
Fix template creation build and refit

# Conflicts:
#	Makefile.bundle.in
#	config.lib
#	src/animated_tile.cpp
#	src/blitter/32bpp_anim.hpp
#	src/blitter/32bpp_base.hpp
#	src/blitter/8bpp_base.hpp
#	src/blitter/null.hpp
#	src/build_vehicle_gui.cpp
#	src/command.cpp
#	src/command_func.h
#	src/console_gui.cpp
#	src/core/smallstack_type.hpp
#	src/date.cpp
#	src/debug.cpp
#	src/genworld_gui.cpp
#	src/ground_vehicle.hpp
#	src/group_gui.cpp
#	src/lang/korean.txt
#	src/linkgraph/linkgraph_gui.h
#	src/main_gui.cpp
#	src/misc_gui.cpp
#	src/network/core/game.h
#	src/network/core/packet.cpp
#	src/network/core/udp.cpp
#	src/network/core/udp.h
#	src/network/network_content.cpp
#	src/network/network_type.h
#	src/network/network_udp.cpp
#	src/newgrf_house.h
#	src/openttd.cpp
#	src/order_cmd.cpp
#	src/order_gui.cpp
#	src/os/unix/crashlog_unix.cpp
#	src/os/windows/crashlog_win.cpp
#	src/osk_gui.cpp
#	src/pathfinder/opf/opf_ship.cpp
#	src/rail_cmd.cpp
#	src/rail_gui.cpp
#	src/saveload/saveload.cpp
#	src/settings.cpp
#	src/settings_gui.cpp
#	src/smallmap_gui.h
#	src/station_base.h
#	src/station_cmd.cpp
#	src/table/gameopt_settings.ini
#	src/table/newgrf_debug_data.h
#	src/table/settings.ini
#	src/timetable_gui.cpp
#	src/toolbar_gui.cpp
#	src/train_gui.cpp
#	src/vehicle.cpp
#	src/vehicle_gui.cpp
#	src/vehiclelist.cpp
#	src/viewport.cpp
#	src/widgets/dropdown.cpp
#	src/window_gui.h
5 years ago
Henry Wilson c01a2e2a81 Codechange: Removed SmallVector completely 5 years ago
Henry Wilson ab711e6942 Codechange: Replaced SmallVector::[Begin|End]() with std alternatives 5 years ago
Henry Wilson a0f36a50e6 Codechange: Replaced SmallVector::Append() with std::vector::[push|emplace]_back() 5 years ago
Jonathan G Rennison e3b85f617b Merge branch 'master' into jgrpp
# Conflicts:
#	src/station_cmd.cpp
5 years ago
Johannes E. Krause 234f1007f7 Cleanup: Remove questionable syntax in HQ size calculation 5 years ago
Jonathan G Rennison 08998d95ba De-virtualise tile animation calls 5 years ago
Jonathan G Rennison e3207a77fb Add setting to control if and how land purchasing is permitted 6 years ago
Jonathan G Rennison 10320747a9 Allow purchasing a region of tile at once, by dragging 6 years ago
Jonathan G Rennison 46b1ea81e4 Add company rate limit for land area purchasing 6 years ago
Jonathan G Rennison 9e1e074c2b Update existing assertions to log tile information where suitable 6 years ago
Jonathan G Rennison 56bde8ce18 Add setting to allow placing all NewGRF objects under bridges 6 years ago
Jonathan G Rennison 56be293107 Merge branch 'master' into jgrpp
# Conflicts:
#	src/blitter/32bpp_anim.cpp
#	src/blitter/32bpp_anim.hpp
#	src/blitter/32bpp_anim_sse2.cpp
#	src/blitter/32bpp_base.cpp
#	src/blitter/32bpp_base.hpp
#	src/ground_vehicle.cpp
#	src/linkgraph/linkgraph_gui.h
#	src/main_gui.cpp
#	src/newgrf_house.cpp
#	src/newgrf_house.h
#	src/town_cmd.cpp
#	src/vehicle_base.h
#	src/viewport_gui.cppp
6 years ago
PeterN 4cebebcf68
Change: Add CargoTypes type for cargo masks. (#6790) 6 years ago
Jonathan G Rennison c83903ddb0 Merge branch 'master' into jgrpp 8 years ago
frosch d7ee0b6fee (svn r27656) -Fix [FS#6511]: When removing objects of bankrupt companies the tiles may revert to canal. In that case also check the ownership of the canal. 8 years ago
frosch 740534440e (svn r27656) -Fix [FS#6511]: When removing objects of bankrupt companies the tiles may revert to canal. In that case also check the ownership of the canal. 8 years ago
patch-import 536a95dfd0 Import combined Enhanced viewport: zoom out, overlays & tooltips (r53_27127) patch
https://www.tt-forums.net/viewtopic.php?f=33&t=53394
9 years ago
rubidium dc2b4f2498 (svn r26879) -Codechange: remove most MayHaveBridgeAbove calls since the data is now always accessible 10 years ago
rubidium 9daf7e749c (svn r26879) -Codechange: remove most MayHaveBridgeAbove calls since the data is now always accessible 10 years ago
rubidium 2be4215f43 (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 10 years ago
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 10 years ago
frosch 3484660ab1 (svn r26240) -Codechange: Pass the GRFFile to GetErrorMessageFromLocationCallbackResult instead of the GRFID. 11 years ago
frosch 73c6565cf2 (svn r26240) -Codechange: Pass the GRFFile to GetErrorMessageFromLocationCallbackResult instead of the GRFID. 11 years ago
planetmaker 3cff961713 (svn r25938) -Fix [FS#5798] (r25876): Don't mistake a lighthouse for a transmitter and vice versa 11 years ago
planetmaker 86a658ca21 (svn r25938) -Fix [FS#5798] (r25876): Don't mistake a lighthouse for a transmitter and vice versa 11 years ago
planetmaker c146d59a25 (svn r25880) -Fix (r25875): Special rules for world generation needs be considered in one more place 11 years ago
planetmaker 95b973ec6c (svn r25880) -Fix (r25875): Special rules for world generation needs be considered in one more place 11 years ago
planetmaker 8c86b8c668 (svn r25879) -Change: Allow to remove unowned objects unless they have the 'unremovable' flag 11 years ago
planetmaker 70e4074a4c (svn r25879) -Change: Allow to remove unowned objects unless they have the 'unremovable' flag 11 years ago
planetmaker 91c3c20cc5 (svn r25876) -Codechange: Unify object placement during map creation 11 years ago
planetmaker 8033162bb8 (svn r25876) -Codechange: Unify object placement during map creation 11 years ago
planetmaker 3eed8402f1 (svn r25875) -Change: In scenario editor allow to build all objects which were available at any point in the past to support building scenarios with historic items 11 years ago
planetmaker 2ee9a2b5e7 (svn r25875) -Change: In scenario editor allow to build all objects which were available at any point in the past to support building scenarios with historic items 11 years ago
planetmaker 7ac9dd08ea (svn r25871) -Codechange: Move placement rules for lighthouses to its own function 11 years ago
planetmaker 0bc86ff9ee (svn r25871) -Codechange: Move placement rules for lighthouses to its own function 11 years ago
planetmaker c391cdaf33 (svn r25870) -Codechange: Move placement rules for transmitter to its own function 11 years ago
planetmaker 0a481d5ea6 (svn r25870) -Codechange: Move placement rules for transmitter to its own function 11 years ago
zuu e124838db5 (svn r25849) -Codechange: Introduce IsTileFlat to not compute full slope information for situations when we only want to know if a tile is flat or not (cirdan, LordAro) 11 years ago
zuu dfb5663313 (svn r25849) -Codechange: Introduce IsTileFlat to not compute full slope information for situations when we only want to know if a tile is flat or not (cirdan, LordAro) 11 years ago
frosch b70d64200e (svn r25835) -Change: Increase the total number of object types from 256 to 64000. 11 years ago
frosch ac599625da (svn r25835) -Change: Increase the total number of object types from 256 to 64000. 11 years ago
frosch d9d978d6d2 (svn r25833) -Codechange: Move ObjectType from map array into pool item. 11 years ago
frosch 35d7e8bca4 (svn r25833) -Codechange: Move ObjectType from map array into pool item. 11 years ago
frosch 478500abbc (svn r25832) -Codechange: Reduce variety of object type test functions. 11 years ago
frosch 2080a8c16f (svn r25832) -Codechange: Reduce variety of object type test functions. 11 years ago
frosch 08cedd77b2 (svn r25753) -Fix [FS#5725] (r25557): If old savegames contain bridges over owned land, keep on drawing the bridges nevertheless. 11 years ago
frosch 938ae194a5 (svn r25753) -Fix [FS#5725] (r25557): If old savegames contain bridges over owned land, keep on drawing the bridges nevertheless. 11 years ago
rubidium 5811e3eae7 (svn r23842) -Change [FS#5001, FS#5002]: do not let towns (ever) remove objects 13 years ago
rubidium 60a52404e3 (svn r23842) -Change [FS#5001, FS#5002]: do not let towns (ever) remove objects 13 years ago
rubidium de4ecdb876 (svn r23763) -Fix [FS#4956]: check whether a water tile is really empty when overbuilding it with an object 13 years ago
rubidium 9d958ff581 (svn r23763) -Fix [FS#4956]: check whether a water tile is really empty when overbuilding it with an object 13 years ago
rubidium d5eeab43b7 (svn r23740) -Codechange: remove some 300 unneeded includes from the .cpp files 13 years ago
rubidium 6d6be50ae0 (svn r23740) -Codechange: remove some 300 unneeded includes from the .cpp files 13 years ago
yexo 7975bedc23 (svn r23723) -Codechange: speedup flood checks a bit 13 years ago
yexo b9e19cc6c1 (svn r23723) -Codechange: speedup flood checks a bit 13 years ago
michi_cc 796fe54a2f (svn r23413) -Add: Company infrastructure counts for canals. 13 years ago
michi_cc c06bbb4863 (svn r23413) -Add: Company infrastructure counts for canals. 13 years ago
frosch cc82b15f2a (svn r23236) -Fix (r23141): Construction of objects was always rejected. 13 years ago