Skip to content

Fix containers being openable after destroyed#454

Open
democat3457 wants to merge 2 commits intoCharsetMC:1.12-stablefrom
democat3457:patch-1
Open

Fix containers being openable after destroyed#454
democat3457 wants to merge 2 commits intoCharsetMC:1.12-stablefrom
democat3457:patch-1

Conversation

@democat3457
Copy link
Copy Markdown

Implements the fix stated on https://www.curseforge.com/minecraft/mc-mods/containerfix.

This PR fixes the fact that if you remain in a container's inventory after the container gets destroyed, you don't get booted out of the GUI by adding a check for if the tile entity at that location is still present.

@copygirl
Copy link
Copy Markdown

This doesn't check the distance, does it?

@democat3457
Copy link
Copy Markdown
Author

no, but I just tested it, and the GUI was uninteractable after moving farther away using a minecart - would the (possibly redundant) distance check still be useful to put in regardless?

@asiekierka
Copy link
Copy Markdown
Member

Shouldn't the container's tile entity be invalidated?

@democat3457
Copy link
Copy Markdown
Author

Shouldn't the container's tile entity be invalidated?

what do you mean? the method doesnt check anything on containerHandler regarding whether it still exists, and the bug definitely exists before this pull request - and the only null check that exists will still return true if the player is the te owner

@asiekierka
Copy link
Copy Markdown
Member

isOwnerPresent() should be calling the TileEntity's isInvalid() method.

@democat3457
Copy link
Copy Markdown
Author

Hmm it must be that the TileEntity is never getting invalidate() called when destroyed

@asiekierka
Copy link
Copy Markdown
Member

It might be that it doesn't propagate to the client side.

@democat3457
Copy link
Copy Markdown
Author

@asiekierka Could this get merged anyway? It theoretically should be redundant if the invalidate() behavior worked properly, but the bug still exists, and this works as a patch in the meantime.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants