Skip to content

Fix stale held item appearing when switching worlds#910

Merged
smartcmd merged 1 commit intosmartcmd:mainfrom
ayushthoren:held-item-reset
Mar 8, 2026
Merged

Fix stale held item appearing when switching worlds#910
smartcmd merged 1 commit intosmartcmd:mainfrom
ayushthoren:held-item-reset

Conversation

@ayushthoren
Copy link
Contributor

Description

This fixes a visual glitch where, when switching worlds, the previously held item could be visible for a bit before the new world's player state was applied.

Changes

Previous Behavior

The code would fail to clean up the player's held item state when exiting a world.

Root Cause

ItemInHandRenderer cached held item states (selectedItem, lastSlot, and equip animation values) that persisted across world transitions and were reused before the new world's state fully propagated.

New Behavior

Worlds now load with a cleared player state, so no stale items are shown before the correct ones are loaded.

Fix Implementation

I added a reset() method to the ItemInHandRenderer which cleans up the player's held item state when a world is unloaded.

AI Use Disclosure

I used AI as a tool to navigate the codebase and locate the areas that needed fixing, then implemented changes myself and tested the new behavior.

How it looked before:

2026-03-07.20-51-10.mp4

How it looks after:

2026-03-07.20-54-23.mp4

Signed-off-by: Ayush Thoren <ayushthoren@gmail.com>
@smartcmd smartcmd merged commit a14a454 into smartcmd:main Mar 8, 2026
1 check passed
@ayushthoren ayushthoren deleted the held-item-reset branch March 8, 2026 19:22
piebotc pushed a commit to piebotc/LegacyEvolved that referenced this pull request Mar 9, 2026
Signed-off-by: Ayush Thoren <ayushthoren@gmail.com>
Kamenkovic pushed a commit to Kamenkovic/FpsLimit that referenced this pull request Mar 9, 2026
Signed-off-by: Ayush Thoren <ayushthoren@gmail.com>
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.

2 participants