From e9c4be365bd511bb6d5cb64b3e719b9fce19dd6d Mon Sep 17 00:00:00 2001 From: Rasmus Date: Tue, 25 Feb 2025 08:38:52 +0100 Subject: [PATCH] Fixing checkstyle errors and moving event to aligning with other event location. --- .../earth2me/essentials/signs/SignBuy.java | 13 +-- .../earth2me/essentials/signs/SignSell.java | 13 ++- .../signs/event/SignTransactionEvent.java | 99 ------------------- .../ess3/api/events/SignTransactionEvent.java | 86 ++++++++++++++++ 4 files changed, 101 insertions(+), 110 deletions(-) delete mode 100644 Essentials/src/main/java/com/earth2me/essentials/signs/event/SignTransactionEvent.java create mode 100644 Essentials/src/main/java/net/ess3/api/events/SignTransactionEvent.java diff --git a/Essentials/src/main/java/com/earth2me/essentials/signs/SignBuy.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignBuy.java index b3f5bd3a19e..0efbe832396 100644 --- a/Essentials/src/main/java/com/earth2me/essentials/signs/SignBuy.java +++ b/Essentials/src/main/java/com/earth2me/essentials/signs/SignBuy.java @@ -3,10 +3,9 @@ import com.earth2me.essentials.ChargeException; import com.earth2me.essentials.Trade; import com.earth2me.essentials.User; -import com.earth2me.essentials.signs.event.SignTransactionEvent; +import net.ess3.api.events.SignTransactionEvent; import net.ess3.api.IEssentials; import net.ess3.api.MaxMoneyException; -import org.bukkit.entity.Player; import org.bukkit.inventory.ItemStack; import java.math.BigDecimal; @@ -47,11 +46,13 @@ protected boolean onSignInteract(final ISign sign, final User player, final Stri } charge.isAffordableFor(player); - SignTransactionEvent signTransactionEvent = new SignTransactionEvent( + final SignTransactionEvent signTransactionEvent = new SignTransactionEvent( + sign, + this, + player, items.getItemStack(), - player.getBase(), - sign.getBlock().getLocation(), - SignTransactionEvent.TransactionType.BUY + SignTransactionEvent.TransactionType.BUY, + charge.getMoney() ); ess.getServer().getPluginManager().callEvent(signTransactionEvent); diff --git a/Essentials/src/main/java/com/earth2me/essentials/signs/SignSell.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignSell.java index 63e3bf16ca1..5e35cedc3c3 100644 --- a/Essentials/src/main/java/com/earth2me/essentials/signs/SignSell.java +++ b/Essentials/src/main/java/com/earth2me/essentials/signs/SignSell.java @@ -4,7 +4,7 @@ import com.earth2me.essentials.Trade; import com.earth2me.essentials.Trade.OverflowType; import com.earth2me.essentials.User; -import com.earth2me.essentials.signs.event.SignTransactionEvent; +import net.ess3.api.events.SignTransactionEvent; import net.ess3.api.IEssentials; import net.ess3.api.MaxMoneyException; import org.bukkit.inventory.ItemStack; @@ -49,11 +49,14 @@ protected boolean onSignInteract(final ISign sign, final User player, final Stri charge.isAffordableFor(player); - SignTransactionEvent signTransactionEvent = new SignTransactionEvent( + final SignTransactionEvent signTransactionEvent = new SignTransactionEvent( + sign, + this, + player, charge.getItemStack(), - player.getBase(), - sign.getBlock().getLocation(), - SignTransactionEvent.TransactionType.SELL + SignTransactionEvent.TransactionType.SELL, + money.getMoney() + ); ess.getServer().getPluginManager().callEvent(signTransactionEvent); if (signTransactionEvent.isCancelled()) { diff --git a/Essentials/src/main/java/com/earth2me/essentials/signs/event/SignTransactionEvent.java b/Essentials/src/main/java/com/earth2me/essentials/signs/event/SignTransactionEvent.java deleted file mode 100644 index 2ab6d8c30df..00000000000 --- a/Essentials/src/main/java/com/earth2me/essentials/signs/event/SignTransactionEvent.java +++ /dev/null @@ -1,99 +0,0 @@ -package com.earth2me.essentials.signs.event; - -import org.bukkit.Location; -import org.bukkit.entity.Player; -import org.bukkit.event.Cancellable; -import org.bukkit.event.Event; -import org.bukkit.event.HandlerList; -import org.bukkit.inventory.ItemStack; -import org.jetbrains.annotations.NotNull; - -public class SignTransactionEvent extends Event implements Cancellable { - private static final HandlerList handlerList = new HandlerList(); - private final ItemStack itemStack; - private final Player player; - private final Location signLocation; - private final TransactionType transactionType; - private boolean isCancelled = false; - - public SignTransactionEvent(ItemStack itemStack, - Player player, - Location signLocation, - TransactionType transactionType) { - this.itemStack = itemStack; - this.player = player; - this.signLocation = signLocation; - this.transactionType = transactionType; - } - - - public static @NotNull HandlerList getHandlerList() { - return handlerList; - } - - @Override - public @NotNull HandlerList getHandlers() { - return handlerList; - } - - /** - * - * @return if the event should be cancelled - */ - - @Override - public boolean isCancelled() { - return this.isCancelled; - } - - /** - * - * @param cancelled sets the event to be cancelled, this will cancel the transaction - */ - - @Override - public void setCancelled(boolean cancelled) { - this.isCancelled = cancelled; - } - - /** - * - * @return a copy of the itemstack in the current transaction - */ - - public ItemStack getItemStack() { - return itemStack.clone(); - } - - /** - * - * @return The player activating the transaction - */ - - public Player getPlayer() { - return player; - } - - /** - * - * @return The sign location where the transaction happened. - */ - - public Location getSignLocation() { - return signLocation; - } - - /** - * - * @return The transaction type, ether BUY or SELL - */ - - public TransactionType getTransactionType() { - return transactionType; - } - - public enum TransactionType { - BUY, - SELL - } -} diff --git a/Essentials/src/main/java/net/ess3/api/events/SignTransactionEvent.java b/Essentials/src/main/java/net/ess3/api/events/SignTransactionEvent.java new file mode 100644 index 00000000000..8c7132d64c3 --- /dev/null +++ b/Essentials/src/main/java/net/ess3/api/events/SignTransactionEvent.java @@ -0,0 +1,86 @@ +package net.ess3.api.events; + +import com.earth2me.essentials.signs.EssentialsSign; +import net.ess3.api.IUser; +import org.bukkit.event.Cancellable; +import org.bukkit.inventory.ItemStack; +import org.jetbrains.annotations.NotNull; + +import java.math.BigDecimal; + +/** + * Fired when a player either buys or sells from an essentials sign + */ +public final class SignTransactionEvent extends SignInteractEvent implements Cancellable { + private final ItemStack itemStack; + private final TransactionType transactionType; + private final BigDecimal transactionValue; + private boolean isCancelled = false; + + public SignTransactionEvent(EssentialsSign.ISign sign, + EssentialsSign essSign, + IUser user, + @NotNull ItemStack itemStack, + @NotNull TransactionType transactionType, + BigDecimal transactionValue) { + super(sign, essSign, user); + this.itemStack = itemStack; + this.transactionType = transactionType; + this.transactionValue = transactionValue; + } + + /** + * + * @return if the event should be cancelled. + */ + + @Override + public boolean isCancelled() { + return this.isCancelled; + } + + /** + * + * @param cancelled sets the event to be cancelled, this will cancel the transaction. + */ + + @Override + public void setCancelled(boolean cancelled) { + this.isCancelled = cancelled; + } + + /** + * + * @return a copy of the itemstack in the current transaction. + */ + + public @NotNull ItemStack getItemStack() { + return itemStack.clone(); + } + + /** + * + * @return the type of transaction executed. + */ + public @NotNull TransactionType getTransactionType() { + return transactionType; + } + + /** + * + * @return how much was either sold or bought through the sign. + */ + + public BigDecimal getTransactionValue() { + return transactionValue; + } + + /** + * Transaction type of the event + */ + + public enum TransactionType { + BUY, + SELL + } +}