diff --git a/dist/pom.xml b/dist/pom.xml index 659994e04..ebadd2ec2 100644 --- a/dist/pom.xml +++ b/dist/pom.xml @@ -5,7 +5,7 @@ net.citizensnpcs citizens-parent - 2.0.32-SNAPSHOT + 2.0.33-SNAPSHOT citizens pom @@ -93,7 +93,7 @@ ${project.groupId} - citizens-v1_20_R1 + citizens-v1_20_R2 ${project.version} jar compile @@ -189,7 +189,7 @@ ${project.groupId} - citizens-v1_20_R1 + citizens-v1_20_R2 ${project.version} jar compile @@ -208,7 +208,7 @@ ${project.groupId} - citizens-v1_20_R1 + citizens-v1_20_R2 ${project.version} jar compile diff --git a/main/pom.xml b/main/pom.xml index b9b068c37..b507edd8b 100644 --- a/main/pom.xml +++ b/main/pom.xml @@ -4,12 +4,12 @@ net.citizensnpcs citizens-parent - 2.0.32-SNAPSHOT + 2.0.33-SNAPSHOT citizens-main UTF-8 - 1.20.1-R0.1-SNAPSHOT + 1.20.2-R0.1-SNAPSHOT 2.11.2 ${project.version} 7.1.0-SNAPSHOT diff --git a/main/src/main/java/net/citizensnpcs/Citizens.java b/main/src/main/java/net/citizensnpcs/Citizens.java index 3e761979f..83d33672f 100644 --- a/main/src/main/java/net/citizensnpcs/Citizens.java +++ b/main/src/main/java/net/citizensnpcs/Citizens.java @@ -30,7 +30,6 @@ import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.google.common.io.Files; import com.mojang.authlib.GameProfile; -import com.mojang.authlib.properties.Property; import ch.ethz.globis.phtree.PhTreeHelper; import net.byteflux.libby.BukkitLibraryManager; @@ -64,6 +63,7 @@ import net.citizensnpcs.api.trait.TraitInfo; import net.citizensnpcs.api.util.Messaging; import net.citizensnpcs.api.util.NBTStorage; import net.citizensnpcs.api.util.Placeholders; +import net.citizensnpcs.api.util.SpigotUtil; import net.citizensnpcs.api.util.Storage; import net.citizensnpcs.api.util.Translator; import net.citizensnpcs.api.util.YamlStorage; @@ -87,6 +87,7 @@ import net.citizensnpcs.trait.ShopTrait; import net.citizensnpcs.util.Messages; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.PlayerUpdateTask; +import net.citizensnpcs.util.SkinProperty; import net.citizensnpcs.util.Util; import net.milkbowl.vault.economy.Economy; @@ -108,9 +109,8 @@ public class Citizens extends JavaPlugin implements CitizensPlugin { @Override public String getTexture(SkullMeta meta) { - GameProfile profile = NMS.getProfile(meta); - return profile == null ? null - : Iterables.getFirst(profile.getProperties().get("textures"), new Property("", "")).getValue(); + SkinProperty sp = SkinProperty.fromMojangProfile(NMS.getProfile(meta)); + return sp == null ? null : sp.value; } @Override @@ -134,7 +134,8 @@ public class Citizens extends JavaPlugin implements CitizensPlugin { profile = new GameProfile(UUID.randomUUID(), null); } } - profile.getProperties().put("textures", new Property("textures", texture)); + profile.getProperties().put("textures", + new com.mojang.authlib.properties.Property("textures", texture, null)); NMS.setProfile(meta, profile); } @@ -382,7 +383,7 @@ public class Citizens extends JavaPlugin implements CitizensPlugin { config = new Settings(getDataFolder()); setupTranslator(); // Disable if the server is not using the compatible Minecraft version - String mcVersion = Util.getMinecraftRevision(); + String mcVersion = SpigotUtil.getMinecraftPackage(); try { NMS.loadBridge(mcVersion); } catch (Exception e) { diff --git a/main/src/main/java/net/citizensnpcs/ProtocolLibListener.java b/main/src/main/java/net/citizensnpcs/ProtocolLibListener.java index 6ca83b641..66ce076ba 100644 --- a/main/src/main/java/net/citizensnpcs/ProtocolLibListener.java +++ b/main/src/main/java/net/citizensnpcs/ProtocolLibListener.java @@ -52,6 +52,7 @@ import net.citizensnpcs.trait.MirrorTrait; import net.citizensnpcs.trait.RotationTrait; import net.citizensnpcs.trait.RotationTrait.PacketRotationSession; import net.citizensnpcs.util.NMS; +import net.citizensnpcs.util.SkinProperty; public class ProtocolLibListener implements Listener { private final Class flagsClass; @@ -152,9 +153,10 @@ public class ProtocolLibListener implements Listener { npcInfo.getProfile().getProperties().clear(); for (String key : playerProfile.getProperties().keySet()) { npcInfo.getProfile().getProperties().putAll(key, - Iterables.transform(playerProfile.getProperties().get(key), - skin -> new WrappedSignedProperty(skin.getName(), skin.getValue(), - skin.getSignature()))); + Iterables.transform(playerProfile.getProperties().get(key), skin -> { + SkinProperty sp = SkinProperty.fromMojang(skin); + return new WrappedSignedProperty(sp.name, sp.value, sp.signature); + })); } changed = true; } @@ -219,7 +221,6 @@ public class ProtocolLibListener implements Listener { Messaging.debug("OVERWRITTEN " + type + " " + packet.getHandle()); } }); - } private NPC getNPCFromPacket(PacketEvent event) { diff --git a/main/src/main/java/net/citizensnpcs/Settings.java b/main/src/main/java/net/citizensnpcs/Settings.java index 6df4b3b50..b11bc3872 100644 --- a/main/src/main/java/net/citizensnpcs/Settings.java +++ b/main/src/main/java/net/citizensnpcs/Settings.java @@ -183,6 +183,9 @@ public class Settings { KEEP_CHUNKS_LOADED("Whether to keep NPC chunks loaded", "npc.chunks.always-keep-loaded", false), LOCALE("Controls translation files - defaults to your system language, set to en if English required", "general.translation.locale", ""), + MAX_CONTROLLABLE_FLIGHT_SPEED( + "The maximum flying speed that controllable NPCs can reach, in Minecraft velocity units", + "npc.controllable.max-flying-speed", 0.75), MAX_CONTROLLABLE_GROUND_SPEED("The maximum speed that controllable NPCs can reach, in Minecraft velocity units", "npc.controllable.max-ground-speed", 0.5), MAX_NPC_LIMIT_CHECKS( @@ -267,7 +270,7 @@ public class Settings { "Whether to use the Citizens pathfinder instead of the Minecraft pathfinder
Much more flexible, but may have different performance characteristics", "npc.pathfinding.use-new-finder", false), USE_SCOREBOARD_TEAMS("npc.scoreboard-teams.enable", true), - WARN_ON_RELOAD("general.reload-warning-enabled", true); + WARN_ON_RELOAD("general.reload-warning-enabled", true),; protected String comments; private Duration duration; diff --git a/main/src/main/java/net/citizensnpcs/commands/NPCCommands.java b/main/src/main/java/net/citizensnpcs/commands/NPCCommands.java index f470cf116..4bd234a5c 100644 --- a/main/src/main/java/net/citizensnpcs/commands/NPCCommands.java +++ b/main/src/main/java/net/citizensnpcs/commands/NPCCommands.java @@ -473,21 +473,25 @@ public class NPCCommands { } else if (action.equalsIgnoreCase("add")) { if (args.argsLength() == 2) throw new CommandUsageException(); + if (args.hasFlag('o') && !sender.hasPermission("citizens.admin")) throw new NoPermissionsException(); + String command = args.getJoinedStrings(2); CommandTrait.Hand hand = args.hasFlag('l') && args.hasFlag('r') ? CommandTrait.Hand.BOTH : args.hasFlag('l') ? CommandTrait.Hand.LEFT : CommandTrait.Hand.RIGHT; if (args.hasFlag('s') && hand != CommandTrait.Hand.BOTH) { hand = hand == CommandTrait.Hand.LEFT ? CommandTrait.Hand.SHIFT_LEFT : CommandTrait.Hand.SHIFT_RIGHT; } + List perms = Lists.newArrayList(); if (permissions != null) { perms.addAll(Arrays.asList(permissions.split(","))); } - if (command.toLowerCase().startsWith("npc select")) { + + if (command.toLowerCase().startsWith("npc select")) throw new CommandException("npc select not currently supported within commands. Use --id instead"); - } + try { int id = commands.addCommand(new NPCCommandBuilder(command, hand).addPerms(perms) .player(args.hasFlag('p') || args.hasFlag('o')).op(args.hasFlag('o')).cooldown(cooldown) @@ -506,7 +510,7 @@ public class NPCCommands { throw new CommandException(Messages.NPC_COMMAND_INVALID_ERROR_MESSAGE, Util.listValuesPretty(CommandTraitError.values())); - commands.clearHistory(which, args.argsLength() > 3 ? args.getString(3) : args.getString(3)); + commands.clearHistory(which, args.argsLength() > 3 ? args.getString(3) : null); Messaging.send(sender, Messages.NPC_COMMAND_ERRORS_CLEARED, Util.prettyEnum(which)); } else if (action.equalsIgnoreCase("sequential")) { commands.setExecutionMode(commands.getExecutionMode() == ExecutionMode.SEQUENTIAL ? ExecutionMode.LINEAR @@ -990,16 +994,23 @@ public class NPCCommands { @Command( aliases = { "npc" }, - usage = "follow (player name|NPC id) (-p[rotect])", + usage = "follow (player name|NPC id) (-p[rotect]) (--margin [margin])", desc = "Toggles NPC following you", flags = "p", modifiers = { "follow" }, min = 1, max = 2, permission = "citizens.npc.follow") - public void follow(CommandContext args, CommandSender sender, NPC npc) throws CommandException { + public void follow(CommandContext args, CommandSender sender, NPC npc, @Flag("margin") Double margin) + throws CommandException { boolean protect = args.hasFlag('p'); FollowTrait trait = npc.getOrAddTrait(FollowTrait.class); + if (margin != null) { + trait.setFollowingMargin(margin); + Messaging.sendTr(sender, Messages.FOLLOW_MARGIN_SET, npc.getName(), margin); + return; + } + trait.setProtect(protect); String name = sender.getName(); if (args.argsLength() > 1) { @@ -2092,14 +2103,15 @@ public class NPCCommands { @Command( aliases = { "npc" }, - usage = "pathto me | here | cursor | [x] [y] [z]", + usage = "pathto me | here | cursor | [x] [y] [z] (--margin [distance margin])", desc = "Starts pathfinding to a certain location", modifiers = { "pathto" }, min = 2, max = 4, permission = "citizens.npc.pathto") public void pathto(CommandContext args, CommandSender sender, NPC npc, - @Arg(value = 1, completions = { "me", "here", "cursor" }) String option) throws CommandException { + @Arg(value = 1, completions = { "me", "here", "cursor" }) String option, @Flag("margin") Double margin) + throws CommandException { Location loc = npc.getStoredLocation(); if (args.argsLength() == 2) { if ((option.equalsIgnoreCase("me") || option.equalsIgnoreCase("here"))) { @@ -2115,6 +2127,9 @@ public class NPCCommands { loc.setZ(args.getDouble(3)); } npc.getNavigator().setTarget(loc); + if (margin != null) { + npc.getNavigator().getLocalParameters().distanceMargin(margin); + } } @Command( @@ -2816,13 +2831,13 @@ public class NPCCommands { return; } else if (url != null || file != null) { - Messaging.sendTr(sender, Messages.FETCHING_SKIN, file); + Messaging.sendTr(sender, Messages.FETCHING_SKIN, url == null ? file : url); Bukkit.getScheduler().runTaskAsynchronously(CitizensAPI.getPlugin(), () -> { try { JSONObject data = null; if (file != null) { File skinsFolder = new File(CitizensAPI.getDataFolder(), "skins"); - File skin = new File(skinsFolder, file); + File skin = new File(skinsFolder, Placeholders.replace(file, sender, npc)); if (!skin.exists() || !skin.isFile() || skin.isHidden() || !skin.getParentFile().equals(skinsFolder)) { Bukkit.getScheduler().runTask(CitizensAPI.getPlugin(), @@ -2832,8 +2847,10 @@ public class NPCCommands { data = MojangSkinGenerator.generateFromPNG(Files.readAllBytes(skin.toPath()), args.hasFlag('s')); } else { - data = MojangSkinGenerator.generateFromURL(url, args.hasFlag('s')); + data = MojangSkinGenerator.generateFromURL(Placeholders.replace(url, sender, npc), + args.hasFlag('s')); } + String uuid = (String) data.get("uuid"); JSONObject texture = (JSONObject) data.get("texture"); String textureEncoded = (String) texture.get("value"); diff --git a/main/src/main/java/net/citizensnpcs/npc/profile/ProfileFetchThread.java b/main/src/main/java/net/citizensnpcs/npc/profile/ProfileFetchThread.java index 00008a005..a75d3f23d 100644 --- a/main/src/main/java/net/citizensnpcs/npc/profile/ProfileFetchThread.java +++ b/main/src/main/java/net/citizensnpcs/npc/profile/ProfileFetchThread.java @@ -14,9 +14,7 @@ import org.bukkit.Bukkit; import com.google.common.base.Preconditions; import com.google.common.base.Throwables; -import com.mojang.authlib.Agent; import com.mojang.authlib.GameProfile; -import com.mojang.authlib.GameProfileRepository; import com.mojang.authlib.ProfileLookupCallback; import net.citizensnpcs.api.CitizensAPI; @@ -122,8 +120,6 @@ class ProfileFetchThread implements Runnable { private void fetchRequests(final Collection requests) { Preconditions.checkNotNull(requests); - final GameProfileRepository repo = NMS.getGameProfileRepository(); - String[] playerNames = new String[requests.size()]; int i = 0; @@ -131,16 +127,20 @@ class ProfileFetchThread implements Runnable { playerNames[i++] = request.getPlayerName(); } - repo.findProfilesByNames(playerNames, Agent.MINECRAFT, new ProfileLookupCallback() { - @Override + NMS.findProfilesByNames(playerNames, new ProfileLookupCallback() { + @SuppressWarnings("unused") public void onProfileLookupFailed(GameProfile profile, Exception e) { + onProfileLookupFailed(profile.getName(), e); + } + + @Override + public void onProfileLookupFailed(String profileName, Exception e) { if (Messaging.isDebugging()) { - Messaging.debug( - "Profile lookup for player '" + profile.getName() + "' failed: " + getExceptionMsg(e)); + Messaging.debug("Profile lookup for player '" + profileName + "' failed: " + getExceptionMsg(e)); Messaging.debug(Throwables.getStackTraceAsString(e)); } - ProfileRequest request = findRequest(profile.getName(), requests); + ProfileRequest request = findRequest(profileName, requests); if (request == null) return; diff --git a/main/src/main/java/net/citizensnpcs/npc/skin/Skin.java b/main/src/main/java/net/citizensnpcs/npc/skin/Skin.java index 3b7317731..c8cfe1eb4 100644 --- a/main/src/main/java/net/citizensnpcs/npc/skin/Skin.java +++ b/main/src/main/java/net/citizensnpcs/npc/skin/Skin.java @@ -14,9 +14,7 @@ import org.bukkit.ChatColor; import org.bukkit.scheduler.BukkitTask; import com.google.common.base.Preconditions; -import com.google.common.collect.Iterables; import com.mojang.authlib.GameProfile; -import com.mojang.authlib.properties.Property; import net.citizensnpcs.Settings.Setting; import net.citizensnpcs.api.CitizensAPI; @@ -28,6 +26,7 @@ import net.citizensnpcs.npc.profile.ProfileFetchHandler; import net.citizensnpcs.npc.profile.ProfileFetcher; import net.citizensnpcs.npc.profile.ProfileRequest; import net.citizensnpcs.trait.SkinTrait; +import net.citizensnpcs.util.SkinProperty; /** * Stores data for a single skin. @@ -39,7 +38,7 @@ public class Skin { private volatile boolean isValid = true; private final Map pending = new WeakHashMap(15); private BukkitTask retryTask; - private volatile Property skinData; + private volatile SkinProperty skinData; private volatile UUID skinId; private final String skinName; @@ -86,8 +85,7 @@ public class Skin { String cachedName = npc.data().get(CACHED_SKIN_UUID_NAME_METADATA); String texture = skinTrait.getTexture(); if (this.skinName.equals(cachedName) && texture != null && !texture.equals("cache")) { - Property localData = new Property("textures", texture, skinTrait.getSignature()); - setNPCTexture(entity, localData); + setNPCTexture(entity, new SkinProperty("textures", texture, skinTrait.getSignature())); // check if NPC prefers to use cached skin over the latest skin. if (entity.getNPC().data().has("player-skin-use-latest")) { @@ -297,7 +295,7 @@ public class Skin { } skinId = profile.getId(); - skinData = Iterables.getFirst(profile.getProperties().get("textures"), null); + skinData = SkinProperty.fromMojangProfile(profile); List entities = new ArrayList(pending.keySet()); for (SkinnableEntity entity : entities) { @@ -383,7 +381,8 @@ public class Skin { return skin; } - private static void setNPCSkinData(SkinnableEntity entity, String skinName, UUID skinId, Property skinProperty) { + private static void setNPCSkinData(SkinnableEntity entity, String skinName, UUID skinId, + SkinProperty skinProperty) { NPC npc = entity.getNPC(); SkinTrait skinTrait = npc.getOrAddTrait(SkinTrait.class); @@ -391,28 +390,26 @@ public class Skin { // for use when the latest skin is not required. npc.data().setPersistent(CACHED_SKIN_UUID_NAME_METADATA, skinName); npc.data().setPersistent(CACHED_SKIN_UUID_METADATA, skinId.toString()); - if (skinProperty.getValue() != null) { - skinTrait.setTexture(skinProperty.getValue(), - skinProperty.getSignature() == null ? "" : skinProperty.getSignature()); + if (skinProperty.value != null) { + skinTrait.setTexture(skinProperty.value, skinProperty.signature == null ? "" : skinProperty.signature); setNPCTexture(entity, skinProperty); } else { skinTrait.clearTexture(); } } - private static void setNPCTexture(SkinnableEntity entity, Property skinProperty) { + private static void setNPCTexture(SkinnableEntity entity, SkinProperty skinProperty) { GameProfile profile = entity.getProfile(); // don't set property if already set since this sometimes causes // packet errors that disconnect the client. - Property current = Iterables.getFirst(profile.getProperties().get("textures"), null); - if (current != null && current.getValue().equals(skinProperty.getValue()) - && (current.getSignature() != null && current.getSignature().equals(skinProperty.getSignature()))) { + SkinProperty current = SkinProperty.fromMojangProfile(profile); + if (current != null && current.value.equals(skinProperty.value) && current.signature != null + && current.signature.equals(skinProperty.signature)) { return; } - profile.getProperties().removeAll("textures"); // ensure client does not crash due to duplicate properties. - profile.getProperties().put("textures", skinProperty); + skinProperty.apply(profile); } private static final Map CACHE = new HashMap(20); diff --git a/main/src/main/java/net/citizensnpcs/trait/Controllable.java b/main/src/main/java/net/citizensnpcs/trait/Controllable.java index da97a24a5..b1e92f864 100644 --- a/main/src/main/java/net/citizensnpcs/trait/Controllable.java +++ b/main/src/main/java/net/citizensnpcs/trait/Controllable.java @@ -273,8 +273,8 @@ public class Controllable extends Trait implements Toggleable, CommandConfigurab return enabled; } - private double updateHorizontalSpeed(Entity handle, Entity passenger, double speed, float speedMod) { - double maxSpeed = Setting.MAX_CONTROLLABLE_GROUND_SPEED.asDouble(); + private double updateHorizontalSpeed(Entity handle, Entity passenger, double speed, float speedMod, + double maxSpeed) { Vector vel = handle.getVelocity(); double oldSpeed = Math.sqrt(vel.getX() * vel.getX() + vel.getZ() * vel.getZ()); double horizontal = NMS.getHorizontalMovement(passenger); @@ -304,7 +304,7 @@ public class Controllable extends Trait implements Toggleable, CommandConfigurab if (newSpeed > oldSpeed && speed < maxSpeed) { return (float) Math.min(maxSpeed, (speed + ((maxSpeed - speed) / 50.0D))); } else { - return (float) Math.max(0, (speed - ((speed) / 50.0D))); + return (float) Math.max(0, (speed - (speed / 50.0D))); } } @@ -332,7 +332,8 @@ public class Controllable extends Trait implements Toggleable, CommandConfigurab .modifiedSpeed((onGround ? GROUND_SPEED : AIR_SPEED)); if (!Util.isHorse(npc.getEntity().getType())) { // use minecraft horse physics - speed = updateHorizontalSpeed(npc.getEntity(), rider, speed, speedMod); + speed = updateHorizontalSpeed(npc.getEntity(), rider, speed, speedMod, + Setting.MAX_CONTROLLABLE_GROUND_SPEED.asDouble()); } boolean shouldJump = NMS.shouldJump(rider); @@ -420,11 +421,13 @@ public class Controllable extends Trait implements Toggleable, CommandConfigurab return; } - speed = updateHorizontalSpeed(npc.getEntity(), rider, speed, 1F); + speed = updateHorizontalSpeed(npc.getEntity(), rider, speed, 1F, + Setting.MAX_CONTROLLABLE_FLIGHT_SPEED.asDouble()); boolean shouldJump = NMS.shouldJump(rider); if (shouldJump) { npc.getEntity().setVelocity(npc.getEntity().getVelocity().setY(0.25F)); } + npc.getEntity().setVelocity(npc.getEntity().getVelocity().multiply(new Vector(1, 0.98, 1))); setMountedYaw(npc.getEntity()); } diff --git a/main/src/main/java/net/citizensnpcs/trait/FollowTrait.java b/main/src/main/java/net/citizensnpcs/trait/FollowTrait.java index 07275636b..ed71d5fe8 100644 --- a/main/src/main/java/net/citizensnpcs/trait/FollowTrait.java +++ b/main/src/main/java/net/citizensnpcs/trait/FollowTrait.java @@ -28,6 +28,8 @@ public class FollowTrait extends Trait { @Persist private UUID followingUUID; @Persist + private double margin = -1; + @Persist private boolean protect; public FollowTrait() { @@ -50,6 +52,10 @@ public class FollowTrait extends Trait { return entity; } + public double getFollowingMargin() { + return margin; + } + /** * Returns whether the trait is actively following a {@link Entity}. */ @@ -109,11 +115,19 @@ public class FollowTrait extends Trait { if (!npc.getNavigator().isNavigating()) { npc.getNavigator().setTarget(entity, false); + if (margin > 0) { + npc.getNavigator().getLocalParameters().distanceMargin(margin); + } + } else { flock.run(); } } + public void setFollowingMargin(double margin) { + this.margin = margin; + } + /** * Sets whether to protect the followed Entity (similar to wolves in Minecraft, attack whoever attacks the entity). */ diff --git a/main/src/main/java/net/citizensnpcs/trait/ScoreboardTrait.java b/main/src/main/java/net/citizensnpcs/trait/ScoreboardTrait.java index 7e801bb94..0b5c454dd 100644 --- a/main/src/main/java/net/citizensnpcs/trait/ScoreboardTrait.java +++ b/main/src/main/java/net/citizensnpcs/trait/ScoreboardTrait.java @@ -22,6 +22,7 @@ import net.citizensnpcs.api.npc.NPC; import net.citizensnpcs.api.persistence.Persist; import net.citizensnpcs.api.trait.Trait; import net.citizensnpcs.api.trait.TraitName; +import net.citizensnpcs.api.util.SpigotUtil; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; @@ -210,7 +211,7 @@ public class ScoreboardTrait extends Trait { } if (color != null) { - if (SUPPORT_GLOWING_COLOR && Util.getMinecraftRevision().contains("1_12_R1")) { + if (SUPPORT_GLOWING_COLOR && SpigotUtil.getMinecraftPackage().contains("1_12_R1")) { SUPPORT_GLOWING_COLOR = false; } if (SUPPORT_GLOWING_COLOR) { diff --git a/main/src/main/java/net/citizensnpcs/trait/SkinTrait.java b/main/src/main/java/net/citizensnpcs/trait/SkinTrait.java index 9da13977b..7df4ea914 100644 --- a/main/src/main/java/net/citizensnpcs/trait/SkinTrait.java +++ b/main/src/main/java/net/citizensnpcs/trait/SkinTrait.java @@ -39,9 +39,9 @@ public class SkinTrait extends Trait { if (skinName == null) return; String filled = ChatColor.stripColor(Placeholders.replace(skinName, null, npc).toLowerCase()); - Messaging.debug("Filled skin placeholder", filled, "from", skinName); if (!filled.equalsIgnoreCase(skinName) && !filled.equalsIgnoreCase(filledPlaceholder)) { filledPlaceholder = filled; + Messaging.debug("Filled skin placeholder", filled, "from", skinName); if (update) { onSkinChange(true); } diff --git a/main/src/main/java/net/citizensnpcs/util/EmptyChannel.java b/main/src/main/java/net/citizensnpcs/util/EmptyChannel.java index f038b0685..34e493478 100644 --- a/main/src/main/java/net/citizensnpcs/util/EmptyChannel.java +++ b/main/src/main/java/net/citizensnpcs/util/EmptyChannel.java @@ -50,7 +50,7 @@ public class EmptyChannel extends AbstractChannel { @Override protected boolean isCompatible(EventLoop arg0) { - return true; + return false; } @Override diff --git a/main/src/main/java/net/citizensnpcs/util/EmptySocket.java b/main/src/main/java/net/citizensnpcs/util/EmptySocket.java deleted file mode 100644 index 741d68550..000000000 --- a/main/src/main/java/net/citizensnpcs/util/EmptySocket.java +++ /dev/null @@ -1,21 +0,0 @@ -package net.citizensnpcs.util; - -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.InputStream; -import java.io.OutputStream; -import java.net.Socket; - -public class EmptySocket extends Socket { - @Override - public InputStream getInputStream() { - return new ByteArrayInputStream(EMPTY); - } - - @Override - public OutputStream getOutputStream() { - return new ByteArrayOutputStream(5); - } - - private static final byte[] EMPTY = new byte[50]; -} \ No newline at end of file diff --git a/main/src/main/java/net/citizensnpcs/util/Messages.java b/main/src/main/java/net/citizensnpcs/util/Messages.java index 5f28de6c3..a6bace3b8 100644 --- a/main/src/main/java/net/citizensnpcs/util/Messages.java +++ b/main/src/main/java/net/citizensnpcs/util/Messages.java @@ -123,6 +123,7 @@ public class Messages { public static final String FETCHING_SKIN = "citizens.commands.npc.skin.fetching"; public static final String FLYABLE_SET = "citizens.commands.npc.flyable.set"; public static final String FLYABLE_UNSET = "citizens.commands.npc.flyable.unset"; + public static final String FOLLOW_MARGIN_SET = "citizens.commands.npc.follow.margin-set"; public static final String FOLLOW_PLAYER_NOT_INGAME = "citizens.commands.npc.follow.player-not-ingame"; public static final String FOLLOW_SET = "citizens.commands.npc.follow.set"; public static final String FOLLOW_UNSET = "citizens.commands.npc.follow.unset"; diff --git a/main/src/main/java/net/citizensnpcs/util/MojangSkinGenerator.java b/main/src/main/java/net/citizensnpcs/util/MojangSkinGenerator.java index d132359e0..680b1cf40 100644 --- a/main/src/main/java/net/citizensnpcs/util/MojangSkinGenerator.java +++ b/main/src/main/java/net/citizensnpcs/util/MojangSkinGenerator.java @@ -1,6 +1,5 @@ package net.citizensnpcs.util; -import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStreamReader; @@ -22,7 +21,7 @@ public class MojangSkinGenerator { throws InterruptedException, ExecutionException { return EXECUTOR.submit(() -> { DataOutputStream out = null; - BufferedReader reader = null; + InputStreamReader reader = null; try { URL target = new URL("https://api.mineskin.org/generate/upload" + (slim ? "?model=slim" : "")); HttpURLConnection con = (HttpURLConnection) target.openConnection(); @@ -49,15 +48,16 @@ public class MojangSkinGenerator { out.writeBytes("--*****--\r\n"); out.flush(); out.close(); - if (con.getResponseCode() != 200) { - if (Messaging.isDebugging()) { - reader = new BufferedReader(new InputStreamReader(con.getErrorStream())); - Messaging.log(new String(CharStreams.toString(reader))); - } - return null; + reader = new InputStreamReader(con.getInputStream()); + String str = CharStreams.toString(reader); + if (Messaging.isDebugging()) { + Messaging.debug(str); } - reader = new BufferedReader(new InputStreamReader(con.getInputStream())); - JSONObject output = (JSONObject) new JSONParser().parse(reader); + + if (con.getResponseCode() != 200) + return null; + + JSONObject output = (JSONObject) new JSONParser().parse(str); JSONObject data = (JSONObject) output.get("data"); con.disconnect(); return data; @@ -82,7 +82,7 @@ public class MojangSkinGenerator { throws InterruptedException, ExecutionException { return EXECUTOR.submit(() -> { DataOutputStream out = null; - BufferedReader reader = null; + InputStreamReader reader = null; try { URL target = new URL("https://api.mineskin.org/generate/url"); HttpURLConnection con = (HttpURLConnection) target.openConnection(); @@ -103,15 +103,16 @@ public class MojangSkinGenerator { } out.writeBytes(req.toJSONString().replace("\\", "")); out.close(); - if (con.getResponseCode() != 200) { - if (Messaging.isDebugging()) { - reader = new BufferedReader(new InputStreamReader(con.getErrorStream())); - Messaging.log(new String(CharStreams.toString(reader))); - } - return null; + reader = new InputStreamReader(con.getInputStream()); + String str = CharStreams.toString(reader); + if (Messaging.isDebugging()) { + Messaging.debug(str); } - reader = new BufferedReader(new InputStreamReader(con.getInputStream())); - JSONObject output = (JSONObject) new JSONParser().parse(reader); + + if (con.getResponseCode() != 200) + return null; + + JSONObject output = (JSONObject) new JSONParser().parse(str); JSONObject data = (JSONObject) output.get("data"); con.disconnect(); return data; diff --git a/main/src/main/java/net/citizensnpcs/util/NMS.java b/main/src/main/java/net/citizensnpcs/util/NMS.java index f60149a7a..27ab6e0d7 100644 --- a/main/src/main/java/net/citizensnpcs/util/NMS.java +++ b/main/src/main/java/net/citizensnpcs/util/NMS.java @@ -39,7 +39,7 @@ import org.bukkit.util.Vector; import com.google.common.collect.Lists; import com.mojang.authlib.GameProfile; -import com.mojang.authlib.GameProfileRepository; +import com.mojang.authlib.ProfileLookupCallback; import net.citizensnpcs.Settings.Setting; import net.citizensnpcs.api.ai.NavigatorParameters; @@ -167,6 +167,27 @@ public class NMS { return BRIDGE.fillProfileProperties(profile, requireSecure); } + public static void findProfilesByNames(String[] names, ProfileLookupCallback cb) { + if (FIND_PROFILES_BY_NAMES == null) { + try { + Class agentClass = Class.forName("com.mojang.authlib.Agent"); + Object minecraftAgent = agentClass.getField("MINECRAFT").get(null); + MethodHandle mh = getMethodHandle(BRIDGE.getGameProfileRepository().getClass(), "findProfilesByNames", + false, String[].class, agentClass, ProfileLookupCallback.class); + FIND_PROFILES_BY_NAMES = MethodHandles.insertArguments(mh, 2, minecraftAgent); + } catch (Exception e) { + FIND_PROFILES_BY_NAMES = getMethodHandle(BRIDGE.getGameProfileRepository().getClass(), + "findProfilesByNames", false, String[].class, ProfileLookupCallback.class); + } + } + + try { + FIND_PROFILES_BY_NAMES.invoke(BRIDGE.getGameProfileRepository(), names, cb); + } catch (Throwable e) { + e.printStackTrace(); + } + } + public static BlockBreaker getBlockBreaker(Entity entity, Block targetBlock, BlockBreakerConfiguration config) { return BRIDGE.getBlockBreaker(entity, targetBlock, config); } @@ -418,10 +439,6 @@ public class NMS { return null; } - public static GameProfileRepository getGameProfileRepository() { - return BRIDGE.getGameProfileRepository(); - } - public static MethodHandle getGetter(Class clazz, String name) { return getGetter(clazz, name, true); } @@ -625,12 +642,12 @@ public class NMS { public static void loadBridge(String rev) throws Exception { Class entity = null; try { - entity = Class.forName("net.minecraft.server.v" + rev + ".Entity"); + entity = Class.forName("net.minecraft.server." + rev + ".Entity"); } catch (ClassNotFoundException ex) { entity = Class.forName("net.minecraft.world.entity.Entity"); } giveReflectiveAccess(entity, NMS.class); - BRIDGE = (NMSBridge) Class.forName("net.citizensnpcs.nms.v" + rev + ".util.NMSImpl").getConstructor() + BRIDGE = (NMSBridge) Class.forName("net.citizensnpcs.nms." + rev + ".util.NMSImpl").getConstructor() .newInstance(); } @@ -883,8 +900,8 @@ public class NMS { } private static Method ADD_OPENS; - private static NMSBridge BRIDGE; + private static MethodHandle FIND_PROFILES_BY_NAMES = null; private static Method GET_MODULE; private static MethodHandles.Lookup LOOKUP = MethodHandles.lookup(); private static Field MODIFIERS_FIELD; diff --git a/main/src/main/java/net/citizensnpcs/util/NMSBridge.java b/main/src/main/java/net/citizensnpcs/util/NMSBridge.java index 0383e1f33..a83d7d6c0 100644 --- a/main/src/main/java/net/citizensnpcs/util/NMSBridge.java +++ b/main/src/main/java/net/citizensnpcs/util/NMSBridge.java @@ -84,9 +84,9 @@ public interface NMSBridge { public double getHeight(Entity entity); - public float getHorizontalMovement(Entity entity); + public float getHorizontalMovement(Entity entity);; - public CompoundTag getNBT(ItemStack item);; + public CompoundTag getNBT(ItemStack item); public NPC getNPC(Entity entity); @@ -149,9 +149,9 @@ public interface NMSBridge { public void registerEntityClass(Class clazz); - public void remove(Entity entity); + public void remove(Entity entity);; - public void removeFromServerPlayerList(Player player);; + public void removeFromServerPlayerList(Player player); public void removeFromWorld(org.bukkit.entity.Entity entity); @@ -167,7 +167,7 @@ public interface NMSBridge { public void sendTabListRemove(Player recipient, Player listPlayer); - public void sendTeamPacket(Player recipient, Team team, int mode); + public void sendTeamPacket(Player recipient, Team team, int mode);; default public void setAggressive(Entity entity, boolean aggro) { }; @@ -176,13 +176,13 @@ public interface NMSBridge { throw new UnsupportedOperationException(); }; - public void setBodyYaw(Entity entity, float yaw);; + public void setBodyYaw(Entity entity, float yaw); - public void setBoundingBox(Entity entity, BoundingBox box); + public void setBoundingBox(Entity entity, BoundingBox box);; public default void setCamelPose(Entity entity, CamelPose pose) { throw new UnsupportedOperationException(); - }; + } public void setCustomName(Entity entity, Object component, String string); diff --git a/main/src/main/java/net/citizensnpcs/util/SkinProperty.java b/main/src/main/java/net/citizensnpcs/util/SkinProperty.java new file mode 100644 index 000000000..c88615088 --- /dev/null +++ b/main/src/main/java/net/citizensnpcs/util/SkinProperty.java @@ -0,0 +1,56 @@ +package net.citizensnpcs.util; + +import java.lang.invoke.MethodHandle; +import java.util.Collection; + +import com.mojang.authlib.GameProfile; +import com.mojang.authlib.properties.Property; + +public class SkinProperty { + public final String name; + public final String signature; + public final String value; + + public SkinProperty(String name, String value, String signature) { + this.name = name; + this.value = value; + this.signature = signature; + } + + public void apply(GameProfile profile) { + profile.getProperties().removeAll("textures"); // ensure client does not crash due to duplicate properties. + profile.getProperties().put("textures", new com.mojang.authlib.properties.Property(name, value, signature)); + } + + public static SkinProperty fromMojang(com.mojang.authlib.properties.Property prop) { + if (prop == null) + return null; + if (GET_NAME_METHOD != null) { + try { + return new SkinProperty((String) GET_NAME_METHOD.invoke(prop), (String) GET_VALUE_METHOD.invoke(prop), + (String) GET_SIGNATURE_METHOD.invoke(prop)); + } catch (Throwable e) { + e.printStackTrace(); + } + } + return new SkinProperty(prop.name(), prop.value(), prop.signature()); + } + + public static SkinProperty fromMojangProfile(GameProfile profile) { + if (profile == null) + return null; + Collection textures = profile.getProperties().get("textures"); + if (textures == null || textures.size() == 0) + return null; + return fromMojang(textures.iterator().next()); + } + + private static MethodHandle GET_NAME_METHOD = null; + private static MethodHandle GET_SIGNATURE_METHOD = null; + private static MethodHandle GET_VALUE_METHOD = null; + static { + GET_NAME_METHOD = NMS.getMethodHandle(com.mojang.authlib.properties.Property.class, "getName", false); + GET_SIGNATURE_METHOD = NMS.getMethodHandle(com.mojang.authlib.properties.Property.class, "getSignature", false); + GET_VALUE_METHOD = NMS.getMethodHandle(com.mojang.authlib.properties.Property.class, "getValue", false); + } +} diff --git a/main/src/main/java/net/citizensnpcs/util/Util.java b/main/src/main/java/net/citizensnpcs/util/Util.java index e89df16b8..8016dec51 100644 --- a/main/src/main/java/net/citizensnpcs/util/Util.java +++ b/main/src/main/java/net/citizensnpcs/util/Util.java @@ -236,13 +236,6 @@ public class Util { return new XORShiftRNG(); } - public static String getMinecraftRevision() { - if (MINECRAFT_REVISION == null) { - MINECRAFT_REVISION = Bukkit.getServer().getClass().getPackage().getName(); - } - return MINECRAFT_REVISION.substring(MINECRAFT_REVISION.lastIndexOf('.') + 2); - } - public static String getTeamName(UUID id) { return "CIT-" + id.toString().replace("-", "").substring(0, 12); } @@ -586,7 +579,6 @@ public class Util { } private static final Scoreboard DUMMY_SCOREBOARD = Bukkit.getScoreboardManager().getNewScoreboard(); - private static String MINECRAFT_REVISION; private static final DecimalFormat TWO_DIGIT_DECIMAL = new DecimalFormat(); static { diff --git a/main/src/main/resources/messages_en.properties b/main/src/main/resources/messages_en.properties index 7300876b6..3205b868b 100644 --- a/main/src/main/resources/messages_en.properties +++ b/main/src/main/resources/messages_en.properties @@ -105,6 +105,7 @@ citizens.commands.npc.fox.fox-type-set=Fox type set to [[{0}]]. citizens.commands.npc.fox.invalid-fox-type=Invalid fox type specified. Valid types are [[{0}]]. citizens.commands.npc.follow.set=[[{0}]] is now following [[{1}]]. citizens.commands.npc.follow.unset=[[{0}]] is no longer following anyone. +citizens.commands.npc.follow.margin-set=[[{0}]]''s will now follow [[{1}]] blocks away from the target. citizens.commands.npc.frog.invalid-variant=Invalid frog variant. Valid variants are [[{0}]]. citizens.commands.npc.frog.variant-set=Variant set to [[{0}]]. citizens.commands.npc.gamemode.describe={0}''s gamemode is [[{1}]]. diff --git a/pom.xml b/pom.xml index 979b6d5eb..e50b04e52 100644 --- a/pom.xml +++ b/pom.xml @@ -6,10 +6,10 @@ pom net.citizensnpcs citizens-parent - 2.0.32-SNAPSHOT + 2.0.33-SNAPSHOT Unknown - 2.0.32 + 2.0.33 3.5.0 3.5.0 3.1.1 @@ -44,7 +44,7 @@ v1_16_R3 v1_18_R2 v1_19_R3 - v1_20_R1 + v1_20_R2 dist @@ -63,7 +63,7 @@ v1_17_R1 v1_18_R2 v1_19_R3 - v1_20_R1 + v1_20_R2 dist @@ -71,7 +71,7 @@ dev main - v1_20_R1 + v1_20_R2 dist diff --git a/v1_10_R1/pom.xml b/v1_10_R1/pom.xml index d6ec0e482..5a34ce579 100644 --- a/v1_10_R1/pom.xml +++ b/v1_10_R1/pom.xml @@ -6,7 +6,7 @@ net.citizensnpcs citizens-parent - 2.0.32-SNAPSHOT + 2.0.33-SNAPSHOT citizens-v1_10_R1 diff --git a/v1_10_R1/src/main/java/net/citizensnpcs/nms/v1_10_R1/entity/EntityHumanNPC.java b/v1_10_R1/src/main/java/net/citizensnpcs/nms/v1_10_R1/entity/EntityHumanNPC.java index 1574cb695..6be601b26 100644 --- a/v1_10_R1/src/main/java/net/citizensnpcs/nms/v1_10_R1/entity/EntityHumanNPC.java +++ b/v1_10_R1/src/main/java/net/citizensnpcs/nms/v1_10_R1/entity/EntityHumanNPC.java @@ -1,7 +1,6 @@ package net.citizensnpcs.nms.v1_10_R1.entity; import java.io.IOException; -import java.net.Socket; import java.util.List; import java.util.Map; @@ -36,7 +35,6 @@ import net.citizensnpcs.npc.skin.SkinPacketTracker; import net.citizensnpcs.npc.skin.SkinnableEntity; import net.citizensnpcs.trait.Gravity; import net.citizensnpcs.trait.SkinTrait; -import net.citizensnpcs.util.EmptySocket; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.server.v1_10_R1.AttributeInstance; @@ -78,6 +76,7 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable PlayerInteractManager playerInteractManager, NPC npc) { super(minecraftServer, world, gameProfile, playerInteractManager); this.npc = (CitizensNPC) npc; + this.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED).setValue(0.3); if (npc != null) { skinTracker = new SkinPacketTracker(this); playerInteractManager.setGameMode(EnumGamemode.SURVIVAL); @@ -236,13 +235,10 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable } private void initialise(MinecraftServer minecraftServer) { - Socket socket = new EmptySocket(); - NetworkManager conn = null; try { - conn = new EmptyNetworkManager(EnumProtocolDirection.CLIENTBOUND); + NetworkManager conn = new EmptyNetworkManager(EnumProtocolDirection.CLIENTBOUND); playerConnection = new EmptyNetHandler(minecraftServer, conn, this); conn.setPacketListener(playerConnection); - socket.close(); } catch (IOException e) { // swallow } @@ -280,7 +276,7 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable if (!navigating && getBukkitEntity() != null && (!npc.hasTrait(Gravity.class) || npc.getOrAddTrait(Gravity.class).hasGravity()) && Util.isLoaded(getBukkitEntity().getLocation(LOADED_LOCATION)) - && SpigotUtil.checkYSafe(locY, getBukkitEntity().getWorld())) { + && (!npc.isProtected() || SpigotUtil.checkYSafe(locY, getBukkitEntity().getWorld()))) { moveWithFallDamage(0, 0); } if (Math.abs(motX) < EPSILON && Math.abs(motY) < EPSILON && Math.abs(motZ) < EPSILON) { diff --git a/v1_10_R1/src/main/java/net/citizensnpcs/nms/v1_10_R1/util/PlayerControllerMove.java b/v1_10_R1/src/main/java/net/citizensnpcs/nms/v1_10_R1/util/PlayerControllerMove.java index edfc36f2a..dfee30f5b 100644 --- a/v1_10_R1/src/main/java/net/citizensnpcs/nms/v1_10_R1/util/PlayerControllerMove.java +++ b/v1_10_R1/src/main/java/net/citizensnpcs/nms/v1_10_R1/util/PlayerControllerMove.java @@ -83,8 +83,7 @@ public class PlayerControllerMove extends ControllerMove { this.a.yaw = a(this.a.yaw, f, 90.0F); NMS.setHeadYaw(a.getBukkitEntity(), this.a.yaw); AttributeInstance speed = this.a.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED); - speed.setValue(0.1D * this.e); - float movement = (float) (this.e * speed.getValue()) * 10; + float movement = (float) (this.e * speed.getValue()); this.a.l(movement); this.a.bg = movement; if (shouldSlimeJump() || ((d2 >= NMS.getStepHeight(a.getBukkitEntity())) && (d0 * d0 + d1 * d1 < 1.0D))) { diff --git a/v1_11_R1/pom.xml b/v1_11_R1/pom.xml index d6827c7bf..38d6cdf42 100644 --- a/v1_11_R1/pom.xml +++ b/v1_11_R1/pom.xml @@ -6,7 +6,7 @@ net.citizensnpcs citizens-parent - 2.0.32-SNAPSHOT + 2.0.33-SNAPSHOT citizens-v1_11_R1 diff --git a/v1_11_R1/src/main/java/net/citizensnpcs/nms/v1_11_R1/entity/EntityHumanNPC.java b/v1_11_R1/src/main/java/net/citizensnpcs/nms/v1_11_R1/entity/EntityHumanNPC.java index 37945c665..dceb6b7ba 100644 --- a/v1_11_R1/src/main/java/net/citizensnpcs/nms/v1_11_R1/entity/EntityHumanNPC.java +++ b/v1_11_R1/src/main/java/net/citizensnpcs/nms/v1_11_R1/entity/EntityHumanNPC.java @@ -1,7 +1,6 @@ package net.citizensnpcs.nms.v1_11_R1.entity; import java.io.IOException; -import java.net.Socket; import java.util.List; import java.util.Map; @@ -36,7 +35,6 @@ import net.citizensnpcs.npc.skin.SkinPacketTracker; import net.citizensnpcs.npc.skin.SkinnableEntity; import net.citizensnpcs.trait.Gravity; import net.citizensnpcs.trait.SkinTrait; -import net.citizensnpcs.util.EmptySocket; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.server.v1_11_R1.AttributeInstance; @@ -79,6 +77,7 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable public EntityHumanNPC(MinecraftServer minecraftServer, WorldServer world, GameProfile gameProfile, PlayerInteractManager playerInteractManager, NPC npc) { super(minecraftServer, world, gameProfile, playerInteractManager); + this.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED).setValue(0.3D); this.npc = (CitizensNPC) npc; if (npc != null) { skinTracker = new SkinPacketTracker(this); @@ -258,13 +257,10 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable } private void initialise(MinecraftServer minecraftServer) { - Socket socket = new EmptySocket(); - NetworkManager conn = null; try { - conn = new EmptyNetworkManager(EnumProtocolDirection.CLIENTBOUND); + NetworkManager conn = new EmptyNetworkManager(EnumProtocolDirection.CLIENTBOUND); playerConnection = new EmptyNetHandler(minecraftServer, conn, this); conn.setPacketListener(playerConnection); - socket.close(); } catch (IOException e) { // swallow } @@ -338,7 +334,7 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable if (!navigating && getBukkitEntity() != null && (!npc.hasTrait(Gravity.class) || npc.getOrAddTrait(Gravity.class).hasGravity()) && Util.isLoaded(getBukkitEntity().getLocation(LOADED_LOCATION)) - && SpigotUtil.checkYSafe(locY, getBukkitEntity().getWorld())) { + && (!npc.isProtected() || SpigotUtil.checkYSafe(locY, getBukkitEntity().getWorld()))) { moveWithFallDamage(0, 0); } if (Math.abs(motX) < EPSILON && Math.abs(motY) < EPSILON && Math.abs(motZ) < EPSILON) { diff --git a/v1_11_R1/src/main/java/net/citizensnpcs/nms/v1_11_R1/util/PlayerControllerMove.java b/v1_11_R1/src/main/java/net/citizensnpcs/nms/v1_11_R1/util/PlayerControllerMove.java index 4c76044f1..7459f4b0e 100644 --- a/v1_11_R1/src/main/java/net/citizensnpcs/nms/v1_11_R1/util/PlayerControllerMove.java +++ b/v1_11_R1/src/main/java/net/citizensnpcs/nms/v1_11_R1/util/PlayerControllerMove.java @@ -85,10 +85,7 @@ public class PlayerControllerMove extends ControllerMove { this.a.yaw = a(this.a.yaw, f, 90.0F); NMS.setHeadYaw(a.getBukkitEntity(), this.a.yaw); AttributeInstance speed = this.a.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED); - if (!(this.a instanceof EntitySlime)) { - speed.setValue(0.1D * this.e); - } - float movement = (float) (this.e * speed.getValue()) * 10; + float movement = (float) (this.e * speed.getValue()); this.a.l(movement); this.a.bf = movement; if (shouldSlimeJump() || ((d2 >= NMS.getStepHeight(a.getBukkitEntity())) && (d0 * d0 + d1 * d1 < 1.0D))) { diff --git a/v1_12_R1/pom.xml b/v1_12_R1/pom.xml index 4b45b6c3c..15dced94e 100644 --- a/v1_12_R1/pom.xml +++ b/v1_12_R1/pom.xml @@ -6,7 +6,7 @@ net.citizensnpcs citizens-parent - 2.0.32-SNAPSHOT + 2.0.33-SNAPSHOT citizens-v1_12_R1 diff --git a/v1_12_R1/src/main/java/net/citizensnpcs/nms/v1_12_R1/entity/EntityHumanNPC.java b/v1_12_R1/src/main/java/net/citizensnpcs/nms/v1_12_R1/entity/EntityHumanNPC.java index b7cf9c3af..936b547ed 100644 --- a/v1_12_R1/src/main/java/net/citizensnpcs/nms/v1_12_R1/entity/EntityHumanNPC.java +++ b/v1_12_R1/src/main/java/net/citizensnpcs/nms/v1_12_R1/entity/EntityHumanNPC.java @@ -2,7 +2,6 @@ package net.citizensnpcs.nms.v1_12_R1.entity; import java.io.IOException; import java.lang.invoke.MethodHandle; -import java.net.Socket; import java.util.List; import java.util.Map; @@ -39,7 +38,6 @@ import net.citizensnpcs.npc.skin.SkinPacketTracker; import net.citizensnpcs.npc.skin.SkinnableEntity; import net.citizensnpcs.trait.Gravity; import net.citizensnpcs.trait.SkinTrait; -import net.citizensnpcs.util.EmptySocket; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.server.v1_12_R1.AttributeInstance; @@ -82,6 +80,7 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable public EntityHumanNPC(MinecraftServer minecraftServer, WorldServer world, GameProfile gameProfile, PlayerInteractManager playerInteractManager, NPC npc) { super(minecraftServer, world, gameProfile, playerInteractManager); + this.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED).setValue(0.3D); this.npc = (CitizensNPC) npc; if (npc != null) { skinTracker = new SkinPacketTracker(this); @@ -267,13 +266,10 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable } private void initialise(MinecraftServer minecraftServer) { - Socket socket = new EmptySocket(); - NetworkManager conn = null; try { - conn = new EmptyNetworkManager(EnumProtocolDirection.CLIENTBOUND); + NetworkManager conn = new EmptyNetworkManager(EnumProtocolDirection.CLIENTBOUND); playerConnection = new EmptyNetHandler(minecraftServer, conn, this); conn.setPacketListener(playerConnection); - socket.close(); } catch (IOException e) { // swallow } @@ -355,7 +351,7 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable if (!navigating && getBukkitEntity() != null && (!npc.hasTrait(Gravity.class) || npc.getOrAddTrait(Gravity.class).hasGravity()) && Util.isLoaded(getBukkitEntity().getLocation(LOADED_LOCATION)) - && SpigotUtil.checkYSafe(locY, getBukkitEntity().getWorld())) { + && (!npc.isProtected() || SpigotUtil.checkYSafe(locY, getBukkitEntity().getWorld()))) { moveWithFallDamage(0, 0, 0); } if (Math.abs(motX) < EPSILON && Math.abs(motY) < EPSILON && Math.abs(motZ) < EPSILON) { diff --git a/v1_12_R1/src/main/java/net/citizensnpcs/nms/v1_12_R1/util/PlayerControllerMove.java b/v1_12_R1/src/main/java/net/citizensnpcs/nms/v1_12_R1/util/PlayerControllerMove.java index a9980b713..c869fc492 100644 --- a/v1_12_R1/src/main/java/net/citizensnpcs/nms/v1_12_R1/util/PlayerControllerMove.java +++ b/v1_12_R1/src/main/java/net/citizensnpcs/nms/v1_12_R1/util/PlayerControllerMove.java @@ -48,10 +48,7 @@ public class PlayerControllerMove extends ControllerMove { this.a.yaw = a(this.a.yaw, f, 90.0F); NMS.setHeadYaw(a.getBukkitEntity(), this.a.yaw); AttributeInstance speed = this.a.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED); - if (!(this.a instanceof EntitySlime)) { - speed.setValue(0.1D * this.e); - } - float movement = (float) (this.e * speed.getValue()) * 10; + float movement = (float) (this.e * speed.getValue()); this.a.k(movement); this.a.bg = movement; if (shouldSlimeJump() || ((d2 >= NMS.getStepHeight(a.getBukkitEntity())) && (d0 * d0 + d1 * d1 < 1.0D))) { diff --git a/v1_13_R2/pom.xml b/v1_13_R2/pom.xml index a2bac48d0..2bd21559a 100644 --- a/v1_13_R2/pom.xml +++ b/v1_13_R2/pom.xml @@ -6,7 +6,7 @@ net.citizensnpcs citizens-parent - 2.0.32-SNAPSHOT + 2.0.33-SNAPSHOT citizens-v1_13_R2 diff --git a/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/entity/EntityHumanNPC.java b/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/entity/EntityHumanNPC.java index d03e11278..c559114bb 100644 --- a/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/entity/EntityHumanNPC.java +++ b/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/entity/EntityHumanNPC.java @@ -2,7 +2,6 @@ package net.citizensnpcs.nms.v1_13_R2.entity; import java.io.IOException; import java.lang.invoke.MethodHandle; -import java.net.Socket; import java.util.List; import java.util.Map; @@ -39,7 +38,6 @@ import net.citizensnpcs.npc.skin.SkinPacketTracker; import net.citizensnpcs.npc.skin.SkinnableEntity; import net.citizensnpcs.trait.Gravity; import net.citizensnpcs.trait.SkinTrait; -import net.citizensnpcs.util.EmptySocket; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.server.v1_13_R2.AttributeInstance; @@ -82,6 +80,8 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable public EntityHumanNPC(MinecraftServer minecraftServer, WorldServer world, GameProfile gameProfile, PlayerInteractManager playerInteractManager, NPC npc) { super(minecraftServer, world, gameProfile, playerInteractManager); + this.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED).setValue(0.3D); + this.npc = (CitizensNPC) npc; if (npc != null) { skinTracker = new SkinPacketTracker(this); @@ -255,15 +255,11 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable } private void initialise(MinecraftServer minecraftServer) { - Socket socket = new EmptySocket(); - NetworkManager conn = null; try { - conn = new EmptyNetworkManager(EnumProtocolDirection.CLIENTBOUND); + NetworkManager conn = new EmptyNetworkManager(EnumProtocolDirection.CLIENTBOUND); playerConnection = new EmptyNetHandler(minecraftServer, conn, this); conn.setPacketListener(playerConnection); - socket.close(); } catch (IOException e) { - // swallow } AttributeInstance range = getAttributeInstance(GenericAttributes.FOLLOW_RANGE); if (range == null) { @@ -334,7 +330,7 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable if (!navigating && getBukkitEntity() != null && (!npc.hasTrait(Gravity.class) || npc.getOrAddTrait(Gravity.class).hasGravity()) && Util.isLoaded(getBukkitEntity().getLocation(LOADED_LOCATION)) - && SpigotUtil.checkYSafe(locY, getBukkitEntity().getWorld())) { + && (!npc.isProtected() || SpigotUtil.checkYSafe(locY, getBukkitEntity().getWorld()))) { moveWithFallDamage(0, 0, 0); } if (Math.abs(motX) < EPSILON && Math.abs(motY) < EPSILON && Math.abs(motZ) < EPSILON) { diff --git a/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/util/PlayerControllerMove.java b/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/util/PlayerControllerMove.java index 40ddc81f4..39d6acc55 100644 --- a/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/util/PlayerControllerMove.java +++ b/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/util/PlayerControllerMove.java @@ -50,10 +50,7 @@ public class PlayerControllerMove extends ControllerMove { this.a.yaw = a(this.a.yaw, f, 90.0F); NMS.setHeadYaw(a.getBukkitEntity(), this.a.yaw); AttributeInstance speed = this.a.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED); - if (!(this.a instanceof EntitySlime)) { - speed.setValue(0.1D * this.e); - } - float movement = (float) (this.e * speed.getValue()) * 10; + float movement = (float) (this.e * speed.getValue()); this.a.o(movement); this.a.bj = movement; if (shouldSlimeJump() || ((d2 >= NMS.getStepHeight(a.getBukkitEntity())) && (d0 * d0 + d1 * d1 < 1.0D))) { diff --git a/v1_14_R1/pom.xml b/v1_14_R1/pom.xml index b60821802..2c5cd717f 100644 --- a/v1_14_R1/pom.xml +++ b/v1_14_R1/pom.xml @@ -6,7 +6,7 @@ net.citizensnpcs citizens-parent - 2.0.32-SNAPSHOT + 2.0.33-SNAPSHOT citizens-v1_14_R1 diff --git a/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/entity/EntityHumanNPC.java b/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/entity/EntityHumanNPC.java index 4a6d62e0d..2c69e8d0f 100644 --- a/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/entity/EntityHumanNPC.java +++ b/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/entity/EntityHumanNPC.java @@ -1,7 +1,6 @@ package net.citizensnpcs.nms.v1_14_R1.entity; import java.io.IOException; -import java.net.Socket; import java.util.List; import java.util.Map; @@ -38,7 +37,6 @@ import net.citizensnpcs.npc.skin.SkinPacketTracker; import net.citizensnpcs.npc.skin.SkinnableEntity; import net.citizensnpcs.trait.Gravity; import net.citizensnpcs.trait.SkinTrait; -import net.citizensnpcs.util.EmptySocket; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.server.v1_14_R1.AttributeInstance; @@ -82,6 +80,7 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable public EntityHumanNPC(MinecraftServer minecraftServer, WorldServer world, GameProfile gameProfile, PlayerInteractManager playerInteractManager, NPC npc) { super(minecraftServer, world, gameProfile, playerInteractManager); + this.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED).setValue(0.3D); this.npc = (CitizensNPC) npc; if (npc != null) { skinTracker = new SkinPacketTracker(this); @@ -255,15 +254,11 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable } private void initialise(MinecraftServer minecraftServer) { - Socket socket = new EmptySocket(); - NetworkManager conn = null; try { - conn = new EmptyNetworkManager(EnumProtocolDirection.CLIENTBOUND); + NetworkManager conn = new EmptyNetworkManager(EnumProtocolDirection.CLIENTBOUND); playerConnection = new EmptyNetHandler(minecraftServer, conn, this); conn.setPacketListener(playerConnection); - socket.close(); } catch (IOException e) { - // swallow } AttributeInstance range = getAttributeInstance(GenericAttributes.FOLLOW_RANGE); if (range == null) { @@ -339,7 +334,7 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable if (!navigating && getBukkitEntity() != null && (!npc.hasTrait(Gravity.class) || npc.getOrAddTrait(Gravity.class).hasGravity()) && Util.isLoaded(getBukkitEntity().getLocation(LOADED_LOCATION)) - && SpigotUtil.checkYSafe(locY, getBukkitEntity().getWorld())) { + && (!npc.isProtected() || SpigotUtil.checkYSafe(locY, getBukkitEntity().getWorld()))) { moveWithFallDamage(new Vec3D(0, 0, 0)); } Vec3D mot = getMot(); diff --git a/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/util/PlayerControllerMove.java b/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/util/PlayerControllerMove.java index 981492a81..ed3b4b0b1 100644 --- a/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/util/PlayerControllerMove.java +++ b/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/util/PlayerControllerMove.java @@ -49,11 +49,6 @@ public class PlayerControllerMove extends ControllerMove { this.a.yaw = a(this.a.yaw, f, 90.0F); NMS.setHeadYaw(a.getBukkitEntity(), this.a.yaw); AttributeInstance speed = this.a.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED); - if (this.a instanceof EntitySlime) { - speed.setValue(0.3D * this.e); - } else { - speed.setValue(0.2D * this.e); - } float movement = (float) (this.e * speed.getValue()); this.a.o(movement); this.a.bd = movement; diff --git a/v1_15_R1/pom.xml b/v1_15_R1/pom.xml index 3136f8f6f..ca5718a63 100644 --- a/v1_15_R1/pom.xml +++ b/v1_15_R1/pom.xml @@ -4,7 +4,7 @@ net.citizensnpcs citizens-parent - 2.0.32-SNAPSHOT + 2.0.33-SNAPSHOT citizens-v1_15_R1 diff --git a/v1_15_R1/src/main/java/net/citizensnpcs/nms/v1_15_R1/entity/EntityHumanNPC.java b/v1_15_R1/src/main/java/net/citizensnpcs/nms/v1_15_R1/entity/EntityHumanNPC.java index 2aab67f14..4e277caee 100644 --- a/v1_15_R1/src/main/java/net/citizensnpcs/nms/v1_15_R1/entity/EntityHumanNPC.java +++ b/v1_15_R1/src/main/java/net/citizensnpcs/nms/v1_15_R1/entity/EntityHumanNPC.java @@ -1,7 +1,6 @@ package net.citizensnpcs.nms.v1_15_R1.entity; import java.io.IOException; -import java.net.Socket; import java.util.List; import java.util.Map; @@ -37,7 +36,6 @@ import net.citizensnpcs.npc.skin.SkinPacketTracker; import net.citizensnpcs.npc.skin.SkinnableEntity; import net.citizensnpcs.trait.Gravity; import net.citizensnpcs.trait.SkinTrait; -import net.citizensnpcs.util.EmptySocket; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.server.v1_15_R1.AttributeInstance; @@ -82,6 +80,7 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable PlayerInteractManager playerInteractManager, NPC npc) { super(minecraftServer, world, gameProfile, playerInteractManager); this.npc = (CitizensNPC) npc; + this.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED).setValue(0.3D); if (npc != null) { skinTracker = new SkinPacketTracker(this); playerInteractManager.setGameMode(EnumGamemode.SURVIVAL); @@ -255,13 +254,10 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable } private void initialise(MinecraftServer minecraftServer) { - Socket socket = new EmptySocket(); - NetworkManager conn = null; try { - conn = new EmptyNetworkManager(EnumProtocolDirection.CLIENTBOUND); + NetworkManager conn = new EmptyNetworkManager(EnumProtocolDirection.CLIENTBOUND); playerConnection = new EmptyNetHandler(minecraftServer, conn, this); conn.setPacketListener(playerConnection); - socket.close(); } catch (IOException e) { // swallow } @@ -338,7 +334,7 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable if (!navigating && getBukkitEntity() != null && (!npc.hasTrait(Gravity.class) || npc.getOrAddTrait(Gravity.class).hasGravity()) && Util.isLoaded(getBukkitEntity().getLocation(LOADED_LOCATION)) - && SpigotUtil.checkYSafe(locY(), getBukkitEntity().getWorld())) { + && (!npc.isProtected() || SpigotUtil.checkYSafe(locY(), getBukkitEntity().getWorld()))) { moveWithFallDamage(new Vec3D(0, 0, 0)); } Vec3D mot = getMot(); diff --git a/v1_15_R1/src/main/java/net/citizensnpcs/nms/v1_15_R1/util/PlayerControllerMove.java b/v1_15_R1/src/main/java/net/citizensnpcs/nms/v1_15_R1/util/PlayerControllerMove.java index 9d7c4c7cc..c593bad21 100644 --- a/v1_15_R1/src/main/java/net/citizensnpcs/nms/v1_15_R1/util/PlayerControllerMove.java +++ b/v1_15_R1/src/main/java/net/citizensnpcs/nms/v1_15_R1/util/PlayerControllerMove.java @@ -49,7 +49,6 @@ public class PlayerControllerMove extends ControllerMove { this.a.yaw = a(this.a.yaw, f, 90.0F); NMS.setHeadYaw(a.getBukkitEntity(), this.a.yaw); AttributeInstance speed = this.a.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED); - speed.setValue(0.3D * this.e); float movement = (float) (this.e * speed.getValue()); this.a.o(movement); this.a.bb = movement; diff --git a/v1_16_R3/pom.xml b/v1_16_R3/pom.xml index b37bc939e..2b14af460 100644 --- a/v1_16_R3/pom.xml +++ b/v1_16_R3/pom.xml @@ -4,7 +4,7 @@ net.citizensnpcs citizens-parent - 2.0.32-SNAPSHOT + 2.0.33-SNAPSHOT citizens-v1_16_R3 diff --git a/v1_16_R3/src/main/java/net/citizensnpcs/nms/v1_16_R3/entity/EntityHumanNPC.java b/v1_16_R3/src/main/java/net/citizensnpcs/nms/v1_16_R3/entity/EntityHumanNPC.java index 35dab3850..33604d354 100644 --- a/v1_16_R3/src/main/java/net/citizensnpcs/nms/v1_16_R3/entity/EntityHumanNPC.java +++ b/v1_16_R3/src/main/java/net/citizensnpcs/nms/v1_16_R3/entity/EntityHumanNPC.java @@ -1,7 +1,6 @@ package net.citizensnpcs.nms.v1_16_R3.entity; import java.io.IOException; -import java.net.Socket; import java.util.List; import java.util.Map; @@ -38,7 +37,6 @@ import net.citizensnpcs.npc.skin.SkinPacketTracker; import net.citizensnpcs.npc.skin.SkinnableEntity; import net.citizensnpcs.trait.Gravity; import net.citizensnpcs.trait.SkinTrait; -import net.citizensnpcs.util.EmptySocket; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.server.v1_16_R3.AxisAlignedBB; @@ -51,6 +49,7 @@ import net.minecraft.server.v1_16_R3.EntityPlayer; import net.minecraft.server.v1_16_R3.EnumGamemode; import net.minecraft.server.v1_16_R3.EnumItemSlot; import net.minecraft.server.v1_16_R3.EnumProtocolDirection; +import net.minecraft.server.v1_16_R3.GenericAttributes; import net.minecraft.server.v1_16_R3.IBlockData; import net.minecraft.server.v1_16_R3.IChatBaseComponent; import net.minecraft.server.v1_16_R3.ItemStack; @@ -75,6 +74,7 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable public EntityHumanNPC(MinecraftServer minecraftServer, WorldServer world, GameProfile gameProfile, PlayerInteractManager playerInteractManager, NPC npc) { super(minecraftServer, world, gameProfile, playerInteractManager); + this.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED).setValue(0.3D); this.npc = (CitizensNPC) npc; if (npc != null) { ai = new BasicMobAI(this); @@ -235,15 +235,11 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable } private void initialise(MinecraftServer minecraftServer) { - Socket socket = new EmptySocket(); - NetworkManager conn = null; try { - conn = new EmptyNetworkManager(EnumProtocolDirection.CLIENTBOUND); + NetworkManager conn = new EmptyNetworkManager(EnumProtocolDirection.CLIENTBOUND); playerConnection = new EmptyNetHandler(minecraftServer, conn, this); conn.setPacketListener(playerConnection); - socket.close(); } catch (IOException e) { - // swallow } invulnerableTicks = 0; NMS.setStepHeight(getBukkitEntity(), 1); // the default (0) breaks step climbing @@ -312,7 +308,7 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable if (!navigating && getBukkitEntity() != null && (!npc.hasTrait(Gravity.class) || npc.getOrAddTrait(Gravity.class).hasGravity()) && Util.isLoaded(getBukkitEntity().getLocation(LOADED_LOCATION)) - && SpigotUtil.checkYSafe(locY(), getBukkitEntity().getWorld())) { + && (!npc.isProtected() || SpigotUtil.checkYSafe(locY(), getBukkitEntity().getWorld()))) { moveWithFallDamage(new Vec3D(0, 0, 0)); } Vec3D mot = getMot(); diff --git a/v1_16_R3/src/main/java/net/citizensnpcs/nms/v1_16_R3/util/EntityMoveControl.java b/v1_16_R3/src/main/java/net/citizensnpcs/nms/v1_16_R3/util/EntityMoveControl.java index 4a97fe5e8..d666df8a8 100644 --- a/v1_16_R3/src/main/java/net/citizensnpcs/nms/v1_16_R3/util/EntityMoveControl.java +++ b/v1_16_R3/src/main/java/net/citizensnpcs/nms/v1_16_R3/util/EntityMoveControl.java @@ -50,7 +50,6 @@ public class EntityMoveControl extends ControllerMove { this.a.yaw = a(this.a.yaw, f, 90.0F); NMS.setHeadYaw(a.getBukkitEntity(), this.a.yaw); AttributeModifiable speed = this.a.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED); - speed.setValue(0.3D * this.e); float movement = (float) (this.e * speed.getValue()); this.a.q(movement); this.a.aT = movement; diff --git a/v1_17_R1/src/main/java/net/citizensnpcs/nms/v1_17_R1/entity/EntityHumanNPC.java b/v1_17_R1/src/main/java/net/citizensnpcs/nms/v1_17_R1/entity/EntityHumanNPC.java index e6cb4796d..162aba42b 100644 --- a/v1_17_R1/src/main/java/net/citizensnpcs/nms/v1_17_R1/entity/EntityHumanNPC.java +++ b/v1_17_R1/src/main/java/net/citizensnpcs/nms/v1_17_R1/entity/EntityHumanNPC.java @@ -2,7 +2,6 @@ package net.citizensnpcs.nms.v1_17_R1.entity; import java.io.IOException; import java.lang.invoke.MethodHandle; -import java.net.Socket; import java.util.List; import org.bukkit.Bukkit; @@ -36,7 +35,6 @@ import net.citizensnpcs.npc.skin.SkinPacketTracker; import net.citizensnpcs.npc.skin.SkinnableEntity; import net.citizensnpcs.trait.Gravity; import net.citizensnpcs.trait.SkinTrait; -import net.citizensnpcs.util.EmptySocket; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; @@ -133,7 +131,7 @@ public class EntityHumanNPC extends ServerPlayer implements NPCHolder, Skinnable if (!navigating && getBukkitEntity() != null && (!npc.hasTrait(Gravity.class) || npc.getOrAddTrait(Gravity.class).hasGravity()) && Util.isLoaded(getBukkitEntity().getLocation(LOADED_LOCATION)) - && SpigotUtil.checkYSafe(getY(), getBukkitEntity().getWorld())) { + && (!npc.isProtected() || SpigotUtil.checkYSafe(getY(), getBukkitEntity().getWorld()))) { moveWithFallDamage(Vec3.ZERO); } Vec3 mot = getDeltaMovement(); @@ -256,13 +254,10 @@ public class EntityHumanNPC extends ServerPlayer implements NPCHolder, Skinnable } private void initialise(MinecraftServer minecraftServer) { - Socket socket = new EmptySocket(); - EmptyNetworkManager conn = null; try { - conn = new EmptyNetworkManager(PacketFlow.CLIENTBOUND); + EmptyNetworkManager conn = new EmptyNetworkManager(PacketFlow.CLIENTBOUND); connection = new EmptyNetHandler(minecraftServer, conn, this); conn.setListener(connection); - socket.close(); } catch (IOException e) { // swallow } diff --git a/v1_18_R2/pom.xml b/v1_18_R2/pom.xml index 532de4afe..0e70aee77 100644 --- a/v1_18_R2/pom.xml +++ b/v1_18_R2/pom.xml @@ -6,7 +6,7 @@ net.citizensnpcs citizens-parent - 2.0.32-SNAPSHOT + 2.0.33-SNAPSHOT citizens-v1_18_R2 diff --git a/v1_18_R2/src/main/java/net/citizensnpcs/nms/v1_18_R2/entity/EntityHumanNPC.java b/v1_18_R2/src/main/java/net/citizensnpcs/nms/v1_18_R2/entity/EntityHumanNPC.java index eb533817b..8cd5a5142 100644 --- a/v1_18_R2/src/main/java/net/citizensnpcs/nms/v1_18_R2/entity/EntityHumanNPC.java +++ b/v1_18_R2/src/main/java/net/citizensnpcs/nms/v1_18_R2/entity/EntityHumanNPC.java @@ -2,7 +2,6 @@ package net.citizensnpcs.nms.v1_18_R2.entity; import java.io.IOException; import java.lang.invoke.MethodHandle; -import java.net.Socket; import java.util.List; import org.bukkit.Bukkit; @@ -37,7 +36,6 @@ import net.citizensnpcs.npc.skin.SkinPacketTracker; import net.citizensnpcs.npc.skin.SkinnableEntity; import net.citizensnpcs.trait.Gravity; import net.citizensnpcs.trait.SkinTrait; -import net.citizensnpcs.util.EmptySocket; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; @@ -134,7 +132,7 @@ public class EntityHumanNPC extends ServerPlayer implements NPCHolder, Skinnable if (!navigating && getBukkitEntity() != null && (!npc.hasTrait(Gravity.class) || npc.getOrAddTrait(Gravity.class).hasGravity()) && Util.isLoaded(getBukkitEntity().getLocation(LOADED_LOCATION)) - && SpigotUtil.checkYSafe(getY(), getBukkitEntity().getWorld())) { + && (!npc.isProtected() || SpigotUtil.checkYSafe(getY(), getBukkitEntity().getWorld()))) { moveWithFallDamage(Vec3.ZERO); } Vec3 mot = getDeltaMovement(); @@ -256,15 +254,11 @@ public class EntityHumanNPC extends ServerPlayer implements NPCHolder, Skinnable } private void initialise(MinecraftServer minecraftServer) { - Socket socket = new EmptySocket(); - EmptyNetworkManager conn = null; try { - conn = new EmptyNetworkManager(PacketFlow.CLIENTBOUND); + EmptyNetworkManager conn = new EmptyNetworkManager(PacketFlow.CLIENTBOUND); connection = new EmptyNetHandler(minecraftServer, conn, this); conn.setListener(connection); - socket.close(); } catch (IOException e) { - // swallow } this.invulnerableTime = 0; NMS.setStepHeight(getBukkitEntity(), 1); // the default (0) breaks step climbing diff --git a/v1_19_R3/pom.xml b/v1_19_R3/pom.xml index 6b1f7e746..c5a844e11 100644 --- a/v1_19_R3/pom.xml +++ b/v1_19_R3/pom.xml @@ -4,7 +4,7 @@ net.citizensnpcs citizens-parent - 2.0.32-SNAPSHOT + 2.0.33-SNAPSHOT citizens-v1_19_R3 diff --git a/v1_19_R3/src/main/java/net/citizensnpcs/nms/v1_19_R3/entity/EntityHumanNPC.java b/v1_19_R3/src/main/java/net/citizensnpcs/nms/v1_19_R3/entity/EntityHumanNPC.java index d96068b63..b289bd6b3 100644 --- a/v1_19_R3/src/main/java/net/citizensnpcs/nms/v1_19_R3/entity/EntityHumanNPC.java +++ b/v1_19_R3/src/main/java/net/citizensnpcs/nms/v1_19_R3/entity/EntityHumanNPC.java @@ -2,7 +2,6 @@ package net.citizensnpcs.nms.v1_19_R3.entity; import java.io.IOException; import java.lang.invoke.MethodHandle; -import java.net.Socket; import java.util.List; import org.bukkit.Bukkit; @@ -35,7 +34,6 @@ import net.citizensnpcs.npc.skin.SkinPacketTracker; import net.citizensnpcs.npc.skin.SkinnableEntity; import net.citizensnpcs.trait.Gravity; import net.citizensnpcs.trait.SkinTrait; -import net.citizensnpcs.util.EmptySocket; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; @@ -123,7 +121,7 @@ public class EntityHumanNPC extends ServerPlayer implements NPCHolder, Skinnable if (!navigating && getBukkitEntity() != null && (!npc.hasTrait(Gravity.class) || npc.getOrAddTrait(Gravity.class).hasGravity()) && Util.isLoaded(getBukkitEntity().getLocation(LOADED_LOCATION)) - && SpigotUtil.checkYSafe(getY(), getBukkitEntity().getWorld())) { + && (!npc.isProtected() || SpigotUtil.checkYSafe(getY(), getBukkitEntity().getWorld()))) { moveWithFallDamage(Vec3.ZERO); } Vec3 mot = getDeltaMovement(); @@ -238,15 +236,11 @@ public class EntityHumanNPC extends ServerPlayer implements NPCHolder, Skinnable } private void initialise(MinecraftServer minecraftServer) { - Socket socket = new EmptySocket(); - EmptyNetworkManager conn = null; try { - conn = new EmptyNetworkManager(PacketFlow.CLIENTBOUND); + EmptyNetworkManager conn = new EmptyNetworkManager(PacketFlow.CLIENTBOUND); connection = new EmptyNetHandler(minecraftServer, conn, this); conn.setListener(connection); - socket.close(); } catch (IOException e) { - // swallow } this.invulnerableTime = 0; NMS.setStepHeight(getBukkitEntity(), 1); // the default (0) breaks step climbing diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/network/EmptyNetHandler.java b/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/network/EmptyNetHandler.java deleted file mode 100644 index a6eca6bad..000000000 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/network/EmptyNetHandler.java +++ /dev/null @@ -1,17 +0,0 @@ -package net.citizensnpcs.nms.v1_20_R1.network; - -import net.minecraft.network.Connection; -import net.minecraft.network.protocol.Packet; -import net.minecraft.server.MinecraftServer; -import net.minecraft.server.level.ServerPlayer; -import net.minecraft.server.network.ServerGamePacketListenerImpl; - -public class EmptyNetHandler extends ServerGamePacketListenerImpl { - public EmptyNetHandler(MinecraftServer minecraftServer, Connection networkManager, ServerPlayer entityPlayer) { - super(minecraftServer, networkManager, entityPlayer); - } - - @Override - public void send(Packet packet) { - } -} \ No newline at end of file diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/network/EmptyNetworkManager.java b/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/network/EmptyNetworkManager.java deleted file mode 100644 index c1a989388..000000000 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/network/EmptyNetworkManager.java +++ /dev/null @@ -1,25 +0,0 @@ -package net.citizensnpcs.nms.v1_20_R1.network; - -import java.io.IOException; - -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; -import net.minecraft.network.Connection; -import net.minecraft.network.PacketSendListener; -import net.minecraft.network.protocol.Packet; -import net.minecraft.network.protocol.PacketFlow; - -public class EmptyNetworkManager extends Connection { - public EmptyNetworkManager(PacketFlow flag) throws IOException { - super(flag); - NMSImpl.initNetworkManager(this); - } - - @Override - public boolean isConnected() { - return true; - } - - @Override - public void send(Packet packet, PacketSendListener genericfuturelistener) { - } -} \ No newline at end of file diff --git a/v1_20_R1/pom.xml b/v1_20_R2/pom.xml similarity index 96% rename from v1_20_R1/pom.xml rename to v1_20_R2/pom.xml index fbf490379..b977498a8 100644 --- a/v1_20_R1/pom.xml +++ b/v1_20_R2/pom.xml @@ -4,12 +4,12 @@ net.citizensnpcs citizens-parent - 2.0.32-SNAPSHOT + 2.0.33-SNAPSHOT - citizens-v1_20_R1 + citizens-v1_20_R2 UTF-8 - 1.20.1-R0.1-SNAPSHOT + 1.20.2-R0.1-SNAPSHOT diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/AllayController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/AllayController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/AllayController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/AllayController.java index c4483abf2..438177914 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/AllayController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/AllayController.java @@ -1,9 +1,9 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftAllay; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftAllay; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import com.google.common.collect.Lists; @@ -11,15 +11,15 @@ import com.mojang.datafixers.util.Pair; import net.citizensnpcs.api.CitizensAPI; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.protocol.game.ClientboundSetEquipmentPacket; import net.minecraft.server.level.ServerLevel; @@ -225,7 +225,7 @@ public class AllayController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ArmorStandController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ArmorStandController.java similarity index 88% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ArmorStandController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ArmorStandController.java index 47b1a2d0a..50ec91c71 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ArmorStandController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ArmorStandController.java @@ -1,22 +1,22 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftArmorStand; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftArmorStand; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.event.player.PlayerInteractEntityEvent; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.MobAI; -import net.citizensnpcs.nms.v1_20_R1.util.MobAI.ForwardingMobAI; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.MobAI; +import net.citizensnpcs.nms.v1_20_R2.util.MobAI.ForwardingMobAI; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -127,7 +127,7 @@ public class ArmorStandController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/AxolotlController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/AxolotlController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/AxolotlController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/AxolotlController.java index 30f2551f0..b2a826fcb 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/AxolotlController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/AxolotlController.java @@ -1,23 +1,23 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftAxolotl; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftAxolotl; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import com.mojang.serialization.Dynamic; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -220,7 +220,7 @@ public class AxolotlController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/BatController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/BatController.java similarity index 92% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/BatController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/BatController.java index 00426dd2b..a84c7f719 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/BatController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/BatController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftBat; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftBat; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -174,7 +174,7 @@ public class BatController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/BeeController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/BeeController.java similarity index 92% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/BeeController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/BeeController.java index d9f271ffa..133a533f5 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/BeeController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/BeeController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftBee; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftBee; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -171,7 +171,7 @@ public class BeeController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/BlazeController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/BlazeController.java similarity index 92% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/BlazeController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/BlazeController.java index 74652f7ed..b87ff3852 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/BlazeController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/BlazeController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftBlaze; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftBlaze; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -166,7 +166,7 @@ public class BlazeController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/CamelController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/CamelController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/CamelController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/CamelController.java index a34b939ef..26e1dfc5d 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/CamelController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/CamelController.java @@ -1,16 +1,16 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; import org.bukkit.Location; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftCamel; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftCamel; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.trait.Controllable; @@ -18,7 +18,7 @@ import net.citizensnpcs.trait.HorseModifiers; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -248,7 +248,7 @@ public class CamelController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/CatController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/CatController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/CatController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/CatController.java index d67cd5f76..705b49bfe 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/CatController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/CatController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftCat; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftCat; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -203,7 +203,7 @@ public class CatController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/CaveSpiderController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/CaveSpiderController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/CaveSpiderController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/CaveSpiderController.java index 1a60ceb8d..8b6972c08 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/CaveSpiderController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/CaveSpiderController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftCaveSpider; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftCaveSpider; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -202,7 +202,7 @@ public class CaveSpiderController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ChickenController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ChickenController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ChickenController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ChickenController.java index 36f5c22a2..afc68a388 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ChickenController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ChickenController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftChicken; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftChicken; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -211,7 +211,7 @@ public class ChickenController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/CodController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/CodController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/CodController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/CodController.java index 2b3aa909c..93a2bbe16 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/CodController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/CodController.java @@ -1,22 +1,22 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftCod; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftCod; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.EntityMoveControl; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.EntityMoveControl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -240,7 +240,7 @@ public class CodController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/CowController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/CowController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/CowController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/CowController.java index 440472de3..f033f77ce 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/CowController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/CowController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftCow; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftCow; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -219,7 +219,7 @@ public class CowController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/CreeperController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/CreeperController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/CreeperController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/CreeperController.java index 010bb94cc..61c3d14b8 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/CreeperController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/CreeperController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftCreeper; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftCreeper; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -214,7 +214,7 @@ public class CreeperController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/DolphinController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/DolphinController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/DolphinController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/DolphinController.java index e30774b0d..e03f9eb3f 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/DolphinController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/DolphinController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftDolphin; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftDolphin; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -200,7 +200,7 @@ public class DolphinController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/DrownedController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/DrownedController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/DrownedController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/DrownedController.java index b10790826..7b15c0be9 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/DrownedController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/DrownedController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftDrowned; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftDrowned; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -192,7 +192,7 @@ public class DrownedController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/EnderDragonController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/EnderDragonController.java similarity index 88% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/EnderDragonController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/EnderDragonController.java index 149ef3f20..eeb6fda56 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/EnderDragonController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/EnderDragonController.java @@ -1,24 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; - -import java.lang.invoke.MethodHandle; -import java.util.List; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEnderDragon; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEnderDragon; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.trait.versioned.EnderDragonTrait; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -130,18 +126,18 @@ public class EnderDragonController extends MobEntityController { } if (npc.data().get(NPC.Metadata.COLLIDABLE, false)) { try { - KNOCKBACK.invoke(this, + NMSImpl.ENDERDRAGON_KNOCKBACK.invoke(this, this.level().getEntities(this, subEntities[6].getBoundingBox().inflate(4.0, 2.0, 4.0).move(0.0, -2.0, 0.0), EntitySelector.NO_CREATIVE_OR_SPECTATOR)); - KNOCKBACK.invoke(this, + NMSImpl.ENDERDRAGON_KNOCKBACK.invoke(this, this.level().getEntities(this, subEntities[7].getBoundingBox().inflate(4.0, 2.0, 4.0).move(0.0, -2.0, 0.0), EntitySelector.NO_CREATIVE_OR_SPECTATOR)); - HURT.invoke(this, this.level().getEntities(this, subEntities[0].getBoundingBox().inflate(1.0), - EntitySelector.NO_CREATIVE_OR_SPECTATOR)); - HURT.invoke(this, this.level().getEntities(this, subEntities[1].getBoundingBox().inflate(1.0), - EntitySelector.NO_CREATIVE_OR_SPECTATOR)); + NMSImpl.ENDERDRAGON_HURT.invoke(this, this.level().getEntities(this, + subEntities[0].getBoundingBox().inflate(1.0), EntitySelector.NO_CREATIVE_OR_SPECTATOR)); + NMSImpl.ENDERDRAGON_HURT.invoke(this, this.level().getEntities(this, + subEntities[1].getBoundingBox().inflate(1.0), EntitySelector.NO_CREATIVE_OR_SPECTATOR)); } catch (Throwable t) { t.printStackTrace(); } @@ -262,7 +258,7 @@ public class EnderDragonController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); @@ -280,8 +276,5 @@ public class EnderDragonController extends MobEntityController { } return res; } - - private static final MethodHandle HURT = NMS.getMethodHandle(EnderDragon.class, "c", true, List.class); - private static final MethodHandle KNOCKBACK = NMS.getMethodHandle(EnderDragon.class, "b", true, List.class); } } diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/EndermanController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/EndermanController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/EndermanController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/EndermanController.java index 24b4fa603..53c1e880f 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/EndermanController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/EndermanController.java @@ -1,24 +1,24 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import java.util.Optional; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEnderman; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEnderman; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.event.player.PlayerTeleportEvent; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -213,7 +213,7 @@ public class EndermanController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/EndermiteController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/EndermiteController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/EndermiteController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/EndermiteController.java index 4b5ef58e2..3db8118c3 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/EndermiteController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/EndermiteController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEndermite; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEndermite; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -201,7 +201,7 @@ public class EndermiteController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/EntityHumanNPC.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/EntityHumanNPC.java similarity index 91% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/EntityHumanNPC.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/EntityHumanNPC.java index db1b1a392..4fbf07393 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/EntityHumanNPC.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/EntityHumanNPC.java @@ -1,13 +1,12 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import java.io.IOException; import java.lang.invoke.MethodHandle; -import java.net.Socket; import java.util.List; 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 org.bukkit.entity.Player; import org.bukkit.metadata.MetadataValue; import org.bukkit.plugin.Plugin; @@ -21,20 +20,19 @@ import net.citizensnpcs.api.npc.NPC; import net.citizensnpcs.api.npc.NPC.NPCUpdate; import net.citizensnpcs.api.trait.trait.Inventory; import net.citizensnpcs.api.util.SpigotUtil; -import net.citizensnpcs.nms.v1_20_R1.network.EmptyNetHandler; -import net.citizensnpcs.nms.v1_20_R1.network.EmptyNetworkManager; -import net.citizensnpcs.nms.v1_20_R1.util.EmptyAdvancementDataPlayer; -import net.citizensnpcs.nms.v1_20_R1.util.EmptyServerStatsCounter; -import net.citizensnpcs.nms.v1_20_R1.util.MobAI; -import net.citizensnpcs.nms.v1_20_R1.util.MobAI.ForwardingMobAI; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.network.EmptyConnection; +import net.citizensnpcs.nms.v1_20_R2.network.EmptyPacketListener; +import net.citizensnpcs.nms.v1_20_R2.util.EmptyAdvancementDataPlayer; +import net.citizensnpcs.nms.v1_20_R2.util.EmptyServerStatsCounter; +import net.citizensnpcs.nms.v1_20_R2.util.MobAI; +import net.citizensnpcs.nms.v1_20_R2.util.MobAI.ForwardingMobAI; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.npc.skin.SkinPacketTracker; import net.citizensnpcs.npc.skin.SkinnableEntity; import net.citizensnpcs.trait.Gravity; import net.citizensnpcs.trait.SkinTrait; -import net.citizensnpcs.util.EmptySocket; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; @@ -43,9 +41,11 @@ import net.minecraft.network.chat.MutableComponent; import net.minecraft.network.chat.contents.LiteralContents; import net.minecraft.network.protocol.PacketFlow; import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ClientInformation; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; import net.minecraft.server.level.ServerPlayerGameMode; +import net.minecraft.server.network.CommonListenerCookie; import net.minecraft.sounds.SoundEvent; import net.minecraft.stats.ServerStatsCounter; import net.minecraft.tags.TagKey; @@ -65,8 +65,9 @@ public class EntityHumanNPC extends ServerPlayer implements NPCHolder, Skinnable private final SkinPacketTracker skinTracker; private EmptyServerStatsCounter statsCache; - public EntityHumanNPC(MinecraftServer minecraftServer, ServerLevel world, GameProfile gameProfile, NPC npc) { - super(minecraftServer, world, gameProfile); + public EntityHumanNPC(MinecraftServer minecraftServer, ServerLevel world, GameProfile gameProfile, + ClientInformation ci, NPC npc) { + super(minecraftServer, world, gameProfile, ci); this.npc = (CitizensNPC) npc; if (npc != null) { ai = new BasicMobAI(this); @@ -76,7 +77,7 @@ public class EntityHumanNPC extends ServerPlayer implements NPCHolder, Skinnable } catch (Throwable e) { e.printStackTrace(); } - initialise(minecraftServer); + initialise(minecraftServer, ci); } else { skinTracker = null; } @@ -101,9 +102,9 @@ public class EntityHumanNPC extends ServerPlayer implements NPCHolder, Skinnable public void die(DamageSource damagesource) { // players that die are not normally removed from the world. when the // NPC dies, we are done with the instance and it should be removed. - if (dead) { + if (dead) return; - } + super.die(damagesource); Bukkit.getScheduler().runTaskLater(CitizensAPI.getPlugin(), () -> { ((ServerLevel) level()).removePlayerImmediately(EntityHumanNPC.this, RemovalReason.KILLED); @@ -117,26 +118,30 @@ public class EntityHumanNPC extends ServerPlayer implements NPCHolder, Skinnable super.doTick(); return; } + super.baseTick(); boolean navigating = npc.getNavigator().isNavigating() || ai.getMoveControl().hasWanted(); if (!navigating && getBukkitEntity() != null && (!npc.hasTrait(Gravity.class) || npc.getOrAddTrait(Gravity.class).hasGravity()) && Util.isLoaded(getBukkitEntity().getLocation()) - && SpigotUtil.checkYSafe(getY(), getBukkitEntity().getWorld())) { + && (!npc.isProtected() || SpigotUtil.checkYSafe(getY(), getBukkitEntity().getWorld()))) { moveWithFallDamage(Vec3.ZERO); } + Vec3 mot = getDeltaMovement(); if (Math.abs(mot.x) < EPSILON && Math.abs(mot.y) < EPSILON && Math.abs(mot.z) < EPSILON) { setDeltaMovement(Vec3.ZERO); } + if (navigating) { if (!ai.getNavigation().isDone()) { ai.getNavigation().tick(); } moveOnCurrentHeading(); } + tickAI(); - detectEquipmentUpdates(); + detectEquipmentUpdatesPublic(); noPhysics = isSpectator(); if (isSpectator()) { this.onGround = false; @@ -231,16 +236,13 @@ public class EntityHumanNPC extends ServerPlayer implements NPCHolder, Skinnable return damaged; } - private void initialise(MinecraftServer minecraftServer) { - Socket socket = new EmptySocket(); - EmptyNetworkManager conn = null; + private void initialise(MinecraftServer minecraftServer, ClientInformation clientInfo) { try { - conn = new EmptyNetworkManager(PacketFlow.CLIENTBOUND); - connection = new EmptyNetHandler(minecraftServer, conn, this); - conn.setListener(connection); - socket.close(); + EmptyConnection conn = new EmptyConnection(PacketFlow.CLIENTBOUND); + connection = new EmptyPacketListener(minecraftServer, conn, this, + new CommonListenerCookie(getProfile(), 0, clientInfo)); } catch (IOException e) { - // swallow + e.printStackTrace(); } this.invulnerableTime = 0; NMS.setStepHeight(getBukkitEntity(), 1); // the default (0) breaks step climbing @@ -253,9 +255,9 @@ public class EntityHumanNPC extends ServerPlayer implements NPCHolder, Skinnable @Override public boolean isInWall() { - if (npc == null || noPhysics || isSleeping()) { + if (npc == null || noPhysics || isSleeping()) return super.isInWall(); - } + return Util.inBlock(getBukkitEntity()); } @@ -356,6 +358,7 @@ public class EntityHumanNPC extends ServerPlayer implements NPCHolder, Skinnable super.tick(); if (npc == null) return; + Bukkit.getServer().getPluginManager().unsubscribeFromPermission("bukkit.broadcast.user", getBukkitEntity()); updatePackets(npc.getNavigator().isNavigating()); npc.update(); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/EvokerController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/EvokerController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/EvokerController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/EvokerController.java index db8ac928f..004a21757 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/EvokerController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/EvokerController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEvoker; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEvoker; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -187,7 +187,7 @@ public class EvokerController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/FoxController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/FoxController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/FoxController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/FoxController.java index 4dfc18729..33d4a6948 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/FoxController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/FoxController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftFox; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftFox; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -197,7 +197,7 @@ public class FoxController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/FrogController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/FrogController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/FrogController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/FrogController.java index f95f5969b..0873b18e0 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/FrogController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/FrogController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftFrog; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftFrog; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -200,7 +200,7 @@ public class FrogController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/GhastController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/GhastController.java similarity index 92% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/GhastController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/GhastController.java index 6936a9a94..b059c7dfd 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/GhastController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/GhastController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftGhast; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftGhast; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -166,7 +166,7 @@ public class GhastController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/GiantController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/GiantController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/GiantController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/GiantController.java index ad3ea0518..2bee4dce2 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/GiantController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/GiantController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftGiant; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftGiant; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -195,7 +195,7 @@ public class GiantController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/GlowSquidController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/GlowSquidController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/GlowSquidController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/GlowSquidController.java index 76894e241..c29f28089 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/GlowSquidController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/GlowSquidController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftGlowSquid; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftGlowSquid; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -195,7 +195,7 @@ public class GlowSquidController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/GoatController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/GoatController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/GoatController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/GoatController.java index b7a13f8dc..1b24e9b29 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/GoatController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/GoatController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftGoat; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftGoat; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -197,7 +197,7 @@ public class GoatController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/GuardianController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/GuardianController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/GuardianController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/GuardianController.java index 07b2fbfd6..8353a650d 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/GuardianController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/GuardianController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftGuardian; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftGuardian; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -202,7 +202,7 @@ public class GuardianController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/GuardianElderController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/GuardianElderController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/GuardianElderController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/GuardianElderController.java index fd158ead3..b3e6a6f54 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/GuardianElderController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/GuardianElderController.java @@ -1,21 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftElderGuardian; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftElderGuardian; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -202,7 +201,7 @@ public class GuardianElderController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HoglinController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HoglinController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HoglinController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HoglinController.java index a88e1a695..73a5384e9 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HoglinController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HoglinController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftHoglin; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftHoglin; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -192,7 +192,7 @@ public class HoglinController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HorseController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HorseController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HorseController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HorseController.java index 468155893..56fc76250 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HorseController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HorseController.java @@ -1,16 +1,16 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; import org.bukkit.Location; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftHorse; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftHorse; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.trait.Controllable; @@ -18,7 +18,7 @@ import net.citizensnpcs.trait.HorseModifiers; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -243,7 +243,7 @@ public class HorseController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HorseDonkeyController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HorseDonkeyController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HorseDonkeyController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HorseDonkeyController.java index 89dce95d0..17c687b10 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HorseDonkeyController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HorseDonkeyController.java @@ -1,16 +1,16 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; import org.bukkit.Location; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftDonkey; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftDonkey; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.trait.Controllable; @@ -18,7 +18,7 @@ import net.citizensnpcs.trait.HorseModifiers; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -243,7 +243,7 @@ public class HorseDonkeyController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HorseMuleController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HorseMuleController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HorseMuleController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HorseMuleController.java index 89d3bf7ce..6b5e364cf 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HorseMuleController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HorseMuleController.java @@ -1,16 +1,16 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; import org.bukkit.Location; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftMule; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftMule; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.trait.Controllable; @@ -18,7 +18,7 @@ import net.citizensnpcs.trait.HorseModifiers; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -242,7 +242,7 @@ public class HorseMuleController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HorseSkeletonController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HorseSkeletonController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HorseSkeletonController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HorseSkeletonController.java index bcd51af13..88dfbd64d 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HorseSkeletonController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HorseSkeletonController.java @@ -1,16 +1,16 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; import org.bukkit.Location; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftSkeletonHorse; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftSkeletonHorse; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.trait.Controllable; @@ -18,7 +18,7 @@ import net.citizensnpcs.trait.HorseModifiers; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -242,7 +242,7 @@ public class HorseSkeletonController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HorseZombieController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HorseZombieController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HorseZombieController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HorseZombieController.java index 425c9d906..700c3fb3d 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HorseZombieController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HorseZombieController.java @@ -1,16 +1,16 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; import org.bukkit.Location; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftZombieHorse; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftZombieHorse; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.trait.Controllable; @@ -18,7 +18,7 @@ import net.citizensnpcs.trait.HorseModifiers; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -243,7 +243,7 @@ public class HorseZombieController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HumanController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HumanController.java similarity index 90% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HumanController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HumanController.java index 6c5c09d00..640a5f7e0 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/HumanController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/HumanController.java @@ -1,10 +1,10 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import java.util.UUID; import org.bukkit.Bukkit; import org.bukkit.Location; -import org.bukkit.craftbukkit.v1_20_R1.CraftWorld; +import org.bukkit.craftbukkit.v1_20_R2.CraftWorld; import org.bukkit.entity.Entity; import org.bukkit.entity.Player; @@ -19,6 +19,7 @@ import net.citizensnpcs.trait.ScoreboardTrait; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ClientInformation; import net.minecraft.server.level.ServerLevel; public class HumanController extends AbstractEntityController { @@ -40,7 +41,8 @@ public class HumanController extends AbstractEntityController { npc.getOrAddTrait(ScoreboardTrait.class).createTeam(name); } final GameProfile profile = new GameProfile(uuid, name); - final EntityHumanNPC handle = new EntityHumanNPC(MinecraftServer.getServer(), nmsWorld, profile, npc); + final EntityHumanNPC handle = new EntityHumanNPC(MinecraftServer.getServer(), nmsWorld, profile, + ClientInformation.createDefault(), npc); Skin skin = handle.getSkinTracker().getSkin(); if (skin != null) { skin.apply(handle); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/IllusionerController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/IllusionerController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/IllusionerController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/IllusionerController.java index 6d1d8b22c..805ace668 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/IllusionerController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/IllusionerController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftIllusioner; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftIllusioner; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -187,7 +187,7 @@ public class IllusionerController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/IronGolemController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/IronGolemController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/IronGolemController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/IronGolemController.java index 84e391b27..d88495785 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/IronGolemController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/IronGolemController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftIronGolem; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftIronGolem; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -195,7 +195,7 @@ public class IronGolemController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/LlamaController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/LlamaController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/LlamaController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/LlamaController.java index 1b0e591ae..860734d76 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/LlamaController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/LlamaController.java @@ -1,16 +1,16 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; import org.bukkit.Location; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftLlama; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftLlama; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.trait.Controllable; @@ -18,7 +18,7 @@ import net.citizensnpcs.trait.HorseModifiers; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -242,7 +242,7 @@ public class LlamaController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/MagmaCubeController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/MagmaCubeController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/MagmaCubeController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/MagmaCubeController.java index a44a6097d..e00f61c57 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/MagmaCubeController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/MagmaCubeController.java @@ -1,22 +1,22 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftMagmaCube; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftMagmaCube; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.EntityMoveControl; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.EntityMoveControl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -203,7 +203,7 @@ public class MagmaCubeController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/MobEntityController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/MobEntityController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/MobEntityController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/MobEntityController.java index 8e3c8b5d5..113b14bea 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/MobEntityController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/MobEntityController.java @@ -1,4 +1,4 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import java.lang.reflect.Constructor; import java.util.Map; @@ -6,13 +6,13 @@ import java.util.WeakHashMap; import org.bukkit.Location; import org.bukkit.block.BlockFace; -import org.bukkit.craftbukkit.v1_20_R1.CraftWorld; +import org.bukkit.craftbukkit.v1_20_R2.CraftWorld; import org.bukkit.entity.Entity; import net.citizensnpcs.Settings.Setting; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; -import net.citizensnpcs.nms.v1_20_R1.util.PitchableLookControl; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.PitchableLookControl; import net.citizensnpcs.npc.AbstractEntityController; import net.citizensnpcs.trait.ScoreboardTrait; import net.minecraft.world.entity.EntityType; diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/MushroomCowController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/MushroomCowController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/MushroomCowController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/MushroomCowController.java index 919c9caa4..d7863444b 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/MushroomCowController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/MushroomCowController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftMushroomCow; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftMushroomCow; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -206,7 +206,7 @@ public class MushroomCowController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/OcelotController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/OcelotController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/OcelotController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/OcelotController.java index 3df3700d5..8da5bd5ba 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/OcelotController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/OcelotController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftOcelot; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftOcelot; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -203,7 +203,7 @@ public class OcelotController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PandaController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PandaController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PandaController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PandaController.java index 51a84a407..5eaf2c00a 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PandaController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PandaController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftPanda; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftPanda; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -197,7 +197,7 @@ public class PandaController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ParrotController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ParrotController.java similarity index 92% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ParrotController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ParrotController.java index 01f476aa7..64315c69b 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ParrotController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ParrotController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftParrot; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftParrot; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -177,7 +177,7 @@ public class ParrotController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PhantomController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PhantomController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PhantomController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PhantomController.java index 2152d6931..e6e657784 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PhantomController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PhantomController.java @@ -1,22 +1,22 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftPhantom; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftPhantom; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.EntityMoveControl; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.EntityMoveControl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -232,7 +232,7 @@ public class PhantomController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PigController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PigController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PigController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PigController.java index cce243b50..e86cfeb49 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PigController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PigController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftPig; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftPig; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -204,7 +204,7 @@ public class PigController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PigZombieController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PigZombieController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PigZombieController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PigZombieController.java index ffe16dfa5..067b34ea9 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PigZombieController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PigZombieController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftPigZombie; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftPigZombie; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -186,7 +186,7 @@ public class PigZombieController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PiglinBruteController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PiglinBruteController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PiglinBruteController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PiglinBruteController.java index d42b9ef3d..2ba33efe0 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PiglinBruteController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PiglinBruteController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftPiglinBrute; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftPiglinBrute; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -189,7 +189,7 @@ public class PiglinBruteController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PiglinController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PiglinController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PiglinController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PiglinController.java index e09c61f89..fe335b6c7 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PiglinController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PiglinController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftPiglin; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftPiglin; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -189,7 +189,7 @@ public class PiglinController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PillagerController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PillagerController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PillagerController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PillagerController.java index 0774e97ce..f17a695e2 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PillagerController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PillagerController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftPillager; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftPillager; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -197,7 +197,7 @@ public class PillagerController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PolarBearController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PolarBearController.java similarity index 92% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PolarBearController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PolarBearController.java index afb7db3f7..1ab24ee57 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PolarBearController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PolarBearController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftPolarBear; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftPolarBear; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -171,7 +171,7 @@ public class PolarBearController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PufferFishController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PufferFishController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PufferFishController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PufferFishController.java index 8ea4b5e4e..52b6e1b96 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/PufferFishController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/PufferFishController.java @@ -1,23 +1,23 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftPufferFish; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftPufferFish; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.EntityMoveControl; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.EntityMoveControl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.trait.versioned.PufferFishTrait; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -243,7 +243,7 @@ public class PufferFishController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/RabbitController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/RabbitController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/RabbitController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/RabbitController.java index b01b0b1a1..794656ebd 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/RabbitController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/RabbitController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftRabbit; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftRabbit; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -217,7 +217,7 @@ public class RabbitController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/RavagerController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/RavagerController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/RavagerController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/RavagerController.java index 80eb67af4..ad14131c3 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/RavagerController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/RavagerController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftRavager; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftRavager; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -202,7 +202,7 @@ public class RavagerController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SalmonController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SalmonController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SalmonController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SalmonController.java index 28773850f..ab523f106 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SalmonController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SalmonController.java @@ -1,22 +1,22 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftSalmon; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftSalmon; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.EntityMoveControl; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.EntityMoveControl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -231,7 +231,7 @@ public class SalmonController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SheepController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SheepController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SheepController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SheepController.java index f97b3d474..737a41928 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SheepController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SheepController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftSheep; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftSheep; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -196,7 +196,7 @@ public class SheepController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ShulkerController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ShulkerController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ShulkerController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ShulkerController.java index 3d161ad74..9954f042e 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ShulkerController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ShulkerController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftShulker; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftShulker; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -199,7 +199,7 @@ public class ShulkerController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SilverfishController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SilverfishController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SilverfishController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SilverfishController.java index a0da56a4a..ddda89b5a 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SilverfishController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SilverfishController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftSilverfish; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftSilverfish; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -195,7 +195,7 @@ public class SilverfishController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SkeletonController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SkeletonController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SkeletonController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SkeletonController.java index b4b778c48..88667bee4 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SkeletonController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SkeletonController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftSkeleton; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftSkeleton; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -195,7 +195,7 @@ public class SkeletonController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SkeletonStrayController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SkeletonStrayController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SkeletonStrayController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SkeletonStrayController.java index aa236acc8..508409ee5 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SkeletonStrayController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SkeletonStrayController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftStray; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftStray; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -195,7 +195,7 @@ public class SkeletonStrayController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SkeletonWitherController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SkeletonWitherController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SkeletonWitherController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SkeletonWitherController.java index c26d321c5..73779b9da 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SkeletonWitherController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SkeletonWitherController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftWitherSkeleton; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftWitherSkeleton; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -195,7 +195,7 @@ public class SkeletonWitherController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SlimeController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SlimeController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SlimeController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SlimeController.java index 8be4a9cb0..117cdfcd7 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SlimeController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SlimeController.java @@ -1,22 +1,22 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftSlime; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftSlime; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.EntityMoveControl; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.EntityMoveControl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -204,7 +204,7 @@ public class SlimeController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SnifferController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SnifferController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SnifferController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SnifferController.java index ba911f532..17efae144 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SnifferController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SnifferController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftSniffer; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftSniffer; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -213,7 +213,7 @@ public class SnifferController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SnowmanController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SnowmanController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SnowmanController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SnowmanController.java index 6bbee87a3..ea2214b54 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SnowmanController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SnowmanController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftSnowman; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftSnowman; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -195,7 +195,7 @@ public class SnowmanController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SpiderController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SpiderController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SpiderController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SpiderController.java index 5d87ad96f..10020af9a 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SpiderController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SpiderController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftSpider; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftSpider; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -195,7 +195,7 @@ public class SpiderController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SquidController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SquidController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SquidController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SquidController.java index 169c81589..693dcccb4 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/SquidController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/SquidController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftSquid; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftSquid; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -195,7 +195,7 @@ public class SquidController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/StriderController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/StriderController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/StriderController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/StriderController.java index 91800b9dc..0fb39b12a 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/StriderController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/StriderController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftStrider; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftStrider; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -186,7 +186,7 @@ public class StriderController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/TadpoleController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/TadpoleController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/TadpoleController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/TadpoleController.java index c2fe9e639..02d3c5da1 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/TadpoleController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/TadpoleController.java @@ -1,22 +1,22 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftTadpole; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftTadpole; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.EntityMoveControl; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.EntityMoveControl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -231,7 +231,7 @@ public class TadpoleController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/TraderLlamaController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/TraderLlamaController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/TraderLlamaController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/TraderLlamaController.java index 235435104..f019fb512 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/TraderLlamaController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/TraderLlamaController.java @@ -1,23 +1,23 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; import org.bukkit.Location; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftTraderLlama; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftTraderLlama; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.trait.HorseModifiers; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -215,7 +215,7 @@ public class TraderLlamaController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/TropicalFishController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/TropicalFishController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/TropicalFishController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/TropicalFishController.java index e61479756..3ab1e28fd 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/TropicalFishController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/TropicalFishController.java @@ -1,22 +1,22 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftTropicalFish; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftTropicalFish; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.EntityMoveControl; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.EntityMoveControl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -233,7 +233,7 @@ public class TropicalFishController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/TurtleController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/TurtleController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/TurtleController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/TurtleController.java index aab81367c..7d5b698ee 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/TurtleController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/TurtleController.java @@ -1,22 +1,22 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftTurtle; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftTurtle; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.EntityMoveControl; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.EntityMoveControl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -208,7 +208,7 @@ public class TurtleController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/VexController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/VexController.java similarity index 92% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/VexController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/VexController.java index 0a174e8a0..fdd19c7fd 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/VexController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/VexController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftVex; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftVex; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -164,7 +164,7 @@ public class VexController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/VillagerController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/VillagerController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/VillagerController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/VillagerController.java index 62a20ee49..3b98ca62f 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/VillagerController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/VillagerController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftVillager; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftVillager; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -233,7 +233,7 @@ public class VillagerController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/VindicatorController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/VindicatorController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/VindicatorController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/VindicatorController.java index 172a7e316..e2537a494 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/VindicatorController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/VindicatorController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftVindicator; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftVindicator; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -197,7 +197,7 @@ public class VindicatorController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/WanderingTraderController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/WanderingTraderController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/WanderingTraderController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/WanderingTraderController.java index a49261f52..61176857f 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/WanderingTraderController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/WanderingTraderController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftWanderingTrader; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftWanderingTrader; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -237,7 +237,7 @@ public class WanderingTraderController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/WardenController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/WardenController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/WardenController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/WardenController.java index 4c9251c1c..dd2ed643f 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/WardenController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/WardenController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftWarden; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftWarden; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -194,7 +194,7 @@ public class WardenController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/WitchController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/WitchController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/WitchController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/WitchController.java index 0fcc63e52..226632855 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/WitchController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/WitchController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftWitch; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftWitch; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -195,7 +195,7 @@ public class WitchController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/WitherController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/WitherController.java similarity index 92% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/WitherController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/WitherController.java index e666bbb78..99d8d7292 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/WitherController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/WitherController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftWither; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftWither; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -175,7 +175,7 @@ public class WitherController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/WolfController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/WolfController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/WolfController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/WolfController.java index f01176fc7..a0f56ab52 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/WolfController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/WolfController.java @@ -1,22 +1,22 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftWolf; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftWolf; import org.bukkit.event.entity.EntityTargetEvent; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.server.level.ServerLevel; @@ -204,7 +204,7 @@ public class WolfController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ZoglinController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ZoglinController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ZoglinController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ZoglinController.java index a5d7a91c2..0ef4b3314 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ZoglinController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ZoglinController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftZoglin; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftZoglin; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -188,7 +188,7 @@ public class ZoglinController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ZombieController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ZombieController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ZombieController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ZombieController.java index 9d5e5b463..55b97342e 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ZombieController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ZombieController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftZombie; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftZombie; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -186,7 +186,7 @@ public class ZombieController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ZombieHuskController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ZombieHuskController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ZombieHuskController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ZombieHuskController.java index a968635c3..f9d1ffa8d 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ZombieHuskController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ZombieHuskController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftHusk; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftHusk; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -186,7 +186,7 @@ public class ZombieHuskController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ZombieVillagerController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ZombieVillagerController.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ZombieVillagerController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ZombieVillagerController.java index 089216821..d55f79a4d 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/ZombieVillagerController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/ZombieVillagerController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity; +package net.citizensnpcs.nms.v1_20_R2.entity; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftVillagerZombie; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftVillagerZombie; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvent; @@ -187,7 +187,7 @@ public class ZombieVillagerController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/AreaEffectCloudController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/AreaEffectCloudController.java similarity index 87% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/AreaEffectCloudController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/AreaEffectCloudController.java index dfa5d6f06..500420ca5 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/AreaEffectCloudController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/AreaEffectCloudController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftAreaEffectCloud; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftAreaEffectCloud; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -108,7 +108,7 @@ public class AreaEffectCloudController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/BlockDisplayController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/BlockDisplayController.java similarity index 87% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/BlockDisplayController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/BlockDisplayController.java index 74f7021a4..92f404064 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/BlockDisplayController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/BlockDisplayController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftBlockDisplay; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftBlockDisplay; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -108,7 +108,7 @@ public class BlockDisplayController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/BoatController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/BoatController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/BoatController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/BoatController.java index ad58a769a..90ca7045c 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/BoatController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/BoatController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftBoat; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftBoat; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; @@ -173,7 +173,7 @@ public class BoatController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ChestBoatController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ChestBoatController.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ChestBoatController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ChestBoatController.java index 3fe2d9419..e3bbbeafc 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ChestBoatController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ChestBoatController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftChestBoat; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftChestBoat; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; @@ -174,7 +174,7 @@ public class ChestBoatController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/DragonFireballController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/DragonFireballController.java similarity index 88% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/DragonFireballController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/DragonFireballController.java index 789f8ce32..89022334a 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/DragonFireballController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/DragonFireballController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftDragonFireball; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftDragonFireball; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -117,7 +117,7 @@ public class DragonFireballController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/EggController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/EggController.java similarity index 89% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/EggController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/EggController.java index 43a8345c6..d867069f9 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/EggController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/EggController.java @@ -1,22 +1,22 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; import org.bukkit.Location; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.CraftWorld; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEgg; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.CraftWorld; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEgg; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.AbstractEntityController; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -122,7 +122,7 @@ public class EggController extends AbstractEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/EnderCrystalController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/EnderCrystalController.java similarity index 87% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/EnderCrystalController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/EnderCrystalController.java index a721b8853..2f893d247 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/EnderCrystalController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/EnderCrystalController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEnderCrystal; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEnderCrystal; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -108,7 +108,7 @@ public class EnderCrystalController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/EnderPearlController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/EnderPearlController.java similarity index 88% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/EnderPearlController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/EnderPearlController.java index 831d1a709..cd083df5d 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/EnderPearlController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/EnderPearlController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEnderPearl; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEnderPearl; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.entity.EnderPearl; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -109,7 +109,7 @@ public class EnderPearlController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/EnderSignalController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/EnderSignalController.java similarity index 87% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/EnderSignalController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/EnderSignalController.java index 5ffc6d105..24b890ad2 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/EnderSignalController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/EnderSignalController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEnderSignal; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEnderSignal; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.entity.EnderSignal; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -109,7 +109,7 @@ public class EnderSignalController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/EvokerFangsController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/EvokerFangsController.java similarity index 89% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/EvokerFangsController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/EvokerFangsController.java index c74802a4a..5921ece9b 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/EvokerFangsController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/EvokerFangsController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEvokerFangs; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEvokerFangs; import org.bukkit.event.player.PlayerInteractEntityEvent; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -117,7 +117,7 @@ public class EvokerFangsController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ExperienceOrbController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ExperienceOrbController.java similarity index 87% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ExperienceOrbController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ExperienceOrbController.java index 3750d087b..0d0e677ab 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ExperienceOrbController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ExperienceOrbController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftExperienceOrb; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftExperienceOrb; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -102,7 +102,7 @@ public class ExperienceOrbController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/FallingBlockController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/FallingBlockController.java similarity index 90% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/FallingBlockController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/FallingBlockController.java index 7d30aed02..524c1f511 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/FallingBlockController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/FallingBlockController.java @@ -1,23 +1,23 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; import org.bukkit.Location; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.CraftWorld; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftFallingBlock; -import org.bukkit.craftbukkit.v1_20_R1.util.CraftMagicNumbers; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.CraftWorld; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftFallingBlock; +import org.bukkit.craftbukkit.v1_20_R2.util.CraftMagicNumbers; import org.bukkit.entity.FallingBlock; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.AbstractEntityController; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -127,7 +127,7 @@ public class FallingBlockController extends AbstractEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/FireworkController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/FireworkController.java similarity index 87% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/FireworkController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/FireworkController.java index 5df179aa8..23db45cd1 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/FireworkController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/FireworkController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftFirework; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftFirework; import org.bukkit.entity.Firework; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -103,7 +103,7 @@ public class FireworkController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/FishingHookController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/FishingHookController.java similarity index 88% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/FishingHookController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/FishingHookController.java index 6cd10882a..93334b646 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/FishingHookController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/FishingHookController.java @@ -1,28 +1,28 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import java.util.UUID; import org.bukkit.Bukkit; import org.bukkit.Location; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.CraftWorld; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftFishHook; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.CraftWorld; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftFishHook; import org.bukkit.entity.FishHook; import org.bukkit.util.Vector; import com.mojang.authlib.GameProfile; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; import net.minecraft.nbt.CompoundTag; +import net.minecraft.server.level.ClientInformation; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; import net.minecraft.tags.TagKey; @@ -46,7 +46,7 @@ public class FishingHookController extends MobEntityController { protected org.bukkit.entity.Entity createEntity(Location at, NPC npc) { ServerLevel level = ((CraftWorld) at.getWorld()).getHandle(); ServerPlayer sp = new ServerPlayer(level.getServer(), level, - new GameProfile(UUID.randomUUID(), "dummyfishhook")) { + new GameProfile(UUID.randomUUID(), "dummyfishhook"), ClientInformation.createDefault()) { }; sp.setPos(at.getX(), at.getY(), at.getZ()); sp.setYRot(at.getYaw()); @@ -135,7 +135,7 @@ public class FishingHookController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/GlowItemFrameController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/GlowItemFrameController.java similarity index 89% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/GlowItemFrameController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/GlowItemFrameController.java index fd2f41780..f0639d196 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/GlowItemFrameController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/GlowItemFrameController.java @@ -1,23 +1,23 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; import org.bukkit.Location; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftGlowItemFrame; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftGlowItemFrame; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.ItemFrameController.EntityItemFrameNPC; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.ItemFrameController.EntityItemFrameNPC; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -119,7 +119,7 @@ public class GlowItemFrameController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/InteractionController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/InteractionController.java similarity index 87% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/InteractionController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/InteractionController.java index 9b2421b56..977db0575 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/InteractionController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/InteractionController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftInteraction; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftInteraction; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -102,7 +102,7 @@ public class InteractionController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ItemController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ItemController.java similarity index 89% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ItemController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ItemController.java index 5843673e7..2b6176094 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ItemController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ItemController.java @@ -1,23 +1,23 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; import org.bukkit.Location; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.CraftWorld; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftItem; -import org.bukkit.craftbukkit.v1_20_R1.inventory.CraftItemStack; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.CraftWorld; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftItem; +import org.bukkit.craftbukkit.v1_20_R2.inventory.CraftItemStack; import org.bukkit.entity.Item; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.AbstractEntityController; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -122,7 +122,7 @@ public class ItemController extends AbstractEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ItemDisplayController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ItemDisplayController.java similarity index 86% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ItemDisplayController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ItemDisplayController.java index ba3e83b49..2f00a0f8d 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ItemDisplayController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ItemDisplayController.java @@ -1,23 +1,23 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; import org.bukkit.Location; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.CraftWorld; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftItemDisplay; -import org.bukkit.craftbukkit.v1_20_R1.inventory.CraftItemStack; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.CraftWorld; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftItemDisplay; +import org.bukkit.craftbukkit.v1_20_R2.inventory.CraftItemStack; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -115,7 +115,7 @@ public class ItemDisplayController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ItemFrameController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ItemFrameController.java similarity index 90% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ItemFrameController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ItemFrameController.java index 5016b82d5..d09604e19 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ItemFrameController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ItemFrameController.java @@ -1,22 +1,22 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; import org.bukkit.Location; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftItemFrame; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftItemFrame; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -118,7 +118,7 @@ public class ItemFrameController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/LargeFireballController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/LargeFireballController.java similarity index 88% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/LargeFireballController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/LargeFireballController.java index ce98de5d4..592e8130e 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/LargeFireballController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/LargeFireballController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftLargeFireball; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftLargeFireball; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -111,7 +111,7 @@ public class LargeFireballController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/LeashController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/LeashController.java similarity index 88% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/LeashController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/LeashController.java index bfd1c773c..969a71516 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/LeashController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/LeashController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftLeash; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftLeash; import org.bukkit.entity.LeashHitch; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -108,7 +108,7 @@ public class LeashController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/LlamaSpitController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/LlamaSpitController.java similarity index 89% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/LlamaSpitController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/LlamaSpitController.java index 867db5c25..423e31302 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/LlamaSpitController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/LlamaSpitController.java @@ -1,22 +1,22 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; import org.bukkit.Location; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.CraftWorld; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftLlamaSpit; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.CraftWorld; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftLlamaSpit; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.AbstractEntityController; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -119,7 +119,7 @@ public class LlamaSpitController extends AbstractEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MarkerController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MarkerController.java similarity index 87% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MarkerController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MarkerController.java index a620db84d..50679959f 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MarkerController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MarkerController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftMarker; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftMarker; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -102,7 +102,7 @@ public class MarkerController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartChestController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartChestController.java similarity index 87% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartChestController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartChestController.java index 7e0322c3f..c60d1a711 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartChestController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartChestController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftMinecartChest; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftMinecartChest; import org.bukkit.entity.Minecart; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -103,7 +103,7 @@ public class MinecartChestController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartCommandController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartCommandController.java similarity index 88% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartCommandController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartCommandController.java index 7a42e4c9a..de973e8a2 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartCommandController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartCommandController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftMinecartCommand; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftMinecartCommand; import org.bukkit.entity.Minecart; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -103,7 +103,7 @@ public class MinecartCommandController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartFurnaceController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartFurnaceController.java similarity index 88% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartFurnaceController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartFurnaceController.java index 9208b5e8a..cbe23c19e 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartFurnaceController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartFurnaceController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftMinecartFurnace; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftMinecartFurnace; import org.bukkit.entity.Minecart; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -103,7 +103,7 @@ public class MinecartFurnaceController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartHopperController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartHopperController.java similarity index 91% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartHopperController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartHopperController.java index 0907822ed..de4a97aff 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartHopperController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartHopperController.java @@ -1,16 +1,16 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.entity.Minecart; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -90,7 +90,7 @@ public class MinecartHopperController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartRideableController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartRideableController.java similarity index 88% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartRideableController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartRideableController.java index 707f8e45e..56ec6a2fc 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartRideableController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartRideableController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftMinecartRideable; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftMinecartRideable; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -102,7 +102,7 @@ public class MinecartRideableController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartSpawnerController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartSpawnerController.java similarity index 91% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartSpawnerController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartSpawnerController.java index 6b668d76b..6ddd7f5e4 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartSpawnerController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartSpawnerController.java @@ -1,16 +1,16 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.entity.Minecart; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -90,7 +90,7 @@ public class MinecartSpawnerController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartTNTController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartTNTController.java similarity index 91% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartTNTController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartTNTController.java index 2da9d2065..134c116b9 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/MinecartTNTController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/MinecartTNTController.java @@ -1,16 +1,16 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.entity.Minecart; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -90,7 +90,7 @@ public class MinecartTNTController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/PaintingController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/PaintingController.java similarity index 88% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/PaintingController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/PaintingController.java index 4dae895af..2ff83a073 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/PaintingController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/PaintingController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftPainting; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftPainting; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -107,7 +107,7 @@ public class PaintingController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ShulkerBulletController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ShulkerBulletController.java similarity index 87% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ShulkerBulletController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ShulkerBulletController.java index d47c79af8..5b913fb2b 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ShulkerBulletController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ShulkerBulletController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftShulkerBullet; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftShulkerBullet; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -102,7 +102,7 @@ public class ShulkerBulletController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/SmallFireballController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/SmallFireballController.java similarity index 88% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/SmallFireballController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/SmallFireballController.java index 10860f2e7..b3196cf0f 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/SmallFireballController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/SmallFireballController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftSmallFireball; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftSmallFireball; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -102,7 +102,7 @@ public class SmallFireballController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/SnowballController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/SnowballController.java similarity index 87% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/SnowballController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/SnowballController.java index edbf640e2..c68ee0629 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/SnowballController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/SnowballController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftSnowball; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftSnowball; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -102,7 +102,7 @@ public class SnowballController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/SpectralArrowController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/SpectralArrowController.java similarity index 87% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/SpectralArrowController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/SpectralArrowController.java index 9c20a9384..61ad8ef85 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/SpectralArrowController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/SpectralArrowController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftArrow; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftArrow; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; import org.bukkit.entity.Arrow; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -103,7 +103,7 @@ public class SpectralArrowController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/TNTPrimedController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/TNTPrimedController.java similarity index 87% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/TNTPrimedController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/TNTPrimedController.java index aea997e01..c23024224 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/TNTPrimedController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/TNTPrimedController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftTNTPrimed; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftTNTPrimed; import org.bukkit.entity.TNTPrimed; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -103,7 +103,7 @@ public class TNTPrimedController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/TextDisplayController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/TextDisplayController.java similarity index 87% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/TextDisplayController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/TextDisplayController.java index d3344f175..c3a2dcd7e 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/TextDisplayController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/TextDisplayController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftTextDisplay; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftTextDisplay; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -102,7 +102,7 @@ public class TextDisplayController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ThrownExpBottleController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ThrownExpBottleController.java similarity index 88% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ThrownExpBottleController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ThrownExpBottleController.java index 61d6f61b1..d83a89685 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ThrownExpBottleController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ThrownExpBottleController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftThrownExpBottle; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftThrownExpBottle; import org.bukkit.entity.ThrownExpBottle; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -103,7 +103,7 @@ public class ThrownExpBottleController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ThrownPotionController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ThrownPotionController.java similarity index 89% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ThrownPotionController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ThrownPotionController.java index de9bc44b1..ec51e1ea6 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ThrownPotionController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ThrownPotionController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftThrownPotion; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftThrownPotion; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -107,7 +107,7 @@ public class ThrownPotionController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ThrownTridentController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ThrownTridentController.java similarity index 87% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ThrownTridentController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ThrownTridentController.java index 816479b01..22dca2a73 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/ThrownTridentController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/ThrownTridentController.java @@ -1,21 +1,21 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftTrident; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftTrident; import org.bukkit.entity.Trident; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -103,7 +103,7 @@ public class ThrownTridentController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/TippedArrowController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/TippedArrowController.java similarity index 87% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/TippedArrowController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/TippedArrowController.java index 0c402575b..0c8a82be0 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/TippedArrowController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/TippedArrowController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftTippedArrow; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftTippedArrow; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -102,7 +102,7 @@ public class TippedArrowController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/WitherSkullController.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/WitherSkullController.java similarity index 87% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/WitherSkullController.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/WitherSkullController.java index 5a3afd710..c2843cb37 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/entity/nonliving/WitherSkullController.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/entity/nonliving/WitherSkullController.java @@ -1,20 +1,20 @@ -package net.citizensnpcs.nms.v1_20_R1.entity.nonliving; +package net.citizensnpcs.nms.v1_20_R2.entity.nonliving; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftWitherSkull; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftWitherSkull; import org.bukkit.util.Vector; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.MobEntityController; -import net.citizensnpcs.nms.v1_20_R1.util.ForwardingNPCHolder; -import net.citizensnpcs.nms.v1_20_R1.util.NMSBoundingBox; -import net.citizensnpcs.nms.v1_20_R1.util.NMSImpl; +import net.citizensnpcs.nms.v1_20_R2.entity.MobEntityController; +import net.citizensnpcs.nms.v1_20_R2.util.ForwardingNPCHolder; +import net.citizensnpcs.nms.v1_20_R2.util.NMSBoundingBox; +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; import net.citizensnpcs.npc.CitizensNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.Util; -import net.minecraft.core.PositionImpl; + import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; @@ -102,7 +102,7 @@ public class WitherSkullController extends MobEntityController { } @Override - public Entity teleportTo(ServerLevel worldserver, PositionImpl location) { + public Entity teleportTo(ServerLevel worldserver, Vec3 location) { if (npc == null) return super.teleportTo(worldserver, location); return NMSImpl.teleportAcrossWorld(this, worldserver, location); diff --git a/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/network/EmptyConnection.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/network/EmptyConnection.java new file mode 100644 index 000000000..c10cc4d26 --- /dev/null +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/network/EmptyConnection.java @@ -0,0 +1,41 @@ +package net.citizensnpcs.nms.v1_20_R2.network; + +import java.io.IOException; +import java.net.SocketAddress; + +import net.citizensnpcs.nms.v1_20_R2.util.NMSImpl; +import net.citizensnpcs.util.EmptyChannel; +import net.minecraft.network.Connection; +import net.minecraft.network.PacketListener; +import net.minecraft.network.PacketSendListener; +import net.minecraft.network.protocol.Packet; +import net.minecraft.network.protocol.PacketFlow; + +public class EmptyConnection extends Connection { + public EmptyConnection(PacketFlow flag) throws IOException { + super(flag); + channel = new EmptyChannel(null); + address = new SocketAddress() { + private static final long serialVersionUID = 8207338859896320185L; + }; + } + + @Override + public boolean isConnected() { + return true; + } + + @Override + public void send(Packet packet, PacketSendListener genericfuturelistener) { + } + + @Override + public void setListener(PacketListener pl) { + try { + NMSImpl.CONNECTION_PACKET_LISTENER.invoke(this, pl); + NMSImpl.CONNECTION_DISCONNECT_LISTENER.invoke(this, null); + } catch (Throwable e) { + e.printStackTrace(); + } + } +} \ No newline at end of file diff --git a/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/network/EmptyPacketListener.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/network/EmptyPacketListener.java new file mode 100644 index 000000000..c5e45f64c --- /dev/null +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/network/EmptyPacketListener.java @@ -0,0 +1,19 @@ +package net.citizensnpcs.nms.v1_20_R2.network; + +import net.minecraft.network.Connection; +import net.minecraft.network.protocol.Packet; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.server.network.CommonListenerCookie; +import net.minecraft.server.network.ServerGamePacketListenerImpl; + +public class EmptyPacketListener extends ServerGamePacketListenerImpl { + public EmptyPacketListener(MinecraftServer minecraftServer, Connection networkManager, ServerPlayer entityPlayer, + CommonListenerCookie clc) { + super(minecraftServer, networkManager, entityPlayer, clc); + } + + @Override + public void send(Packet packet) { + } +} \ No newline at end of file diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/CitizensBlockBreaker.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/CitizensBlockBreaker.java similarity index 97% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/CitizensBlockBreaker.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/CitizensBlockBreaker.java index 9de5208c6..201714f67 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/CitizensBlockBreaker.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/CitizensBlockBreaker.java @@ -1,6 +1,6 @@ -package net.citizensnpcs.nms.v1_20_R1.util; +package net.citizensnpcs.nms.v1_20_R2.util; -import org.bukkit.craftbukkit.v1_20_R1.inventory.CraftItemStack; +import org.bukkit.craftbukkit.v1_20_R2.inventory.CraftItemStack; import net.citizensnpcs.util.AbstractBlockBreaker; import net.minecraft.core.BlockPos; diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/CitizensEntityTracker.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/CitizensEntityTracker.java similarity index 91% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/CitizensEntityTracker.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/CitizensEntityTracker.java index 956882c42..3819d15f4 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/CitizensEntityTracker.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/CitizensEntityTracker.java @@ -1,4 +1,4 @@ -package net.citizensnpcs.nms.v1_20_R1.util; +package net.citizensnpcs.nms.v1_20_R2.util; import java.lang.invoke.MethodHandle; import java.util.Set; @@ -13,7 +13,7 @@ import net.citizensnpcs.Settings.Setting; import net.citizensnpcs.api.CitizensAPI; import net.citizensnpcs.api.event.NPCSeenByPlayerEvent; import net.citizensnpcs.api.npc.NPC; -import net.citizensnpcs.nms.v1_20_R1.entity.EntityHumanNPC; +import net.citizensnpcs.nms.v1_20_R2.entity.EntityHumanNPC; import net.citizensnpcs.npc.ai.NPCHolder; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; @@ -55,7 +55,7 @@ public class CitizensEntityTracker extends ChunkMap.TrackedEntity { } public CitizensEntityTracker(ChunkMap map, TrackedEntity entry) { - this(map, getTracker(entry), getTrackingDistance(entry), getE(entry), getF(entry)); + this(map, getTracker(entry), getTrackingDistance(entry), getUpdateInterval(entry), getTrackDelta(entry)); } public void updateLastPlayer(ServerPlayer lastUpdatedPlayer) { @@ -131,18 +131,18 @@ public class CitizensEntityTracker extends ChunkMap.TrackedEntity { super.updatePlayer(entityplayer); } - private static int getE(TrackedEntity entry) { + private static int getUpdateInterval(TrackedEntity entry) { try { - return (int) E.invoke(TRACKER_ENTRY.invoke(entry)); + return (int) UPDATE_INTERVAL.invoke(TRACKER_ENTRY.invoke(entry)); } catch (Throwable e) { e.printStackTrace(); } return 0; } - private static boolean getF(TrackedEntity entry) { + private static boolean getTrackDelta(TrackedEntity entry) { try { - return (boolean) F.invoke(TRACKER_ENTRY.invoke(entry)); + return (boolean) TRACK_DELTA.invoke(TRACKER_ENTRY.invoke(entry)); } catch (Throwable e) { e.printStackTrace(); } @@ -167,8 +167,8 @@ public class CitizensEntityTracker extends ChunkMap.TrackedEntity { return 0; } - private static final MethodHandle E = NMS.getGetter(ServerEntity.class, "e"); - private static final MethodHandle F = NMS.getGetter(ServerEntity.class, "f"); + private static final MethodHandle UPDATE_INTERVAL = NMS.getGetter(ServerEntity.class, "h"); + private static final MethodHandle TRACK_DELTA = NMS.getGetter(ServerEntity.class, "i"); private static volatile Boolean REQUIRES_SYNC; private static final MethodHandle TRACKER = NMS.getFirstGetter(TrackedEntity.class, Entity.class); private static final MethodHandle TRACKER_ENTRY = NMS.getFirstGetter(TrackedEntity.class, ServerEntity.class); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/CustomEntityRegistry.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/CustomEntityRegistry.java similarity index 99% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/CustomEntityRegistry.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/CustomEntityRegistry.java index 6fe033b29..df444fdb1 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/CustomEntityRegistry.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/CustomEntityRegistry.java @@ -1,4 +1,4 @@ -package net.citizensnpcs.nms.v1_20_R1.util; +package net.citizensnpcs.nms.v1_20_R2.util; import java.lang.invoke.MethodHandle; import java.util.Iterator; diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EmptyAdvancementDataPlayer.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EmptyAdvancementDataPlayer.java similarity index 80% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EmptyAdvancementDataPlayer.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EmptyAdvancementDataPlayer.java index e7ac4d7ea..7d4ae98b3 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EmptyAdvancementDataPlayer.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EmptyAdvancementDataPlayer.java @@ -1,4 +1,4 @@ -package net.citizensnpcs.nms.v1_20_R1.util; +package net.citizensnpcs.nms.v1_20_R2.util; import java.io.File; import java.lang.invoke.MethodHandle; @@ -10,7 +10,7 @@ import com.mojang.datafixers.DataFixer; import net.citizensnpcs.api.CitizensAPI; import net.citizensnpcs.util.NMS; -import net.minecraft.advancements.Advancement; +import net.minecraft.advancements.AdvancementHolder; import net.minecraft.advancements.AdvancementProgress; import net.minecraft.server.PlayerAdvancements; import net.minecraft.server.ServerAdvancementManager; @@ -25,7 +25,7 @@ public class EmptyAdvancementDataPlayer extends PlayerAdvancements { } @Override - public boolean award(Advancement advancement, String s) { + public boolean award(AdvancementHolder advancement, String s) { return false; } @@ -34,12 +34,16 @@ public class EmptyAdvancementDataPlayer extends PlayerAdvancements { } @Override - public AdvancementProgress getOrStartProgress(Advancement advancement) { + public AdvancementProgress getOrStartProgress(AdvancementHolder advancement) { return new AdvancementProgress(); } @Override - public boolean revoke(Advancement advancement, String s) { + public void reload(ServerAdvancementManager sam) { + } + + @Override + public boolean revoke(AdvancementHolder advancement, String s) { return false; } @@ -53,7 +57,7 @@ public class EmptyAdvancementDataPlayer extends PlayerAdvancements { } @Override - public void setSelectedTab(Advancement advancement) { + public void setSelectedTab(AdvancementHolder advancement) { } @Override diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EmptyServerStatsCounter.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EmptyServerStatsCounter.java similarity index 95% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EmptyServerStatsCounter.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EmptyServerStatsCounter.java index cb694acfb..028ea398c 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EmptyServerStatsCounter.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EmptyServerStatsCounter.java @@ -1,4 +1,4 @@ -package net.citizensnpcs.nms.v1_20_R1.util; +package net.citizensnpcs.nms.v1_20_R2.util; import com.mojang.datafixers.DataFixer; diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EntityJumpControl.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EntityJumpControl.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EntityJumpControl.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EntityJumpControl.java index 9936b1736..e7d5d04df 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EntityJumpControl.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EntityJumpControl.java @@ -1,4 +1,4 @@ -package net.citizensnpcs.nms.v1_20_R1.util; +package net.citizensnpcs.nms.v1_20_R2.util; import net.minecraft.world.entity.EntityType; import net.minecraft.world.entity.LivingEntity; diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EntityMoveControl.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EntityMoveControl.java similarity index 98% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EntityMoveControl.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EntityMoveControl.java index 74b1a3d4f..2755b8d1a 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EntityMoveControl.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EntityMoveControl.java @@ -1,4 +1,4 @@ -package net.citizensnpcs.nms.v1_20_R1.util; +package net.citizensnpcs.nms.v1_20_R2.util; import java.util.Random; diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EntityNavigation.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EntityNavigation.java similarity index 98% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EntityNavigation.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EntityNavigation.java index 5eabc706a..4ab0f52f7 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EntityNavigation.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EntityNavigation.java @@ -1,4 +1,4 @@ -package net.citizensnpcs.nms.v1_20_R1.util; +package net.citizensnpcs.nms.v1_20_R2.util; import java.util.Set; import java.util.stream.Collectors; @@ -137,7 +137,7 @@ public class EntityNavigation extends PathNavigation { @Override protected boolean canUpdatePath() { - return (this.mob.onGround() || isInLiquid() || this.mob.isPassenger()); + return (this.mob.onGround() || this.mob.isInLiquid() || this.mob.isPassenger()); } @Override @@ -330,11 +330,6 @@ public class EntityNavigation extends PathNavigation { return (this.path == null || this.path.isDone()); } - @Override - protected boolean isInLiquid() { - return (this.mob.isInWaterOrBubble() || this.mob.isInLava()); - } - @Override public boolean isInProgress() { return !isDone(); diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EntityNodeEvaluator.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EntityNodeEvaluator.java similarity index 99% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EntityNodeEvaluator.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EntityNodeEvaluator.java index 054bcecec..cabe58fd3 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EntityNodeEvaluator.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EntityNodeEvaluator.java @@ -1,4 +1,4 @@ -package net.citizensnpcs.nms.v1_20_R1.util; +package net.citizensnpcs.nms.v1_20_R2.util; import java.util.EnumSet; import java.util.Iterator; diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EntityNodeEvaluatorBase.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EntityNodeEvaluatorBase.java similarity index 98% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EntityNodeEvaluatorBase.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EntityNodeEvaluatorBase.java index abe259842..cfd57abbf 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EntityNodeEvaluatorBase.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EntityNodeEvaluatorBase.java @@ -1,4 +1,4 @@ -package net.citizensnpcs.nms.v1_20_R1.util; +package net.citizensnpcs.nms.v1_20_R2.util; import it.unimi.dsi.fastutil.ints.Int2ObjectMap; import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap; diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EntityPathfinder.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EntityPathfinder.java similarity index 61% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EntityPathfinder.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EntityPathfinder.java index 84638406e..59c2cb1dc 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/EntityPathfinder.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/EntityPathfinder.java @@ -1,6 +1,7 @@ -package net.citizensnpcs.nms.v1_20_R1.util; +package net.citizensnpcs.nms.v1_20_R2.util; import java.util.Comparator; +import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Optional; @@ -9,6 +10,7 @@ import java.util.function.Function; import java.util.stream.Collectors; import java.util.stream.Stream; +import com.google.common.collect.ImmutableSet; import com.google.common.collect.Lists; import com.google.common.collect.Sets; @@ -64,54 +66,73 @@ public class EntityPathfinder extends PathFinder { private Path findPath(ProfilerFiller var0, Node var1, Map var2, float var3, int var4, float var5) { Set var6 = var2.keySet(); - var1.g = 0.0F; - var1.h = getBestH(var1, var6); + var1.f = 0.0F; + var1.h = this.getBestH(var1, var6); var1.f = var1.h; this.openSet.clear(); this.openSet.insert(var1); + Set var7 = ImmutableSet.of(); int var8 = 0; Set var9 = Sets.newHashSetWithExpectedSize(var6.size()); int var10 = (int) (this.maxVisitedNodes * var5); - while (!this.openSet.isEmpty() && ++var8 < var10) { - Node node = this.openSet.pop(); - node.closed = true; - for (Target target : var6) { - if (node.distanceManhattan(target) <= var4) { - target.setReached(); - var9.add(target); + + while (!this.openSet.isEmpty()) { + ++var8; + if (var8 >= var10) { + break; + } + + Node var11 = this.openSet.pop(); + var11.closed = true; + Iterator var13i = var6.iterator(); + + while (var13i.hasNext()) { + Target var13 = (Target) var13i.next(); + if (var11.distanceManhattan(var13) <= var4) { + var13.setReached(); + var9.add(var13); } } - if (!var9.isEmpty()) + + if (!var9.isEmpty()) { break; - if (node.distanceTo(var1) >= var3) - continue; - int i = this.nodeEvaluator.getNeighbors(this.neighbors, node); - for (int var13 = 0; var13 < i; var13++) { - Node var14 = this.neighbors[var13]; - float var15 = node.distanceTo(var14); - node.walkedDistance += var15; - float var16 = node.g + var15 + var14.costMalus; - if (var14.walkedDistance < var3 && (!var14.inOpenSet() || var16 < var14.g)) { - var14.cameFrom = node; - var14.g = var16; - var14.h = getBestH(var14, var6) * 1.5F; - if (var14.inOpenSet()) { - this.openSet.changeCost(var14, var14.g + var14.h); - } else { - var14.f = var14.g + var14.h; - this.openSet.insert(var14); + } + + if (!(var11.distanceTo(var1) >= var3)) { + int var12 = this.nodeEvaluator.getNeighbors(this.neighbors, var11); + + for (int var13 = 0; var13 < var12; ++var13) { + Node var14 = this.neighbors[var13]; + float var15 = this.distance(var11, var14); + var14.walkedDistance = var11.walkedDistance + var15; + float var16 = var11.f + var15 + var14.costMalus; + if (var14.walkedDistance < var3 && (!var14.inOpenSet() || var16 < var14.f)) { + var14.cameFrom = var11; + var14.f = var16; + var14.h = this.getBestH(var14, var6) * 1.5F; + if (var14.inOpenSet()) { + this.openSet.changeCost(var14, var14.f + var14.h); + } else { + var14.h += var14.f; + this.openSet.insert(var14); + } } } } } - Optional var11 = !var9.isEmpty() - ? var9.stream().map(p -> reconstructPath(p.getBestNode(), var2.get(p), true)).min( - Comparator.comparingInt(Path::getNodeCount)) - : getFallbackDestinations(var2, var6).findFirst(); - if (!var11.isPresent()) + + Optional var11 = !var9.isEmpty() ? var9.stream().map((var1x) -> { + return this.reconstructPath(var1x.getBestNode(), var2.get(var1x), true); + }).min(Comparator.comparingInt(Path::getNodeCount)) : getFallbackDestinations(var2, var6).findFirst(); + /*var6.stream().map((var1x) -> { + return this.reconstructPath(var1x.getBestNode(), (BlockPos)var2.get(var1x), false); + }).min(Comparator.comparingDouble(Path::getDistToTarget).thenComparingInt(Path::getNodeCount))*/ + if (var11.isEmpty()) { return null; - Path var12 = var11.get(); - return var12; + } else { + Path var12 = var11.get(); + return var12; + } } private float getBestH(Node var0, Set var1) { @@ -134,13 +155,15 @@ public class EntityPathfinder extends PathFinder { } private Path reconstructPath(Node var0, BlockPos var1, boolean var2) { - List var3 = Lists.newArrayList(); + List var3 = Lists.newArrayList(); Node var4 = var0; - var3.add(0, var4); + var3.add(0, var0); + while (var4.cameFrom != null) { var4 = var4.cameFrom; var3.add(0, var4); } + return new Path(var3, var1, var2); } } diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/ForwardingNPCHolder.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/ForwardingNPCHolder.java similarity index 93% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/ForwardingNPCHolder.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/ForwardingNPCHolder.java index 1ea87a60c..08fbd13cf 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/ForwardingNPCHolder.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/ForwardingNPCHolder.java @@ -1,4 +1,4 @@ -package net.citizensnpcs.nms.v1_20_R1.util; +package net.citizensnpcs.nms.v1_20_R2.util; import org.bukkit.entity.Entity; diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/MobAI.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/MobAI.java similarity index 99% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/MobAI.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/MobAI.java index e2f9f4cdd..7f5f646d3 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/MobAI.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/MobAI.java @@ -1,4 +1,4 @@ -package net.citizensnpcs.nms.v1_20_R1.util; +package net.citizensnpcs.nms.v1_20_R2.util; import java.util.Map; diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/NMSBoundingBox.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/NMSBoundingBox.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/NMSBoundingBox.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/NMSBoundingBox.java index d9af8fefd..260cbdcc2 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/NMSBoundingBox.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/NMSBoundingBox.java @@ -1,4 +1,4 @@ -package net.citizensnpcs.nms.v1_20_R1.util; +package net.citizensnpcs.nms.v1_20_R2.util; import java.util.function.Supplier; diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/NMSImpl.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/NMSImpl.java similarity index 90% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/NMSImpl.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/NMSImpl.java index 03f5d3602..c05076ee4 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/NMSImpl.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/NMSImpl.java @@ -1,8 +1,6 @@ -package net.citizensnpcs.nms.v1_20_R1.util; +package net.citizensnpcs.nms.v1_20_R2.util; import java.lang.invoke.MethodHandle; -import java.net.SocketAddress; -import java.net.URL; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; @@ -29,20 +27,20 @@ import org.bukkit.boss.BarColor; import org.bukkit.boss.BarStyle; import org.bukkit.boss.BossBar; import org.bukkit.command.BlockCommandSender; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; -import org.bukkit.craftbukkit.v1_20_R1.CraftSound; -import org.bukkit.craftbukkit.v1_20_R1.CraftWorld; -import org.bukkit.craftbukkit.v1_20_R1.block.CraftBlock; -import org.bukkit.craftbukkit.v1_20_R1.boss.CraftBossBar; -import org.bukkit.craftbukkit.v1_20_R1.command.CraftBlockCommandSender; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftPlayer; -import org.bukkit.craftbukkit.v1_20_R1.entity.CraftWither; -import org.bukkit.craftbukkit.v1_20_R1.event.CraftEventFactory; -import org.bukkit.craftbukkit.v1_20_R1.event.CraftPortalEvent; -import org.bukkit.craftbukkit.v1_20_R1.inventory.CraftInventoryAnvil; -import org.bukkit.craftbukkit.v1_20_R1.inventory.CraftInventoryView; -import org.bukkit.craftbukkit.v1_20_R1.inventory.CraftItemStack; +import org.bukkit.craftbukkit.v1_20_R2.CraftServer; +import org.bukkit.craftbukkit.v1_20_R2.CraftSound; +import org.bukkit.craftbukkit.v1_20_R2.CraftWorld; +import org.bukkit.craftbukkit.v1_20_R2.block.CraftBlock; +import org.bukkit.craftbukkit.v1_20_R2.boss.CraftBossBar; +import org.bukkit.craftbukkit.v1_20_R2.command.CraftBlockCommandSender; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftPlayer; +import org.bukkit.craftbukkit.v1_20_R2.entity.CraftWither; +import org.bukkit.craftbukkit.v1_20_R2.event.CraftEventFactory; +import org.bukkit.craftbukkit.v1_20_R2.event.CraftPortalEvent; +import org.bukkit.craftbukkit.v1_20_R2.inventory.CraftInventoryAnvil; +import org.bukkit.craftbukkit.v1_20_R2.inventory.CraftInventoryView; +import org.bukkit.craftbukkit.v1_20_R2.inventory.CraftItemStack; import org.bukkit.entity.EntityType; import org.bukkit.entity.FishHook; import org.bukkit.entity.Player; @@ -64,13 +62,8 @@ import com.google.common.collect.Maps; import com.google.common.collect.Sets; import com.mojang.authlib.GameProfile; import com.mojang.authlib.GameProfileRepository; -import com.mojang.authlib.HttpAuthenticationService; import com.mojang.authlib.minecraft.MinecraftSessionService; import com.mojang.authlib.properties.Property; -import com.mojang.authlib.yggdrasil.YggdrasilAuthenticationService; -import com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService; -import com.mojang.authlib.yggdrasil.response.MinecraftProfilePropertiesResponse; -import com.mojang.util.UUIDTypeAdapter; import net.citizensnpcs.Settings.Setting; import net.citizensnpcs.api.CitizensAPI; @@ -102,127 +95,127 @@ import net.citizensnpcs.api.trait.TraitInfo; import net.citizensnpcs.api.util.BoundingBox; import net.citizensnpcs.api.util.EntityDim; import net.citizensnpcs.api.util.Messaging; -import net.citizensnpcs.nms.v1_20_R1.entity.AllayController; -import net.citizensnpcs.nms.v1_20_R1.entity.ArmorStandController; -import net.citizensnpcs.nms.v1_20_R1.entity.AxolotlController; -import net.citizensnpcs.nms.v1_20_R1.entity.BatController; -import net.citizensnpcs.nms.v1_20_R1.entity.BeeController; -import net.citizensnpcs.nms.v1_20_R1.entity.BlazeController; -import net.citizensnpcs.nms.v1_20_R1.entity.CamelController; -import net.citizensnpcs.nms.v1_20_R1.entity.CatController; -import net.citizensnpcs.nms.v1_20_R1.entity.CaveSpiderController; -import net.citizensnpcs.nms.v1_20_R1.entity.ChickenController; -import net.citizensnpcs.nms.v1_20_R1.entity.CodController; -import net.citizensnpcs.nms.v1_20_R1.entity.CowController; -import net.citizensnpcs.nms.v1_20_R1.entity.CreeperController; -import net.citizensnpcs.nms.v1_20_R1.entity.DolphinController; -import net.citizensnpcs.nms.v1_20_R1.entity.DrownedController; -import net.citizensnpcs.nms.v1_20_R1.entity.EnderDragonController; -import net.citizensnpcs.nms.v1_20_R1.entity.EndermanController; -import net.citizensnpcs.nms.v1_20_R1.entity.EndermiteController; -import net.citizensnpcs.nms.v1_20_R1.entity.EvokerController; -import net.citizensnpcs.nms.v1_20_R1.entity.FoxController; -import net.citizensnpcs.nms.v1_20_R1.entity.FrogController; -import net.citizensnpcs.nms.v1_20_R1.entity.GhastController; -import net.citizensnpcs.nms.v1_20_R1.entity.GiantController; -import net.citizensnpcs.nms.v1_20_R1.entity.GlowSquidController; -import net.citizensnpcs.nms.v1_20_R1.entity.GoatController; -import net.citizensnpcs.nms.v1_20_R1.entity.GuardianController; -import net.citizensnpcs.nms.v1_20_R1.entity.GuardianElderController; -import net.citizensnpcs.nms.v1_20_R1.entity.HoglinController; -import net.citizensnpcs.nms.v1_20_R1.entity.HorseController; -import net.citizensnpcs.nms.v1_20_R1.entity.HorseDonkeyController; -import net.citizensnpcs.nms.v1_20_R1.entity.HorseMuleController; -import net.citizensnpcs.nms.v1_20_R1.entity.HorseSkeletonController; -import net.citizensnpcs.nms.v1_20_R1.entity.HorseZombieController; -import net.citizensnpcs.nms.v1_20_R1.entity.HumanController; -import net.citizensnpcs.nms.v1_20_R1.entity.IllusionerController; -import net.citizensnpcs.nms.v1_20_R1.entity.IronGolemController; -import net.citizensnpcs.nms.v1_20_R1.entity.LlamaController; -import net.citizensnpcs.nms.v1_20_R1.entity.MagmaCubeController; -import net.citizensnpcs.nms.v1_20_R1.entity.MushroomCowController; -import net.citizensnpcs.nms.v1_20_R1.entity.OcelotController; -import net.citizensnpcs.nms.v1_20_R1.entity.PandaController; -import net.citizensnpcs.nms.v1_20_R1.entity.ParrotController; -import net.citizensnpcs.nms.v1_20_R1.entity.PhantomController; -import net.citizensnpcs.nms.v1_20_R1.entity.PigController; -import net.citizensnpcs.nms.v1_20_R1.entity.PigZombieController; -import net.citizensnpcs.nms.v1_20_R1.entity.PiglinBruteController; -import net.citizensnpcs.nms.v1_20_R1.entity.PiglinController; -import net.citizensnpcs.nms.v1_20_R1.entity.PillagerController; -import net.citizensnpcs.nms.v1_20_R1.entity.PolarBearController; -import net.citizensnpcs.nms.v1_20_R1.entity.PufferFishController; -import net.citizensnpcs.nms.v1_20_R1.entity.RabbitController; -import net.citizensnpcs.nms.v1_20_R1.entity.RavagerController; -import net.citizensnpcs.nms.v1_20_R1.entity.SalmonController; -import net.citizensnpcs.nms.v1_20_R1.entity.SheepController; -import net.citizensnpcs.nms.v1_20_R1.entity.ShulkerController; -import net.citizensnpcs.nms.v1_20_R1.entity.SilverfishController; -import net.citizensnpcs.nms.v1_20_R1.entity.SkeletonController; -import net.citizensnpcs.nms.v1_20_R1.entity.SkeletonStrayController; -import net.citizensnpcs.nms.v1_20_R1.entity.SkeletonWitherController; -import net.citizensnpcs.nms.v1_20_R1.entity.SlimeController; -import net.citizensnpcs.nms.v1_20_R1.entity.SnifferController; -import net.citizensnpcs.nms.v1_20_R1.entity.SnowmanController; -import net.citizensnpcs.nms.v1_20_R1.entity.SpiderController; -import net.citizensnpcs.nms.v1_20_R1.entity.SquidController; -import net.citizensnpcs.nms.v1_20_R1.entity.StriderController; -import net.citizensnpcs.nms.v1_20_R1.entity.TadpoleController; -import net.citizensnpcs.nms.v1_20_R1.entity.TraderLlamaController; -import net.citizensnpcs.nms.v1_20_R1.entity.TropicalFishController; -import net.citizensnpcs.nms.v1_20_R1.entity.TurtleController; -import net.citizensnpcs.nms.v1_20_R1.entity.VexController; -import net.citizensnpcs.nms.v1_20_R1.entity.VillagerController; -import net.citizensnpcs.nms.v1_20_R1.entity.VindicatorController; -import net.citizensnpcs.nms.v1_20_R1.entity.WanderingTraderController; -import net.citizensnpcs.nms.v1_20_R1.entity.WardenController; -import net.citizensnpcs.nms.v1_20_R1.entity.WitchController; -import net.citizensnpcs.nms.v1_20_R1.entity.WitherController; -import net.citizensnpcs.nms.v1_20_R1.entity.WolfController; -import net.citizensnpcs.nms.v1_20_R1.entity.ZoglinController; -import net.citizensnpcs.nms.v1_20_R1.entity.ZombieController; -import net.citizensnpcs.nms.v1_20_R1.entity.ZombieHuskController; -import net.citizensnpcs.nms.v1_20_R1.entity.ZombieVillagerController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.AreaEffectCloudController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.BlockDisplayController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.BoatController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.ChestBoatController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.DragonFireballController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.EggController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.EnderCrystalController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.EnderPearlController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.EnderSignalController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.EvokerFangsController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.FallingBlockController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.FireworkController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.FishingHookController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.GlowItemFrameController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.InteractionController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.ItemController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.ItemDisplayController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.ItemFrameController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.LargeFireballController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.LeashController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.LlamaSpitController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.MarkerController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.MinecartChestController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.MinecartCommandController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.MinecartFurnaceController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.MinecartHopperController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.MinecartRideableController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.MinecartTNTController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.PaintingController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.ShulkerBulletController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.SmallFireballController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.SnowballController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.SpectralArrowController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.TNTPrimedController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.TextDisplayController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.ThrownExpBottleController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.ThrownPotionController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.ThrownTridentController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.TippedArrowController; -import net.citizensnpcs.nms.v1_20_R1.entity.nonliving.WitherSkullController; +import net.citizensnpcs.nms.v1_20_R2.entity.AllayController; +import net.citizensnpcs.nms.v1_20_R2.entity.ArmorStandController; +import net.citizensnpcs.nms.v1_20_R2.entity.AxolotlController; +import net.citizensnpcs.nms.v1_20_R2.entity.BatController; +import net.citizensnpcs.nms.v1_20_R2.entity.BeeController; +import net.citizensnpcs.nms.v1_20_R2.entity.BlazeController; +import net.citizensnpcs.nms.v1_20_R2.entity.CamelController; +import net.citizensnpcs.nms.v1_20_R2.entity.CatController; +import net.citizensnpcs.nms.v1_20_R2.entity.CaveSpiderController; +import net.citizensnpcs.nms.v1_20_R2.entity.ChickenController; +import net.citizensnpcs.nms.v1_20_R2.entity.CodController; +import net.citizensnpcs.nms.v1_20_R2.entity.CowController; +import net.citizensnpcs.nms.v1_20_R2.entity.CreeperController; +import net.citizensnpcs.nms.v1_20_R2.entity.DolphinController; +import net.citizensnpcs.nms.v1_20_R2.entity.DrownedController; +import net.citizensnpcs.nms.v1_20_R2.entity.EnderDragonController; +import net.citizensnpcs.nms.v1_20_R2.entity.EndermanController; +import net.citizensnpcs.nms.v1_20_R2.entity.EndermiteController; +import net.citizensnpcs.nms.v1_20_R2.entity.EvokerController; +import net.citizensnpcs.nms.v1_20_R2.entity.FoxController; +import net.citizensnpcs.nms.v1_20_R2.entity.FrogController; +import net.citizensnpcs.nms.v1_20_R2.entity.GhastController; +import net.citizensnpcs.nms.v1_20_R2.entity.GiantController; +import net.citizensnpcs.nms.v1_20_R2.entity.GlowSquidController; +import net.citizensnpcs.nms.v1_20_R2.entity.GoatController; +import net.citizensnpcs.nms.v1_20_R2.entity.GuardianController; +import net.citizensnpcs.nms.v1_20_R2.entity.GuardianElderController; +import net.citizensnpcs.nms.v1_20_R2.entity.HoglinController; +import net.citizensnpcs.nms.v1_20_R2.entity.HorseController; +import net.citizensnpcs.nms.v1_20_R2.entity.HorseDonkeyController; +import net.citizensnpcs.nms.v1_20_R2.entity.HorseMuleController; +import net.citizensnpcs.nms.v1_20_R2.entity.HorseSkeletonController; +import net.citizensnpcs.nms.v1_20_R2.entity.HorseZombieController; +import net.citizensnpcs.nms.v1_20_R2.entity.HumanController; +import net.citizensnpcs.nms.v1_20_R2.entity.IllusionerController; +import net.citizensnpcs.nms.v1_20_R2.entity.IronGolemController; +import net.citizensnpcs.nms.v1_20_R2.entity.LlamaController; +import net.citizensnpcs.nms.v1_20_R2.entity.MagmaCubeController; +import net.citizensnpcs.nms.v1_20_R2.entity.MushroomCowController; +import net.citizensnpcs.nms.v1_20_R2.entity.OcelotController; +import net.citizensnpcs.nms.v1_20_R2.entity.PandaController; +import net.citizensnpcs.nms.v1_20_R2.entity.ParrotController; +import net.citizensnpcs.nms.v1_20_R2.entity.PhantomController; +import net.citizensnpcs.nms.v1_20_R2.entity.PigController; +import net.citizensnpcs.nms.v1_20_R2.entity.PigZombieController; +import net.citizensnpcs.nms.v1_20_R2.entity.PiglinBruteController; +import net.citizensnpcs.nms.v1_20_R2.entity.PiglinController; +import net.citizensnpcs.nms.v1_20_R2.entity.PillagerController; +import net.citizensnpcs.nms.v1_20_R2.entity.PolarBearController; +import net.citizensnpcs.nms.v1_20_R2.entity.PufferFishController; +import net.citizensnpcs.nms.v1_20_R2.entity.RabbitController; +import net.citizensnpcs.nms.v1_20_R2.entity.RavagerController; +import net.citizensnpcs.nms.v1_20_R2.entity.SalmonController; +import net.citizensnpcs.nms.v1_20_R2.entity.SheepController; +import net.citizensnpcs.nms.v1_20_R2.entity.ShulkerController; +import net.citizensnpcs.nms.v1_20_R2.entity.SilverfishController; +import net.citizensnpcs.nms.v1_20_R2.entity.SkeletonController; +import net.citizensnpcs.nms.v1_20_R2.entity.SkeletonStrayController; +import net.citizensnpcs.nms.v1_20_R2.entity.SkeletonWitherController; +import net.citizensnpcs.nms.v1_20_R2.entity.SlimeController; +import net.citizensnpcs.nms.v1_20_R2.entity.SnifferController; +import net.citizensnpcs.nms.v1_20_R2.entity.SnowmanController; +import net.citizensnpcs.nms.v1_20_R2.entity.SpiderController; +import net.citizensnpcs.nms.v1_20_R2.entity.SquidController; +import net.citizensnpcs.nms.v1_20_R2.entity.StriderController; +import net.citizensnpcs.nms.v1_20_R2.entity.TadpoleController; +import net.citizensnpcs.nms.v1_20_R2.entity.TraderLlamaController; +import net.citizensnpcs.nms.v1_20_R2.entity.TropicalFishController; +import net.citizensnpcs.nms.v1_20_R2.entity.TurtleController; +import net.citizensnpcs.nms.v1_20_R2.entity.VexController; +import net.citizensnpcs.nms.v1_20_R2.entity.VillagerController; +import net.citizensnpcs.nms.v1_20_R2.entity.VindicatorController; +import net.citizensnpcs.nms.v1_20_R2.entity.WanderingTraderController; +import net.citizensnpcs.nms.v1_20_R2.entity.WardenController; +import net.citizensnpcs.nms.v1_20_R2.entity.WitchController; +import net.citizensnpcs.nms.v1_20_R2.entity.WitherController; +import net.citizensnpcs.nms.v1_20_R2.entity.WolfController; +import net.citizensnpcs.nms.v1_20_R2.entity.ZoglinController; +import net.citizensnpcs.nms.v1_20_R2.entity.ZombieController; +import net.citizensnpcs.nms.v1_20_R2.entity.ZombieHuskController; +import net.citizensnpcs.nms.v1_20_R2.entity.ZombieVillagerController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.AreaEffectCloudController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.BlockDisplayController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.BoatController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.ChestBoatController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.DragonFireballController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.EggController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.EnderCrystalController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.EnderPearlController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.EnderSignalController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.EvokerFangsController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.FallingBlockController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.FireworkController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.FishingHookController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.GlowItemFrameController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.InteractionController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.ItemController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.ItemDisplayController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.ItemFrameController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.LargeFireballController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.LeashController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.LlamaSpitController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.MarkerController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.MinecartChestController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.MinecartCommandController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.MinecartFurnaceController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.MinecartHopperController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.MinecartRideableController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.MinecartTNTController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.PaintingController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.ShulkerBulletController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.SmallFireballController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.SnowballController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.SpectralArrowController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.TNTPrimedController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.TextDisplayController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.ThrownExpBottleController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.ThrownPotionController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.ThrownTridentController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.TippedArrowController; +import net.citizensnpcs.nms.v1_20_R2.entity.nonliving.WitherSkullController; import net.citizensnpcs.npc.EntityControllers; import net.citizensnpcs.npc.ai.MCNavigationStrategy.MCNavigator; import net.citizensnpcs.npc.ai.MCTargetStrategy.TargetNavigator; @@ -256,7 +249,6 @@ import net.citizensnpcs.trait.versioned.SpellcasterTrait; import net.citizensnpcs.trait.versioned.TropicalFishTrait; import net.citizensnpcs.trait.versioned.VillagerTrait; import net.citizensnpcs.trait.versioned.WardenTrait; -import net.citizensnpcs.util.EmptyChannel; import net.citizensnpcs.util.EntityPacketTracker; import net.citizensnpcs.util.EntityPacketTracker.PacketAggregator; import net.citizensnpcs.util.Messages; @@ -265,7 +257,6 @@ import net.citizensnpcs.util.NMSBridge; import net.citizensnpcs.util.PlayerAnimation; import net.citizensnpcs.util.Util; import net.minecraft.core.BlockPos; -import net.minecraft.core.PositionImpl; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.network.Connection; import net.minecraft.network.chat.Component; @@ -365,6 +356,8 @@ import net.minecraft.world.scores.PlayerTeam; @SuppressWarnings("unchecked") public class NMSImpl implements NMSBridge { + public static MethodHandle CONNECTION_PACKET_LISTENER = NMS.getSetter(Connection.class, "q"); + public static MethodHandle CONNECTION_DISCONNECT_LISTENER = NMS.getSetter(Connection.class, "p"); public NMSImpl() { loadEntityTypes(); } @@ -559,22 +552,7 @@ public class NMSImpl implements NMSBridge { if (Bukkit.isPrimaryThread()) throw new IllegalStateException("NMS.fillProfileProperties cannot be invoked from the main thread."); MinecraftSessionService sessionService = ((CraftServer) Bukkit.getServer()).getServer().getSessionService(); - if (!(sessionService instanceof YggdrasilMinecraftSessionService)) { - return sessionService.fillProfileProperties(profile, requireSecure); - } - YggdrasilAuthenticationService auth = ((YggdrasilMinecraftSessionService) sessionService) - .getAuthenticationService(); - URL url = HttpAuthenticationService - .constantURL(getAuthServerBaseUrl() + UUIDTypeAdapter.fromUUID(profile.getId())); - url = HttpAuthenticationService.concatenateURL(url, "unsigned=" + !requireSecure); - MinecraftProfilePropertiesResponse response = (MinecraftProfilePropertiesResponse) MAKE_REQUEST.invoke(auth, - url, null, MinecraftProfilePropertiesResponse.class); - if (response == null) - return profile; - GameProfile result = new GameProfile(response.getId(), response.getName()); - result.getProperties().putAll(response.getProperties()); - profile.getProperties().putAll(response.getProperties()); - return result; + return sessionService.fetchProfile(profile.getId(), requireSecure).profile(); } public String getAuthServerBaseUrl() { @@ -735,7 +713,7 @@ public class NMSImpl implements NMSBridge { @Override public String getSoundPath(Sound flag) throws CommandException { try { - SoundEvent effect = CraftSound.getSoundEffect(flag); + SoundEvent effect = CraftSound.bukkitToMinecraft(flag); if (effect == null) throw new CommandException(Messages.INVALID_SOUND); return effect.getLocation().getPath(); @@ -1367,7 +1345,7 @@ public class NMSImpl implements NMSBridge { ? !((NPCHolder) from).getNPC().data().get("removefromtablist", Setting.DISABLE_TABLIST.asBoolean()) : false; ClientboundPlayerInfoUpdatePacket.Entry entry = new ClientboundPlayerInfoUpdatePacket.Entry(from.getUUID(), - from.getGameProfile(), list, from.latency, from.gameMode.getGameModeForPlayer(), + from.getGameProfile(), list, from.connection.latency(), from.gameMode.getGameModeForPlayer(), list ? from.getTabListDisplayName() : Component.empty(), from.getChatSession() == null ? null : from.getChatSession().asData()); try { @@ -1802,7 +1780,7 @@ public class NMSImpl implements NMSBridge { public void updateMountedInteractionHeight(org.bukkit.entity.Entity entity, org.bukkit.entity.Entity mount, double offset) { Interaction handle = (Interaction) getHandle(entity); - offset += -0.5 + getHandle(mount).getPassengersRidingOffset(); + offset += -0.5 + getHandle(mount).getDimensions(Pose.SITTING).height * 0.75; ((org.bukkit.entity.Interaction) entity).setInteractionHeight((float) offset); mount.addPassenger(entity); handle.setPose(Pose.SNIFFING); @@ -2255,14 +2233,6 @@ public class NMSImpl implements NMSBridge { .get(new ResourceLocation(npc.data().get(meta, snd == null ? "" : snd.toString()))); } - public static void initNetworkManager(Connection network) { - network.channel = new EmptyChannel(null); - SocketAddress socketAddress = new SocketAddress() { - private static final long serialVersionUID = 8207338859896320185L; - }; - network.address = socketAddress; - } - public static boolean isLeashed(NPC npc, Supplier isLeashed, Mob entity) { return NMS.isLeashed(npc, isLeashed, () -> entity.dropLeash(true, false)); } @@ -2298,8 +2268,8 @@ public class NMSImpl implements NMSBridge { public static void resetPuffTicks(Pufferfish fish) { try { - PUFFERFISH_C.invoke(fish, 0); - PUFFERFISH_D.invoke(fish, 0); + PUFFERFISH_INFLATE.invoke(fish, 0); + PUFFERFISH_DEFLATE.invoke(fish, 0); } catch (Throwable e) { e.printStackTrace(); } @@ -2466,7 +2436,7 @@ public class NMSImpl implements NMSBridge { } } - public static Entity teleportAcrossWorld(Entity entity, ServerLevel worldserver, PositionImpl location) { + public static Entity teleportAcrossWorld(Entity entity, ServerLevel worldserver, Vec3 location) { if (FIND_DIMENSION_ENTRY_POINT == null || entity.isRemoved()) return null; NPC npc = ((NPCHolder) entity).getNPC(); @@ -2528,7 +2498,6 @@ public class NMSImpl implements NMSBridge { private static final MethodHandle ADVANCEMENTS_PLAYER_SETTER = NMS.getFirstFinalSetter(ServerPlayer.class, PlayerAdvancements.class); - private static final MethodHandle ATTRIBUTE_PROVIDER_MAP = NMS.getFirstGetter(AttributeSupplier.class, Map.class); private static final MethodHandle ATTRIBUTE_PROVIDER_MAP_SETTER = NMS.getFirstFinalSetter(AttributeSupplier.class, Map.class); @@ -2547,8 +2516,11 @@ public class NMSImpl implements NMSBridge { private static final MethodHandle CRAFT_BOSSBAR_HANDLE_FIELD = NMS.getFirstSetter(CraftBossBar.class, ServerBossEvent.class); private static final float DEFAULT_SPEED = 1F; - public static MethodHandle ENDERDRAGON_CHECK_WALLS = NMS.getFirstMethodHandleWithReturnType(EnderDragon.class, true, - boolean.class, AABB.class); + public static final MethodHandle ENDERDRAGON_CHECK_WALLS = NMS.getFirstMethodHandleWithReturnType(EnderDragon.class, + true, boolean.class, AABB.class); + public static final MethodHandle ENDERDRAGON_HURT = NMS.getMethodHandle(EnderDragon.class, "c", true, List.class); + public static final MethodHandle ENDERDRAGON_KNOCKBACK = NMS.getMethodHandle(EnderDragon.class, "b", true, + List.class); private static EntityDataAccessor ENDERMAN_CREEPY = null; private static final MethodHandle ENTITY_FISH_NUM_IN_SCHOOL = NMS.getFirstSetter(AbstractSchoolingFish.class, int.class); @@ -2569,14 +2541,12 @@ public class NMSImpl implements NMSBridge { private static final MethodHandle HEAD_HEIGHT_METHOD = NMS.getFirstMethodHandle(Entity.class, true, Pose.class, EntityDimensions.class); private static EntityDataAccessor INTERACTION_HEIGHT = null; - private static final MethodHandle JUMP_FIELD = NMS.getGetter(LivingEntity.class, "bk"); + private static final MethodHandle JUMP_FIELD = NMS.getGetter(LivingEntity.class, "bj"); private static final MethodHandle LOOK_CONTROL_SETTER = NMS.getFirstSetter(Mob.class, LookControl.class); - private static final MethodHandle MAKE_REQUEST = NMS.getMethodHandle(YggdrasilAuthenticationService.class, - "makeRequest", true, URL.class, Object.class, Class.class); - private static MethodHandle MOVE_CONTROLLER_OPERATION = NMS.getSetter(MoveControl.class, "k"); + private static final MethodHandle MOVE_CONTROLLER_OPERATION = NMS.getSetter(MoveControl.class, "k"); private static final MethodHandle NAVIGATION_CREATE_PATHFINDER = NMS .getFirstMethodHandleWithReturnType(PathNavigation.class, true, PathFinder.class, int.class); - private static MethodHandle NAVIGATION_PATH = NMS.getFirstGetter(PathNavigation.class, Path.class); + private static final MethodHandle NAVIGATION_PATH = NMS.getFirstGetter(PathNavigation.class, Path.class); private static final MethodHandle NAVIGATION_PATHFINDER = NMS.getFirstFinalSetter(PathNavigation.class, PathFinder.class); private static final MethodHandle NAVIGATION_WORLD_FIELD = NMS.getFirstSetter(PathNavigation.class, Level.class); @@ -2588,12 +2558,12 @@ public class NMSImpl implements NMSBridge { private static final MethodHandle PLAYER_INFO_ENTRIES_LIST = NMS .getFirstFinalSetter(ClientboundPlayerInfoUpdatePacket.class, List.class); private static final MethodHandle PLAYERINFO_ENTRIES = PLAYER_INFO_ENTRIES_LIST; - private static MethodHandle PORTAL_ENTRANCE_POS_GETTER = NMS.getGetter(Entity.class, "aw"); - private static MethodHandle PORTAL_ENTRANCE_POS_SETTER = NMS.getSetter(Entity.class, "aw"); + private static final MethodHandle PORTAL_ENTRANCE_POS_GETTER = NMS.getGetter(Entity.class, "ax"); + private static final MethodHandle PORTAL_ENTRANCE_POS_SETTER = NMS.getSetter(Entity.class, "ax"); private static final MethodHandle POSITION_CODEC_GETTER = NMS.getFirstGetter(ServerEntity.class, VecDeltaCodec.class); - private static final MethodHandle PUFFERFISH_C = NMS.getSetter(Pufferfish.class, "bT"); - private static final MethodHandle PUFFERFISH_D = NMS.getSetter(Pufferfish.class, "bU"); + private static final MethodHandle PUFFERFISH_DEFLATE = NMS.getSetter(Pufferfish.class, "bU"); + private static final MethodHandle PUFFERFISH_INFLATE = NMS.getSetter(Pufferfish.class, "bT"); private static EntityDataAccessor RABBIT_TYPE_DATAWATCHER = null; private static final Random RANDOM = Util.getFastRandom(); private static final MethodHandle SERVER_ENTITY_GETTER = NMS.getFirstGetter(TrackedEntity.class, diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/PitchableLookControl.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/PitchableLookControl.java similarity index 94% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/PitchableLookControl.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/PitchableLookControl.java index cc249647a..5eaf8749d 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/PitchableLookControl.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/PitchableLookControl.java @@ -1,4 +1,4 @@ -package net.citizensnpcs.nms.v1_20_R1.util; +package net.citizensnpcs.nms.v1_20_R2.util; import java.util.function.Supplier; diff --git a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/PlayerAnimationImpl.java b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/PlayerAnimationImpl.java similarity index 98% rename from v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/PlayerAnimationImpl.java rename to v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/PlayerAnimationImpl.java index a2ab1f2ae..662bbf0d2 100644 --- a/v1_20_R1/src/main/java/net/citizensnpcs/nms/v1_20_R1/util/PlayerAnimationImpl.java +++ b/v1_20_R2/src/main/java/net/citizensnpcs/nms/v1_20_R2/util/PlayerAnimationImpl.java @@ -1,4 +1,4 @@ -package net.citizensnpcs.nms.v1_20_R1.util; +package net.citizensnpcs.nms.v1_20_R2.util; import java.util.Map; diff --git a/v1_8_R3/pom.xml b/v1_8_R3/pom.xml index 8c44f1ba2..fbe987ca0 100644 --- a/v1_8_R3/pom.xml +++ b/v1_8_R3/pom.xml @@ -6,7 +6,7 @@ net.citizensnpcs citizens-parent - 2.0.32-SNAPSHOT + 2.0.33-SNAPSHOT citizens-v1_8_R3 diff --git a/v1_8_R3/src/main/java/net/citizensnpcs/nms/v1_8_R3/entity/EntityHumanNPC.java b/v1_8_R3/src/main/java/net/citizensnpcs/nms/v1_8_R3/entity/EntityHumanNPC.java index 68bb35c8e..94aad55e2 100644 --- a/v1_8_R3/src/main/java/net/citizensnpcs/nms/v1_8_R3/entity/EntityHumanNPC.java +++ b/v1_8_R3/src/main/java/net/citizensnpcs/nms/v1_8_R3/entity/EntityHumanNPC.java @@ -1,7 +1,6 @@ package net.citizensnpcs.nms.v1_8_R3.entity; import java.io.IOException; -import java.net.Socket; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -36,7 +35,6 @@ import net.citizensnpcs.npc.skin.SkinPacketTracker; import net.citizensnpcs.npc.skin.SkinnableEntity; import net.citizensnpcs.trait.Gravity; import net.citizensnpcs.trait.SkinTrait; -import net.citizensnpcs.util.EmptySocket; import net.citizensnpcs.util.NMS; import net.citizensnpcs.util.Util; import net.minecraft.server.v1_8_R3.AttributeInstance; @@ -74,6 +72,8 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable PlayerInteractManager playerInteractManager, NPC npc) { super(minecraftServer, world, gameProfile, playerInteractManager); this.npc = (CitizensNPC) npc; + this.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED).setValue(0.3); + if (npc != null) { skinTracker = new SkinPacketTracker(this); playerInteractManager.setGameMode(WorldSettings.EnumGamemode.SURVIVAL); @@ -233,17 +233,13 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable } private void initialise(MinecraftServer minecraftServer) { - Socket socket = new EmptySocket(); - NetworkManager conn = null; try { - conn = new EmptyNetworkManager(EnumProtocolDirection.CLIENTBOUND); + NetworkManager conn = new EmptyNetworkManager(EnumProtocolDirection.CLIENTBOUND); playerConnection = new EmptyNetHandler(minecraftServer, conn, this); conn.a(playerConnection); - socket.close(); } catch (IOException e) { - // swallow } catch (NoSuchMethodError err) { - // swallow, reported by a single user on Discord + // reported by a single user on Discord } AttributeInstance range = getAttributeInstance(GenericAttributes.FOLLOW_RANGE); if (range == null) { @@ -281,7 +277,7 @@ public class EntityHumanNPC extends EntityPlayer implements NPCHolder, Skinnable if (!navigating && getBukkitEntity() != null && (!npc.hasTrait(Gravity.class) || npc.getOrAddTrait(Gravity.class).hasGravity()) && Util.isLoaded(getBukkitEntity().getLocation(LOADED_LOCATION)) - && SpigotUtil.checkYSafe(locY, getBukkitEntity().getWorld())) { + && (!npc.isProtected() || SpigotUtil.checkYSafe(locY, getBukkitEntity().getWorld()))) { moveWithFallDamage(0, 0); } if (Math.abs(motX) < EPSILON && Math.abs(motY) < EPSILON && Math.abs(motZ) < EPSILON) { diff --git a/v1_8_R3/src/main/java/net/citizensnpcs/nms/v1_8_R3/util/NMSImpl.java b/v1_8_R3/src/main/java/net/citizensnpcs/nms/v1_8_R3/util/NMSImpl.java index 95fb7af31..9dc286fc4 100644 --- a/v1_8_R3/src/main/java/net/citizensnpcs/nms/v1_8_R3/util/NMSImpl.java +++ b/v1_8_R3/src/main/java/net/citizensnpcs/nms/v1_8_R3/util/NMSImpl.java @@ -1813,7 +1813,6 @@ public class NMSImpl implements NMSBridge { public static MethodHandle ENDERDRAGON_CHECK_WALLS = NMS.getFirstMethodHandleWithReturnType(EntityEnderDragon.class, true, boolean.class, AxisAlignedBB.class); - private static Method ENTITY_ATTACK_A = NMS.getMethod(Entity.class, "a", true, EntityLiving.class, Entity.class); private static Map, Integer> ENTITY_CLASS_TO_INT; private static Map, String> ENTITY_CLASS_TO_NAME; diff --git a/v1_8_R3/src/main/java/net/citizensnpcs/nms/v1_8_R3/util/PlayerControllerMove.java b/v1_8_R3/src/main/java/net/citizensnpcs/nms/v1_8_R3/util/PlayerControllerMove.java index b4963dedb..767c3c305 100644 --- a/v1_8_R3/src/main/java/net/citizensnpcs/nms/v1_8_R3/util/PlayerControllerMove.java +++ b/v1_8_R3/src/main/java/net/citizensnpcs/nms/v1_8_R3/util/PlayerControllerMove.java @@ -70,30 +70,29 @@ public class PlayerControllerMove extends ControllerMove { @Override public void c() { this.a.ba = 0F; - if (this.f) { - this.f = false; - double dX = this.b - this.a.locX; - double dZ = this.d - this.a.locZ; - double dY = this.c - this.a.locY; - double dXZ = Math.sqrt(dX * dX + dZ * dZ); - if (Math.abs(dY) < 1.0 && dXZ < 0.025) - return; - float f = (float) Math.toDegrees(Math.atan2(dZ, dX)) - 90.0F; - this.a.yaw = a(this.a.yaw, f, 90.0F); - NMS.setHeadYaw(a.getBukkitEntity(), this.a.yaw); - AttributeInstance speed = this.a.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED); - speed.setValue(0.1D * this.e); - float movement = (float) (this.e * speed.getValue()) * 10; - this.a.k(movement); - this.a.ba = movement; - if (shouldSlimeJump() || ((dY >= NMS.getStepHeight(a.getBukkitEntity())) && dXZ < 0.4)) { - this.h = cg(); - this.h /= 3; - if (this.a instanceof EntityHumanNPC) { - ((EntityHumanNPC) this.a).getControllerJump().a(); - } else { - ((EntityInsentient) this.a).getControllerJump().a(); - } + if (!this.f) + return; + this.f = false; + double dX = this.b - this.a.locX; + double dZ = this.d - this.a.locZ; + double dY = this.c - this.a.locY; + double dXZ = Math.sqrt(dX * dX + dZ * dZ); + if (Math.abs(dY) < 1.0 && dXZ < 0.025) + return; + float f = (float) Math.toDegrees(Math.atan2(dZ, dX)) - 90.0F; + this.a.yaw = a(this.a.yaw, f, 90.0F); + NMS.setHeadYaw(a.getBukkitEntity(), this.a.yaw); + AttributeInstance speed = this.a.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED); + float movement = (float) (this.e * speed.getValue()); + this.a.k(movement); + this.a.ba = movement; + if (shouldSlimeJump() || ((dY >= NMS.getStepHeight(a.getBukkitEntity())) && dXZ < 0.4)) { + this.h = cg(); + this.h /= 3; + if (this.a instanceof EntityHumanNPC) { + ((EntityHumanNPC) this.a).getControllerJump().a(); + } else { + ((EntityInsentient) this.a).getControllerJump().a(); } } }