From 4c6342a24c35827946770bbca1375052d2e83af6 Mon Sep 17 00:00:00 2001 From: allinkdev <44676012+allinkdev@users.noreply.github.com> Date: Wed, 5 Jul 2023 23:56:09 +0100 Subject: [PATCH] Limit save data for Bees and Vexes (#122) --- ...1-Limit-save-data-for-Bees-and-Vexes.patch | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 patches/server/0051-Limit-save-data-for-Bees-and-Vexes.patch diff --git a/patches/server/0051-Limit-save-data-for-Bees-and-Vexes.patch b/patches/server/0051-Limit-save-data-for-Bees-and-Vexes.patch new file mode 100644 index 0000000..9545942 --- /dev/null +++ b/patches/server/0051-Limit-save-data-for-Bees-and-Vexes.patch @@ -0,0 +1,44 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Allink +Date: Wed, 5 Jul 2023 22:58:24 +0100 +Subject: [PATCH] Limit save data for Bees and Vexes + + +diff --git a/src/main/java/net/minecraft/world/entity/animal/Bee.java b/src/main/java/net/minecraft/world/entity/animal/Bee.java +index f6062bf8c888baeb7b421150a2c64bf1af1a312b..ce8111198150a707ab0e0a64ee84524972625f76 100644 +--- a/src/main/java/net/minecraft/world/entity/animal/Bee.java ++++ b/src/main/java/net/minecraft/world/entity/animal/Bee.java +@@ -222,8 +222,12 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal { + @Override + public void readAdditionalSaveData(CompoundTag nbt) { + this.hivePos = null; +- if (nbt.contains("HivePos")) { +- this.hivePos = NbtUtils.readBlockPos(nbt.getCompound("HivePos")); ++ if (nbt.contains("HivePos")) ++ { ++ // Scissors start - Limit HivePos ++ final BlockPos savedHivePos = NbtUtils.readBlockPos(nbt.getCompound("HivePos")); ++ this.hivePos = this.level().isLoadedAndInBounds(savedHivePos) ? savedHivePos : null; ++ // Scissors end - Limit HivePos + } + + this.savedFlowerPos = null; +diff --git a/src/main/java/net/minecraft/world/entity/monster/Vex.java b/src/main/java/net/minecraft/world/entity/monster/Vex.java +index 65cb385ab294e362d666a6d03c4496cdc3b64890..42c3e946e51f6dcb100078969a4fb46c77f42b2d 100644 +--- a/src/main/java/net/minecraft/world/entity/monster/Vex.java ++++ b/src/main/java/net/minecraft/world/entity/monster/Vex.java +@@ -118,8 +118,12 @@ public class Vex extends Monster implements TraceableEntity { + @Override + public void readAdditionalSaveData(CompoundTag nbt) { + super.readAdditionalSaveData(nbt); +- if (nbt.contains("BoundX")) { +- this.boundOrigin = new BlockPos(nbt.getInt("BoundX"), nbt.getInt("BoundY"), nbt.getInt("BoundZ")); ++ if (nbt.contains("BoundX")) ++ { ++ // Scissors start - Limit Vex bound origin ++ final BlockPos savedBoundOrigin = new BlockPos(nbt.getInt("BoundX"), nbt.getInt("BoundY"), nbt.getInt("BoundZ")); ++ this.boundOrigin = this.level().isLoadedAndInBounds(savedBoundOrigin) ? savedBoundOrigin : null; ++ // Scissors end - Limit Vex bound origin + } + + if (nbt.contains("LifeTicks")) {