package be.isach.ultracosmetics.tempchests.reward; import org.bukkit.Bukkit; import org.bukkit.ChatColor; import org.bukkit.Material; import org.bukkit.inventory.ItemStack; import be.isach.ultracosmetics.UltraCosmetics; import be.isach.ultracosmetics.config.MessageManager; import be.isach.ultracosmetics.config.SettingsManager; import be.isach.ultracosmetics.config.TreasureManager; import be.isach.ultracosmetics.player.UltraPlayer; import be.isach.ultracosmetics.util.MathUtils; /** * A money reward. * * @author RadBuilder * @since 01-14-2017 */ public class MoneyReward extends Reward { private String name; private ItemStack itemStack; private UltraPlayer ultraPlayer; private UltraCosmetics ultraCosmetics; public MoneyReward(UltraPlayer ultraPlayer, UltraCosmetics ultraCosmetics) { super(ultraPlayer, RewardType.MONEY, ultraCosmetics); this.ultraCosmetics = ultraCosmetics; this.ultraPlayer = ultraPlayer; } @Override public void clear() { } @Override public boolean canEarn() { return ultraCosmetics.getEconomy() != null; } @Override public void give() { if (ultraCosmetics.getEconomy() == null) { name = MessageManager.getMessage("Treasure-Chests-Loot.Nothing"); itemStack = new ItemStack(Material.BARRIER); return; } int money = MathUtils.randomRangeInt(20, (int) SettingsManager.getConfig().get("TreasureChests.Loots.Money.Max")); name = MessageManager.getMessage("Treasure-Chests-Loot.Money").replace("%money%", money + ""); ultraCosmetics.getEconomy().depositPlayer(ultraPlayer.getBukkitPlayer(), money); itemStack = new ItemStack(Material.DOUBLE_PLANT); if (TreasureManager.getRewardFile().getBoolean("UcRewards.money.firework-effect.enabled")) super.firework(TreasureManager.getRewardFile().getString("UcRewards.money.firework-effect.color")); if (TreasureManager.getRewardFile().getBoolean("UcRewards.money.chat-message.enabled")) Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', TreasureManager.getRewardFile().getString("UcRewards.money.chat-message.message")).replace("%name%", ultraPlayer.getBukkitPlayer().getName()).replace("%money%", money + "")); } @Override public String getName() { return name; } @Override public ItemStack getItemStack() { return itemStack; } }