From f759d6339cd88c023c5105428de13d78682bee5c Mon Sep 17 00:00:00 2001 From: duckietm Date: Tue, 3 Mar 2026 16:00:20 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=86=99=20Updated=20the=20Position=20Event?= =?UTF-8?q?=20for=20buildtools?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../items/UpdateFurniturePositionEvent.java | 17 +++++++++++++---- .../Habbo-4.0.5-jar-with-dependencies.jar | Bin 20816902 -> 20817212 bytes 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/Emulator/src/main/java/com/eu/habbo/messages/incoming/rooms/items/UpdateFurniturePositionEvent.java b/Emulator/src/main/java/com/eu/habbo/messages/incoming/rooms/items/UpdateFurniturePositionEvent.java index 2a29f28e..ee0b9ae0 100644 --- a/Emulator/src/main/java/com/eu/habbo/messages/incoming/rooms/items/UpdateFurniturePositionEvent.java +++ b/Emulator/src/main/java/com/eu/habbo/messages/incoming/rooms/items/UpdateFurniturePositionEvent.java @@ -5,6 +5,9 @@ import com.eu.habbo.habbohotel.rooms.Room; import com.eu.habbo.habbohotel.rooms.RoomTile; import com.eu.habbo.habbohotel.users.HabboItem; import com.eu.habbo.messages.incoming.MessageHandler; +import com.eu.habbo.messages.outgoing.generic.alerts.BubbleAlertComposer; +import com.eu.habbo.messages.outgoing.generic.alerts.BubbleAlertKeys; +import com.eu.habbo.messages.outgoing.rooms.items.FloorItemUpdateComposer; public class UpdateFurniturePositionEvent extends MessageHandler { @Override @@ -24,11 +27,17 @@ public class UpdateFurniturePositionEvent extends MessageHandler { RoomTile tile = room.getLayout().getTile((short) x, (short) y); if (tile == null) return; - FurnitureMovementError result = - room.moveFurniTo(item, tile, rotation, z, this.client.getHabbo(), true, true); - - if (result != FurnitureMovementError.NONE) { + FurnitureMovementError error = room.canPlaceFurnitureAt(item, this.client.getHabbo(), tile, rotation); + if (error != FurnitureMovementError.NONE) { + this.client.sendResponse(new BubbleAlertComposer(BubbleAlertKeys.FURNITURE_PLACEMENT_ERROR.key, error.errorCode)); + this.client.sendResponse(new FloorItemUpdateComposer(item)); return; } + + error = room.moveFurniTo(item, tile, rotation, z, this.client.getHabbo(), true, true); + if (error != FurnitureMovementError.NONE) { + this.client.sendResponse(new BubbleAlertComposer(BubbleAlertKeys.FURNITURE_PLACEMENT_ERROR.key, error.errorCode)); + this.client.sendResponse(new FloorItemUpdateComposer(item)); + } } } diff --git a/Latest_Compiled_Version/Habbo-4.0.5-jar-with-dependencies.jar b/Latest_Compiled_Version/Habbo-4.0.5-jar-with-dependencies.jar index 55283556556e5c4e2276de67cb2e0163f3671c3f..ea67a3ba77d42f0b7f8223d6507508150888f4a5 100644 GIT binary patch delta 108963 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