diff --git a/src/main/java/com/eu/habbo/messages/incoming/trading/TradeStartEvent.java b/src/main/java/com/eu/habbo/messages/incoming/trading/TradeStartEvent.java index 836424c5..a5e4ae13 100644 --- a/src/main/java/com/eu/habbo/messages/incoming/trading/TradeStartEvent.java +++ b/src/main/java/com/eu/habbo/messages/incoming/trading/TradeStartEvent.java @@ -33,25 +33,31 @@ public class TradeStartEvent extends MessageHandler { return; } - if (targetUser != null) { - if (!this.client.getHabbo().getRoomUnit().hasStatus(RoomUnitStatus.TRADING)) { - if (this.client.getHabbo().getHabboStats().allowTrade()) { - if (!targetUser.getRoomUnit().hasStatus(RoomUnitStatus.TRADING)) { - if (targetUser.getHabboStats().allowTrade()) { - room.startTrade(this.client.getHabbo(), targetUser); - } else { - this.client.sendResponse(new TradeStartFailComposer(TradeStartFailComposer.TARGET_TRADING_NOT_ALLOWED, targetUser.getHabboInfo().getUsername())); - } - } else { - this.client.sendResponse(new TradeStartFailComposer(TradeStartFailComposer.TARGET_ALREADY_TRADING, targetUser.getHabboInfo().getUsername())); - } - } else { - this.client.sendResponse(new TradeStartFailComposer(TradeStartFailComposer.YOU_TRADING_OFF)); - } - } else { - this.client.sendResponse(new TradeStartFailComposer(TradeStartFailComposer.YOU_ALREADY_TRADING)); - } + if (targetUser == null) return; + + if (targetUser.getHabboStats().userIgnored(this.client.getHabbo().getHabboInfo().getId())) return; + + if (this.client.getHabbo().getRoomUnit().hasStatus(RoomUnitStatus.TRADING)) { + this.client.sendResponse(new TradeStartFailComposer(TradeStartFailComposer.YOU_ALREADY_TRADING)); + return; } + + if (!this.client.getHabbo().getHabboStats().allowTrade()) { + this.client.sendResponse(new TradeStartFailComposer(TradeStartFailComposer.YOU_TRADING_OFF)); + return; + } + + if (targetUser.getRoomUnit().hasStatus(RoomUnitStatus.TRADING)) { + this.client.sendResponse(new TradeStartFailComposer(TradeStartFailComposer.TARGET_ALREADY_TRADING, targetUser.getHabboInfo().getUsername())); + return; + } + + if (!targetUser.getHabboStats().allowTrade() { + this.client.sendResponse(new TradeStartFailComposer(TradeStartFailComposer.TARGET_TRADING_NOT_ALLOWED, targetUser.getHabboInfo().getUsername())); + return; + } + + room.startTrade(this.client.getHabbo(), targetUser); } } }