From cb1fa0ad8bed715130a64a919d382b7c2d3a525e Mon Sep 17 00:00:00 2001 From: Darto KLoning Date: Sun, 4 Oct 2026 04:55:07 +0700 Subject: [PATCH] cushion facing fix --- README.md | 5 +++++ gradle.properties | 2 +- .../terrarium/handcrafted/common/blocks/CushionBlock.java | 6 +++++- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 13d9b2f..5790be8 100644 --- a/README.md +++ b/README.md @@ -127,6 +127,11 @@ As of **4.0.15**, the tested seating behavior for chairs, sofas, benches, cushio ## Release History +### 4.0.17 — Standalone Cushion facing + +- Standalone Cushion now captures the player's horizontal facing when sitting, matching Dining Bench behavior. +- Sitting on a Cushion from opposite directions now produces the corresponding seating direction instead of using the previous free-rotation/fixed initial yaw behavior. + ### 4.0.15 — Dining Bench facing - Dining Bench captures the player's horizontal facing when sitting. diff --git a/gradle.properties b/gradle.properties index fa1eb8a..cf98c7f 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,7 @@ org.gradle.jvmargs=-Xmx4G org.gradle.parallel=true org.gradle.caching=true -mod_version=4.0.16 +mod_version=4.0.17 maven_group=earth.terrarium.handcrafted archives_base_name=handcrafted diff --git a/src/main/java/earth/terrarium/handcrafted/common/blocks/CushionBlock.java b/src/main/java/earth/terrarium/handcrafted/common/blocks/CushionBlock.java index 0a39f4b..bcbd634 100644 --- a/src/main/java/earth/terrarium/handcrafted/common/blocks/CushionBlock.java +++ b/src/main/java/earth/terrarium/handcrafted/common/blocks/CushionBlock.java @@ -36,7 +36,11 @@ public class CushionBlock extends Block implements SittableBlock { @Override protected InteractionResult useWithoutItem(BlockState state, Level level, BlockPos pos, Player player, BlockHitResult hitResult) { - this.sitOn(level, pos, player, null); + // A standalone cushion has no backrest, so match Dining Bench behavior: + // use the player's horizontal facing at the moment of sitting. This lets + // the cushion be approached and used naturally from any side instead of + // always starting the Seat with one fixed/free-rotation world yaw. + this.sitOn(level, pos, player, player.getDirection()); return InteractionResult.SUCCESS; }