Fixed 1.16.4

This commit is contained in:
Auxilor 2020-11-03 19:26:04 +00:00
parent e9ca330a33
commit dcb141b903
4 changed files with 9 additions and 12 deletions

View File

@ -1,9 +1,9 @@
package com.willfp.ecoenchants.v1_16_R3; package com.willfp.ecoenchants.v1_16_R3;
import com.willfp.ecoenchants.nms.API.BlockBreakWrapper; import com.willfp.ecoenchants.nms.API.BlockBreakWrapper;
import net.minecraft.server.v1_16_R2.BlockPosition; import net.minecraft.server.v1_16_R3.BlockPosition;
import org.bukkit.block.Block; import org.bukkit.block.Block;
import org.bukkit.craftbukkit.v1_16_R2.entity.CraftPlayer; import org.bukkit.craftbukkit.v1_16_R3.entity.CraftPlayer;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
public class BlockBreak implements BlockBreakWrapper { public class BlockBreak implements BlockBreakWrapper {

View File

@ -1,20 +1,20 @@
package com.willfp.ecoenchants.v1_16_R3; package com.willfp.ecoenchants.v1_16_R3;
import com.willfp.ecoenchants.nms.API.RepairCostWrapper; import com.willfp.ecoenchants.nms.API.RepairCostWrapper;
import org.bukkit.craftbukkit.v1_16_R2.inventory.CraftItemStack; import org.bukkit.craftbukkit.v1_16_R3.inventory.CraftItemStack;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
public class RepairCost implements RepairCostWrapper { public class RepairCost implements RepairCostWrapper {
@Override @Override
public ItemStack setRepairCost(ItemStack itemStack, int cost) { public ItemStack setRepairCost(ItemStack itemStack, int cost) {
net.minecraft.server.v1_16_R2.ItemStack nmsStack = CraftItemStack.asNMSCopy(itemStack); net.minecraft.server.v1_16_R3.ItemStack nmsStack = CraftItemStack.asNMSCopy(itemStack);
nmsStack.setRepairCost(cost); nmsStack.setRepairCost(cost);
return CraftItemStack.asBukkitCopy(nmsStack); return CraftItemStack.asBukkitCopy(nmsStack);
} }
@Override @Override
public int getRepairCost(ItemStack itemStack) { public int getRepairCost(ItemStack itemStack) {
net.minecraft.server.v1_16_R2.ItemStack nmsStack = CraftItemStack.asNMSCopy(itemStack); net.minecraft.server.v1_16_R3.ItemStack nmsStack = CraftItemStack.asNMSCopy(itemStack);
return nmsStack.getRepairCost(); return nmsStack.getRepairCost();
} }
} }

View File

@ -1,9 +1,9 @@
package com.willfp.ecoenchants.v1_16_R3; package com.willfp.ecoenchants.v1_16_R3;
import com.willfp.ecoenchants.nms.API.TridentStackWrapper; import com.willfp.ecoenchants.nms.API.TridentStackWrapper;
import net.minecraft.server.v1_16_R2.EntityThrownTrident; import net.minecraft.server.v1_16_R3.EntityThrownTrident;
import org.bukkit.craftbukkit.v1_16_R2.entity.CraftTrident; import org.bukkit.craftbukkit.v1_16_R3.entity.CraftTrident;
import org.bukkit.craftbukkit.v1_16_R2.inventory.CraftItemStack; import org.bukkit.craftbukkit.v1_16_R3.inventory.CraftItemStack;
import org.bukkit.entity.Trident; import org.bukkit.entity.Trident;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;

View File

@ -53,11 +53,8 @@ public final class PacketOpenWindowMerchant extends AbstractPacketAdapter {
Object selling = fSelling.get(handle); // NMS Selling ItemStack Object selling = fSelling.get(handle); // NMS Selling ItemStack
modifiersField.setInt(fSelling, fSelling.getModifiers() & ~Modifier.FINAL); modifiersField.setInt(fSelling, fSelling.getModifiers() & ~Modifier.FINAL);
String nmsVersion = EcoEnchantsPlugin.nmsVersion; // Fuck you spigot for making me do this
if(nmsVersion.equalsIgnoreCase("v1_16_R3")) nmsVersion = "v1_16_R2";
// Reflectively access CraftItemStack.class for respective version // Reflectively access CraftItemStack.class for respective version
Class<?> craftItemStack = Class.forName("org.bukkit.craftbukkit." + nmsVersion + ".inventory.CraftItemStack"); Class<?> craftItemStack = Class.forName("org.bukkit.craftbukkit." + EcoEnchantsPlugin.nmsVersion + ".inventory.CraftItemStack");
// Bukkit Result ItemStack from NMS Result ItemStack // Bukkit Result ItemStack from NMS Result ItemStack
ItemStack nmsSelling = (ItemStack) craftItemStack.getMethod("asBukkitCopy", selling.getClass()).invoke(null, selling); ItemStack nmsSelling = (ItemStack) craftItemStack.getMethod("asBukkitCopy", selling.getClass()).invoke(null, selling);