Commit Graph

308 Commits (tmp-jgrpp)

Author SHA1 Message Date
Jonathan G Rennison b2ef6c0de8 Add implementation of multi-aspect signalling and GRF support
Requires realistic braking

See: #247
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
Jonathan G Rennison 1819a4218b Clear signal speed restriction at game shutdown 3 years ago
Jonathan G Rennison 28e39c9045 Fix trailing whitespace 3 years ago
Andreas Schmitt 669770f209 Fix a few issues and reset everything on start of new game 3 years ago
Jonathan G Rennison 011b3b8b8d Avoid data race on map size when clearing link graph jobs in InitializeGame 3 years ago
Patric Stout f183ded9fe Add: settings to limit your fast-forward game speed
By default this setting is set to 2500% normal game speed.

(cherry picked from commit c3dc27e37e)

# Conflicts:
#	src/gfx.cpp
#	src/gfx_func.h
#	src/settings_type.h
#	src/video/cocoa/cocoa_v.mm
#	src/video/video_driver.cpp
#	src/video/win32_v.cpp
4 years ago
Patric Stout c3dc27e37e Add: settings to limit your fast-forward game speed
By default this setting is set to 2500% normal game speed.
4 years ago
Jonathan G Rennison 2e20da40ed Cache current value of snow line height 4 years ago
Jonathan G Rennison 78b06ddc40 TBTR: Fix palette recolouring of templates
Fix group overrides affecting template image when cloning vehicle
Update template when changing company colours

