From fd16e76a68c68d86ef60da51354f1fc8ebe251cd Mon Sep 17 00:00:00 2001 From: furplag Date: Fri, 29 Sep 2023 14:04:18 +0900 Subject: [PATCH] update for Spigot 1.20.2 --- build.gradle.kts | 2 +- .../theprogrammersworld/herobrine/AI/AICore.java | 2 +- .../theprogrammersworld/herobrine/Herobrine.java | 2 +- .../herobrine/NPC/Entity/HumanEntity.java | 7 ++++--- .../herobrine/NPC/Entity/HumanNPC.java | 15 +++++++-------- .../herobrine/NPC/NMS/NMSServer.java | 2 +- .../herobrine/NPC/NMS/NMSWorld.java | 2 +- .../herobrine/NPC/NPCCore.java | 2 +- .../herobrine/NPC/Network/NetworkCore.java | 7 ++++++- .../herobrine/NPC/Network/NetworkHandler.java | 10 ++++------ .../herobrine/NPC/Network/NetworkUtils.java | 2 +- .../herobrine/entity/EntityManager.java | 4 ++-- .../herobrine/listeners/PlayerListener.java | 2 +- src/main/resources/plugin.yml | 2 +- 14 files changed, 32 insertions(+), 29 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index f2a338c..1e985d4 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,4 +1,4 @@ -val mc_version="1.20" +val mc_version="1.20.2" plugins { `java-library` diff --git a/src/main/java/net/theprogrammersworld/herobrine/AI/AICore.java b/src/main/java/net/theprogrammersworld/herobrine/AI/AICore.java index 222216c..c40e5e5 100644 --- a/src/main/java/net/theprogrammersworld/herobrine/AI/AICore.java +++ b/src/main/java/net/theprogrammersworld/herobrine/AI/AICore.java @@ -9,7 +9,7 @@ import org.bukkit.Effect; import org.bukkit.Location; import org.bukkit.Material; import org.bukkit.World; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftPlayer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftPlayer; import org.bukkit.entity.Player; import org.bukkit.inventory.Inventory; import org.bukkit.inventory.ItemStack; diff --git a/src/main/java/net/theprogrammersworld/herobrine/Herobrine.java b/src/main/java/net/theprogrammersworld/herobrine/Herobrine.java index 5c4c799..1f41fcb 100644 --- a/src/main/java/net/theprogrammersworld/herobrine/Herobrine.java +++ b/src/main/java/net/theprogrammersworld/herobrine/Herobrine.java @@ -83,7 +83,7 @@ public class Herobrine extends JavaPlugin implements Listener { // If it is not, print an error message and disable the plugin. if (continueWithEnable) { try { - Class.forName("org.bukkit.craftbukkit.v1_20_R1.CraftArt"); + Class.forName("org.bukkit.craftbukkit.v1_20_R2.CraftArt"); } catch (ClassNotFoundException e) { Bukkit.getServer().getConsoleSender().sendMessage(ChatColor.RED + "This version of Herobrine is not " + "compatible with this server's Spigot version and will be disabled."); diff --git a/src/main/java/net/theprogrammersworld/herobrine/NPC/Entity/HumanEntity.java b/src/main/java/net/theprogrammersworld/herobrine/NPC/Entity/HumanEntity.java index 99bd55f..db137ed 100644 --- a/src/main/java/net/theprogrammersworld/herobrine/NPC/Entity/HumanEntity.java +++ b/src/main/java/net/theprogrammersworld/herobrine/NPC/Entity/HumanEntity.java @@ -1,11 +1,12 @@ package net.theprogrammersworld.herobrine.NPC.Entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftPlayer; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftPlayer; import com.mojang.authlib.GameProfile; +import net.minecraft.server.level.ClientInformation; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.MoverType; import net.minecraft.world.level.GameType; @@ -19,7 +20,7 @@ public class HumanEntity extends ServerPlayer { private CraftPlayer cplayer = null; public HumanEntity(final NPCCore npcCore, final NMSWorld world, final GameProfile s) { - super(npcCore.getServer().getMCServer(), world.getWorldServer(), s); + super(npcCore.getServer().getMCServer(), world.getWorldServer(), s, ClientInformation.createDefault()); this.setGameMode(GameType.SURVIVAL); diff --git a/src/main/java/net/theprogrammersworld/herobrine/NPC/Entity/HumanNPC.java b/src/main/java/net/theprogrammersworld/herobrine/NPC/Entity/HumanNPC.java index 29ab703..62c6dca 100644 --- a/src/main/java/net/theprogrammersworld/herobrine/NPC/Entity/HumanNPC.java +++ b/src/main/java/net/theprogrammersworld/herobrine/NPC/Entity/HumanNPC.java @@ -1,9 +1,5 @@ package net.theprogrammersworld.herobrine.NPC.Entity; -import net.minecraft.server.level.ServerPlayer; -import net.minecraft.world.InteractionHand; -import net.theprogrammersworld.herobrine.Herobrine; - import org.bukkit.Bukkit; import org.bukkit.Location; import org.bukkit.entity.LivingEntity; @@ -11,6 +7,9 @@ import org.bukkit.entity.Player; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.PlayerInventory; +import net.minecraft.world.InteractionHand; +import net.theprogrammersworld.herobrine.Herobrine; + public class HumanNPC { private HumanEntity entity; @@ -25,7 +24,7 @@ public class HumanNPC { return this.id; } - public ServerPlayer getEntity() { + public HumanEntity getEntity() { return this.entity; } @@ -44,7 +43,7 @@ public class HumanNPC { public void setItemInHand(ItemStack item) { if (item != null) { - ((org.bukkit.entity.HumanEntity) getEntity().getBukkitEntity()).getInventory().setItemInMainHand(item); + getEntity().getBukkitEntity().getInventory().setItemInMainHand(item); } } @@ -86,7 +85,7 @@ public class HumanNPC { } public void setYaw(float yaw) { - ((ServerPlayer) getEntity()).setYRot(yaw); + getEntity().setYRot(yaw); } public void lookAtPoint(Location point) { @@ -118,7 +117,7 @@ public class HumanNPC { } public void setYawA(float yaw) { - ((ServerPlayer) getEntity()).setYRot(yaw); + getEntity().setYRot(yaw); } public org.bukkit.entity.Entity getBukkitEntity() { diff --git a/src/main/java/net/theprogrammersworld/herobrine/NPC/NMS/NMSServer.java b/src/main/java/net/theprogrammersworld/herobrine/NPC/NMS/NMSServer.java index 1add475..e44e4ec 100644 --- a/src/main/java/net/theprogrammersworld/herobrine/NPC/NMS/NMSServer.java +++ b/src/main/java/net/theprogrammersworld/herobrine/NPC/NMS/NMSServer.java @@ -12,7 +12,7 @@ import net.minecraft.server.MinecraftServer; import org.bukkit.Bukkit; import org.bukkit.Server; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; public class NMSServer { diff --git a/src/main/java/net/theprogrammersworld/herobrine/NPC/NMS/NMSWorld.java b/src/main/java/net/theprogrammersworld/herobrine/NPC/NMS/NMSWorld.java index 7b6c0fc..5e69856 100644 --- a/src/main/java/net/theprogrammersworld/herobrine/NPC/NMS/NMSWorld.java +++ b/src/main/java/net/theprogrammersworld/herobrine/NPC/NMS/NMSWorld.java @@ -8,7 +8,7 @@ import net.minecraft.server.level.ChunkMap; import net.minecraft.server.level.ServerLevel; import org.bukkit.World; -import org.bukkit.craftbukkit.v1_20_R1.CraftWorld; +import org.bukkit.craftbukkit.v1_20_R2.CraftWorld; public class NMSWorld { diff --git a/src/main/java/net/theprogrammersworld/herobrine/NPC/NPCCore.java b/src/main/java/net/theprogrammersworld/herobrine/NPC/NPCCore.java index d553360..64dc937 100644 --- a/src/main/java/net/theprogrammersworld/herobrine/NPC/NPCCore.java +++ b/src/main/java/net/theprogrammersworld/herobrine/NPC/NPCCore.java @@ -43,7 +43,7 @@ public class NPCCore { "eyJ0aW1lc3RhbXAiOjE0MjE0ODczMzk3MTMsInByb2ZpbGVJZCI6ImY4NGM2YTc5MGE0ZTQ1ZTA4NzliY2Q0OWViZDRjNGUyIiwicHJvZmlsZU5hbWUiOiJIZXJvYnJpbmUiLCJpc1B1YmxpYyI6dHJ1ZSwidGV4dHVyZXMiOnsiU0tJTiI6eyJ1cmwiOiJodHRwOi8vdGV4dHVyZXMubWluZWNyYWZ0Lm5ldC90ZXh0dXJlLzk4YjdjYTNjN2QzMTRhNjFhYmVkOGZjMThkNzk3ZmMzMGI2ZWZjODQ0NTQyNWM0ZTI1MDk5N2U1MmU2Y2IifX19", "Edb1R3vm2NHUGyTPaOdXNQY9p5/Ez4xButUGY3tNKIJAzjJM5nQNrq54qyFhSZFVwIP6aM4Ivqmdb2AamXNeN0KgaaU/C514N+cUZNWdW5iiycPytfh7a6EsWXV4hCC9B2FoLkbXuxs/KAbKORtwNfFhQupAsmn9yP00e2c3ZQmS18LWwFg0vzFqvp4HvzJHqY/cTqUxdlSFDrQe/4rATe6Yx6v4zbZN2sHbSL+8AwlDDuP2Xr4SS6f8nABOxjSTlWMn6bToAYiymD+KUPoO0kQJ0Uw/pVXgWHYjQeM4BYf/FAxe8Bf1cP8S7VKueULkOxqIjXAp85uqKkU7dR/s4M4yHm6fhCOCLSMv6hi5ewTaFNYyhK+NXPftFqHcOxA1LbrjOe6NyphF/2FI79n90hagxJpWwNPz3/8I5rnGbYwBZPTsTnD8PszgQTNuWSuvZwGIXPIp9zb90xuU7g7VNWjzPVoOHfRNExEs7Dn9pG8CIA/m/a8koWW3pkbP/AMMWnwgHCr/peGdvF5fN+hJwVdpbfC9sJfzGwA7AgXG/6yqhl1U7YAp/aCVM9bZ94sav+kQghvN41jqOwy4F4i/swc7R4Fx2w5HFxVY3j7FChG7iuhqjUclm79YNhTG0lBQLiZbN5FmC9QgrNHRKlzgSZrXHWoG3YXFSqfn4J+Om9w="); - profile.getProperties().put(textures.getName(), textures); + profile.getProperties().put(textures.name(), textures); return profile; } diff --git a/src/main/java/net/theprogrammersworld/herobrine/NPC/Network/NetworkCore.java b/src/main/java/net/theprogrammersworld/herobrine/NPC/Network/NetworkCore.java index 4c727b4..de826b8 100644 --- a/src/main/java/net/theprogrammersworld/herobrine/NPC/Network/NetworkCore.java +++ b/src/main/java/net/theprogrammersworld/herobrine/NPC/Network/NetworkCore.java @@ -1,14 +1,19 @@ package net.theprogrammersworld.herobrine.NPC.Network; -import net.minecraft.network.protocol.PacketFlow; +import io.netty.channel.embedded.EmbeddedChannel; import net.minecraft.network.Connection; +import net.minecraft.network.PacketListener; +import net.minecraft.network.protocol.PacketFlow; public class NetworkCore extends Connection { public NetworkCore() { super(PacketFlow.SERVERBOUND); + channel = new EmbeddedChannel(); } + @Override public void setListener(PacketListener packetListener) {} + @Override public void tick() { diff --git a/src/main/java/net/theprogrammersworld/herobrine/NPC/Network/NetworkHandler.java b/src/main/java/net/theprogrammersworld/herobrine/NPC/Network/NetworkHandler.java index a40357f..2732bf4 100644 --- a/src/main/java/net/theprogrammersworld/herobrine/NPC/Network/NetworkHandler.java +++ b/src/main/java/net/theprogrammersworld/herobrine/NPC/Network/NetworkHandler.java @@ -1,19 +1,17 @@ package net.theprogrammersworld.herobrine.NPC.Network; -import net.minecraft.server.level.ServerPlayer; import net.minecraft.network.protocol.Packet; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.server.network.CommonListenerCookie; import net.minecraft.server.network.ServerGamePacketListenerImpl; import net.theprogrammersworld.herobrine.NPC.NPCCore; public class NetworkHandler extends ServerGamePacketListenerImpl { public NetworkHandler(final NPCCore npcCore, final ServerPlayer entityPlayer) { - super(npcCore.getServer().getMCServer(), npcCore.getNetworkCore(), entityPlayer); + super(npcCore.getServer().getMCServer(), npcCore.getNetworkCore(), entityPlayer, CommonListenerCookie.createInitial(entityPlayer.getGameProfile())); } @Override - public void send(final Packet packet) { - - } - + public void send(final Packet packet) {} } \ No newline at end of file diff --git a/src/main/java/net/theprogrammersworld/herobrine/NPC/Network/NetworkUtils.java b/src/main/java/net/theprogrammersworld/herobrine/NPC/Network/NetworkUtils.java index d46eda9..dc15a81 100644 --- a/src/main/java/net/theprogrammersworld/herobrine/NPC/Network/NetworkUtils.java +++ b/src/main/java/net/theprogrammersworld/herobrine/NPC/Network/NetworkUtils.java @@ -5,7 +5,7 @@ import net.minecraft.network.protocol.Packet; import org.bukkit.Bukkit; import org.bukkit.Location; import org.bukkit.World; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftPlayer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftPlayer; import org.bukkit.entity.Player; import org.bukkit.inventory.ItemStack; diff --git a/src/main/java/net/theprogrammersworld/herobrine/entity/EntityManager.java b/src/main/java/net/theprogrammersworld/herobrine/entity/EntityManager.java index debd2fe..2485918 100644 --- a/src/main/java/net/theprogrammersworld/herobrine/entity/EntityManager.java +++ b/src/main/java/net/theprogrammersworld/herobrine/entity/EntityManager.java @@ -14,7 +14,7 @@ public class EntityManager { public void spawnCustomZombie(Location loc,MobType mbt){ World world = loc.getWorld(); - net.minecraft.world.level.Level mcWorld = ((org.bukkit.craftbukkit.v1_20_R1.CraftWorld) world).getHandle(); + net.minecraft.world.level.Level mcWorld = ((org.bukkit.craftbukkit.v1_20_R2.CraftWorld) world).getHandle(); CustomZombie zmb = new CustomZombie(mcWorld,loc,mbt); mcWorld.addFreshEntity(zmb, SpawnReason.CUSTOM); mobList.put(Integer.valueOf(zmb.getBukkitEntity().getEntityId()),zmb); @@ -24,7 +24,7 @@ public class EntityManager { public void spawnCustomSkeleton(Location loc,MobType mbt){ World world = loc.getWorld(); - net.minecraft.world.level.Level mcWorld = ((org.bukkit.craftbukkit.v1_20_R1.CraftWorld) world).getHandle(); + net.minecraft.world.level.Level mcWorld = ((org.bukkit.craftbukkit.v1_20_R2.CraftWorld) world).getHandle(); CustomSkeleton zmb = new CustomSkeleton(mcWorld,loc,mbt); mcWorld.addFreshEntity(zmb, SpawnReason.CUSTOM); mobList.put(Integer.valueOf(zmb.getBukkitEntity().getEntityId()), zmb); diff --git a/src/main/java/net/theprogrammersworld/herobrine/listeners/PlayerListener.java b/src/main/java/net/theprogrammersworld/herobrine/listeners/PlayerListener.java index 35aeefb..6ed2d12 100644 --- a/src/main/java/net/theprogrammersworld/herobrine/listeners/PlayerListener.java +++ b/src/main/java/net/theprogrammersworld/herobrine/listeners/PlayerListener.java @@ -12,7 +12,7 @@ import org.bukkit.Location; import org.bukkit.Material; import org.bukkit.World; import org.bukkit.block.Jukebox; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftPlayer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftPlayer; import org.bukkit.entity.LivingEntity; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index 78a90a1..1daad69 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -1,6 +1,6 @@ name: Herobrine main: net.theprogrammersworld.herobrine.Herobrine -version: 2.4.3-SNAPSHOT +version: 2.4.4-SNAPSHOT description: "Bring Herobrine to your Spigot-based Minecraft server!" website: https://www.theprogrammersworld.net api-version: '1.20'