Fix a bug where isActive could be seen to be different between engine and user access #150
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.
This is about #140, where the engine does the
isActivecheck one way and later, while in tick does it a different way, leading to a bunch of bugs where structures that should be active actually aren't and vice-versa.This is a slightly modified version of #107, updated to work on the latest version. The gist of it is that instead of doing
checkStructureAgainstControllerchecks, those are all made as part of the room processing logic, all at once, and set anoffproperty on the relevant objects (anything that's inSTRUCTURE_CONTROLLER, as part of a new_check_active_structuresintent. Then all uses of the old function are changed to look at thatoffproperty to decide whether they're actually active or not.This has been tested on a private server, console-boosting a room up to RCL8 then checking progressive lowering of the level, and appears to work properly.