From a4ede7dc64a3f3b01688d047c6ef1240fb9018d0 Mon Sep 17 00:00:00 2001 From: allinkdev <44676012+allinkdev@users.noreply.github.com> Date: Wed, 5 Jul 2023 23:52:13 +0100 Subject: [PATCH] Limit save data for Bees and Vexes (#120) --- ...8-Limit-save-data-for-Bees-and-Vexes.patch | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 patches/server/0058-Limit-save-data-for-Bees-and-Vexes.patch diff --git a/patches/server/0058-Limit-save-data-for-Bees-and-Vexes.patch b/patches/server/0058-Limit-save-data-for-Bees-and-Vexes.patch new file mode 100644 index 0000000..ce037e8 --- /dev/null +++ b/patches/server/0058-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 083640b7e4aee75db9b884aebd640c9410e669ca..76a2d683c7a32a8af2683cb2d7a3e33111064b27 100644 +--- a/src/main/java/net/minecraft/world/entity/animal/Bee.java ++++ b/src/main/java/net/minecraft/world/entity/animal/Bee.java +@@ -223,8 +223,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 f78f3f2d740f7b4800e17d9bc64b7b4fedda49b9..a4c4c7cd5a4325916836728f11d2164ad211143b 100644 +--- a/src/main/java/net/minecraft/world/entity/monster/Vex.java ++++ b/src/main/java/net/minecraft/world/entity/monster/Vex.java +@@ -107,8 +107,12 @@ public class Vex extends Monster { + @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")) {