diff --git a/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/entity/CodController.java b/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/entity/CodController.java index 154614422..304534102 100644 --- a/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/entity/CodController.java +++ b/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/entity/CodController.java @@ -193,6 +193,18 @@ public class CodController extends MobEntityController { } } + @Override + public void movementTick() { + boolean lastInWater = this.C; + if (npc != null) { + this.C = false; + } + super.movementTick(); + if (npc != null) { + this.C = lastInWater; + } + } + @Override public boolean z_() { if (npc == null || !npc.isFlyable()) { diff --git a/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/entity/PufferFishController.java b/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/entity/PufferFishController.java index 1ac465971..23ba91aeb 100644 --- a/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/entity/PufferFishController.java +++ b/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/entity/PufferFishController.java @@ -176,6 +176,18 @@ public class PufferFishController extends MobEntityController { } } + @Override + public void movementTick() { + boolean lastInWater = this.C; + if (npc != null) { + this.C = false; + } + super.movementTick(); + if (npc != null) { + this.C = lastInWater; + } + } + @Override public boolean z_() { if (npc == null || !npc.isFlyable()) { diff --git a/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/entity/SalmonController.java b/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/entity/SalmonController.java index 4fb7a17ca..ef47b542d 100644 --- a/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/entity/SalmonController.java +++ b/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/entity/SalmonController.java @@ -179,6 +179,18 @@ public class SalmonController extends MobEntityController { } } + @Override + public void movementTick() { + boolean lastInWater = this.C; + if (npc != null) { + this.C = false; + } + super.movementTick(); + if (npc != null) { + this.C = lastInWater; + } + } + @Override public boolean z_() { if (npc == null || !npc.isFlyable()) { diff --git a/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/entity/TropicalFishController.java b/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/entity/TropicalFishController.java index 8203bc9d8..8450149ad 100644 --- a/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/entity/TropicalFishController.java +++ b/v1_13_R2/src/main/java/net/citizensnpcs/nms/v1_13_R2/entity/TropicalFishController.java @@ -179,6 +179,18 @@ public class TropicalFishController extends MobEntityController { } } + @Override + public void movementTick() { + boolean lastInWater = this.C; + if (npc != null) { + this.C = false; + } + super.movementTick(); + if (npc != null) { + this.C = lastInWater; + } + } + @Override public boolean z_() { if (npc == null || !npc.isFlyable()) { diff --git a/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/entity/CodController.java b/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/entity/CodController.java index 0af469bd9..c069f1aed 100644 --- a/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/entity/CodController.java +++ b/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/entity/CodController.java @@ -1,7 +1,5 @@ package net.citizensnpcs.nms.v1_14_R1.entity; -import net.minecraft.server.v1_14_R1.Vec3D; - import org.bukkit.Bukkit; import org.bukkit.craftbukkit.v1_14_R1.CraftServer; import org.bukkit.craftbukkit.v1_14_R1.entity.CraftCod; @@ -24,6 +22,7 @@ import net.minecraft.server.v1_14_R1.EntityTypes; import net.minecraft.server.v1_14_R1.IBlockData; import net.minecraft.server.v1_14_R1.NBTTagCompound; import net.minecraft.server.v1_14_R1.SoundEffect; +import net.minecraft.server.v1_14_R1.Vec3D; import net.minecraft.server.v1_14_R1.World; public class CodController extends MobEntityController { @@ -73,15 +72,6 @@ public class CodController extends MobEntityController { } } - @Override - public void e(Vec3D vec3d) { - if (npc == null || !npc.isFlyable()) { - super.e(vec3d); - } else { - NMSImpl.flyingMoveLogic(this, vec3d); - } - } - @Override public void b(float f, float f1) { if (npc == null || !npc.isFlyable()) { @@ -110,6 +100,15 @@ public class CodController extends MobEntityController { return npc == null ? super.d(save) : false; } + @Override + public void e(Vec3D vec3d) { + if (npc == null || !npc.isFlyable()) { + super.e(vec3d); + } else { + NMSImpl.flyingMoveLogic(this, vec3d); + } + } + @Override public void enderTeleportTo(double d0, double d1, double d2) { if (npc == null) { @@ -173,6 +172,15 @@ public class CodController extends MobEntityController { return NMSImpl.getSoundEffect(npc, super.getSoundHurt(damagesource), NPC.HURT_SOUND_METADATA); } + @Override + public boolean isClimbing() { + if (npc == null || !npc.isFlyable()) { + return super.isClimbing(); + } else { + return false; + } + } + @Override public boolean isLeashed() { if (npc == null) @@ -198,11 +206,14 @@ public class CodController extends MobEntityController { } @Override - public boolean isClimbing() { - if (npc == null || !npc.isFlyable()) { - return super.isClimbing(); - } else { - return false; + public void movementTick() { + boolean lastInWater = this.y; + if (npc != null) { + this.y = false; + } + super.movementTick(); + if (npc != null) { + this.y = lastInWater; } } } diff --git a/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/entity/PufferFishController.java b/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/entity/PufferFishController.java index 8df634ea1..c145b055f 100644 --- a/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/entity/PufferFishController.java +++ b/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/entity/PufferFishController.java @@ -187,6 +187,18 @@ public class PufferFishController extends MobEntityController { npc.update(); } } + + @Override + public void movementTick() { + boolean lastInWater = this.y; + if (npc != null) { + this.y = false; + } + super.movementTick(); + if (npc != null) { + this.y = lastInWater; + } + } } public static class PufferFishNPC extends CraftPufferFish implements NPCHolder { diff --git a/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/entity/SalmonController.java b/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/entity/SalmonController.java index f407b6ebb..b12784322 100644 --- a/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/entity/SalmonController.java +++ b/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/entity/SalmonController.java @@ -1,7 +1,5 @@ package net.citizensnpcs.nms.v1_14_R1.entity; -import net.minecraft.server.v1_14_R1.Vec3D; - import org.bukkit.Bukkit; import org.bukkit.craftbukkit.v1_14_R1.CraftServer; import org.bukkit.craftbukkit.v1_14_R1.entity.CraftEntity; @@ -24,6 +22,7 @@ import net.minecraft.server.v1_14_R1.EntityTypes; import net.minecraft.server.v1_14_R1.IBlockData; import net.minecraft.server.v1_14_R1.NBTTagCompound; import net.minecraft.server.v1_14_R1.SoundEffect; +import net.minecraft.server.v1_14_R1.Vec3D; import net.minecraft.server.v1_14_R1.World; public class SalmonController extends MobEntityController { @@ -59,15 +58,6 @@ public class SalmonController extends MobEntityController { } } - @Override - public void e(Vec3D vec3d) { - if (npc == null || !npc.isFlyable()) { - super.e(vec3d); - } else { - NMSImpl.flyingMoveLogic(this, vec3d); - } - } - @Override public void b(float f, float f1) { if (npc == null || !npc.isFlyable()) { @@ -96,6 +86,15 @@ public class SalmonController extends MobEntityController { return npc == null ? super.d(save) : false; } + @Override + public void e(Vec3D vec3d) { + if (npc == null || !npc.isFlyable()) { + super.e(vec3d); + } else { + NMSImpl.flyingMoveLogic(this, vec3d); + } + } + @Override public void enderTeleportTo(double d0, double d1, double d2) { if (npc == null) { @@ -159,6 +158,15 @@ public class SalmonController extends MobEntityController { return NMSImpl.getSoundEffect(npc, super.getSoundHurt(damagesource), NPC.HURT_SOUND_METADATA); } + @Override + public boolean isClimbing() { + if (npc == null || !npc.isFlyable()) { + return super.isClimbing(); + } else { + return false; + } + } + @Override public boolean isLeashed() { if (npc == null) @@ -184,11 +192,14 @@ public class SalmonController extends MobEntityController { } @Override - public boolean isClimbing() { - if (npc == null || !npc.isFlyable()) { - return super.isClimbing(); - } else { - return false; + public void movementTick() { + boolean lastInWater = this.y; + if (npc != null) { + this.y = false; + } + super.movementTick(); + if (npc != null) { + this.y = lastInWater; } } } diff --git a/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/entity/TropicalFishController.java b/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/entity/TropicalFishController.java index b2ab8dbf7..b1cf42125 100644 --- a/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/entity/TropicalFishController.java +++ b/v1_14_R1/src/main/java/net/citizensnpcs/nms/v1_14_R1/entity/TropicalFishController.java @@ -1,7 +1,5 @@ package net.citizensnpcs.nms.v1_14_R1.entity; -import net.minecraft.server.v1_14_R1.Vec3D; - import org.bukkit.Bukkit; import org.bukkit.craftbukkit.v1_14_R1.CraftServer; import org.bukkit.craftbukkit.v1_14_R1.entity.CraftEntity; @@ -24,6 +22,7 @@ import net.minecraft.server.v1_14_R1.EntityTypes; import net.minecraft.server.v1_14_R1.IBlockData; import net.minecraft.server.v1_14_R1.NBTTagCompound; import net.minecraft.server.v1_14_R1.SoundEffect; +import net.minecraft.server.v1_14_R1.Vec3D; import net.minecraft.server.v1_14_R1.World; public class TropicalFishController extends MobEntityController { @@ -59,15 +58,6 @@ public class TropicalFishController extends MobEntityController { } } - @Override - public void e(Vec3D vec3d) { - if (npc == null || !npc.isFlyable()) { - super.e(vec3d); - } else { - NMSImpl.flyingMoveLogic(this, vec3d); - } - } - @Override public void b(float f, float f1) { if (npc == null || !npc.isFlyable()) { @@ -96,6 +86,15 @@ public class TropicalFishController extends MobEntityController { return npc == null ? super.d(save) : false; } + @Override + public void e(Vec3D vec3d) { + if (npc == null || !npc.isFlyable()) { + super.e(vec3d); + } else { + NMSImpl.flyingMoveLogic(this, vec3d); + } + } + @Override public void enderTeleportTo(double d0, double d1, double d2) { if (npc == null) { @@ -159,6 +158,15 @@ public class TropicalFishController extends MobEntityController { return NMSImpl.getSoundEffect(npc, super.getSoundHurt(damagesource), NPC.HURT_SOUND_METADATA); } + @Override + public boolean isClimbing() { + if (npc == null || !npc.isFlyable()) { + return super.isClimbing(); + } else { + return false; + } + } + @Override public boolean isLeashed() { if (npc == null) @@ -184,11 +192,14 @@ public class TropicalFishController extends MobEntityController { } @Override - public boolean isClimbing() { - if (npc == null || !npc.isFlyable()) { - return super.isClimbing(); - } else { - return false; + public void movementTick() { + boolean lastInWater = this.y; + if (npc != null) { + this.y = false; + } + super.movementTick(); + if (npc != null) { + this.y = lastInWater; } } }