Round shop balance and price per item.

This commit is contained in:
Len 2024-08-13 15:42:14 +02:00
parent f714cbef24
commit 4737ad1cfa
2 changed files with 12 additions and 2 deletions

View File

@ -65,7 +65,7 @@ public class PlayerShop {
playerShop.server = server; playerShop.server = server;
playerShop.price = price; playerShop.price = price;
playerShop.amount = amount; playerShop.amount = amount;
playerShop.balance = balance; playerShop.balance = EconomyUtils.round(balance);
playerShop.itemStack = item; playerShop.itemStack = item;
playerShop.lastTransaction = lastTransaction; playerShop.lastTransaction = lastTransaction;
@ -193,7 +193,7 @@ public class PlayerShop {
} }
public double getPricePerItem() { public double getPricePerItem() {
return this.getPrice() / this.getAmount(); return EconomyUtils.round(this.getPrice() / this.getAmount());
} }
public boolean removeBalance(double amount) { public boolean removeBalance(double amount) {

View File

@ -5,6 +5,9 @@ import com.alttd.playershops.shop.PlayerShop;
import net.milkbowl.vault.economy.EconomyResponse; import net.milkbowl.vault.economy.EconomyResponse;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import java.math.BigDecimal;
import java.math.RoundingMode;
// TODO document // TODO document
public class EconomyUtils { public class EconomyUtils {
@ -55,4 +58,11 @@ public class EconomyUtils {
// if we ever need to limit the maximum balance a shop can have this is the place // if we ever need to limit the maximum balance a shop can have this is the place
return true; return true;
} }
public static double round(double value) {
BigDecimal bd = BigDecimal.valueOf(value);
bd = bd.setScale(2, RoundingMode.HALF_UP);
return bd.doubleValue();
}
} }