Commit Graph

592 Commits

Author SHA1 Message Date
Charles Pigott
f5b1115039 Doc: Lots and lots of doxymentation fixes 2018-10-31 12:35:54 +01:00
Niels Martin Hansen
50efaa2372 Fix e00908f: Visual C++ 2015 compile error
Microsoft Visual C++ 2015 Update 3 (and possibly other versions) consider a struct member undefined in a
static_assert in the struct body. Moving the static_assert to a member function solves the issue.
2018-10-27 10:30:24 +02:00
Miguel Horta
e00908f5e9 Fix #6898: Replace atoi() with strtoul()
Normalize type and parsing of generation_seed across all files
Add assert_compile() to ensure correct type
2018-10-11 20:22:31 +01:00
Niels Martin Hansen
2a868b9f3b Feature: Framerate display window (#6822)
Frame rate and various game loop/graphics timing measurements and graphs. Accessible via the Help menu, and can print some stats in the console via the fps command.
2018-07-19 21:17:07 +02:00
Niels Martin Hansen
6298b96571 Change: Modernise music control logic implementation (#6839)
Rewrite of almost the entire music control logic to a more modern style, hopefully also easier to understand. The old playlist handling made it look like arcane magic, which it doesn't have to be.

- Playlists are now stored in std::vector of objects instead of arrays of bytes with magic sentinel values, that need to be rotated around all the time. Position in playlist is stored as a simple index.
- The theme song is now reserved for the title screen, it doesn't play on any of the standard playlists, but is still available for use on custom playlists.
- When the player enters/leaves the game from the main menu, the music always restarts.
- Playback state (playing or not) is kept even if music becomes unavailable due to an empty playlist (or an empty music set), so it can restart immediately if music becomes available again.
- The shuffle algorithm was changed to a standard Fisher-Yates.
- Possibly better behavior when editing a custom playlist while it's playing.
- Custom playlists should be compatible.
- Framework for supporting custom playlists with songs from multiple music sets.
2018-06-24 20:06:05 +02:00
Patric Stout
aef69443e7 Remove: WinCE support 2018-04-29 15:32:16 +02:00
Patric Stout
85adde7485 Remove: PSP support 2018-04-29 15:32:16 +02:00
Ricardo N Feliciano
e8de33a61f Cleanup: Use new filename for README file. (#6738) 2018-04-21 11:05:38 +02:00
frosch
7b553d255e (svn r27732) -Change: Turn the message about 'missing baseset sprites' from a popup into a static message that only shows in non-release versions, just like the 'missing translations' message. 2017-01-14 18:30:26 +00:00
alberth
0adfb1ac6f (svn r27653) -Fix(r27647): Rename FileOperation enum and values to SaveLoadOperation to avoid nameclash with windows compiler toolkit. 2016-09-04 16:06:50 +00:00
alberth
6f201ce4a8 (svn r27651) -Codechange: Introduce methods for setting the name and title of _file_to_saveload. 2016-09-04 12:58:04 +00:00
alberth
597380e099 (svn r27650) -Codechange: Replace SaveOrLoadMode by FileOperation and DetailedFileType. 2016-09-04 12:57:43 +00:00
alberth
75ad6d0100 (svn r27647) -Codechange: Introduce file operations, and use it to replace most of SaveLoadDialogMode 2016-09-04 12:56:23 +00:00
alberth
0bf3372882 (svn r27640) -Codechange: Remove another use of _saveload_mode in the loading code. 2016-09-04 12:48:28 +00:00
alberth
2fa0fdb176 (svn r27638) -Codechange: Move FiosType enum, move and rename SetFiosType function. 2016-09-04 12:47:07 +00:00
rubidium
2485b40cdd (svn r26828) -Fix: memory leak when passing -c multiple times 2014-09-16 17:14:07 +00:00
alberth
87dd209784 (svn r26729) -Feature: Warn about missing industries after generating a map. 2014-08-13 19:31:45 +00:00
rubidium
b476086c39 (svn r26538) -Codechange: remove double accounting of the drivers 2014-04-28 21:06:51 +00:00
frosch
631e8b45fd (svn r26522) -Add: A config-file-only setting to disable usage of 8bpp video modes.
-Remove: [win32] fullscreen_bpp setting, which is replaced by above setting.
-Change: Disable usage of 8bpp blitters and video modes by default. Many modern OS and hardware cause issues with those.
2014-04-27 12:15:14 +00:00
rubidium
9ed12b0f07 (svn r26509) -Codechange: replace strdup with stredup (the latter ensures the return is not NULL) 2014-04-25 15:40:32 +00:00
rubidium
e61fe21237 (svn r26506) -Codechange: replace most of vsnprintf with vseprintf 2014-04-24 19:51:45 +00:00
rubidium
5b82822c12 (svn r26486) -Codechange: replace a number of snprintfs with seprintf 2014-04-23 21:12:09 +00:00
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 2014-04-23 20:13:33 +00:00
frosch
a32d18cbb9 (svn r26371) -Fix [FS#5831]: Calling DoCommandP during the gameloop cleared pending persistent storage changes. 2014-02-23 22:03:08 +00:00
frosch
e9f7103ad7 (svn r26369) -Fix-ish: Do not run scripts during command replay. 2014-02-23 19:32:00 +00:00
rubidium
a4941e759c (svn r26326) -Fix [FS#5871]: when autosaving the message about a save already happening could be shown, even though the code's intention was to not show it (MJP) 2014-02-09 20:37:36 +00:00
frosch
41b7a04a68 (svn r26317) -Fix [FS#5897]: Check whether NewGRF change vehicle capacity when they are not supposed to, and truncate cargo appropiately if they are allowed to. 2014-02-07 23:48:56 +00:00
rubidium
2618d960e3 (svn r26209) -Codechange: remove some template magic and simplify some code 2014-01-02 22:41:58 +00:00
rubidium
3c94485ba0 (svn r26205) -Feature: SSE 4.1 sprite sorter, improving the sorting performance significantly (MJP)
For example with GCC 4.8, x86_64 Linux, Intel i5-3337U this patch improves the performance of Pile, Treham and Hamac test save games by about 10% in over-all run time at fast forward at 1920x1080 when zoomed out and when trees are not disabled.
2014-01-02 16:48:16 +00:00
frosch
eca86d1baf (svn r26174) -Codechange: Rename BaseStorageArray to BasePersistentStorageArray 2013-12-23 18:09:03 +00:00
rubidium
6996b441d9 (svn r26107) -Codechange/cleanup: remove some coding bloat and simplify the driver factory instatiations 2013-11-25 14:26:46 +00:00
rubidium
2009da4f7d (svn r26099) -Codechange: make NewGRF scanner management slightly easier 2013-11-25 09:22:56 +00:00
rubidium
43edd2409e (svn r26098) -Fix: close the log file when OpenTTD was forked and finally closed 2013-11-25 09:20:35 +00:00
rubidium
ee0aa389a8 (svn r26097) -Fix: another minor memory leak (when pressing cancel in the bootstrap window) 2013-11-25 09:12:49 +00:00
rubidium
4de2871fc0 (svn r26091) -Fix (r26089): double frees... woospie 2013-11-24 16:21:19 +00:00
rubidium
0ac9ed0b6b (svn r26089) -Fix: a number of minor memory leaks 2013-11-24 15:21:38 +00:00
frosch
d0eff986be (svn r25570) -Add: cache for ParagraphLayouts. 2013-07-06 19:00:33 +00:00
rubidium
1efc64fa7d (svn r25553) -Fix [FS#5530]: provide a warning when no vehicles are available, and tell what to do in that case 2013-07-02 18:57:26 +00:00
rubidium
5b2a5ac790 (svn r25506) -Document: a function, and name it slightly better 2013-06-28 21:11:35 +00:00
fonsinchen
c32eea02dd (svn r25354) -Add: link graph schedule and typedefs for LinkGraph and related classes 2013-06-09 12:58:37 +00:00
frosch
23ba42b66c (svn r25291) -Add: WindowDesc ability to load and store information in a config file. 2013-05-26 19:27:22 +00:00
peter1138
5bffc704f9 (svn r24974) -Fix [FS#5279]: Honour pause_on_newgame setting when running as a dedicated server. 2013-02-05 21:41:32 +00:00
planetmaker
c24374f99c (svn r24900) -Fix [FS#5389]: Comments with typos (most fixes supplied by Eagle_rainbow) 2013-01-08 22:46:42 +00:00
frosch
d1ab0f03bc (svn r24790) -Remove: Classic difficulty profiles. 2012-12-05 19:36:41 +00:00
frosch
4471f6bca8 (svn r24716) -Feature(ette): Reset engine pool when starting a scenario. 2012-11-12 20:13:51 +00:00
planetmaker
e83cab150b (svn r24485) -Fix: Clarify description of command line option -n 2012-08-20 13:12:12 +00:00
frosch
b11b0bb0e2 (svn r24482) -Fix [FS#5232] (r24180): Do not call RebuildSubsidisedSourceAndDestinationCache() before subsidy savegame conversion is finished. 2012-08-18 11:38:06 +00:00
frosch
73706925d1 (svn r24388) -Fix [FS#5233]: Do not consider not finding a particular base set critical; just load a different one and display an in-game error later on. 2012-07-08 18:41:50 +00:00
rubidium
b926277caf (svn r24180) -Codechange/feature-ish: add cache checker for the town's cache 2012-04-25 21:06:31 +00:00
rubidium
27d9808f45 (svn r24155) -Fix: the music volume was set too early during startup; at a moment the configuration file wasn't read yet 2012-04-19 20:08:51 +00:00
alberth
b57bef91a1 (svn r24099) -Add: Output list of -d option facilities with in the help text. 2012-04-07 20:55:55 +00:00
rubidium
e185c2f609 (svn r23963) -Fix [FS#5072]: do not look for missing sprites twice during startup 2012-02-18 17:42:27 +00:00
frosch
428e5d3103 (svn r23839) -Feature: Allow command line options -e and -g to be combined to load saves/scenarios directly into SE. 2012-01-22 18:37:01 +00:00
rubidium
531e501b5a (svn r23751) -Codechange: rename NetworkUDPGameLoop to a more descriptive name, and move the UDP specific bits to network_udp 2012-01-04 22:08:43 +00:00
rubidium
6d6be50ae0 (svn r23740) -Codechange: remove some 300 unneeded includes from the .cpp files 2012-01-03 21:32:51 +00:00
truebrain
c99950c215 (svn r23606) -Add: GameScanner, to auto-detect game scripts, and wire it in the console 2011-12-19 20:55:56 +00:00
truebrain
12aa5b6a58 (svn r23604) -Add: initial support for GameScripts 2011-12-19 20:50:54 +00:00
rubidium
d0e7b0fd9d (svn r23580) -Codechange: put the infrastructure maintenance cache testing behind the desync debug level guard, improving the game's speed significantly 2011-12-17 21:20:41 +00:00
yexo
b4fdba2fb3 (svn r23490) -Add [FS#2750]: OpenBrowser function to open a browser on major OSes 2011-12-11 11:47:08 +00:00
rubidium
2bf0fc3c5c (svn r23476) -Codechange: use the error queue to replace switch mode error strings, again making it possible to return multiple errors 2011-12-10 15:16:58 +00:00
rubidium
58423b26d1 (svn r23474) -Codechange: move the declaration error related functions to error.h 2011-12-10 13:54:10 +00:00
rubidium
5891099f24 (svn r23422) -Fix [FS#4863] (r22797): the default palette setting wasn't applied correctly anymore as the configuration file is loaded after the first NewGRF scan 2011-12-04 11:18:43 +00:00
rubidium
a37e8ebe43 (svn r23417) -Fix: wrong argument to printf 2011-12-03 23:47:42 +00:00
michi_cc
d30fcd4e35 (svn r23411) -Add: Company infrastructure counts for rail. 2011-12-03 23:40:13 +00:00
truebrain
cc12942d70 (svn r23384) -Remove: no longer allow a binary to be without AI support; the parts some compilers failed at, are integrated in other parts of the code now too 2011-12-01 12:03:34 +00:00
rubidium
9512838a5e (svn r23275) -Codechange: allow loading of the monospace (freetype) font at another moment than the other fonts 2011-11-20 11:59:36 +00:00
rubidium
0a4a75b0af (svn r23273) -Codechange: allow passing a MissingGlyphSearcher to CheckForMissingGlyphs (default to the language pack strings) 2011-11-20 11:52:11 +00:00
rubidium
542c61397c (svn r23271) -Codechange: don't repeatedly initialise and free the freetype library 2011-11-20 08:08:13 +00:00
rubidium
ea54c38e2c (svn r23246) -Codechange: move searching/loading music/sound sets/drivers to later in the process so we could get rid of errors related to that being dumped onto the console 2011-11-17 21:21:45 +00:00
rubidium
02b884d923 (svn r23244) -Feature: if the installation is ananas, try to get the b without b installed 2011-11-17 21:17:17 +00:00
rubidium
6e31c2f068 (svn r23241) -Codechange: make the decision when to go to the custom drawn cursor more prominently during the initialisation of OpenTTD 2011-11-17 21:09:08 +00:00
rubidium
834eac49fd (svn r23224) -Codechange: first load the config file partially so we can push scanning AIs to later in the process (when the GUI is showing the progress bar) 2011-11-14 21:42:54 +00:00
rubidium
4ae8bbea07 (svn r23222) -Codechange: reduce tar scanning calls to the bare minimum 2011-11-14 21:40:39 +00:00
rubidium
6d991b3b10 (svn r23217) -Codechange: introduce the concept of scanning only in a limited set of sub directories 2011-11-14 21:30:37 +00:00
rubidium
7fd1e1df81 (svn r23198) -Codechange: introduce a free that takes const pointers so we don't need to cast to void/non-const before being able to free 2011-11-12 13:00:29 +00:00
rubidium
1f823f89a1 (svn r23123) -Fix [FS#4790] (r22792): variable was initialised at the wrong moment making things with the cursor go wrong 2011-11-06 09:37:26 +00:00
yexo
433f74edd9 (svn r23065) -Add: -q option to read a savegame, write some general info and exit 2011-10-30 13:47:45 +00:00
michi_cc
c575b5bbd7 (svn r23000) -Feature: Base graphics sets can now specify a preferred blitter which OpenTTD uses to decide which blitter to load. 2011-10-04 21:35:47 +00:00
michi_cc
65637d8941 (svn r22874) -Fix [FS#4747]: Check size of various buffers before allocation. (monoid) 2011-09-02 20:16:41 +00:00
rubidium
432b1a4aff (svn r22830) -Codechange: move more logic to after the scanning of NewGRFs 2011-08-24 17:04:18 +00:00
rubidium
0061b5f184 (svn r22822) -Codechange: make a distinction between base sets and newgrfs for their directory 2011-08-24 13:33:49 +00:00
rubidium
9fe4b959ac (svn r22818) -Fix [FS#4742] (r22796, rlongago): don't spawn threads for world generation and NewGRF scanning when using the dedicated or null video driver regardless of the used blitter 2011-08-24 12:11:10 +00:00
rubidium
23e5720392 (svn r22799) -Fix (r22792): compile failure when there is no networking support 2011-08-21 13:10:19 +00:00
rubidium
5ea6064fab (svn r22795) -Codechange: load the intro game the first time without NewGRFs 2011-08-21 12:52:24 +00:00
rubidium
5e7abe58f9 (svn r22792) -Codechange: use scan callback for initial NewGRF scanning 2011-08-21 12:50:47 +00:00
rubidium
421053a694 (svn r22788) -Codechange: move modal progress related functions and variables to progress.cpp/h 2011-08-21 12:48:46 +00:00
rubidium
7b7869fba7 (svn r22786) -Codechange: rename genworld mutices to model_progress mutices 2011-08-21 12:47:24 +00:00
rubidium
37415b9cf7 (svn r22785) -Codechange: rename IsGeneratingWorld to HasModalProgress 2011-08-21 12:46:46 +00:00
frosch
c9e920f1eb (svn r22693) -Fix [FS#4691]: The override managers were not reset in some cases like creating a new scenario. 2011-07-29 22:23:17 +00:00
frosch
d29def43b0 (svn r22626) -Fix [FS#4622]: Also initialise _old_vds with newgame settings; TTD savegames do not contain these settings. 2011-07-03 10:59:25 +00:00
alberth
f1cae9960f (svn r22512) -Add: Save heightmap. 2011-05-28 13:55:34 +00:00
rubidium
944a5cb7aa (svn r22423) -Document: some network stuff 2011-05-04 20:24:23 +00:00
frosch
bbcd2bab5d (svn r22419) -Change: Always use the DOS palette for drawing.
-Remove: the '-i' option for palette selection.
2011-05-04 17:12:37 +00:00
rubidium
f90044d343 (svn r22202) -Codechange: make MusicFileSettings a proper citizen of the client settings 2011-03-05 18:00:48 +00:00
alberth
31386c42a7 (svn r22145) -Codechange: Do explicit test for non-bool values. 2011-02-25 22:04:38 +00:00
smatz
756cc6cf65 (svn r22116) -Codechange: use PoolBase::Clean() at more places 2011-02-19 23:05:47 +00:00
smatz
642fb19d4f (svn r22115) -Fix (r22114): some comments and code ordering were wrong 2011-02-19 18:55:10 +00:00
smatz
1d9cae9afa (svn r22113) -Codechange: use PoolBase::CleanAll() to clean all pools at game exit 2011-02-19 18:25:24 +00:00
alberth
8c2fc45153 (svn r22098) -Codechange: Have an array of option data, use it in the option parsing routine. Adapt openttd option processing too. 2011-02-18 20:28:25 +00:00
alberth
9d0ff9d692 (svn r22096) -Codechange: Move openttd getopt implementation to its own file. 2011-02-18 20:14:30 +00:00