Update template images on demand instead of at load
4 years ago
Jonathan G Rennison 4763f441f6 On load, use previous local company or first usable company
Instead of always using the first company slot
4 years ago
Jonathan G Rennison 3adeff1883 Merge branch 'master' into jgrpp
# Conflicts:
#	CMakeLists.txt
#	cmake/CompileFlags.cmake
#	src/bridge_gui.cpp
#	src/saveload/afterload.cpp
#	src/saveload/saveload.cpp
#	src/saveload/saveload.h
#	src/saveload/town_sl.cpp
#	src/screenshot.cpp
#	src/screenshot.h
#	src/toolbar_gui.cpp
#	src/town.h
#	src/town_cmd.cpp
4 years ago
Jonathan G Rennison 81a1094cc8 Merge branch 'master' into jgrpp
# Conflicts:
#	src/console_cmds.cpp
#	src/date.cpp
#	src/economy.cpp
#	src/misc.cpp
#	src/newgrf_house.cpp
5 years ago
Niels Martin Hansen c8779fb311
Feature: NewGRF callback profiling (#7868)
Adds a console command newgrf_profile to collect some profiling data about NewGRF action 2 callbacks and produce a CSV file.
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 6562937899 Merge branch 'master' into jgrpp-nrt
# Conflicts:
#	src/console_cmds.cpp
#	src/script/api/script_order.cpp
#	src/station_cmd.cpp
#	src/statusbar_gui.cpp
#	src/town_gui.cpp
5 years ago
Gabda b870596f15 Add #6887: Option to show zone inside local authority boundary of towns
Can be found at town information > local authority window
Layout for button is same as Graph Keys
Turn on/off for every town individually
5 years ago
Jonathan G Rennison 1d5ba98932 Show time and in game date of game load in desync/crash logs 5 years ago
Jonathan G Rennison 3c2ebc4588 Call UpdateTownCargoBitmap in InitializeGame 5 years ago
Jonathan G Rennison 829c635add Add road layout change counter, add to road veh path caches
Update layout counter when non-leaf road bits are added or removed
5 years ago
Jonathan G Rennison ec2291fdb4 Store some desync messages in a ring buffer, append to log on desync 5 years ago
Jonathan G Rennison 5a9790a196 Store crash/desync logs in crash/desync savegame
Add console command to dump loaded debug log
5 years ago
Jonathan G Rennison ec1e848a7f Add log of game events since last load and overall
Add console command
Add to crashlog
5 years ago
Jonathan G Rennison 8196789eeb Maintain map of vehicle order destinations refcounts, by type 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
6 years ago
Patric Stout e3c639a09f Remove: ENABLE_NETWORK switch
This switch has been a pain for years. Often disabling broke
compilation, as no developer compiles OpenTTD without, neither do
any of our official binaries.

Additionaly, it has grown so hugely in our codebase, that it
clearly shows that the current solution was a poor one. 350+
instances of "#ifdef ENABLE_NETWORK" were in the code, of which
only ~30 in the networking code itself. The rest were all around
the code to do the right thing, from GUI to NewGRF.

A more proper solution would be to stub all the functions, and
make sure the rest of the code can simply assume network is
available. This was also partially done, and most variables were
correct if networking was disabled. Despite that, often the #ifdefs
were still used.

With the recent removal of DOS, there is also no platform anymore
which we support where networking isn't working out-of-the-box.

All in all, it is time to remove the ENABLE_NETWORK switch. No
replacement is planned, but if you feel we really need this option,
we welcome any Pull Request which implements this in a way that
doesn't crawl through the code like this diff shows we used to.
6 years ago
Jonathan G Rennison 5e6d283463 Merge branch 'master' into jgrpp
Remove the viewport sign cache as this is now superseded by the kd tree
implementation

# Conflicts:
#	src/crashlog.cpp
#	src/lang/english.txt
#	src/misc.cpp
#	src/pathfinder/follow_track.hpp
#	src/pbs.cpp
#	src/rail_cmd.cpp
#	src/saveload/vehicle_sl.cpp
#	src/settings.cpp
#	src/settings_gui.cpp
#	src/ship_cmd.cpp
#	src/station.cpp
#	src/station_base.h
#	src/station_cmd.cpp
#	src/table/settings.ini
#	src/thread/thread_morphos.cpp
#	src/town_cmd.cpp
#	src/train_cmd.cpp
#	src/viewport.cpp
#	src/waypoint.cpp
6 years ago
Niels Martin Hansen e8d397e4ee Codechange: Make a merged k-d tree index of all viewport signs 6 years ago
Niels Martin Hansen d84b67e54d Codechange: Make a k-d tree index of stations 6 years ago
Niels Martin Hansen 7b56be0f3a Codechange: Make a k-d tree index of towns 6 years ago
Jonathan G Rennison 2fdcc52321 Merge branch 'save_ext' into jgrpp
# Conflicts:
#	Makefile.src.in
#	findversion.sh
#	projects/determineversion.vbs
#	src/lang/dutch.txt
#	src/lang/korean.txt
#	src/network/network.cpp
#	src/network/network_client.cpp
#	src/rail.cpp
#	src/rail_cmd.cpp
#	src/saveload/afterload.cpp
#	src/ship_cmd.cpp
#	src/toolbar_gui.cpp
#	src/vehicle.cpp
6 years ago
Gabda 5e4f76f2f9 Fix #5654: (Re)initialise graph GUI on game (re)start (#7191) 6 years ago
Jonathan G Rennison e5b61e0b6c Refactor CallVehicleTicks vehicle loop 6 years ago
Jonathan G Rennison 698409381e Cache viewport station/waypoint sign infomation 6 years ago
Jonathan G Rennison 8c0c9274ea Merge branch 'infrastructure_sharing' into jgrpp
# Conflicts:
#	src/economy.cpp
#	src/misc.cpp
#	src/openttd.cpp
#	src/saveload/extended_ver_sl.cpp
7 years ago
Jonathan G Rennison 9000d74f3c Pay all cargo payment incomes when cargo finally delivered 7 years ago
Jonathan G Rennison 38fb8c1b84 Zoning: Cache expensive zoning overlay values 7 years ago
Jonathan G Rennison 2fbeb29277 Merge branch 'crashlog_improvements' into jgrpp
# Conflicts:
#	src/misc.cpp
#	src/openttd.cpp
8 years ago
Jonathan G Rennison 349ddd90b7 Maintain a circular buffer of recent commands, add to crashlog.
Add console command to dump command log.
Increase max crashlog size.
8 years ago
Jonathan G Rennison f82feb160f Merge branch 'signal_tunnels_bridges' into jgrpp
# Conflicts:
#	projects/openttd_vs100.vcxproj
#	projects/openttd_vs100.vcxproj.filters
#	projects/openttd_vs140.vcxproj
#	projects/openttd_vs140.vcxproj.filters
#	projects/openttd_vs80.vcproj
#	projects/openttd_vs90.vcproj
#	source.list
#	src/misc.cpp
#	src/openttd.cpp
#	src/pbs.cpp
#	src/saveload/extended_ver_sl.cpp
#	src/saveload/saveload.cpp
#	src/signal.cpp
#	src/train_cmd.cpp
#	src/tunnelbridge_map.h
8 years ago
Jonathan G Rennison 556594f2f0 Extend bridge signal simulation to support an unlimited no. of signals.
This is instead of the previous limit of 16, all stored in M2.
8 years ago
Jonathan G Rennison 375b069f82 Replace day length scaled tick macros with global variables.
This is to avoid needing to expensively re-calculate them all the time.
Instead update them by incrementing.
8 years ago
Jonathan G Rennison f6d374ade4 Merge branch 'house_placing' into jgrpp
This reverts the house picking/placing patch back to v2.
This is to fix house placement/town growth desync issues introduced in v4.

# Conflicts:
#	src/settings_gui.cpp
#	src/settings_type.h
#	src/town_gui.cpp
9 years ago
Jonathan G Rennison 95b65163e3 Revert back to v2 of house picking/placing patch. 9 years ago
Jonathan G Rennison 54b8eb9b4c Merge branch 'polyline_track_tool' into jgrpp
# Conflicts:
#	src/rail_cmd.cpp
#	src/rail_gui.cpp
#	src/viewport.cpp
#	src/viewport_func.h
9 years ago
patch-import 01cf154f51 Import polyline rail tool patch v10b
http://www.tt-forums.net/viewtopic.php?f=33&t=57080
9 years ago
Jonathan G Rennison 41a06e698f Merge branch 'house_placing' into jgrpp
# Conflicts:
#	src/settings_gui.cpp
#	src/settings_type.h
#	src/town_gui.cpp
9 years ago
patch-import 0fd34a17a5 Update to v4 of house placing patch. 9 years ago
Jonathan G Rennison 8cc6bddc24 Merge branch 'enhanced_viewport_overlay-sx' into jgrpp
Conflicts:
	src/misc.cpp
9 years ago
Jonathan G Rennison 919057a5e6 Cache tunnel info in viewport map mode, to prevent render flicker.
If we see a tunnel during the usual tile scan, keep it in the cache
until it is explicitly evicted by a clear tunnel tile action, or
the cache is cleared at game init/load/shutdown.
Select colours at the drawing rather than the cache-building stage.
Bridges and tunnels are now stored/handled separately.
The process for bridges is mostly unchanged.
9 years ago
Jonathan G Rennison 3089068e1a Merge branch 'progsig-sx' into jgrpp 9 years ago
Jonathan G Rennison ad4f4525f3 Fix programmable signal programs not being cleared in InitializeGame.
This could leave dangling signal programs in subsequent games
which can cause crashes during saving.
9 years ago
Jonathan G Rennison 9565e5b9b1 Merge branch 'day_length-sx' into jgrpp
Conflicts:
	src/lang/english.txt
	src/saveload/extended_ver_sl.cpp
	src/saveload/extended_ver_sl.h
	src/timetable_cmd.cpp
9 years ago
patch-import d86a56cbef Import day length patch
Minor whitespace fixes.

http://www.tt-forums.net/viewtopic.php?p=1148227#p1148227
9 years ago
Jonathan G Rennison 5f1b148cf9 Initial minimal working tracerestrict implementation.
This is a port of the tracerestrict/routing restrictions feature
from TTDPatch.
At present this implements if tests (train length only),
and pathfinder deny and penalty actions.
This requires the use of YAPF. Note that restrictions are only evaluated
within the YAPF lookahead distance.
9 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 11 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 11 years ago
fonsinchen 97a9908b0e (svn r25354) -Add: link graph schedule and typedefs for LinkGraph and related classes 11 years ago
fonsinchen c32eea02dd (svn r25354) -Add: link graph schedule and typedefs for LinkGraph and related classes 11 years ago
michi_cc 2eae02db59 (svn r24132) -Change [FS#4713]: Improve randomness of tile order in the tile loop. (monoid) 13 years ago
michi_cc 6f9668330e (svn r24132) -Change [FS#4713]: Improve randomness of tile order in the tile loop. (monoid) 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
truebrain f66f27d249 (svn r23604) -Add: initial support for GameScripts 13 years ago
truebrain 12aa5b6a58 (svn r23604) -Add: initial support for GameScripts 13 years ago
rubidium 41223c8bc9 (svn r23084) -Codechange: get rid of a redundant variable 13 years ago
rubidium 47c5d30b5d (svn r23084) -Codechange: get rid of a redundant variable 13 years ago
frosch 31ad03e4d2 (svn r22693) -Fix [FS#4691]: The override managers were not reset in some cases like creating a new scenario. 13 years ago
frosch c9e920f1eb (svn r22693) -Fix [FS#4691]: The override managers were not reset in some cases like creating a new scenario. 13 years ago
smatz c85e1c3089 (svn r22116) -Codechange: use PoolBase::Clean() at more places 14 years ago
smatz 756cc6cf65 (svn r22116) -Codechange: use PoolBase::Clean() at more places 14 years ago
terkhen 789da3ffa3 (svn r21733) -Codechange: Clarify the update owner legend code.
-Fix: Prevent crashes caused by deleted companies.
14 years ago
terkhen 03088dadda (svn r21733) -Codechange: Clarify the update owner legend code.
-Fix: Prevent crashes caused by deleted companies.
14 years ago
terkhen ec8f087a0b (svn r21730) -Fix (r21718): The smallmap owner legend would not be properly initialized in games without companies. 14 years ago
terkhen b890bcb840 (svn r21730) -Fix (r21718): The smallmap owner legend would not be properly initialized in games without companies. 14 years ago
rubidium 0c509c7b48 (svn r20670) -Add: support for action F
-Add: a window to select (NewGRF) objects
14 years ago
rubidium 7b16c7650b (svn r20670) -Add: support for action F
-Add: a window to select (NewGRF) objects
14 years ago
rubidium 0318ddc279 (svn r20591) -Codechange: make sure _date_fract is set when SetDate is called. Some places wouldn't reset _date_fract correctly at all 14 years ago
rubidium 56a263070f (svn r20591) -Codechange: make sure _date_fract is set when SetDate is called. Some places wouldn't reset _date_fract correctly at all 14 years ago
rubidium e68cf6bd81 (svn r20539) -Codechange: make order backups more self-contained. 14 years ago
rubidium 38ca44594f (svn r20539) -Codechange: make order backups more self-contained. 14 years ago
rubidium f336f61104 (svn r20482) -Codechange: move some object related information off the map and unify the relation objects have to towns 14 years ago
rubidium 89b2b9370a (svn r20482) -Codechange: move some object related information off the map and unify the relation objects have to towns 14 years ago
rubidium 9fd2afb147 (svn r20192) -Cleanup: bye bye variables.h, bye bye VARDEF... you won't be missed :) 14 years ago
rubidium b8487afe54 (svn r20192) -Cleanup: bye bye variables.h, bye bye VARDEF... you won't be missed :) 14 years ago
rubidium 2ab8035604 (svn r20186) -Codechange: remove VARDEF from _realtime_tick and _rightclick_emulate 14 years ago
rubidium 34764feac2 (svn r20186) -Codechange: remove VARDEF from _realtime_tick and _rightclick_emulate 14 years ago
rubidium 7ba01a1874 (svn r19426) -Fix: compilation with AIs disabled 15 years ago
rubidium ede670918a (svn r19426) -Fix: compilation with AIs disabled 15 years ago
rubidium 1ebaa68cd2 (svn r19388) -Fix [FS#3666]: [NoAI] When reloading a savegame, an AI failing to compile could trigger (trying) to read the not yet loaded information of another AI via the AI Debug window and its "open with the most recently used AI" feature 15 years ago
rubidium e3fb793a8a (svn r19388) -Fix [FS#3666]: [NoAI] When reloading a savegame, an AI failing to compile could trigger (trying) to read the not yet loaded information of another AI via the AI Debug window and its "open with the most recently used AI" feature 15 years ago
rubidium 42d7f30dcc (svn r18608) -Change: add the concept of music sets 15 years ago
rubidium a8d6d18b22 (svn r18608) -Change: add the concept of music sets 15 years ago
rubidium da30e736ca (svn r18330) -Cleanup: remove some unneeded includes 15 years ago
rubidium b00a5f1069 (svn r18330) -Cleanup: remove some unneeded includes 15 years ago
rubidium 8563406757 (svn r18207) -Fix [FS#3324] (r11961): [NewGRF] When starting a new game the values of action D variable 13 were incorrect 15 years ago
rubidium a274cc6a60 (svn r18207) -Fix [FS#3324] (r11961): [NewGRF] When starting a new game the values of action D variable 13 were incorrect 15 years ago
rubidium 982b8ee5fc (svn r17693) -Cleanup: remove some unneeded includes 15 years ago
rubidium d6cded5380 (svn r17693) -Cleanup: remove some unneeded includes 15 years ago