Skip to content

Commit fc6aa20

Browse files
committed
Add missing postChangeDimension override for PrimedTnt
Required so that the used portal flag is set, which prevents the tnt from exploding the portal.
1 parent 0bb3c25 commit fc6aa20

File tree

1 file changed

+26
-1
lines changed

1 file changed

+26
-1
lines changed

folia-server/minecraft-patches/features/0001-Region-Threading-Base.patch

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15745,7 +15745,7 @@ index 6c0ebfb2be4e8b884456a2aa3d5fdc87e45a0e3c..38f0aacba93236b8e5c19bb729326fea
1574515745
return entity;
1574615746
}
1574715747
diff --git a/net/minecraft/world/entity/item/PrimedTnt.java b/net/minecraft/world/entity/item/PrimedTnt.java
15748-
index 5d23d8754b304d5e2fd54400cc81c7fe5c14a804..e6f58a8b1733ff902516fe374db691029d4bd79a 100644
15748+
index 5d23d8754b304d5e2fd54400cc81c7fe5c14a804..c53d5cec9e46541e31c468699fe96e3d67811895 100644
1574915749
--- a/net/minecraft/world/entity/item/PrimedTnt.java
1575015750
+++ b/net/minecraft/world/entity/item/PrimedTnt.java
1575115751
@@ -101,8 +101,8 @@ public class PrimedTnt extends Entity implements TraceableEntity {
@@ -15768,6 +15768,31 @@ index 5d23d8754b304d5e2fd54400cc81c7fe5c14a804..e6f58a8b1733ff902516fe374db69102
1576815768
if (ete != null) {
1576915769
net.minecraft.network.protocol.game.ClientboundSetEntityMotionPacket velocityPacket = new net.minecraft.network.protocol.game.ClientboundSetEntityMotionPacket(this);
1577015770
net.minecraft.network.protocol.game.ClientboundTeleportEntityPacket positionPacket = net.minecraft.network.protocol.game.ClientboundTeleportEntityPacket.teleport(this.getId(), net.minecraft.world.entity.PositionMoveRotation.of(this), java.util.Set.of(), this.onGround);
15771+
@@ -235,13 +235,21 @@ public class PrimedTnt extends Entity implements TraceableEntity {
15772+
@Override
15773+
public Entity teleport(TeleportTransition teleportTransition) {
15774+
Entity entity = super.teleport(teleportTransition);
15775+
- if (entity instanceof PrimedTnt primedTnt) {
15776+
- primedTnt.setUsedPortal(true);
15777+
- }
15778+
+ // Folia - region threading - move to post change
15779+
15780+
return entity;
15781+
}
15782+
15783+
+ // Folia start - region threading
15784+
+ @Override
15785+
+ public void postChangeDimension() {
15786+
+ super.postChangeDimension();
15787+
+ if (this instanceof PrimedTnt primedTnt) { // Folia - region threading - move to post change
15788+
+ primedTnt.setUsedPortal(true);
15789+
+ }
15790+
+ }
15791+
+ // Folia end - region threading
15792+
+
15793+
@Override
15794+
public final boolean hurtServer(ServerLevel level, DamageSource damageSource, float amount) {
15795+
return false;
1577115796
diff --git a/net/minecraft/world/entity/monster/Vex.java b/net/minecraft/world/entity/monster/Vex.java
1577215797
index bc74bdc3e13f1d51ed6d31470f3ac6f9855778c9..ccb4893b18c425ffac1de9dd976e8d4b8b231173 100644
1577315798
--- a/net/minecraft/world/entity/monster/Vex.java

0 commit comments

Comments
 (0)