9
0
mirror of https://github.com/LeavesMC/Leaves.git synced 2025-12-28 19:39:22 +00:00

Fix fakeplayer fatal error (#21)

This commit is contained in:
violetc
2023-02-03 09:08:14 +08:00
parent 5ce1179760
commit ae8d999b01

View File

@@ -591,10 +591,10 @@ index 0000000000000000000000000000000000000000..d6466ee4db637106e1394bb462d875e5
+}
diff --git a/src/main/java/top/leavesmc/leaves/bot/ServerBot.java b/src/main/java/top/leavesmc/leaves/bot/ServerBot.java
new file mode 100644
index 0000000000000000000000000000000000000000..e172fec5648e6a303c5870208c23cb86029e0cbd
index 0000000000000000000000000000000000000000..f5837b3f5fb57b77e237fa59bb53cc4caddb876a
--- /dev/null
+++ b/src/main/java/top/leavesmc/leaves/bot/ServerBot.java
@@ -0,0 +1,747 @@
@@ -0,0 +1,750 @@
+package top.leavesmc.leaves.bot;
+
+import com.google.common.collect.Lists;
@@ -981,7 +981,7 @@ index 0000000000000000000000000000000000000000..e172fec5648e6a303c5870208c23cb86
+
+ this.setHealth(amount);
+
+ fireDamageCheck();
+ // fireDamageCheck();
+ fallDamageCheck();
+
+ checkOutOfWorld();
@@ -1135,7 +1135,10 @@ index 0000000000000000000000000000000000000000..e172fec5648e6a303c5870208c23cb86
+
+ public void setOnFirePackets(boolean onFire) {
+ entityData.set(new EntityDataAccessor<>(0, EntityDataSerializers.BYTE), onFire ? (byte) 1 : (byte) 0);
+ sendPacket(new ClientboundSetEntityDataPacket(getId(), getEntityData().packDirty()));
+ var list = entityData.packDirty();
+ if (list != null) {
+ sendPacket(new ClientboundSetEntityDataPacket(getId(), list));
+ }
+ }
+
+ private void fallDamageCheck() {
@@ -1154,7 +1157,7 @@ index 0000000000000000000000000000000000000000..e172fec5648e6a303c5870208c23cb86
+ return;
+ }
+
+ if (type == Material.WATER) {
+ if (type == Material.WATER && fireTicks > 0) {
+ setOnFirePackets(false);
+ fireTicks = 0;
+ return;