Skip to content

Commit 8fb4660

Browse files
committed
Fix held block rewriting in 1.13->1.12
Fixes #1303
1 parent 799d894 commit 8fb4660

2 files changed

Lines changed: 10 additions & 0 deletions

File tree

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,4 +34,6 @@ bin/
3434
# Misc
3535

3636
run/
37+
.claude/
38+
!.claude/CLAUDE.md
3739
AGENTS.override.md

common/src/main/java/com/viaversion/viabackwards/protocol/v1_13to1_12_2/rewriter/EntityPacketRewriter1_13.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -354,6 +354,14 @@ protected void registerRewrites() {
354354

355355
event.cancel();
356356
});
357+
358+
filter().dataType(EntityDataTypes1_12.OPTIONAL_BLOCK_STATE).handler(((event, data) -> {
359+
final int blockState = data.value();
360+
if (blockState != 0) {
361+
final int combined = Protocol1_13To1_12_2.MAPPINGS.getNewBlockStateId(blockState);
362+
data.setValue(((combined >> 4) & 0xFFF) | ((combined & 0xF) << 12));
363+
}
364+
}));
357365
}
358366

359367
@Override

0 commit comments

Comments
 (0)