mirror of
https://github.com/TotalFreedomMC/VulnerabilityPatcher.git
synced 2024-06-02 01:51:19 +00:00
7da3fb9b18
Added basic Paper 1.13 and 1.14 support.
167 lines
4.9 KiB
Java
167 lines
4.9 KiB
Java
package me.cooljwb.vulnerabilitypatcher.modifiers;
|
|
|
|
import org.bukkit.Bukkit;
|
|
import org.bukkit.entity.Arrow;
|
|
import org.bukkit.entity.Player;
|
|
import org.bukkit.inventory.ItemStack;
|
|
import org.bukkit.projectiles.ProjectileSource;
|
|
|
|
import java.util.logging.Logger;
|
|
|
|
public class NBTModifier {
|
|
|
|
private Logger log = Logger.getLogger("Minecraft"); // Get the server logger.
|
|
private NBTModifier_1_13 nbt_1_13 = new NBTModifier_1_13();
|
|
private NBTModifier_1_14 nbt_1_14 = new NBTModifier_1_14();
|
|
public static String getVersion() {
|
|
switch(Bukkit.getVersion().substring((Bukkit.getVersion().indexOf(":") + 1), Bukkit.getVersion().indexOf(")")).trim()) {
|
|
case "1.13":
|
|
case "1.13.1":
|
|
case "1.13.2":
|
|
return "1.13";
|
|
case "1.14":
|
|
case "1.14.1":
|
|
case "1.14.2":
|
|
case "1.14.3":
|
|
case "1.14.4":
|
|
return "1.14";
|
|
default:
|
|
return "";
|
|
}
|
|
}
|
|
|
|
public String itemToString(ItemStack item) {
|
|
switch(getVersion()) {
|
|
case "1.13":
|
|
return nbt_1_13.itemToString(item);
|
|
case "1.14":
|
|
return nbt_1_14.itemToString(item);
|
|
default:
|
|
return "";
|
|
}
|
|
}
|
|
public boolean removePlayerdata(String player) {
|
|
switch(getVersion()) {
|
|
case "1.13":
|
|
return nbt_1_13.removePlayerdata(player);
|
|
case "1.14":
|
|
return nbt_1_14.removePlayerdata(player);
|
|
}
|
|
return false;
|
|
}
|
|
public void resetMeta(Player player, ItemStack item, boolean mainhand) {
|
|
switch(getVersion()) {
|
|
case "1.13":
|
|
nbt_1_13.resetMeta(player, item, mainhand);
|
|
break;
|
|
case "1.14":
|
|
nbt_1_14.resetMeta(player, item, mainhand);
|
|
break;
|
|
}
|
|
}
|
|
public boolean isPlayer(ProjectileSource source) {
|
|
switch(getVersion()) {
|
|
case "1.13":
|
|
return nbt_1_13.isPlayer(source);
|
|
case "1.14":
|
|
return nbt_1_14.isPlayer(source);
|
|
default:
|
|
return false;
|
|
}
|
|
}
|
|
public double getArrowDamage(Arrow arrow) {
|
|
switch(getVersion()) {
|
|
case "1.13":
|
|
return nbt_1_13.getArrowDamage(arrow);
|
|
case "1.14":
|
|
return nbt_1_14.getArrowDamage(arrow);
|
|
default:
|
|
return 0;
|
|
}
|
|
}
|
|
public void setArrowDamage(Arrow arrow, double amount) {
|
|
switch(getVersion()) {
|
|
case "1.13":
|
|
nbt_1_13.setArrowDamage(arrow, amount);
|
|
break;
|
|
case "1.14":
|
|
nbt_1_14.setArrowDamage(arrow, amount);
|
|
break;
|
|
}
|
|
}
|
|
|
|
public boolean isCrashItem(ItemStack item) {
|
|
switch(getVersion()) {
|
|
case "1.13":
|
|
return nbt_1_13.isCrashItem(item);
|
|
case "1.14":
|
|
return nbt_1_14.isCrashItem(item);
|
|
default:
|
|
return false;
|
|
}
|
|
}
|
|
public boolean containsCrashItem(ItemStack item) {
|
|
switch(getVersion()) {
|
|
case "1.13":
|
|
return nbt_1_13.containsCrashItem(item);
|
|
case "1.14":
|
|
return nbt_1_14.containsCrashItem(item);
|
|
default:
|
|
return false;
|
|
}
|
|
}
|
|
|
|
public boolean isDeathItem(ItemStack item) {
|
|
switch(getVersion()) {
|
|
case "1.13":
|
|
return nbt_1_13.isDeathItem(item);
|
|
case "1.14":
|
|
return nbt_1_14.isDeathItem(item);
|
|
default:
|
|
return false;
|
|
}
|
|
}
|
|
public boolean containsDeathItem(ItemStack item) {
|
|
switch(getVersion()) {
|
|
case "1.13":
|
|
return nbt_1_13.containsDeathItem(item);
|
|
case "1.14":
|
|
return nbt_1_14.containsDeathItem(item);
|
|
default:
|
|
return false;
|
|
}
|
|
}
|
|
|
|
public boolean isDisconnectItem(ItemStack item) {
|
|
switch(getVersion()) {
|
|
case "1.13":
|
|
return nbt_1_13.isDisconnectItem(item);
|
|
case "1.14":
|
|
return nbt_1_14.isDisconnectItem(item);
|
|
default:
|
|
return false;
|
|
}
|
|
}
|
|
public boolean containsDisconnectItem(ItemStack item) {
|
|
switch(getVersion()) {
|
|
case "1.13":
|
|
return nbt_1_13.containsDisconnectItem(item);
|
|
case "1.14":
|
|
return nbt_1_14.containsDisconnectItem(item);
|
|
default:
|
|
return false;
|
|
}
|
|
}
|
|
|
|
public boolean isDangerousEgg(ItemStack item) {
|
|
switch(getVersion()) {
|
|
case "1.13":
|
|
return nbt_1_13.isDangerousEgg(item);
|
|
case "1.14":
|
|
return nbt_1_14.isDangerousEgg(item);
|
|
default:
|
|
return false;
|
|
}
|
|
}
|
|
}
|