dirty caches on translucency change #77532
Merged
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.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
None
Purpose of change
Fix #77521 (but only in a very literal sense).
Describe the solution
Describe alternatives you've considered
Wait until someone can figure out how to deal with closing door effects being delayed (see Additional context).
Testing
Additional context
The translucency handling is a hack that's not fully carried through. Translucent terrain is handled as transparent in the terrain information (i.e. both flags set the same boolean). This means that the operations and transparency cache accessing code is completely oblivious of there being such a thing as translucency which is ignored by the access operations and the transparency cache.
As mentioned above, there is now a problem with the lingering visibility when a translucent door is closed (this was hidden previously, because nothing was revealed, so that state remaining didn't differ from it being set).
A lot of these usages of transparency information should probably also check transparency (such as e.g. whether creatures can see each other), but which? And how to test the changes?
I've tried to hack in checks in a number of suspects, one at a time, but none have removed the door closing update delay, so they are all removed again.