Fix #8462: Don't check whether to grow a town road on water #8471
Conversation
Looked at the code a bit, and I'm 90% certain that adding DC_NO_WATER to CMD_BUILD_ROAD does nothing - it only has an effect for the CLEAR_LANDSCAPE Seems reasonable otherwise |
LordAro, CMD_BUILD_ROAD also ends up running CMD_LANDSCAPE_CLEAR and inherits the DC flags from the source. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Motivation / Problem
#8462
With Original or Better Roads town layout, towns are testing whether they can build a road at a tile for future use, but the command omits the DC_NO_WATER flag, which mean that on full clear water tiles, such as sea, river or canal with no owner, the command would return true.
I'm not a town growth expert, but I don't think towns are supposed to be clearing water tiles to expand on them.
Description
I think the problem is solved by using DC_NO_WATER flag on this situation.
Limitations
I have no great knowledge of town growth code, but with some tests, towns grow differently with the fix in, when they're near river tiles. But I'm not really sure of the whole impact of this change.
Checklist for review
Some things are not automated, and forgotten often. This list is a reminder for the reviewers.