Commit Graph

1042 Commits (39917e8ab27f176684c9e8d0207cb42400aedb8b)

Author SHA1 Message Date
Jonathan G Rennison c19bd4473f Add signal style flag to require realistic braking 2 years ago
Jonathan G Rennison 78ae295dfe Add combined normal and shunt aspect signal style flag 2 years ago
Jonathan G Rennison 21606df9d3 Fix adding second set of signals to tile not setting signal style 2 years ago
Jonathan G Rennison 8249f3d535 Fix land info window not having strings for no-entry signals 2 years ago
Jonathan G Rennison 2f7664fc93 Move signal style mask variables into a single struct 2 years ago
Jonathan G Rennison fcae909839 Add signal style flag for drawing on the opposite side 2 years ago
Jonathan G Rennison 92723d4f5c Remove tunnel/bridge spacing setting, use usual signal drag spacing 2 years ago
Jonathan G Rennison 191f710c40 Add custom signal style properties to set electric/semaphore enabled types 2 years ago
Jonathan G Rennison bdd73a19a1 Add signal style flag for unconditional reserve through
Add map bits for unconditional reserve through
Adjust signal aspect/state handling
2 years ago
Jonathan G Rennison 7ae06124ae Add signal style flag for no aspect increase behaviour (banner repeater) 2 years ago
Jonathan G Rennison 6e4c4b35e7 Initial implementation of NewGRF custom signal styles 2 years ago
Jonathan G Rennison 41117a52d2 Signals: Add variable for signal context (track, tunnel, bridge, etc) 2 years ago
Jonathan G Rennison ba52fbeb91 Signals: Add variable for restriction info, add bit for reserve through 2 years ago
Jonathan G Rennison 9d0e3e22b7 Fix being able to add/remove/modify tunnel/bridge signals when occupied 2 years ago
J0anJosep d9a37c915f Cleanup #9725: Replace cmd_helper related functions and remove cmd_helper.h. 3 years ago
Jonathan G Rennison 30817c3915 Fix VRF_BEYOND_PLATFORM_END not being cleared when switching order 3 years ago
Jonathan G Rennison ee7fbfc410 Merge pull request #350 into jgrpp 3 years ago
Jonathan G Rennison f658d9f1fc Fix rail drag remove removing track even with an unremovable signal
This occurred when a removing a signal was blocked due to realistic
braking moving train restrictions.
This resulted in incorrect signal infrastructure totals and MP desyncs.
3 years ago
Yourself 3f391a74af fix: error when removing tunnelbridge signal w/ tracerestruct 3 years ago
Jonathan G Rennison f65a166308 Add client setting to show all signals using the default sprites 3 years ago
Joan Josep e890e7db76
Cleanup #9725: Clean up Doxygen docs and fix typo. (#9753) 3 years ago
Michael Lutz c6d7b98808 Codechange: Un-bitstuff landscape commands. 3 years ago
Michael Lutz 55170ae703 Codechange: Un-bitstuff rail commands. 3 years ago
Michael Lutz 6fe445e6c0 Codechange: Un-bitstuff station/depot/waypoint commands. 3 years ago
Michael Lutz e740c24eb7 Codechange: Template DoCommand to automagically reflect the parameters of the command proc.
When finished, this will allow each command handler to take individually
different parameters, obliviating the need for bit-packing.
3 years ago
Michael Lutz 7048e1522f Codechange: Move flags in CommandProc in front of the command arguments. 3 years ago
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 5349003ec4 Add assert checks to road type infra total changes 3 years ago
Jonathan G Rennison de6cf4de24 Check blocking train reservation before removing signals in CmdRemoveSingleRail 3 years ago
Jonathan G Rennison 4ccbb11440 Only show level crossing overlay sprites on outsides of multi-track crossings
When using both adjacent crossings and safer crossings
3 years ago
dP 54951e39a1
Fix #8797: Use logical rail length when placing signals (#9652) 3 years ago
Jonathan G Rennison 74bfe4e6d2 Allow placing routing restrictions on tunnel/bridge entrance/exit signals
No reserve through support
3 years ago
Jonathan G Rennison fb604ded6b Fix restricted signal bit with semaphores for GRF custom signals 3 years ago
Jonathan G Rennison 1e0bea5b8d Replace FindFirstBit/FindFirstBit64 with a single template function 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 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
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 b08cc3cf38 Reduce screen re-draw area for tunnel/bridge end signal updates 3 years ago
Jonathan G Rennison f6c2a81f72 Reduce screen re-draw area for bridge middle signal updates 3 years ago
Jonathan G Rennison 16f2ef227b Store tunnel/bridge signal spacing on tile, adjust spacing to fit length 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 93c23b4096 Fix signals on dual railtype tiles using wrong per-railtype custom sprites 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
Jonathan G Rennison 98e2cb2e3e Open routing restriction window on ctrl-click of any non-prog signal
See: #294
3 years ago
Andreas Schmitt d718ba62ef Add option to sort tracks by category and speed (#282) 3 years ago
Jonathan G Rennison 384e8cca89 Fix infra signal total when moving signalled tunnel/bridge to other company
When signal spacing setting differs
3 years ago
Vít Šefl c936f8b769 Fix b791ffc6: use the correct parameter in CmdSignalTrackHelper 3 years ago
Jonathan G Rennison 054c820521 Implement custom sprite detection with new sprite mechanism 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
rubidium42 2e136285e1 Codechange: move from C-string to std::string for DoCommand 3 years ago
rubidium42 b791ffc6de Fix: do not hide parameter by local variable with the same name 3 years ago
Jonathan G Rennison 74091c3c80 Disable realistic braking for TELE, PIPE, WIRE railtypes by default
See: #242
4 years ago
Jonathan G Rennison 227041008f Merge branch 'master' into jgrpp
# Conflicts:
#	src/debug.cpp
#	src/lang/russian.txt
#	src/misc_gui.cpp
#	src/os/windows/crashlog_win.cpp
#	src/os/windows/font_win32.cpp
#	src/os/windows/win32.cpp
#	src/rail_cmd.cpp
#	src/window_gui.h
4 years ago
Jonathan G Rennison edfa04286b Merge branch 'master' into jgrpp
# Conflicts:
#	.github/workflows/release.yml
#	bin/CMakeLists.txt
#	src/dock_gui.cpp
#	src/lang/brazilian_portuguese.txt
#	src/lang/catalan.txt
#	src/lang/czech.txt
#	src/lang/dutch.txt
#	src/lang/english.txt
#	src/lang/english_US.txt
#	src/lang/estonian.txt
#	src/lang/finnish.txt
#	src/lang/french.txt
#	src/lang/german.txt
#	src/lang/hungarian.txt
#	src/lang/indonesian.txt
#	src/lang/italian.txt
#	src/lang/japanese.txt
#	src/lang/korean.txt
#	src/lang/lithuanian.txt
#	src/lang/luxembourgish.txt
#	src/lang/norwegian_bokmal.txt
#	src/lang/polish.txt
#	src/lang/portuguese.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.txt
#	src/lang/spanish_MX.txt
#	src/lang/swedish.txt
#	src/lang/tamil.txt
#	src/lang/ukrainian.txt
#	src/lang/vietnamese.txt
#	src/newgrf.cpp
#	src/newgrf_gui.cpp
#	src/object_gui.cpp
#	src/pathfinder/yapf/yapf_costrail.hpp
#	src/pathfinder/yapf/yapf_node_rail.hpp
#	src/rail_cmd.cpp
#	src/roadveh_cmd.cpp
#	src/town_cmd.cpp
#	src/vehicle.cpp
#	src/water_cmd.cpp
4 years ago
Peter Nelson f9460c0c8b Fix #8981: Don't attempt to re-reserve path if already entering/entered depot. 4 years ago
Jonathan G Rennison 850d2bfa23 Fix tile iterator leak in CmdConvertRail 4 years ago
Charles Pigott 086c95718d
Fix #8803: Only auto-remove signals when rail can be built (#8904) 4 years ago
Jonathan G Rennison f4526dbb5f Fix wrong cost when cycling tunnel/bridge signal type with CTRL 4 years ago
Jonathan G Rennison 23651fd550 Fix #214: CmdRemoveSingleSignal removed tunnel/bridge signals in test mode
Regression from: ed0ffb622
4 years ago
Jonathan G Rennison 5ac9fa10e1 Fix signal dragging when obstructed by train reservation 4 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
4 years ago
Jonathan G Rennison 1d1b105299 Fix auto remove signals functionality 4 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
4 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
4 years ago
Jonathan G Rennison ed0ffb6220 Add feature: realistic train braking
Add setting to select train braking model.
4 years ago
Charles Pigott 9b800a96ed
Codechange: Remove min/max functions in favour of STL variants (#8502) 4 years ago
Kuhnovic a3a7928372
Feature: option to auto remove signals when in the way during rail construction (#8274) 4 years ago
Jonathan G Rennison 6965a339c4 Fix crash when removing rail depot or road when debug window open on tile 4 years ago
Patric Stout bb28ff7226
Codechange: DC_NO_RAIL_OVERLAP is a remnant of the OldAI. (#8496)
The OldAI was removed in 2009. Pretty sure we can remove this flag
now too.
4 years ago
Charles Pigott 860c270c73 Codechange: Replace assert_compile macro with static_assert 4 years ago
Jonathan G Rennison ffbb4622ad Make sure that CmdBuildSingleRail failure cannot modify tile rail types 4 years ago
Jonathan G Rennison ffe3c769a3 Add road tile cached one way state, one way road section detection 4 years ago
Jonathan G Rennison 92ca965ef7 Fix PBS rail type handling with incorrect GRF rail type compatibility 4 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 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 a18ebba564 Allow converting track under trains when compatible with the new rail type 4 years ago
Jonathan G Rennison ea06a0670d Add rail ground type support for rail custom bridge heads
See: #146
4 years ago
Jonathan G Rennison 763a2826b6 Merge branch 'master' into jgrpp
# Conflicts:
#	src/gamelog.cpp
4 years ago
glx 39092ee13b Fix #8119: Update docking area when clearing a shore rail tile 4 years ago
SamuXarick a95fbd59a3
Fix #8119, f538179: Update docking tile area when placing a diagonal rail next to a dock end (#8124) 4 years ago
Jonathan G Rennison cba9b56ff7 Custom bridge heads: Fix secondary rail track type when removing piece
In case when new configuration is parallel tracks
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.
5 years ago
Jonathan G Rennison 4108672cf6 Use separate tile hash for each vehicle type 5 years ago
Jonathan G Rennison 1d79a7610d Increase width of signal state change viewport invalidation area 5 years ago
Jonathan G Rennison 5240b46d1d Reduce viewport invalidation area of signal state changes 5 years ago
Jonathan G Rennison 08af3b38d9 Do not mark map-mode viewports dirty when changing rail ground type 5 years ago
Jonathan G Rennison e217cee5de Fix incorrect reservation when signal is removed from under train
In case where the front is in a signalled tunnel/bridge
5 years ago
Jonathan G Rennison 76f68c48f5 Cache whether vehicle is currently drawn: Vehicle::IsDrawn() 5 years ago
Jonathan G Rennison 030e8bf762 Rename programmable signals to programmable pre-signals
This is to make it less unclear what they actually are and do
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
Jonathan G Rennison 03fbe87752 Merge branch 'master' into jgrpp 5 years ago
stormcone f1712a54b2 Fix #6407: Show snowy ground sprites for depots (#7671)
This is a quick fix by @KeldorKatarn:
65e656b9d6

It has the drawback that snow is draw to the inside the depots as well, as the removed comment suggests.
5 years ago
Jonathan G Rennison 7ed86e7488 Merge branch 'jgrpp' into jgrpp-nrt 5 years ago
Jonathan G Rennison d99b867f44 Fix crash when removing signal from tunnel/bridge with trainless reservation 5 years ago
Jonathan G Rennison d3e0c3787f Merge branch 'master' into jgrpp-nrt
Merge trunk multiple docks implementation

# Conflicts:
#	docs/landscape_grid.html
#	src/order_cmd.cpp
#	src/pathfinder/npf/npf.cpp
#	src/pathfinder/yapf/yapf_ship.cpp
#	src/rail_cmd.cpp
#	src/saveload/afterload.cpp
#	src/saveload/oldloader_sl.cpp
#	src/saveload/station_sl.cpp
#	src/script/api/script_order.cpp
#	src/ship_cmd.cpp
#	src/station.cpp
#	src/station_base.h
#	src/station_cmd.cpp
#	src/tunnelbridge_cmd.cpp
5 years ago
Jonathan G Rennison ba8ed880c1 Merge branch 'master' into jgrpp-nrt
Merge NRT feature

# Conflicts:
#	docs/landscape.html
#	docs/landscape_grid.html
#	src/bridge_map.h
#	src/build_vehicle_gui.cpp
#	src/company_base.h
#	src/company_cmd.cpp
#	src/misc_gui.cpp
#	src/newgrf.cpp
#	src/newgrf_engine.cpp
#	src/pathfinder/follow_track.hpp
#	src/pathfinder/npf/npf.cpp
#	src/road_cmd.cpp
#	src/road_func.h
#	src/road_gui.cpp
#	src/road_map.h
#	src/road_type.h
#	src/roadveh_cmd.cpp
#	src/saveload/afterload.cpp
#	src/saveload/company_sl.cpp
#	src/script/api/script_bridge.cpp
#	src/table/newgrf_debug_data.h
#	src/tile_cmd.h
#	src/town_cmd.cpp
#	src/tunnel_map.h
#	src/tunnelbridge_cmd.cpp
5 years ago