Fixed gold coins and pouches

This commit is contained in:
Indyuce 2022-07-07 15:14:54 +02:00
parent 2300a7fc13
commit 315ff4b640
2 changed files with 10 additions and 18 deletions

View File

@ -1,17 +1,16 @@
package net.Indyuce.mmocore.comp.mythicmobs.load; package net.Indyuce.mmocore.comp.mythicmobs.load;
import io.lumine.mythic.api.adapters.AbstractItemStack;
import io.lumine.mythic.api.config.MythicLineConfig; import io.lumine.mythic.api.config.MythicLineConfig;
import io.lumine.mythic.api.drops.DropMetadata; import io.lumine.mythic.api.drops.DropMetadata;
import io.lumine.mythic.api.drops.IMultiDrop; import io.lumine.mythic.api.drops.IItemDrop;
import io.lumine.mythic.bukkit.adapters.BukkitItemStack; import io.lumine.mythic.bukkit.adapters.BukkitItemStack;
import io.lumine.mythic.core.drops.Drop; import io.lumine.mythic.core.drops.Drop;
import io.lumine.mythic.core.drops.LootBag;
import io.lumine.mythic.core.drops.droppables.ItemDrop;
import net.Indyuce.mmocore.util.item.CurrencyItemBuilder; import net.Indyuce.mmocore.util.item.CurrencyItemBuilder;
import java.util.Random; import java.util.Random;
public class CurrencyItemDrop extends Drop implements IMultiDrop { public class CurrencyItemDrop extends Drop implements IItemDrop {
private final String key; private final String key;
private final int minw; private final int minw;
private final int maxw; private final int maxw;
@ -26,12 +25,9 @@ public class CurrencyItemDrop extends Drop implements IMultiDrop {
maxw = config.getInteger("maxw", 1); maxw = config.getInteger("maxw", 1);
} }
@SuppressWarnings("deprecation")
@Override @Override
public LootBag get(DropMetadata metadata) { public AbstractItemStack getDrop(DropMetadata dropMetadata, double v) {
LootBag loot = new LootBag(metadata); return new BukkitItemStack(new CurrencyItemBuilder(key, random(minw, maxw)).build());
loot.add(new ItemDrop(this.getLine(), this.getConfig(), new BukkitItemStack(new CurrencyItemBuilder(key, random(minw, maxw)).build())));
return loot;
} }
private int random(int a, int b) { private int random(int a, int b) {

View File

@ -1,12 +1,11 @@
package net.Indyuce.mmocore.comp.mythicmobs.load; package net.Indyuce.mmocore.comp.mythicmobs.load;
import io.lumine.mythic.api.adapters.AbstractItemStack;
import io.lumine.mythic.api.config.MythicLineConfig; import io.lumine.mythic.api.config.MythicLineConfig;
import io.lumine.mythic.api.drops.DropMetadata; import io.lumine.mythic.api.drops.DropMetadata;
import io.lumine.mythic.api.drops.IMultiDrop; import io.lumine.mythic.api.drops.IItemDrop;
import io.lumine.mythic.bukkit.adapters.BukkitItemStack; import io.lumine.mythic.bukkit.adapters.BukkitItemStack;
import io.lumine.mythic.core.drops.Drop; import io.lumine.mythic.core.drops.Drop;
import io.lumine.mythic.core.drops.LootBag;
import io.lumine.mythic.core.drops.droppables.ItemDrop;
import io.lumine.mythic.lib.api.item.ItemTag; import io.lumine.mythic.lib.api.item.ItemTag;
import io.lumine.mythic.lib.api.item.NBTItem; import io.lumine.mythic.lib.api.item.NBTItem;
import net.Indyuce.mmocore.api.util.MMOCoreUtils; import net.Indyuce.mmocore.api.util.MMOCoreUtils;
@ -17,7 +16,7 @@ import org.bukkit.inventory.ItemStack;
import java.util.Random; import java.util.Random;
public class GoldPouchDrop extends Drop implements IMultiDrop { public class GoldPouchDrop extends Drop implements IItemDrop {
private final int min; private final int min;
private final int max; private final int max;
@ -30,10 +29,8 @@ public class GoldPouchDrop extends Drop implements IMultiDrop {
max = config.getInteger("max", 10); max = config.getInteger("max", 10);
} }
@SuppressWarnings("deprecation")
@Override @Override
public LootBag get(DropMetadata metadata) { public AbstractItemStack getDrop(DropMetadata dropMetadata, double v) {
LootBag loot = new LootBag(metadata);
NBTItem nbt = NBTItem.get(new SimpleItemBuilder("MOB_GOLD_POUCH").build()); NBTItem nbt = NBTItem.get(new SimpleItemBuilder("MOB_GOLD_POUCH").build());
ItemStack[] content = new ItemStack[18]; ItemStack[] content = new ItemStack[18];
@ -52,8 +49,7 @@ public class GoldPouchDrop extends Drop implements IMultiDrop {
} }
nbt.addTag(new ItemTag("RpgPouchSize", 18), new ItemTag("RpgPouchMob", true), new ItemTag("RpgPouchInventory", MMOCoreUtils.toBase64(content))); nbt.addTag(new ItemTag("RpgPouchSize", 18), new ItemTag("RpgPouchMob", true), new ItemTag("RpgPouchInventory", MMOCoreUtils.toBase64(content)));
loot.add(new ItemDrop(this.getLine(), this.getConfig(), new BukkitItemStack(nbt.toItem()))); return new BukkitItemStack(nbt.toItem());
return loot;
} }
private ItemStack setAmount(ItemStack item, int amount) { private ItemStack setAmount(ItemStack item, int amount) {