mirror of
https://github.com/PaperMC/Paper.git
synced 2024-09-07 20:38:22 +02:00
Only mark player as invulnerable if they're actually changing worlds
Fixes GH-96
This commit is contained in:
parent
537c4994db
commit
84b54438c1
@ -0,0 +1,43 @@
|
|||||||
|
From aa0e7b4e75714e38c4ed7576eef5fb1b2ca1f101 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Zach Brown <zach.brown@destroystokyo.com>
|
||||||
|
Date: Sun, 20 Mar 2016 19:40:51 -0500
|
||||||
|
Subject: [PATCH] Only mark player as invulnerable if they're changing worlds
|
||||||
|
|
||||||
|
|
||||||
|
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
|
||||||
|
index 3902d4f..2c497c6 100644
|
||||||
|
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
|
||||||
|
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
|
||||||
|
@@ -48,7 +48,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
|
||||||
|
private boolean cg = true;
|
||||||
|
private long ch = System.currentTimeMillis();
|
||||||
|
private Entity ci = null;
|
||||||
|
- private boolean cj;
|
||||||
|
+ protected boolean cj; // Paper - private -> protected
|
||||||
|
private int containerCounter;
|
||||||
|
public boolean f;
|
||||||
|
public int ping;
|
||||||
|
@@ -541,7 +541,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
|
||||||
|
}
|
||||||
|
|
||||||
|
public Entity c(int i) {
|
||||||
|
- this.cj = true;
|
||||||
|
+ //this.cj = true; // Paper - Moved to PlayerList#changeDimension
|
||||||
|
if (this.dimension == 1 && i == 1) {
|
||||||
|
this.world.kill(this);
|
||||||
|
if (!this.viewingCredits) {
|
||||||
|
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||||
|
index 344abbb..c6bad9e 100644
|
||||||
|
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||||
|
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||||
|
@@ -724,6 +724,7 @@ public abstract class PlayerList {
|
||||||
|
Location exit = null;
|
||||||
|
boolean useTravelAgent = false; // don't use agent for custom worlds or return from THE_END
|
||||||
|
if (exitWorld != null) {
|
||||||
|
+ entityplayer.cj = true; // Paper - Set teleport invulnerability only if they're actually changing worlds
|
||||||
|
if ((cause == TeleportCause.END_PORTAL) && (i == 0)) {
|
||||||
|
// THE_END -> NORMAL; use bed if available, otherwise default spawn
|
||||||
|
exit = ((org.bukkit.craftbukkit.entity.CraftPlayer) entityplayer.getBukkitEntity()).getBedSpawnLocation();
|
||||||
|
--
|
||||||
|
2.7.4.windows.1
|
||||||
|
|
@ -1,23 +0,0 @@
|
|||||||
From cef1edae317b21e3ec2951347ce9f755c87273fa Mon Sep 17 00:00:00 2001
|
|
||||||
From: Zach Brown <zach.brown@destroystokyo.com>
|
|
||||||
Date: Sun, 20 Mar 2016 19:40:51 -0500
|
|
||||||
Subject: [PATCH] Only mark player as invulnerable if they're going to the end
|
|
||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
|
|
||||||
index 3902d4f..9c72cec 100644
|
|
||||||
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
|
|
||||||
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
|
|
||||||
@@ -541,8 +541,8 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
|
|
||||||
}
|
|
||||||
|
|
||||||
public Entity c(int i) {
|
|
||||||
- this.cj = true;
|
|
||||||
if (this.dimension == 1 && i == 1) {
|
|
||||||
+ this.cj = true; // Paper - Moved down, only mark entity as invulnerable if they're going into the end
|
|
||||||
this.world.kill(this);
|
|
||||||
if (!this.viewingCredits) {
|
|
||||||
this.viewingCredits = true;
|
|
||||||
--
|
|
||||||
2.7.2.windows.1
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user