Commit Graph

433 Commits

Author SHA1 Message Date
Rubidium
a409e4b026 Add: documention to large functions that have too little documentation according to CodeQL 2023-02-25 23:57:36 +01:00
Jonathan G Rennison
05ec32f577 Run water flooding at constant speed at day lengths >= 4
See: #482
2023-02-09 21:39:04 +00:00
Jonathan G Rennison
a9100e93cb Merge branch 'master' into jgrpp
# Conflicts:
#	src/group_cmd.cpp
#	src/lang/korean.txt
#	src/lang/simplified_chinese.txt
#	src/script/api/script_rail.cpp
#	src/tunnelbridge_cmd.cpp
2023-01-23 19:10:07 +00:00
Rubidium
fe2bcd2a58 Codechange: migrate size related functions to Map structure 2023-01-21 17:11:40 +01:00
Rubidium
9c1a3b17e3 Codechange: use MapLogY() instead of FindFirstBit(MapSizeY()), MapSize() instead of MapSizeX() * MapSizeY() 2023-01-21 17:11:40 +01:00
SamuXarick
96ec9908a0 Codechange: refactor removal of desert around river tiles 2023-01-15 00:43:41 +01:00
Jonathan G Rennison
5b490b243d Merge branch 'master' into jgrpp
# Conflicts:
#	src/industry_cmd.cpp
#	src/landscape.cpp
#	src/object_cmd.cpp
#	src/rail_cmd.cpp
#	src/script/api/script_tile.cpp
#	src/table/settings/difficulty_settings.ini
#	src/table/settings/world_settings.ini
#	src/terraform_cmd.cpp
#	src/tilearea_type.h
#	src/tree_cmd.cpp
#	src/tree_cmd.h
#	src/tree_gui.cpp
#	src/water_cmd.cpp
2023-01-14 16:49:17 +00:00
Tyler Trahan
07fba75238 Fix: Various Wide River issues (#10348) 2023-01-14 08:20:19 -05:00
Rubidium
f667a831a5 Codechange: unify creation of diagonal/orthogonal iterator using smart pointers 2023-01-13 21:09:40 +01:00
Jonathan G Rennison
160dcc345a Add wrapper class for diagonal or orthogonal tile iteration 2022-12-30 18:09:55 +00:00
Jonathan G Rennison
58d841486e Merge branch 'master' into jgrpp
# Conflicts:
#	src/os/windows/font_win32.cpp
#	src/script/api/script_object.hpp
#	src/town_cmd.cpp
#	src/train_cmd.cpp
#	src/viewport.cpp
#	src/viewport_func.h
2022-12-27 01:00:40 +00:00
Peter Nelson
a971eee2e0 Cleanup: Replace foundation drawing magic numbers.
Use TILE_SIZE or TILE_HEIGHT as appropriate instead.
2022-12-23 15:43:11 +00:00
Peter Nelson
138198e971 Change: Separate ground sprite from foundation sprite offsets. 2022-12-23 15:43:11 +00:00
2TallTyler
0116a422ea Cleanup: Refactor Wide Rivers code slightly 2022-12-16 17:43:33 -05:00
2TallTyler
d67259334a Fix #10218: Sloped river tiles need water both up and downstream 2022-12-16 17:43:33 -05:00
Jonathan G Rennison
ff0b3ca9be Merge branch 'master' into jgrpp
# Conflicts:
#	src/landscape.cpp
2022-10-22 19:55:03 +01:00
Jonathan G Rennison
29a1e49c28 Change various asserts to not be included in release builds 2022-10-22 12:34:54 +01:00
Tyler Trahan
4daad7f348 Change: Don't make wide rivers using original landscape generator 2022-10-22 12:16:56 +02:00
Tyler Trahan
664771d085 Feature: Wide rivers 2022-10-20 21:17:35 +02:00
SamuXarick
c7505539af Fix #9869: remove docking tile when doing a clear square
Terraforming through objects placed on water didn't properly remove docking tiles as expected.

By moving some logic regarding removal of docking tiles into DoClearSquare, the issue is solved, while also simplifying code, avoiding repetition elsewhere.
2022-10-16 18:29:03 +02:00
Jonathan G Rennison
3d857333c8 Reduce delays with company bankrupcty/sale processing at high day lengths 2022-09-02 18:14:35 +01:00
Jonathan G Rennison
1714773457 Adjust baseline for arctic snowline dynamic width setting to lower value 2022-05-05 17:17:24 +01:00
Jonathan G Rennison
452d22ce37 Add setting for width of dynamic snowline range for arctic tree placement
Default: 75%
2022-05-01 00:56:03 +01:00
Jonathan G Rennison
ed30542acf Cache highest snowline value 2022-04-29 17:10:18 +01:00
Jonathan G Rennison
ef379b5214 Fix DC_FORCE_CLEAR_TILE water removal not removing docking tiles
See: https://github.com/OpenTTD/OpenTTD/issues/9869
2022-04-25 19:40:53 +01:00
Jonathan G Rennison
39d39a5c61 Reduce duplication in desert or rainforeset data search arrays 2022-03-06 02:05:12 +00:00
reldred
3bf2e850a5 undo the mess I made of JGR's fixes to my janky code 2022-03-06 11:17:14 +10:30
reldred
e3e032518b Merge branch 'desert-tweaks' of https://github.com/reldred/OpenTTD-patches into desert-tweaks 2022-03-06 11:03:59 +10:30
reldred
59022c40f9 adjustments;
added lake tropic width adjustment
added an extra large setting to the coasts (51radius)
set minimum width for rivers and lakes to 2 (setting it to 1 actually CTD'd the game)
made max for rivers and lakes be 51 tiles to match the 51tiles of the coast setting.
2022-03-06 11:03:46 +10:30
Jonathan G Rennison
f1b6eb932f Reduce duplication in CreateDesertOrRainForest 2022-03-05 14:59:31 +00:00
reldred
22305e8795 Allows configuring the width of the coast in tropic maps that generates as tropiczone_normal before the desert kicks in, it does this by creating two additional arrays which house the coordinates to create a filled circle of radius of 19 tiles, and 25 tiles. the default creates a radius of 13 tiles.
I'd eventually like to add an Extra Large setting but manually creating the array of coordinates is horrible.

I wedged this setting in beside the setting for tropic width around rivers despite it not fitting into the rivers/lakes category because it still feels the most relevant place for now.
2022-03-05 16:25:50 +10:30
Michael Lutz
2e39637db2 Codechange: Don't use a global for the 'not enough cash' message. 2021-12-16 22:28:32 +01:00
Michael Lutz
c6d7b98808 Codechange: Un-bitstuff landscape commands. 2021-12-16 22:28:32 +01:00
Michael Lutz
e740c24eb7 Codechange: Template DoCommand to automagically reflect the parameters of the command proc.
When finished, this will allow each command handler to take individually
different parameters, obliviating the need for bit-packing.
2021-12-16 22:28:32 +01:00
Michael Lutz
7048e1522f Codechange: Move flags in CommandProc in front of the command arguments. 2021-12-16 22:28:32 +01:00
Michael Lutz
33ca4f2b99 Codechange: Let the compile generate the master command table out of templated command traits.
This is using a non-intrusive type-traits like templated system, which
allows compile-time validation that the command table and the command
enum match up.
2021-12-16 22:28:32 +01:00
Michael Lutz
b6933a2ebd Codechange: Move command arguments to the back of the DoCommand function call. 2021-12-16 22:28:32 +01:00
reldred
5a53b4d846 Additional tweaks to allow rivers to spawn in deserts (causing aditional tropic biome to spawn around them). This piggybacks off of the 'allow lakes in deserts' setting, renaming it to cover both. The actual setting name itself internally hasn't changed. 2021-11-19 12:29:20 +10:30
Andreas Schmitt
7601720ff7 landscape.cpp fixes 2021-06-19 13:02:36 +01:00
Andreas Schmitt
44fe1ca00b Tweak the bridge generation 2021-06-19 13:02:36 +01:00
Andreas Schmitt
8d584990aa Remove unused hash functions and start the road building from the map center 2021-06-19 13:02:36 +01:00
Andreas Schmitt
da4de2c959 Improve lake generation
Prior to this change, lakes could be very small and could also not be deactivated.

This change allows the deactivation of lake creation and the lake size is now the set size +- 25% instead of anything between 0 and lake_size.
2021-06-13 08:15:43 +02:00
Andreas Schmitt
99e32488f2 Add creation of wide rivers 2021-06-13 07:36:41 +02:00
rubidium42
2e136285e1 Codechange: move from C-string to std::string for DoCommand 2021-05-29 19:02:18 +02:00
Jonathan G Rennison
1ef236525a Mapgen: Generate fuzzy ellipse shaped lakes instead of squares 2021-04-14 02:01:26 +01:00
Jonathan G Rennison
f39b6f4ba3 Merge branch 'master' into jgrpp
# Conflicts:
#	src/cheat_gui.cpp
#	src/genworld_gui.cpp
#	src/landscape.cpp
#	src/lang/english.txt
#	src/saveload/afterload.cpp
#	src/screenshot.cpp
#	src/settings_gui.cpp
#	src/settings_internal.h
#	src/settings_type.h
#	src/table/settings.ini
#	src/tile_type.h
#	src/widgets/genworld_widget.h
2021-04-10 18:29:36 +01:00
Patric Stout
ff6924f122 Fix 70bc55cfd6: snow line height was set while calculating desert line (#8989)
Seems I liked copy/pasting just a tiny bit too much.
2021-04-10 10:14:55 +01:00
Jonathan G Rennison
5e14b54a0c Merge branch 'master' into jgrpp 2021-04-05 17:51:45 +01:00
reldred
213b6fe6ef Add PR #231: More river configuration options 2021-03-28 23:46:18 +01:00
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.
2021-03-26 12:22:32 +01:00