Commit Graph

596 Commits

Author SHA1 Message Date
Peter Nelson 2a8fa5fef9 Change: Split up Window::OnTick into OnGameTick and OnRealtimeTick. Adjust timers to work with milliseconds instead of ticks. 2019-01-11 11:56:21 +00:00
Gabda87 a0293d313d Add #4115: default company colour setting (#6998)
Works only in single player.
2019-01-10 10:45:38 +01:00
glx c540d72445 Fix: [Win32] WIN32 may not be defined, always prefer the compiler predefined macro _WIN32 2018-12-27 18:09:16 +01:00
SamuXarick 4703cd433d Fix #6460: [AI] Add start_date parameter for Random AIs on new game 2018-11-01 17:56:09 +01:00
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