Async Pathfinding is back
This commit is contained in:
@@ -6,32 +6,10 @@ Subject: [PATCH] Entities can use portals configuration
|
||||
Original code by PurpurMC, licensed under MIT
|
||||
You can find the original code on https://github.com/PurpurMC/Purpur
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
index 0d326cd7fd6a903474638d9279075e0ee8b272f0..e46948c61c4f694c2224bed2bee695570d196ab9 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -2880,7 +2880,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
if (this.isOnPortalCooldown()) {
|
||||
if (!(wtf.etil.mirai.MiraiConfig.playerFixStuckPortal && this instanceof Player && !pos.equals(portalPos))) // Purpur
|
||||
this.setPortalCooldown();
|
||||
- } else {
|
||||
+ } else if (wtf.etil.mirai.MiraiConfig.entitiesCanUsePortals || this instanceof ServerPlayer) { // Purpur
|
||||
if (!this.level.isClientSide && !pos.equals(this.portalEntrancePos)) {
|
||||
this.portalEntrancePos = pos.immutable();
|
||||
portalPos = BlockPos.ZERO; // Purpur
|
||||
@@ -3553,7 +3553,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
}
|
||||
|
||||
public boolean canChangeDimensions() {
|
||||
- return isAlive() && valid; // Paper
|
||||
+ return isAlive() && valid && (wtf.etil.mirai.MiraiConfig.entitiesCanUsePortals || this instanceof ServerPlayer); // Paper // Purpur
|
||||
}
|
||||
|
||||
public float getBlockExplosionResistance(Explosion explosion, BlockGetter world, BlockPos pos, BlockState blockState, FluidState fluidState, float max) {
|
||||
diff --git a/src/main/java/wtf/etil/mirai/MiraiConfig.java b/src/main/java/wtf/etil/mirai/MiraiConfig.java
|
||||
index 65db00dd6dc75af71a0d84e89529a0f55a730102..54fc6d04f10ed8d5aa637c381854e0fa098b48b4 100644
|
||||
--- a/src/main/java/wtf/etil/mirai/MiraiConfig.java
|
||||
+++ b/src/main/java/wtf/etil/mirai/MiraiConfig.java
|
||||
diff --git a/src/main/java/dev/etil/mirai/MiraiConfig.java b/src/main/java/dev/etil/mirai/MiraiConfig.java
|
||||
index a907c023ec88011f2806a9c27bc27e129aa49980..8e720820a94cf5d39e59998700932bfbb5c15544 100644
|
||||
--- a/src/main/java/dev/etil/mirai/MiraiConfig.java
|
||||
+++ b/src/main/java/dev/etil/mirai/MiraiConfig.java
|
||||
@@ -196,4 +196,10 @@ public class MiraiConfig {
|
||||
"walking to another block in case they are stuck.");
|
||||
}
|
||||
@@ -44,3 +22,25 @@ index 65db00dd6dc75af71a0d84e89529a0f55a730102..54fc6d04f10ed8d5aa637c381854e0fa
|
||||
+
|
||||
}
|
||||
\ No newline at end of file
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
index e144637e995ed0b4bd336e2c444e2b30e083dc09..d13824eb725f32bdc01aa6d13436c2d1c3528fef 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -2880,7 +2880,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
if (this.isOnPortalCooldown()) {
|
||||
if (!(dev.etil.mirai.MiraiConfig.playerFixStuckPortal && this instanceof Player && !pos.equals(portalPos))) // Purpur
|
||||
this.setPortalCooldown();
|
||||
- } else {
|
||||
+ } else if (dev.etil.mirai.MiraiConfig.entitiesCanUsePortals || this instanceof ServerPlayer) { // Purpur
|
||||
if (!this.level.isClientSide && !pos.equals(this.portalEntrancePos)) {
|
||||
this.portalEntrancePos = pos.immutable();
|
||||
portalPos = BlockPos.ZERO; // Purpur
|
||||
@@ -3553,7 +3553,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
}
|
||||
|
||||
public boolean canChangeDimensions() {
|
||||
- return isAlive() && valid; // Paper
|
||||
+ return isAlive() && valid && (dev.etil.mirai.MiraiConfig.entitiesCanUsePortals || this instanceof ServerPlayer); // Paper // Purpur
|
||||
}
|
||||
|
||||
public float getBlockExplosionResistance(Explosion explosion, BlockGetter world, BlockPos pos, BlockState blockState, FluidState fluidState, float max) {
|
||||
|
||||
Reference in New Issue
Block a user