From 768b92749f769b94992ace988f435b005c26a64b Mon Sep 17 00:00:00 2001 From: Ali Moghnieh Date: Sun, 29 Jul 2018 17:39:32 +0100 Subject: [PATCH] update bukkit to 1.13-R0.1-SNAPSHOT. This commit just fixes compilation errors. --- .../com/earth2me/essentials/Enchantments.java | 10 ++--- .../essentials/EssentialsBlockListener.java | 8 +++- .../src/com/earth2me/essentials/ItemDb.java | 8 +++- .../earth2me/essentials/OfflinePlayer.java | 41 +++++++++++++++++++ .../essentials/commands/Commandspawner.java | 8 +++- .../essentials/craftbukkit/FakeWorld.java | 7 +++- .../essentials/storage/BukkitConstructor.java | 18 ++------ .../essentials/utils/LocationUtil.java | 21 ++++++++-- Essentials/src/plugin.yml | 1 + .../com/earth2me/essentials/FakeServer.java | 25 +++++++---- .../src/net/ess3/nms/SpawnerProvider.java | 8 +++- pom.xml | 2 +- 12 files changed, 121 insertions(+), 36 deletions(-) diff --git a/Essentials/src/com/earth2me/essentials/Enchantments.java b/Essentials/src/com/earth2me/essentials/Enchantments.java index d71233ee5..f8c957420 100644 --- a/Essentials/src/com/earth2me/essentials/Enchantments.java +++ b/Essentials/src/com/earth2me/essentials/Enchantments.java @@ -1,6 +1,8 @@ package com.earth2me.essentials; import com.earth2me.essentials.utils.NumberUtil; + +import org.bukkit.NamespacedKey; import org.bukkit.enchantments.Enchantment; import java.util.HashMap; @@ -200,11 +202,9 @@ public class Enchantments { } public static Enchantment getByName(String name) { - Enchantment enchantment; - if (NumberUtil.isInt(name)) { - enchantment = Enchantment.getById(Integer.parseInt(name)); - } else { - enchantment = Enchantment.getByName(name.toUpperCase(Locale.ENGLISH)); + Enchantment enchantment = Enchantment.getByKey(NamespacedKey.minecraft(name.toLowerCase())); + if (enchantment == null) { + enchantment = Enchantment.getByName(name.toUpperCase()); } if (enchantment == null) { enchantment = ENCHANTMENTS.get(name.toLowerCase(Locale.ENGLISH)); diff --git a/Essentials/src/com/earth2me/essentials/EssentialsBlockListener.java b/Essentials/src/com/earth2me/essentials/EssentialsBlockListener.java index 59b6c0f97..dc6e954ba 100644 --- a/Essentials/src/com/earth2me/essentials/EssentialsBlockListener.java +++ b/Essentials/src/com/earth2me/essentials/EssentialsBlockListener.java @@ -31,8 +31,14 @@ public class EssentialsBlockListener implements Listener { if (is == null) { return; } + Material MOB_SPAWNER; + try { + MOB_SPAWNER = Material.SPAWNER; + } catch (Exception e) { + MOB_SPAWNER = Material.valueOf("MOB_SPAWNER"); + } - if (is.getType() == Material.MOB_SPAWNER && event.getItemInHand() != null && event.getPlayer() != null && event.getItemInHand().getType() == Material.MOB_SPAWNER) { + if (is.getType() == MOB_SPAWNER && event.getItemInHand() != null && event.getPlayer() != null && event.getItemInHand().getType() == MOB_SPAWNER) { final BlockState blockState = event.getBlockPlaced().getState(); if (blockState instanceof CreatureSpawner) { final CreatureSpawner spawner = (CreatureSpawner) blockState; diff --git a/Essentials/src/com/earth2me/essentials/ItemDb.java b/Essentials/src/com/earth2me/essentials/ItemDb.java index 6f5ec31db0..b9d74510b 100644 --- a/Essentials/src/com/earth2me/essentials/ItemDb.java +++ b/Essentials/src/com/earth2me/essentials/ItemDb.java @@ -184,7 +184,13 @@ public class ItemDb implements IConf, net.ess3.api.IItemDb { } retval = ess.getServer().getUnsafe().modifyItemStack(retval, nbt); } - if (mat == Material.MOB_SPAWNER) { + Material MOB_SPAWNER; + try { + MOB_SPAWNER = Material.SPAWNER; + } catch (Exception e) { + MOB_SPAWNER = Material.valueOf("MOB_SPAWNER"); + } + if (mat == MOB_SPAWNER) { if (metaData == 0) metaData = EntityType.PIG.getTypeId(); try { retval = ess.getSpawnerProvider().setEntityType(retval, EntityType.fromId(metaData)); diff --git a/Essentials/src/com/earth2me/essentials/OfflinePlayer.java b/Essentials/src/com/earth2me/essentials/OfflinePlayer.java index ecf44956e..1d3ab0f71 100644 --- a/Essentials/src/com/earth2me/essentials/OfflinePlayer.java +++ b/Essentials/src/com/earth2me/essentials/OfflinePlayer.java @@ -9,6 +9,7 @@ import org.bukkit.attribute.Attribute; import org.bukkit.attribute.AttributeInstance; import org.bukkit.block.Block; import org.bukkit.block.PistonMoveReaction; +import org.bukkit.block.data.BlockData; import org.bukkit.conversations.Conversation; import org.bukkit.conversations.ConversationAbandonedEvent; import org.bukkit.entity.*; @@ -470,6 +471,11 @@ public class OfflinePlayer implements Player { public void sendBlockChange(Location lctn, Material mtrl, byte b) { } + @Override + public void sendBlockChange(Location loc, BlockData block) { + + } + @Override public void setLastDamageCause(EntityDamageEvent ede) { } @@ -639,6 +645,31 @@ public class OfflinePlayer implements Player { public void setPlayerListName(String name) { } + @Override + public String getPlayerListHeader() { + return null; + } + + @Override + public String getPlayerListFooter() { + return null; + } + + @Override + public void setPlayerListHeader(String header) { + + } + + @Override + public void setPlayerListFooter(String footer) { + + } + + @Override + public void setPlayerListHeaderFooter(String header, String footer) { + + } + @Override public String getPlayerListName() { return name; @@ -1191,6 +1222,16 @@ public class OfflinePlayer implements Player { public void setGliding(boolean b) { } + @Override + public boolean isSwimming() { + return false; + } + + @Override + public void setSwimming(boolean swimming) { + + } + @Override public void setAI(boolean b) { } diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandspawner.java b/Essentials/src/com/earth2me/essentials/commands/Commandspawner.java index 33704ece1..1e24f752e 100644 --- a/Essentials/src/com/earth2me/essentials/commands/Commandspawner.java +++ b/Essentials/src/com/earth2me/essentials/commands/Commandspawner.java @@ -28,7 +28,13 @@ public class Commandspawner extends EssentialsCommand { } final Location target = LocationUtil.getTarget(user.getBase()); - if (target == null || target.getBlock().getType() != Material.MOB_SPAWNER) { + Material MOB_SPAWNER; + try { + MOB_SPAWNER = Material.SPAWNER; + } catch (Exception e) { + MOB_SPAWNER = Material.valueOf("MOB_SPAWNER"); + } + if (target == null || target.getBlock().getType() != MOB_SPAWNER) { throw new Exception(tl("mobSpawnTarget")); } diff --git a/Essentials/src/com/earth2me/essentials/craftbukkit/FakeWorld.java b/Essentials/src/com/earth2me/essentials/craftbukkit/FakeWorld.java index d6810d023..1f2b0409d 100644 --- a/Essentials/src/com/earth2me/essentials/craftbukkit/FakeWorld.java +++ b/Essentials/src/com/earth2me/essentials/craftbukkit/FakeWorld.java @@ -154,6 +154,11 @@ public class FakeWorld implements World { throw new UnsupportedOperationException("Not supported yet."); } + @Override + public boolean generateTree(Location loc, TreeType type, BlockChangeDelegate delegate) { + return false; + } + @Override public LightningStrike strikeLightning(Location lctn) { throw new UnsupportedOperationException("Not supported yet."); @@ -703,4 +708,4 @@ public class FakeWorld implements World { public List getNearbyEntities(Location loc, double x, double y, double z) { throw new UnsupportedOperationException("Not supported yet."); } -} \ No newline at end of file +} diff --git a/Essentials/src/com/earth2me/essentials/storage/BukkitConstructor.java b/Essentials/src/com/earth2me/essentials/storage/BukkitConstructor.java index 959d5e3d6..f32aefd73 100644 --- a/Essentials/src/com/earth2me/essentials/storage/BukkitConstructor.java +++ b/Essentials/src/com/earth2me/essentials/storage/BukkitConstructor.java @@ -1,9 +1,11 @@ package com.earth2me.essentials.storage; +import com.earth2me.essentials.Enchantments; import com.earth2me.essentials.utils.NumberUtil; import org.bukkit.Bukkit; import org.bukkit.Location; import org.bukkit.Material; +import org.bukkit.NamespacedKey; import org.bukkit.World; import org.bukkit.enchantments.Enchantment; import org.bukkit.inventory.ItemStack; @@ -94,13 +96,7 @@ public class BukkitConstructor extends CustomClassLoaderConstructor { if (split3.length < 1) { continue; } - Enchantment enchantment; - if (NumberUtil.isInt(split3[0])) { - final int enchantId = Integer.parseInt(split3[0]); - enchantment = Enchantment.getById(enchantId); - } else { - enchantment = Enchantment.getByName(split3[0].toUpperCase(Locale.ENGLISH)); - } + Enchantment enchantment = Enchantments.getByName(split3[0]); if (enchantment == null) { continue; } @@ -128,13 +124,7 @@ public class BukkitConstructor extends CustomClassLoaderConstructor { if (split.length == 0) { return null; } - Enchantment enchant; - if (NumberUtil.isInt(split[0])) { - final int typeId = Integer.parseInt(split[0]); - enchant = Enchantment.getById(typeId); - } else { - enchant = Enchantment.getByName(split[0].toUpperCase(Locale.ENGLISH)); - } + Enchantment enchant = Enchantments.getByName(split[0]); if (enchant == null) { return null; } diff --git a/Essentials/src/com/earth2me/essentials/utils/LocationUtil.java b/Essentials/src/com/earth2me/essentials/utils/LocationUtil.java index 6fdfbe05d..ec616f043 100644 --- a/Essentials/src/com/earth2me/essentials/utils/LocationUtil.java +++ b/Essentials/src/com/earth2me/essentials/utils/LocationUtil.java @@ -30,7 +30,10 @@ public class LocationUtil { TRANSPARENT_MATERIALS.addAll(HOLLOW_MATERIALS); TRANSPARENT_MATERIALS.add(Material.WATER); - TRANSPARENT_MATERIALS.add(Material.FLOWING_WATER); + try { + TRANSPARENT_MATERIALS.add(Material.valueOf("FLOWING_WATER")); + } catch (Exception ignored) { // 1.13 WATER uses Levelled + } } public static final int RADIUS = 3; @@ -109,7 +112,6 @@ public class LocationUtil { switch (below.getType()) { case LAVA: - case FLOWING_LAVA: case FIRE: case BLACK_BED: case BLUE_BED: @@ -129,8 +131,19 @@ public class LocationUtil { case YELLOW_BED: return true; } - - if (world.getBlockAt(x, y, z).getType() == Material.PORTAL) { + try { + if (below.getType() == Material.valueOf("FLOWING_LAVA")) { + return true; + } + } catch (Exception ignored) { // 1.13 LAVA uses Levelled + } + Material PORTAL; + try { + PORTAL = Material.NETHER_PORTAL; + } catch (Exception ignored) { + PORTAL = Material.valueOf("PORTAL"); + } + if (world.getBlockAt(x, y, z).getType() == PORTAL) { return true; } diff --git a/Essentials/src/plugin.yml b/Essentials/src/plugin.yml index 03c1374a7..0117f30a9 100644 --- a/Essentials/src/plugin.yml +++ b/Essentials/src/plugin.yml @@ -7,6 +7,7 @@ website: http://tiny.cc/EssentialsCommands description: Provides an essential, core set of commands for Bukkit. softdepend: [Vault] authors: [Zenexer, ementalo, Aelux, Brettflan, KimKandor, snowleo, ceulemans, Xeology, KHobbits, md_5, Iaccidentally, drtshock, vemacs, SupaHam, md678685] +api-version: 1.13 commands: afk: description: Marks you as away-from-keyboard. diff --git a/Essentials/test/com/earth2me/essentials/FakeServer.java b/Essentials/test/com/earth2me/essentials/FakeServer.java index 20b0d0fad..75078fa3c 100644 --- a/Essentials/test/com/earth2me/essentials/FakeServer.java +++ b/Essentials/test/com/earth2me/essentials/FakeServer.java @@ -45,6 +45,7 @@ import java.io.UnsupportedEncodingException; import java.util.*; import java.util.concurrent.Callable; import java.util.concurrent.Future; +import java.util.function.Consumer; import java.util.logging.Logger; @@ -207,11 +208,6 @@ public class FakeServer implements Server { throw new UnsupportedOperationException("Not supported yet."); } - @Override - public void cancelAllTasks() { - throw new UnsupportedOperationException("Not supported yet."); - } - @Override public boolean isCurrentlyRunning(int i) { throw new UnsupportedOperationException("Not supported yet."); @@ -971,8 +967,23 @@ public class FakeServer implements Server { } @Override - public BlockData createData(Material material) { - throw new UnsupportedOperationException("Not supported yet."); + public BlockData createBlockData(Material material) { + return null; + } + + @Override + public BlockData createBlockData(Material material, Consumer consumer) { + return null; + } + + @Override + public BlockData createBlockData(String data) throws IllegalArgumentException { + return null; + } + + @Override + public BlockData createBlockData(Material material, String data) throws IllegalArgumentException { + return null; } @Override diff --git a/nms/NMSProvider/src/net/ess3/nms/SpawnerProvider.java b/nms/NMSProvider/src/net/ess3/nms/SpawnerProvider.java index 9f74d9f4f..702fbe7d5 100644 --- a/nms/NMSProvider/src/net/ess3/nms/SpawnerProvider.java +++ b/nms/NMSProvider/src/net/ess3/nms/SpawnerProvider.java @@ -31,7 +31,13 @@ public abstract class SpawnerProvider implements Provider { public boolean tryProvider() { try { EntityType type = EntityType.CREEPER; - ItemStack is = setEntityType(new ItemStack(Material.MOB_SPAWNER), type); + Material MOB_SPAWNER; + try { + MOB_SPAWNER = Material.SPAWNER; + } catch (Exception e) { + MOB_SPAWNER = Material.valueOf("MOB_SPAWNER"); + } + ItemStack is = setEntityType(new ItemStack(MOB_SPAWNER), type); EntityType readType = getEntityType(is); return type == readType; } catch (Throwable t) { diff --git a/pom.xml b/pom.xml index 6c81a14b1..c7693b8f3 100644 --- a/pom.xml +++ b/pom.xml @@ -53,7 +53,7 @@ org.bukkit bukkit - 18w02a-R0.1-SNAPSHOT + 1.13-R0.1-SNAPSHOT provided