summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2020-12-15Fix: [NewGRF] Action 7/9 conditions 0x0F to 0x12 failed, if 'param' was ↵frosch
0x88. (#8382) Fix: [NewGRF] Action 7/9 conditions 0x0B to 0x12 failed, if 'param' was 0x85. These conditions are supposed to ignore 'param' entirely.
2020-12-15Fix: Remove unnessary reference to suppress warning (#8337)Byoungchan Lee
Apple Clang version 12 (bundled with Xcode 12) complaints about copying small objects in range loop (-Wrange-loop-analysis introduced by -Wall). This warning can be easily avoided by removing the reference from the const pointer type.
2020-12-15Fix: for original terrain generator, keep a single gap of water at the ↵SamuXarick
borders (#7883) This means that for NE/NW, it should have one more in case of freeform-edges, and in case of SE/SW it should have one less. Reminder: freeform-edges only adds VOID tiles on X=0 and Y=0.
2020-12-15Fix: a cargos sneaked in; should be cargoes for consistency (#8383)Patric Stout
2020-12-15Fix: prefix the Nth vehicle with "#" when ungroupedPatric Stout
This is for consistency; most other objects add a # to indicate it is the Nth of that object, except for Trains / RVs / Ships / Aircrafts. This becomes painfully apparent with unnamed vehicles in groups, which do get a "#".
2020-12-15Feature: Show group name as part of the default vehicle name.stormcone
Only if the vehicle is member of a group and does not have a user defined name.
2020-12-15Update: Translations from eintstranslators
korean: 29 changes by telk5093 finnish: 8 changes by hpiirai slovak: 6 changes by FuryPapaya french: 6 changes by glx22
2020-12-15Fix: workarounds for two emscripten bugs in the network stackPatric Stout
2020-12-15Add: [Emscripten] use "relative mouse mode" with SDL2Patric Stout
This mode doesn't wrap the mouse constantly, but requests SDL to lock the mouse pointer. This is needed, as with Emscripten you are not allowed to change the mouse poisition (only to lock it into place).
2020-12-15Add: support for emscripten (play-OpenTTD-in-the-browser)Patric Stout
Emscripten compiles to WASM, which can be loaded via HTML / JavaScript. This allows you to play OpenTTD inside a browser. Co-authored-by: milek7 <me@milek7.pl>
2020-12-15Codechange: unroll the SDL2 main loopPatric Stout
This commit prepares for the next commit, as Emscripten needs to have a way to trigger a single iteration of the main loop. To keep the real changes more clear, this commit only unrolls the loop, and makes no changes to the logic itself.
2020-12-15Change: set the default setting for autorenew to on for new games (#8352)Tyler Trahan
2020-12-14Update: Translations from eintstranslators
french: 1 change by glx22
2020-12-15Feature: new velocity unit "tiles/day" (#8278)jostephd
2020-12-15Codechange: Make use of the improved C++17 emplace_back function.Michael Lutz
2020-12-14Codechange: Apple LLVM fails to implement std::optional::value() also on ↵frosch
pretty recent version. Use operator* instead.
2020-12-14Cleanup: use std::optional instead of custom implementation.frosch
2020-12-14Add: new economy "frozen" that stops production changes and industry ↵Pavel Stupnikov
closures (#8282)
2020-12-14Codechange: use \u to indicate unicode chars in strings (#8379)Patric Stout
With \x, we sometimes had to do the "" trick, as the length is not predefined. With C++11 bringing \u to the specs, which has a preset length, we no longer need the "" trick. We set the strings to u8, to ensure all compilers use UTF-8 encoding for the \u characters. This was triggered by newer CLangs, which start to warn if you use "" in the middle of a string, wondering if that was your intention. It is a good question. And this is our answer :)
2020-12-13Add: [CMake] Option to only build tools/docsglx22
2020-12-13Fix: set SP_WORKING_DIR earlier with '-c'Patric Stout
On Windows, relative folders don't work so well. So we need to lookup the full path. This is best done in DetermineBasePaths() and as a bonus that only sets SP_WORKING_DIR once.
2020-12-13Fix 8bef06a2: don't use "extern" when you want to implement a global (#8373)Patric Stout
2020-12-13Fix: change the working-dir searchpath when using '-c'Patric Stout
Basically, with '-c' you now create a sandbox. It will still use your personal-dir and global-dir to find files you installed there, but all new files are stored with a base folder identical to the folder the configuration is in. This is a bit of an old bug, that we many have tried to solve in various of different ways. The code has grown sufficiently complex that it is hard to see what consequences of actions are. This is in my opinion the most harmless solution, while increasing the usefulness of the '-c' flag. In essence, the problem was that empty folders were always created in the directory where the configuration was, but as that directory wasn't added to any searchpath, files weren't stored there, unless by accident it was a folder already on the searchpath. For example, if you do './openttd -c local.cfg', it did work as expected. But in the more generic variant, it did not. With this patch, you can run './openttd -c /new/folder/local.cfg', and it will create and prepare that folder to receive new files. 'content_download' is also stored in the directory the configuration is in; this was already the case. Important to note that there is only one search-path for 'content_download'. In other words, when using '-c', it will not look in '~/.openttd' inside the 'content_download' folder.
2020-12-13Codechange: to create or not to create a folder, that is the questionPatric Stout
This was just weird. With XDG _personal_dir was created already, but later on it was checked if it was different from config_dir, and the creation was skipped. All this checking and validation makes my head spin .. let's make it a bit more simple.
2020-12-13Add: save openttd.cfg immediately on changing a setting (#8358)Patric Stout
Formally it was only done on exit. This means that if it crashes changes in settings were not stored. This is often rather frustrating. Additionally, targets (like emscripten) where people are unlike to use "Exit Game", will never see their configuration stored. The drawback is that on every setting change there is some minor I/O of writing the ini file to disk again.
2020-12-12Update: Translations from eintstranslators
finnish: 1 change by hpiirai
2020-12-12Add: [CMake] targets to generate documentationglx22
2020-12-10Update: Translations from eintstranslators
slovak: 2 changes by FuryPapaya
2020-12-09Update: Translations from eintstranslators
korean: 1 change by telk5093 french: 1 change by glx22
2020-12-09Update: Translations from eintstranslators
slovak: 30 changes by FuryPapaya lithuanian: 37 changes by devastatorius
2020-12-09Change: Don't display OS name when the user is exiting the gameOwen Rudge
2020-12-08Fix: useless warning with -snull and no BaseSounds available (#8361)Patric Stout
If I explicitly tell the system I do not want sound, I still get presented a nice message I do not have any BaseSounds available on my system, and that I should download one to enjoy sound. Well, let me tell you, with "-snull" that is really really not going to help. So please, be quiet, and let me enjoy the game without "boooooo" and "DING DING DING". Thank you.
2020-12-07Remove: console command "content select all" (#8363)Patric Stout
The intention of this function was that you could download everything after a filter was applied; but this never really took off. Instead, a select few people used this functionality to download every available package on BaNaNaS. This is not in the spirit of this service. Additionally, these few people were good for 70% of the consumed bandwidth of BaNaNaS.
2020-12-06Change: [NewGRF] Use aircraft property 12 also for helicopters.frosch
Due to keeping compatibility we can only do this for NewGRF-defined sound effects.
2020-12-06Fix: Compile warnings when asserts are disabledCharles Pigott
2020-12-06Codechange: don't do work GetVariableAddress() is already doingPatric Stout
2020-12-06Fix: do not add an offset to a nullptrPatric Stout
This is, by specs, undefined behaviour. See https://reviews.llvm.org/D67122 In cases where this is done, optimizations done by LLVM can generate code that causes crashes. GetVariableAddress() had two (legit) ways this could happen: - For SaveLoad set to global - For SaveLoad set to SLE_VAR_NULL, where sld->address is always a nullptr, and object could or could not be a nullptr.
2020-12-06Fix 63ccb36ef3: Crash trying to load TTO/TTD savegames. (#8356)Michael Lutz
2020-12-05Fix a49fdb7ebb: bootstrap crash when trying to load new baseset (#8353)Patric Stout
Using nullptr as "name" crashes on "name.empty()". Use an empty string instead.
2020-12-04Fix: [CMake] cross-compiling requires native toolsglx22
2020-12-02Fix: [NoAI] don't notify caught exceptionsRasmus Jonsson
2020-11-28Update: Translations from eintstranslators
norwegian (bokmal): 8 changes by buzzCraft lithuanian: 5 changes by devastatorius
2020-11-26Codechange: Suppress compiler warning about signed/unsigned printf valuesCharles Pigott
2020-11-26Update: Translations from eintstranslators
norwegian (bokmal): 9 changes by buzzCraft
2020-11-25Update: Translations from eintstranslators
norwegian (bokmal): 10 changes by buzzCraft
2020-11-12Update: Translations from eintstranslators
indonesian: 117 changes by dimaspaf14
2020-11-11Update: Translations from eintstranslators
danish: 1 change by achton
2020-11-10Update: Translations from eintstranslators
slovak: 16 changes by FuryPapaya
2020-11-09Update: Translations from eintstranslators
slovak: 19 changes by FuryPapaya
2020-11-08Update: Translations from eintstranslators
korean: 1 change by telk5093 slovak: 86 changes by FuryPapaya