Commit Graph

37920 Commits (3cbd70dc323a6f342f4986743b77dedb0e22e3e9)

Author SHA1 Message Date
Charles Pigott dd798d688b
Fix #8919: Release builds with asserts enabled (#8925) 3 years ago
translators c5cb44e138 Update: Translations from eints
catalan: 1 change by J0anJosep
spanish: 3 changes by MontyMontana
3 years ago
Patric Stout 4d501655ad
Fix: building on Raspberry Pi failed because of const vs constexpr (#8924) 3 years ago
Jonathan G Rennison 850d2bfa23 Fix tile iterator leak in CmdConvertRail 3 years ago
Patric Stout fece1c57ca
Codechange: Suppress warnings when asserts are disabled (#8917) 3 years ago
translators 9eb6c78a02 Update: Translations from eints
catalan: 2 changes by J0anJosep
3 years ago
Charles Pigott 591ea9862d
Codechange: Suppress warnings when asserts are disabled (#8916) 3 years ago
Jonathan G Rennison 425b725eab Include last sync frame in desync crash log 3 years ago
Jonathan G Rennison dc8680eec5 Ensure that cached decel values of free wagon chain heads are zeroed 3 years ago
Jonathan G Rennison 8fd4f65a85 Validate lookahead reservation end OK before calling FollowTrainReservation 3 years ago
Jonathan G Rennison 5b5e068e52 Don't check safe waiting point in FollowTrainReservation if result unused 3 years ago
Jonathan G Rennison 27b65dadbc Refresh lookahead when starting train from stationary 3 years ago
Jonathan G Rennison 1cbb9960af Clear train lookahead when reaching an unreserved diverging junction 3 years ago
Jonathan G Rennison 49676552bb Use a flags parameter for ChooseTrainTrack mode 3 years ago
translators 088964a091 Update: Translations from eints
luxembourgish: 1 change by phreeze83
serbian: 59 changes by nkrs
3 years ago
Charles Pigott 086c95718d
Fix #8803: Only auto-remove signals when rail can be built (#8904) 3 years ago
Jonathan G Rennison 5c569b1880 Validate TB exit tile when TRLF_TB_EXIT_FREE set in FollowTrainReservation 3 years ago
Jonathan G Rennison 8646506127 Prevent lookahead init for wrong way movement on signalled tunnel/bridge 3 years ago
translators 50cd6e135e Update: Translations from eints
english (us): 23 changes by 2TallTyler
luxembourgish: 63 changes by phreeze83
ukrainian: 72 changes by StepanIvasyn
catalan: 5 changes by J0anJosep
turkish: 5 changes by nullaf
3 years ago
Mike 49c89cb5f6
Fix #8565: Stopped road vehicle displays a speed different than 0 (#8901) 3 years ago
translators e23ccc95f5 Update: Translations from eints
english (us): 7 changes by HAJDog247
czech: 18 changes by PatrikSamuelTauchim
luxembourgish: 99 changes by phreeze83
serbian: 4 changes by nkrs
catalan: 20 changes by J0anJosep
french: 1 change by arikover
portuguese: 30 changes by azulcosta
3 years ago
TELK 827eb976f1 Update: Korean translation for v0.40.5 3 years ago
Charles Pigott 583304927b Fix #8886: Don't try to resolve folders within tars named '.'
(cherry picked from commit 2d7b34bc68)
3 years ago
reldred 213b6fe6ef Add PR #231: More river configuration options 3 years ago
Jonathan G Rennison 7e728fe9d6 Merge branch 'pr-230' into jgrpp 3 years ago
translators a1230b932c Update: Translations from eints
swedish: 30 changes by kustridaren
spanish (mexican): 1 change by absay
japanese: 13 changes by Azusa257
vietnamese: 1 change by KhoiCanDev
estonian: 12 changes by siimsoni
czech: 6 changes by PatrikSamuelTauchim, 2 changes by tomas-vl
chinese (simplified): 88 changes by clzls
arabic (egypt): 16 changes by AviationGamerX
luxembourgish: 4 changes by phreeze83
korean: 34 changes by telk5093
italian: 16 changes by AlphaJack
german: 1 change by danidoedel, 1 change by Wuzzy2
slovak: 30 changes by FuryPapaya
catalan: 35 changes by J0anJosep
tamil: 16 changes by Aswn
dutch: 32 changes by Afoklala
portuguese (brazilian): 14 changes by Greavez, 5 changes by jpsl00
3 years ago
Jonathan G Rennison 48498969eb Fix through load crash when rear unit is longer than platform with no capacity 3 years ago
Charles Pigott 2d7b34bc68 Fix #8886: Don't try to resolve folders within tars named '.' 3 years ago
reldred 882c4f0a55 Merge branch 'more_rocks_landscape_options' of https://github.com/reldred/OpenTTD-patches into more_rocks_landscape_options 3 years ago
reldred 86e7cb6d18 Allow tile height to also play a part in determining the density of rocky patches. 3 years ago
reldred f7d11f80f3
Update src/lang/english.txt 3 years ago
Jonathan G Rennison 912c62d749 Add timetable lateness/earliness conditional order 3 years ago
translators a36b286e04 Update: Translations from eints
norwegian (bokmal): 28 changes by Anolitt
spanish (mexican): 29 changes by absay
galician: 1 change by JohnBoyFan
vietnamese: 30 changes by KhoiCanDev
estonian: 31 changes by siimsoni
czech: 6 changes by tomas-vl
arabic (egypt): 73 changes by AviationGamerX
hungarian: 37 changes by pnpBrumi
german: 24 changes by danidoedel, 4 changes by matthiasradde, 2 changes by SecretIdetity
russian: 2 changes by SecretIdetity
finnish: 40 changes by lanurmi
catalan: 47 changes by J0anJosep
lithuanian: 30 changes by devbotas
spanish: 29 changes by JohnBoyFan
french: 30 changes by MalaGaM
portuguese (brazilian): 7 changes by jpsl00, 5 changes by Greavez
polish: 31 changes by Milek7
3 years ago
Jonathan G Rennison 63fda2f16e YAPF: Add penalty when reversing at waypoint which is already reserved 3 years ago
reldred 4a169f07ab Fix a typo in a comment in settings_type.h. I know... Minor... 3 years ago
translators 76e92f6751 Update: Translations from eints 3 years ago
Patric Stout d0ed656fd1 Change: scale heightmaps we export to highest peak and inform the user of this value
Before this commit, it scaled to map-height-limit. Recently this
could also be set to "auto", meaning players don't really know
or care about this value.

This also means that if a player exported a heightmap and wanted
to import it again, looking like the exact same map, he did not
know what value for "highest peak" to use.
3 years ago
Patric Stout 13a5264438 Fix: store the recent new game_creation settings in savegames
This allows us to later on see what someone did, and makes sure
that "restart" command still knows how the game was created.
3 years ago
Patric Stout f05e2e0d40 Feature: allow setting a custom terrain type to define highest peak
At least, TGP will try to reach it. It heavily depends on the map
if it is reachable at all. But for sure it will do its atmost to
get there!
3 years ago
Patric Stout 45c2c29c35 Add: allow setting the highest mountain for heightmaps
It will add some slack to the map height limit if that was set
to auto.
3 years ago
Patric Stout 422e132845 Feature: auto-detect map height limit based on generated map
This opens up the true power of the TGP terrain generator, as it
is no longer constrainted by an arbitrary low map height limit,
especially for extreme terrain types.

In other words: on a 1kx1k map with "Alpinist" terrain type, the
map is now really hilly with default settings.

People can still manually limit the map height if they so wish,
and after the terrain generation the limit is stored in the
savegame as if the user set it.

Cheats still allow you to change this value.
3 years ago
Patric Stout 1a1049bc0d Change: rename setting "max_heightlevel" to "map_height_limit"
This better reflects what it is, and hopefully removes a bit of
the confusion people are having what this setting actually does.

Additionally, update the text on the setting to better inform
users what it is doing exactly, so they can make an educated
decision on how to change it.

Next commit will introduce an "auto" value, which should be the
new default. The rename has as added benefit that everyone will
start out on the "auto" value.
3 years ago
Patric Stout 23f27db8c3 Change: remove "maximum map height" from the New Game GUI
This setting influence the max heightlevel, and not as the name
suggests: the height of the generated map.

How ever you slice it, it is a very weird place to add this
setting, and it is better off being only in the settings menu.

Commits following this commit also make it more useful, so users
no longer have to care about it.
3 years ago
Patric Stout 70bc55cfd6 Feature: setting to indicate desert coverage for tropic climate
This is an indication value; the game tries to get as close as it
can, but due to the complex tropic rules, that is unlikely to be
exact.

In the end, it picks a height-level to base the desert/tropic
line on. This is strictly seen not needed, as we can convert any
tile to either. But it is the simplest way to get started with
this without redoing all related functions.
3 years ago
Patric Stout cafe4eed6e Feature: setting to indicate snow coverage for arctic climate (replaces snow line height)
Setting the snow coverage (in % of the map) makes a lot more sense
to the human, while still allowing the niche player to set (by
finding the correct %) a snow line height they like. This makes for
easier defaults, as it decoupled terrain height from amount of snow.

Maps can never be 100% snow, as we do not have sprites for coastal
tiles.

Internally, this calculates the best snow line height to approach
this coverage as close as possible.
3 years ago
Jonathan G Rennison 923b2eb0a9 Fix tracerestrict train is loading status condition when predicting orders 3 years ago
Milek7 7a886cb4d4 Change: Do not disallow persistent buffer mapping on AMD GPUs, as it is actually faster. 3 years ago
translators bcaa367b68 Update: Translations from eints
chinese (traditional): 25 changes by SiderealArt
japanese: 81 changes by taku315
3 years ago
Koen Bussemaker 59bfed65a1 Fix #8875: Filter string in station window breaks flow in user interface 3 years ago
reldred 67c256f437 Add PR #228: New configure town zone multipliers 3 years ago
Patric Stout 751434ea63
Fix: placing random trees in SE crashes the game (#8892)
This used to work by accident: originally the code checked if
GenerateWorld was threaded. If not, it would abort the function.
This worked for placing trees, because it was also returning false
when it was not active.

With the recent changes, that check got removed, and this crash
started to happen. So now check if we have a modal window, which
is a very solid indication we are generating the world.
3 years ago
Jonathan G Rennison 8098274892 Fix tile iterator leak when building river/canal
See: https://github.com/OpenTTD/OpenTTD/pull/8880#issuecomment-806253149
3 years ago
translators 0c4443667d Update: Translations from eints
slovak: 6 changes by FuryPapaya
3 years ago
reldred 59631c1899 Hopefully fix the issues with the settings menu not showing up correctly. 3 years ago
reldred 7c6d73abfa Create new branch. Goals: Make rocks size patches and frequency configruable. Optional but highly desired: Make rocks denser/more frequent the higher the altitude (make that an optional bool?)
Also the number display is screwed in the settings gui. Same problem as my other patch. Need to compare it to what I did for the other var I did recently (tiles width around rivers to make desert go away) and fix this. This will do to start with.
3 years ago
translators 3b3412d561 Update: Translations from eints
arabic (egypt): 22 changes by AviationGamerX
3 years ago
translators f9d24ff45e Update: Translations from eints
slovak: 10 changes by FuryPapaya
3 years ago
translators ae65ceb1a7 Update: Translations from eints
chinese (simplified): 2 changes by clzls
korean: 2 changes by telk5093
slovak: 9 changes by FuryPapaya
catalan: 4 changes by J0anJosep
polish: 4 changes by pAter-exe
3 years ago
Jonathan G Rennison 0e7e8d2ded Allow shift-clicking on borrow/repay money buttons to enter amount 3 years ago
Michael Lutz df958dc907 Fix f0f96e31: [OpenGL] Broken window resizing due to invalid buffer pitch on texture creation. 3 years ago
translators 545ca3d014 Update: Translations from eints
vietnamese: 118 changes by KhoiCanDev
slovak: 13 changes by FuryPapaya
3 years ago
frosch 0230624359
Fix f0f96e31: [OpenGL] warning: comparison of integer expressions of different signedness. (#8881) 3 years ago
Jonathan G Rennison fa2f3ed104 Cheats window: Allow clicking money text to enter quantity 3 years ago
Michael Lutz f0f96e3103
Fix #8871: [OpenGL] Initialize all buffers after resize and clear back buffer. (#8877) 3 years ago
Jonathan G Rennison abf8505c69 Add rainforest line height setting to map generation windows
See: #227
3 years ago
translators c92358527b Update: Translations from eints
ukrainian: 1 change by StepanIvasyn
3 years ago
Jonathan G Rennison c45b4414df Merge branch 'pr-227' into jgrpp
Adjust settings patxname and guiflags
3 years ago
dP d8dfa1613f Fix: Recompute road/railtype availability after disabling the engine 3 years ago
Peter Nelson b43cc21214 Fix: OSK layout not scaled for 2x or 4x GUI scale. 3 years ago
reldred 25abdff790 Fix help text saying snow affects industry generation to say rainforests affect industry generation. 3 years ago
Jonathan G Rennison aec2793487 Fix flickering of polyrail measurement tooltip 3 years ago
reldred 07397783f8 Allows configuring the height at which rainforests start, which by default was controlled by dividing the map maxheight by 4 in landscape.cpp. Default setting is 8 which matches and should provide default behavior in new map creation. 3 years ago
translators 1893aef649 Update: Translations from eints
spanish (mexican): 8 changes by absay
ukrainian: 13 changes by StepanIvasyn
dutch: 3 changes by Afoklala
lithuanian: 1 change by devbotas
3 years ago
Jonathan G Rennison bac3bff716 Increase realistic braking signal sighting distance
(Outside of signalled tunnel/bridges)
3 years ago
translators 379b6b45e0 Update: Translations from eints
ukrainian: 10 changes by StepanIvasyn
portuguese: 78 changes by azulcosta
3 years ago
Jonathan G Rennison 4386da53ee Slightly overestimate descents when deciding if reservation long enough 3 years ago
Jonathan G Rennison 8cf2b827a1 Avoid pessimising braking speed when descending slope
When calculating speed using variable braking force
3 years ago
Jonathan G Rennison 843dce94a4 Fix mispredicted stop location when through-loading
When using realistic braking and skipped train parts have different
lengths.
3 years ago
Jonathan G Rennison b9413ea250 Remove assert from UpdateSignalsOnSegment that globset is empty
Just do the right thing if it isn't empty instead of asserting
3 years ago
Jonathan G Rennison 10f6562420 Stop engine ageing when introduce/expire vehicle limit years both reached 3 years ago
translators 8ad75e4798 Update: Translations from eints
swedish: 1 change by kustridaren
estonian: 1 change by siimsoni
russian: 5 changes by Ln-Wolf, 3 changes by SecretIdetity
ukrainian: 7 changes by StepanIvasyn
lithuanian: 31 changes by devbotas
portuguese: 54 changes by azulcosta
3 years ago
Jonathan G Rennison a670e369db Add setting for no vehicles introduced after given year 3 years ago
Jonathan G Rennison f7dcd66f08 Fix unnecessary braking when leaving station with order without non-stop flag 3 years ago
translators 8b16cbaf6f Update: Translations from eints
estonian: 2 changes by siimsoni
3 years ago
translators 9782268e17 Update: Translations from eints
swedish: 10 changes by kustridaren
norwegian (bokmal): 3 changes by buzzCraft
czech: 39 changes by PatrikSamuelTauchim
ukrainian: 4 changes by StepanIvasyn
3 years ago
Jonathan G Rennison fb64e29c6c Fix assertion failure when command triggers PBS tunnel/bridge unreserve
In the case where the signal update buffer is not currently empty
3 years ago
Jonathan G Rennison 1f360e97a1 Fix building over existing stations bypassing realistic braking moving train restrictions 3 years ago
translators 5c73f93361 Update: Translations from eints
english (us): 8 changes by 2TallTyler
estonian: 16 changes by siimsoni
korean: 5 changes by telk5093
italian: 32 changes by AlphaJack
german: 5 changes by Wuzzy2
danish: 15 changes by achton
lithuanian: 89 changes by devbotas
spanish: 3 changes by MontyMontana
french: 8 changes by arikover
portuguese (brazilian): 3 changes by Greavez
polish: 17 changes by yazalo, 2 changes by pAter-exe
3 years ago
Jonathan G Rennison d6b5d6778e Fix train overshot station advice message being shown to all companies 3 years ago
Patric Stout 9bfa7198fd
Change: Heading for 1.12 now (#8862) 3 years ago
Patric Stout 74c98db1b6
Fix 217071aa: spanish translation contains an invalid character (#8863) 3 years ago
translators 217071aa1d Update: Translations from eints
norwegian (bokmal): 5 changes by Anolitt
estonian: 13 changes by siimsoni
korean: 5 changes by telk5093
italian: 1 change by AlphaJack
german: 5 changes by danidoedel
ukrainian: 15 changes by StepanIvasyn
catalan: 5 changes by J0anJosep
dutch: 5 changes by Afoklala
lithuanian: 82 changes by devbotas
spanish: 255 changes by MontyMontana
portuguese (brazilian): 5 changes by Greavez
3 years ago
Jonathan G Rennison 3f4333bcc8 Add setting to enable non-admin multiplayer clients to rename towns 3 years ago
Tyler Trahan 41baf8778b
Doc: Clarify comment that SND_05_TRAIN_THROUGH_TUNNEL is only for steam engines (#8858) 3 years ago
Patric Stout c25847787e Codechange: we are not booing straps .. we are bootstrapping 3 years ago
Patric Stout 4fe222d853 Fix: errors during bootstrap could still show up after bootstrap
For example, if you have a config that defines OpenGFX as baseset
but for some reason you have no basesets anymore. In that case
bootstrap downloads OpenGFX for you, but it will still show the
error that "OpenGFX was not found" after the bootstrap. This was
an error generated before the bootstrapped kicked in.

Simply muting all errors during bootstrap solves this; as we cannot
show them anyway, this is fine. Any errors that remain after
bootstrap will be generated again anyway.
3 years ago
Patric Stout 22a9d921ef Fix: if bootstrap failed, it could end with an empty screen instead of error
There are various of ways bootstrap can fail:
- Failing network connection
- Incomplete download
- No write permissions
- Disk full
- (others I forgot)

They all result in a screen with no windows. To ensure we at least
always show something when anything bad happens, if the bootstrap
is not successful, show a screen what the next step for the human
should be.
3 years ago
Michael Lutz 13011e00c6 Fix #8860: [Win32] Crashlog window wasn't reliably shown for crashes not on the main thread. 3 years ago
translators 062eeb9810 Update: Translations from eints
english (us): 7 changes by 2TallTyler
estonian: 17 changes by siimsoni
hungarian: 100 changes by pnpBrumi
ukrainian: 8 changes by StepanIvasyn
dutch: 24 changes by Afoklala
spanish: 338 changes by MontyMontana
french: 29 changes by MalaGaM
portuguese (brazilian): 1 change by Greavez
3 years ago
Patric Stout 5056e963ba Fix #8851: don't allow infinite "exec" depth in script, but limit to 10 deep
This means if you execute a script from a script from a script, ..
for more than 10 times, it bails out now. This should be sufficient
for even the most complex scripts.
3 years ago
Patric Stout 8230cd009d Fix: calling "exec" from script never returned
Example:

exec other.script
echo hello

The "echo" was never executed.
3 years ago
Matt Kimber bcb3313e13
Feature: allow setting maximum zoom level at which sprites are drawn (#8604) 3 years ago
Didac Perez Parera e708fb38da
Feature: allow filtering on name in rail station window (#8706) 3 years ago
Jonathan G Rennison 883e19f2c6 Windows: Fix wrong stack pointer for crash log window on non-main thread 3 years ago
Jonathan G Rennison f53697ce76 Windows: Call SetThreadStackGuarantee for all threads, not just main thread 3 years ago
Jonathan G Rennison 909e343f40
Merge pull request #223 from telk5093/jgrpp
Update: Korean translation for v0.40.4
3 years ago
stormcone 9c5a7d3a57 Fix #8733: Can't buy train engine when the "Engines only" filter is active 3 years ago
translators 3cb2dd4889 Update: Translations from eints
swedish: 22 changes by kustridaren
ukrainian: 4 changes by StepanIvasyn
lithuanian: 7 changes by devbotas
spanish: 312 changes by MontyMontana
3 years ago
Tyler Trahan de891238d6
Change: Recolour graph windows to brown (#8700) 3 years ago
Jonathan G Rennison 4361a6dbf4 Avoid undefined behaviour const_casting std::string c_str()
Use non-const data() instead

See: #224
3 years ago
frosch f580ab4ba4 Fix #8647: draw tram catenary using 4 bounding boxes.
The back sprite is now supposed to contain west, north and east pillars.
The front sprite is supposed to contain the south pillar and the wires.
3 years ago
frosch 28589db664 Fix: front/back sprites of action5 tram catenary were swapped. 3 years ago
Jonathan G Rennison c0b722ec46 Codechange: Add fast path to catenary drawing in MaskWireBits
MaskWireBits always returns its input unchanged if the input
has only 0 or 1 track bits set.
Having only 0 or 1 track bits sets (i.e. non junction tiles)
is by far the most common case.
Examining the state of neighbouring tiles and the subsequent
masking logic is relatively expensive and can be omitted in this case.
3 years ago
translators 1fb1e75038 Update: Translations from eints
norwegian (bokmal): 26 changes by Anolitt
spanish (mexican): 25 changes by absay
japanese: 11 changes by Azusa257
korean: 7 changes by telk5093
german: 7 changes by danidoedel
russian: 63 changes by Ln-Wolf
finnish: 7 changes by hpiirai
ukrainian: 5 changes by StepanIvasyn
catalan: 7 changes by J0anJosep
spanish: 7 changes by MontyMontana
portuguese (brazilian): 12 changes by Greavez
3 years ago
Patric Stout 4866e43862
Codechange: rework codeflow introduced in 098d5b22 (#8837)
It didn't sit well to me, how I wrote the commit initially. First
casting a variable into another, only to write it back into the
originally feels wrong.

This flow makes a bit more sense to me.
3 years ago
Patric Stout 14b61bfa6f Fix #8833: don't reload NewGRFs when we are shutting down
Otherwise that might cause calls to the video-driver, which are
already shut down by now. This causes, depending on the video-driver
crashes or weird effects.
3 years ago
Patric Stout afadae6d50 Fix: abort world generation on exiting the game as soon as possible
This prevents the window from "freezing" when you close it during
world generation, as it first would continue the action.
3 years ago
Patric Stout 5426cb3baf Fix: abort GRFFileScanner on exiting the game as soon as possible
This prevents the window from "freezing" when you close it during
the scanning of NewGRFs, as it first would continue the action.
3 years ago
Patric Stout b349ef6e71 Fix: don't update framerates when a modal window is open
Otherwise the numbers are all over the place when a modal window
just closed.
3 years ago
Patric Stout 970fedd78c Add: make modal windows update more smooth
Basically, modal windows had their own thread-locking for what
drawing was possible. This is a bit nonsense now we have a
game-thread. And it makes much more sense to do things like
NewGRFScan and GenerateWorld in the game-thread, and not in a
thread next to the game-thread.

This commit changes that: it removes the threads for NewGRFScan
and GenerateWorld, and just runs the code in the game-thread.
On regular intervals it allows the draw-thread to do a tick,
which gives a much smoother look and feel.

It does slow down NewGRFScan and GenerateWorld ever so slightly
as it spends more time on drawing. But the slowdown is not
measureable on my machines (with 700+ NewGRFs / 4kx4k map and
a Debug build).

Running without a game-thread means NewGRFScan and GenerateWorld
are now blocking.
3 years ago
Patric Stout 098d5b2239
Fix #8711: having gui_zoom lower than zoom_min causes crashes (#8835)
gui_zoom was never clamp'd between zoom_min/zoom_max.

zoom_min controls how zoomed-in we load sprites. For a value of 1,
no quad-sizes sprites are loaded. If gui_zoom would be 0, meaning
it wants quad-sized sprites to display, it was printing random
stuff to the screen, which could or could not result in crashes.
3 years ago
sean 160a5f2fdd
Codechange: Misleading function name for selecting refresh rate (#8836)
Co-authored-by: pnda <43609023+ThePNDA@users.noreply.github.com>
3 years ago
Patric Stout 47e11fa3f2
Codechange: only run InteractiveRandom() from the draw-thread (#8831)
Otherwise both the draw-thread and game-thread can do it both
at the same time, which gives rather unwanted side-effects.

Calling it from the draw-thread alone is sufficient, as we just
want to create some unpredictable randomness for the player. The
draw-thread is a lot more active (normally) than the game-thread,
so it is the best place of the two to do this.
Additionally, InteractiveRandom() mostly has to do with visuals
that are client-side-only, so more related to drawing than to
game.
3 years ago
Patric Stout 68e92d215a
Fix #8810: "aircraft out of fuel" news was looking in the wrong place (#8832)
v->tile for aircrafts is always zero when in the air. Only when
it starts its landing (or take-off) patterns it becomes a sane
value.
So instead, base the news on the last x/y coordinates of the plane.
3 years ago
translators 65f558d6df Update: Translations from eints
english (us): 18 changes by 2TallTyler
korean: 17 changes by telk5093
german: 13 changes by danidoedel, 4 changes by Wuzzy2
finnish: 17 changes by hpiirai
catalan: 17 changes by J0anJosep
lithuanian: 33 changes by devbotas
spanish: 17 changes by MontyMontana
portuguese (brazilian): 20 changes by Greavez
polish: 9 changes by yazalo
3 years ago
Patric Stout b21ba566ae
Codechange: remove special strings for language and resolutions (#8824)
As OpenTTD grew, we found other ways to do this, and we are no
longer in need for a hack like this.
3 years ago
PeterN 9fdc881005
Fix: Scale PIP-padding the same as regular padding. (#8829) 3 years ago
sean 0464a50ab8
Add: Display refresh rate game option (#8813) 3 years ago
Michael Lutz 436cdf1fc8 Fix #8825: [OpenGL] Don't clear cursor cache from the game loop thread. 3 years ago
translators ee69a0dc29 Update: Translations from eints
lithuanian: 5 changes by devbotas
portuguese (brazilian): 8 changes by Greavez
3 years ago
Patric Stout 8946b41d20 Fix: ensure switching blitter happens in the main thread
This because video-drivers might need to make changes to their
context, which for most video-drivers has to be done in the same
thread as the window was created; main thread in our case.
3 years ago
Patric Stout e56d2c63c3 Add: [Video] move GameLoop into its own thread
This allows drawing to happen while the GameLoop is doing an
iteration too.

Sadly, not much drawing currently can be done while the GameLoop
is running, as for example PollEvent() or UpdateWindows() can
influence the game-state. As such, they first need to acquire a
lock on the game-state before they can be called.

Currently, the main advantage is the time spend in Paint(), which
for non-OpenGL drivers can be a few milliseconds. For OpenGL this
is more like 0.05 milliseconds; in these instances this change
doesn't add any benefits for now.

This is an alternative to the former "draw-thread", which moved
the drawing in a thread for some OSes. It has similar performance
gain as this does, although this implementation allows for more
finer control over what suffers when the GameLoop takes too
long: drawing or the next GameLoop. For now they both suffer
equally.
3 years ago
Michael Lutz 3a4a15cc93 Codechange: don't set the window position when changing blitter
There really is no need to make an extra call to the OS in
these cases.
3 years ago
Patric Stout b9eac7c6dc Codechange: remove the unused lock around Blitter 3 years ago
Patric Stout 4610aa7ae3 Remove: [Video] no longer draw in a thread
Drawing in a thread is a bit odd, and often leads to surprising
issues. For example, OpenGL would only allow it if you move the
full context to the thread. Which is not always easily done on
all OSes.
In general, the advise is to handle system events and drawing
from the main thread, and do everything else in other threads.
So, let's be more like other games.

Additionally, putting the drawing routine in a thread was only
done for a few targets.

Upcoming commit will move the GameLoop in a thread, which will
work for all targets.
3 years ago
dP 56911a86ea Add: Buttons to open global goals from company goals and vice versa 3 years ago
dP 818bee3961 Change: Don't show global goals in company goal windows 3 years ago
Didac Perez Parera 3878c4781e
Fix #8817: keep NewGRF order for object class sorting (#8818) 3 years ago
Patric Stout 04db99749b
Fix #8784: using alt+enter didn't update the fullscreen toggle visibly (#8820)
Basically, the window was not invalidated, so it was never redrawn.
This made it look like it wasn't working, but it really was.
3 years ago
Eddi-z d3179709b1
Change: Clarify what effect town interactions have (#8744) 3 years ago
Michael Lutz 25656a10cb Fix #8808: [OSX, OpenGL] Crash on switching blitters due to double-mapping the video buffer. 3 years ago
Michael Lutz ae1f7bd695
Fix 937d60f2: Broken company colours for 40bpp-blitter. (#8821) 3 years ago
Patric Stout b93d7dd3cb
Add: Option to (dis-)allow accelerated video drivers. (#8819)
The video drivers using the OpenGL backend are currently our only
accelerated drivers. The options defaults to off for macOS builds and
to on everywhere else.

Co-authored-by: Michael Lutz <michi@icosahedron.de>
3 years ago
Didac Perez Parera 6e2a96c133
Add: filter for "engines only" in build train window (#8733) 3 years ago
TELK 267d6d2891 Update: Korean translation for v0.40.4 3 years ago
Jonathan G Rennison b25cbc969c Merge branch 'master' into jgrpp
# Conflicts:
#	src/lang/brazilian_portuguese.txt
#	src/lang/tamil.txt
#	src/station_cmd.cpp
3 years ago
Dídac Pérez Parera 8d9aeb3d4e Fix: keep NewGRF order for object class sorting
(cherry picked from commit 83d67fe46bd24cf88272fe2774954c8dc9bb6497)
3 years ago
translators f70aa8fabe Update: Translations from eints
estonian: 6 changes by siimsoni
catalan: 3 changes by J0anJosep
latvian: 37 changes by lexuslatvia
portuguese (brazilian): 8 changes by Greavez
polish: 1 change by azabost
3 years ago
Jonathan G Rennison 25909b06d2 Fix #8809: Crash when removing airport when hangar window open 3 years ago
Jonathan G Rennison 1b146b3bff Fix crash when removing/upgrading airport with hangar window open
See: https://github.com/OpenTTD/OpenTTD/issues/8809
3 years ago
translators 2860de7bf4 Update: Translations from eints
chinese (traditional): 5 changes by benny30111
estonian: 1 change by siimsoni
italian: 1 change by AlphaJack
ukrainian: 4 changes by StepanIvasyn
tamil: 37 changes by Aswn
portuguese (brazilian): 19 changes by Greavez
3 years ago
Jonathan G Rennison 9bf6d1407f Add screenshot type: whole map at current zoom level 3 years ago
Jonathan G Rennison d6e2b32132 Merge branch 'master' into jgrpp
# Conflicts:
#	src/screenshot.h
3 years ago
Jonathan G Rennison dc7ffb5dc6 Add unset hotkey for industry chains window 3 years ago
Jonathan G Rennison 1c51b7253f Allow following vehicles at all non-map zoom levels 3 years ago
translators f536fd55d8 Update: Translations from eints
swedish: 1 change by kustridaren
spanish (mexican): 4 changes by absay
estonian: 80 changes by siimsoni
arabic (egypt): 13 changes by AviationGamerX
ukrainian: 1 change by StepanIvasyn
dutch: 1 change by Afoklala
portuguese (brazilian): 15 changes by Greavez
3 years ago
Patric Stout 06a3c0cb26 Fix dddf885f: use IConsoleError to produce console errors 3 years ago
Patric Stout 8c6b5e52fd Add: allow making heightmap screenshot via console 3 years ago
Patric Stout ac5e77ea3b Feature: allow custom width/height of screenshot via console
Reworked how the screenshot command works while keeping it backwards
compatible. It can now more freely understand arguments, and has
the ability to make SC_DEFAULTZOOM screenshots.
3 years ago
translators 879eb9c348 Update: Translations from eints
estonian: 22 changes by siimsoni
korean: 1 change by telk5093
serbian: 41 changes by nkrs
german: 1 change by Wuzzy2
romanian: 14 changes by ALEX11BR
russian: 5 changes by Ln-Wolf
finnish: 5 changes by hpiirai
ukrainian: 2 changes by StepanIvasyn
lithuanian: 105 changes by devbotas
spanish: 3 changes by MontyMontana
french: 5 changes by MalaGaM
portuguese (brazilian): 13 changes by Greavez
3 years ago
Jonathan G Rennison 70f3993a55 CMake: Fix host strgen/settingsgen importing 3 years ago
Jonathan G Rennison 5a364d3e8c Merge branch 'master' into jgrpp
# Conflicts:
#	src/blitter/32bpp_optimized.cpp
#	src/lang/serbian.txt
3 years ago
Jonathan G Rennison d566a152bb Skip GfxDetermineMainColours contents in dedicated compiles
Fixes linker error
3 years ago
Patric Stout 0243ae4654
Fix #8799: NGameAllowedSorter() is not imposing strict weak ordering relation (#8801)
In other words, it should only (!) return true if A comes for B.
This promise was broken for the situation where two values are
identical. It would return true in these cases too. This is of
course not possible: if two values are identical, neither come
before the other. As such, the sorter was not imposing strict
weak ordering relations.

libstdc++ handled this scenario just fine, but libc++ crashes
badly on this, as it allowed comparing of [begin, end] instead
of [begin, end).
libc++ considered this not a bug (and by specs, they are correct;
just this way of crashing is of course a bit harsh):
https://bugs.llvm.org/show_bug.cgi?id=47903
3 years ago
Jonathan G Rennison 5724f6e3db
Merge pull request #219 from telk5093/jgrpp
Update: Korean translation
3 years ago
Lastorder f3b850623c
Fix #220 build fail due to missing var
Removed from merge commit dfecdf3afb
3 years ago
TELK 6f4d45f61f Update: Korean - GUI setting for shading trees on slopes 3 years ago
TELK 3b135935c7 Change: Improve Korean translation 3 years ago
Jonathan G Rennison 7e62af94ee Remove OVEERIDE macro 3 years ago
Jonathan G Rennison 865cf79915 Fix missing override keywords 3 years ago
Jonathan G Rennison 3e1589eeae Fix name collision in template replacement enum definition 3 years ago
Jonathan G Rennison 13b34b9917 Fix code style in Town::UpdateLabel 3 years ago
Jonathan G Rennison 3e017ddaa9 Remove unused dirty block size constants 3 years ago
Jonathan G Rennison 32dcc0d484 Linkgraph: Fix unused expression result warning 3 years ago
Jonathan G Rennison 9ca1c04330 Build: Fix use of xmmintrin.h on non-x86 MSVC builds 3 years ago
Jonathan G Rennison 59741b9f3c CMake: Fix HOST_BINARY_DIR cross compiling 3 years ago
Michael Lutz 937d60f239
Fix #8774: Black screenshots when using 40bpp-blitter. (#8791)
This affected all screenshot types that render to an off-screen
buffer and don't copy the actual screen contents.
3 years ago
translators 95462493ef Update: Translations from eints
english (us): 4 changes by 2TallTyler
italian: 4 changes by troccoli
serbian: 251 changes by nkrs
german: 6 changes by ebla71, 2 changes by Wuzzy2
romanian: 3 changes by ALEX11BR
russian: 11 changes by Ln-Wolf
ukrainian: 2 changes by StepanIvasyn
lithuanian: 15 changes by devbotas
spanish: 2 changes by perezdidac
3 years ago
Jonathan G Rennison 2df9c97884 Revert "Change: Zero out the gameloop timers when the game is paused"
This reverts commit 64686b53ff.
3 years ago
Jonathan G Rennison f81c71e15b OpenGL: Temporarily reduce OpenGL driver priorities 3 years ago
Jonathan G Rennison 84a7ab180e Merge branch 'master' into jgrpp
# Conflicts:
#	src/company_cmd.cpp
#	src/lang/greek.txt
#	src/table/settings.ini
3 years ago
Jonathan G Rennison fdfd9753d6 Fix tree shading with 40bpp blitter 3 years ago
Jonathan G Rennison f4e29071be Merge tag '1.11.0-beta2' into jgrpp
# Conflicts:
#	.github/workflows/ci-build.yml
#	.github/workflows/release.yml
#	CMakeLists.txt
#	src/blitter/32bpp_optimized.cpp
#	src/debug.cpp
#	src/gfx.cpp
#	src/gfx_func.h
#	src/lang/czech.txt
#	src/lang/english.txt
#	src/lang/italian.txt
#	src/lang/swedish.txt
#	src/lang/ukrainian.txt
#	src/network/network_server.cpp
#	src/os/windows/crashlog_win.cpp
#	src/os/windows/win32.cpp
#	src/pathfinder/follow_track.hpp
#	src/screenshot.cpp
#	src/settings_type.h
#	src/spritecache.cpp
#	src/vehicle_gui.cpp
#	src/video/sdl2_v.cpp
#	src/video/video_driver.cpp
#	src/video/video_driver.hpp
#	src/video/win32_v.cpp
3 years ago
Michael Lutz c656633bea Fix #8775: [Win32] Don't create the main window when alt-tabbing back into fullscreen. 3 years ago
Michael Lutz b7a44983b4 Fix: [Win32] Original window size was lost when tabbing in and out of fullscreen. 3 years ago
Patric Stout 74aa934441 Codechange: validate that "max" value of settings fit in their storage
This is an easy mistake to make, so protect us against making such
mistakes, by validating it doesn't happen.
3 years ago
Patric Stout d7a70c67ba Fix: old snow_line_height had a higher maximum value than could be stored
So any old game made with this setting was overflowing anyway;
not really a lot we can do about that now.
3 years ago
Patric Stout a0c298a539 Fix: three max-values for settings could exceed their storage size 3 years ago
Patric Stout abac4b1758
Fix c4df0f95: bootstrap was only showing a black screen (#8788)
The bootstrap has the _switch_mode to SM_MENU, and never leaves
this mode. Neither is it considered a modal window (while in some
sense it really is). So .. we need to add another "draw anyway"
exception, to make sure bootstrap is being drawn.
3 years ago
Limyx826 47e899cf75 Add: Malaysia Ringgit as Currency
Cause why not

*Update the formating
3 years ago
Charles Pigott 64686b53ff Change: Zero out the gameloop timers when the game is paused 3 years ago
Charles Pigott ef5cea0e06 Change: De-limit framerate window's framerate 3 years ago
Owen Rudge 838fd61f29 Fix: [OSX] Hide dock when entering fullscreen 3 years ago
Jonathan G Rennison 44d786d8ce MinGW: Fix define fallback for missing SHGFP_TYPE_CURRENT 3 years ago
Jonathan G Rennison a7ed477185 Log savegame compression format used at debug level sl 3 3 years ago
translators 02e7bc7e0a Update: Translations from eints
swedish: 4 changes by kustridaren
norwegian (bokmal): 3 changes by buzzCraft
spanish (mexican): 12 changes by absay
korean: 4 changes by telk5093
greek: 85 changes by sntovas
german: 4 changes by MagnumSociety
catalan: 5 changes by J0anJosep
tamil: 16 changes by Ramesh78dev
dutch: 4 changes by rcpaul
polish: 5 changes by pAter-exe
3 years ago
Jonathan G Rennison edeced8fce Zstd: Enable zstd for autosaves
See also: https://github.com/OpenTTD/OpenTTD/pull/8773
3 years ago
Jonathan G Rennison c2ae7580e0 Zstd: Use zstd for network joins if supported at both ends
See also: https://github.com/OpenTTD/OpenTTD/pull/8773
3 years ago
Jonathan G Rennison 922e8554de Zstd: Fix infinite loop when input exhausted 3 years ago
Jonathan G Rennison ee7f5ad44f Zstd: Indentation fixes 3 years ago