summaryrefslogtreecommitdiff
path: root/src/openttd.cpp
AgeCommit message (Collapse)Author
2019-12-21Codechange: Replace vehicle related FOR_ALL with range-based for loopsglx
2019-12-21Codechange: Replace station related FOR_ALL with range-based for loopsglx
2019-12-21Codechange: Replace FOR_ALL_COMPANIES with range-based for loopsglx
2019-11-10Cleanup: Removed SVN headersS. D. Cloudt
2019-05-01Feature: Add NotRoadTypes (NRT)peter1138
2019-04-29Codechange: Remove Company/OwnerByte typesCharles Pigott
2019-04-24Change: Zoom title game by UI zoom levelNiels Martin Hansen
2019-04-10Codechange: Use null pointer literal instead of the NULL macroHenry Wilson
2019-04-09Codechange: If something is a vector of strings, use a vector of strings ↵Michael Lutz
instead of an AutoFreeSmallVector.
2019-04-06Codechange: Replace custom thread code with C++11 thread objects.Michael Lutz
We assume a conforming C++11 compiler environment that has a valid <thread>-header. Failure to run a real thread is handled gracefully.
2019-04-06Codechange: Replace custom mutex code with C++11 mutex'es.Michael Lutz
A conforming compiler with a valid <mutex>-header is expected. Most parts of the code assume that locking a mutex will never fail unexpectedly, which is generally true on all common platforms that don't just pretend to be C++11. The use of condition variables in driver code is checked.
2019-03-26Codechange: Removed SmallVector completelyHenry Wilson
2019-03-26Codechange: Replaced SmallVector::Append() with ↵Henry Wilson
std::vector::[push|emplace]_back()
2019-03-26Codechange: Replaced SmallVector::Get() const with std alternativesHenry Wilson
2019-03-20Remove: ENABLE_NETWORK switchPatric Stout
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.
2019-03-16Remove: OPFCharles Pigott
2019-03-05Remove: MorphOS / AmigaOS supportPatric Stout
In 10 years there is no commit to change how MorphOS works, and we have no active maintainer for it. It is unlikely it works in its current state (but not impossible). With the arrival of SDL2 (and removal of SDL), MorphOS is no longer support. There is an SDL2 port for MorphOS, but it is not maintained by upstream SDL2, and nobody can currently test it out. If anyone wants to re-add MorphOS, please do (revert this patch, fix the problems, and create a Pull Request). If you need any help doing so, let us know! It is not that we don't like MorphOS, it is that we don't have anyone fixing the problems :(
2019-02-23Add: Show performance of AI and GS in framerate windowNiels Martin Hansen
2019-02-02Codechange: Additional type safety for saveload version variables.Peter Nelson
2019-01-30Fix: don't show OS error box for non GUI video driversglx
2019-01-17Fix: Some code and comment typosnikolas
Found with codespell
2019-01-11Change: Animate text effects by real time instead of game ticks.Peter Nelson
2019-01-11Change: Switch various window timers to real time instead of game ticks.Peter Nelson
2019-01-11Change: Split up Window::OnTick into OnGameTick and OnRealtimeTick. Adjust ↵Peter Nelson
timers to work with milliseconds instead of ticks.
2019-01-10Add #4115: default company colour setting (#6998)Gabda87
Works only in single player.
2018-12-27Fix: [Win32] WIN32 may not be defined, always prefer the compiler predefined ↵glx
macro _WIN32
2018-11-01Fix #6460: [AI] Add start_date parameter for Random AIs on new gameSamuXarick
2018-10-31Doc: Lots and lots of doxymentation fixesCharles Pigott
2018-10-27Fix e00908f: Visual C++ 2015 compile errorNiels Martin Hansen
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-11Fix #6898: Replace atoi() with strtoul()Miguel Horta
Normalize type and parsing of generation_seed across all files Add assert_compile() to ensure correct type
2018-07-19Feature: Framerate display window (#6822)Niels Martin Hansen
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-06-24Change: Modernise music control logic implementation (#6839)Niels Martin Hansen
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-04-29Remove: WinCE supportPatric Stout
2018-04-29Remove: PSP supportPatric Stout
2018-04-21Cleanup: Use new filename for README file. (#6738)Ricardo N Feliciano
2017-01-14(svn r27732) -Change: Turn the message about 'missing baseset sprites' from ↵frosch
a popup into a static message that only shows in non-release versions, just like the 'missing translations' message.
2016-09-04(svn r27653) -Fix(r27647): Rename FileOperation enum and values to ↵alberth
SaveLoadOperation to avoid nameclash with windows compiler toolkit.
2016-09-04(svn r27651) -Codechange: Introduce methods for setting the name and title ↵alberth
of _file_to_saveload.
2016-09-04(svn r27650) -Codechange: Replace SaveOrLoadMode by FileOperation and ↵alberth
DetailedFileType.
2016-09-04(svn r27647) -Codechange: Introduce file operations, and use it to replace ↵alberth
most of SaveLoadDialogMode
2016-09-04(svn r27640) -Codechange: Remove another use of _saveload_mode in the ↵alberth
loading code.
2016-09-04(svn r27638) -Codechange: Move FiosType enum, move and rename SetFiosType ↵alberth
function.
2014-09-16(svn r26828) -Fix: memory leak when passing -c multiple timesrubidium
2014-08-13(svn r26729) -Feature: Warn about missing industries after generating a map.alberth
2014-04-28(svn r26538) -Codechange: remove double accounting of the driversrubidium
2014-04-27(svn r26522) -Add: A config-file-only setting to disable usage of 8bpp video ↵frosch
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-25(svn r26509) -Codechange: replace strdup with stredup (the latter ensures ↵rubidium
the return is not NULL)
2014-04-24(svn r26506) -Codechange: replace most of vsnprintf with vseprintfrubidium
2014-04-23(svn r26486) -Codechange: replace a number of snprintfs with seprintfrubidium
2014-04-23(svn r26482) -Codechange: add an include that allows us to undefine/redefine ↵rubidium
"unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values