mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-19 17:37:42 +01:00
Updated Upstream (Paper)
Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@2552abf0 fix message mutation in PlayerSetSpawnEvent PaperMC/Paper@ae99e24f fix deprecated bungee chat api methods PaperMC/Paper@dca4aab8 add util methods to CraftChatMessage PaperMC/Paper@87c9d9b0 be more lenient on url parsing for legacy format PaperMC/Paper@4a9bd2e3 Correctly clear items in PlayerDeathEvent PaperMC/Paper@a70f7745 fix unsaveable launched trident
This commit is contained in:
@@ -2,7 +2,7 @@ group = org.purpurmc.purpur
|
|||||||
version = 1.21.5-R0.1-SNAPSHOT
|
version = 1.21.5-R0.1-SNAPSHOT
|
||||||
|
|
||||||
mcVersion = 1.21.5
|
mcVersion = 1.21.5
|
||||||
paperCommit = ce91a8ca123f4e853629d08705e4ece3a09a5a4d
|
paperCommit = a70f7745a81d43089944069d701d69ad811aa4f1
|
||||||
|
|
||||||
org.gradle.configuration-cache = true
|
org.gradle.configuration-cache = true
|
||||||
org.gradle.caching = true
|
org.gradle.caching = true
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Minecart settings and WASD controls
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/net/minecraft/server/level/ServerPlayer.java b/net/minecraft/server/level/ServerPlayer.java
|
diff --git a/net/minecraft/server/level/ServerPlayer.java b/net/minecraft/server/level/ServerPlayer.java
|
||||||
index cf26a10e4ccf0f28817ce53b3c5bf1df02259273..580e79d19a728deed4719a8d2e5d70b532397781 100644
|
index 6c5dab657ae7a7f5fd6fb73a86b3e8e4803dae50..998ce3a34e48e56cd907fc61cc3715518cbfae28 100644
|
||||||
--- a/net/minecraft/server/level/ServerPlayer.java
|
--- a/net/minecraft/server/level/ServerPlayer.java
|
||||||
+++ b/net/minecraft/server/level/ServerPlayer.java
|
+++ b/net/minecraft/server/level/ServerPlayer.java
|
||||||
@@ -1149,6 +1149,11 @@ public class ServerPlayer extends Player {
|
@@ -1153,6 +1153,11 @@ public class ServerPlayer extends Player {
|
||||||
} else {
|
} else {
|
||||||
// Purpur start - Add boat fall damage config
|
// Purpur start - Add boat fall damage config
|
||||||
if (damageSource.is(net.minecraft.tags.DamageTypeTags.IS_FALL)) {
|
if (damageSource.is(net.minecraft.tags.DamageTypeTags.IS_FALL)) {
|
||||||
|
|||||||
@@ -32,7 +32,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void saveParentVehicle(CompoundTag tag) {
|
private void saveParentVehicle(CompoundTag tag) {
|
||||||
@@ -1029,6 +_,7 @@
|
@@ -1024,6 +_,7 @@
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
Team team = this.getTeam();
|
Team team = this.getTeam();
|
||||||
@@ -40,7 +40,7 @@
|
|||||||
if (team == null || team.getDeathMessageVisibility() == Team.Visibility.ALWAYS) {
|
if (team == null || team.getDeathMessageVisibility() == Team.Visibility.ALWAYS) {
|
||||||
this.server.getPlayerList().broadcastSystemMessage(deathMessage, false);
|
this.server.getPlayerList().broadcastSystemMessage(deathMessage, false);
|
||||||
} else if (team.getDeathMessageVisibility() == Team.Visibility.HIDE_FOR_OTHER_TEAMS) {
|
} else if (team.getDeathMessageVisibility() == Team.Visibility.HIDE_FOR_OTHER_TEAMS) {
|
||||||
@@ -1126,6 +_,13 @@
|
@@ -1130,6 +_,13 @@
|
||||||
if (this.isInvulnerableTo(level, damageSource)) {
|
if (this.isInvulnerableTo(level, damageSource)) {
|
||||||
return false;
|
return false;
|
||||||
} else {
|
} else {
|
||||||
@@ -54,7 +54,7 @@
|
|||||||
Entity entity = damageSource.getEntity();
|
Entity entity = damageSource.getEntity();
|
||||||
if (!( // Paper - split the if statement. If below statement is false, hurtServer would not have been evaluated. Return false.
|
if (!( // Paper - split the if statement. If below statement is false, hurtServer would not have been evaluated. Return false.
|
||||||
!(entity instanceof Player player && !this.canHarmPlayer(player))
|
!(entity instanceof Player player && !this.canHarmPlayer(player))
|
||||||
@@ -1356,6 +_,7 @@
|
@@ -1360,6 +_,7 @@
|
||||||
serverLevel.removePlayerImmediately(this, Entity.RemovalReason.CHANGED_DIMENSION);
|
serverLevel.removePlayerImmediately(this, Entity.RemovalReason.CHANGED_DIMENSION);
|
||||||
this.unsetRemoved();
|
this.unsetRemoved();
|
||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
@@ -62,7 +62,7 @@
|
|||||||
this.setServerLevel(level);
|
this.setServerLevel(level);
|
||||||
this.connection.internalTeleport(PositionMoveRotation.of(teleportTransition), teleportTransition.relatives()); // CraftBukkit - use internal teleport without event
|
this.connection.internalTeleport(PositionMoveRotation.of(teleportTransition), teleportTransition.relatives()); // CraftBukkit - use internal teleport without event
|
||||||
this.connection.resetPosition();
|
this.connection.resetPosition();
|
||||||
@@ -1473,7 +_,7 @@
|
@@ -1477,7 +_,7 @@
|
||||||
new AABB(vec3.x() - 8.0, vec3.y() - 5.0, vec3.z() - 8.0, vec3.x() + 8.0, vec3.y() + 5.0, vec3.z() + 8.0),
|
new AABB(vec3.x() - 8.0, vec3.y() - 5.0, vec3.z() - 8.0, vec3.x() + 8.0, vec3.y() + 5.0, vec3.z() + 8.0),
|
||||||
monster -> monster.isPreventingPlayerRest(this.serverLevel(), this)
|
monster -> monster.isPreventingPlayerRest(this.serverLevel(), this)
|
||||||
);
|
);
|
||||||
@@ -71,7 +71,7 @@
|
|||||||
return Either.left(Player.BedSleepingProblem.NOT_SAFE);
|
return Either.left(Player.BedSleepingProblem.NOT_SAFE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1510,7 +_,19 @@
|
@@ -1514,7 +_,19 @@
|
||||||
CriteriaTriggers.SLEPT_IN_BED.trigger(this);
|
CriteriaTriggers.SLEPT_IN_BED.trigger(this);
|
||||||
});
|
});
|
||||||
if (!this.serverLevel().canSleepThroughNights()) {
|
if (!this.serverLevel().canSleepThroughNights()) {
|
||||||
@@ -92,7 +92,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
((ServerLevel)this.level()).updateSleepingPlayerList();
|
((ServerLevel)this.level()).updateSleepingPlayerList();
|
||||||
@@ -1602,6 +_,7 @@
|
@@ -1606,6 +_,7 @@
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void openTextEdit(SignBlockEntity signEntity, boolean isFrontText) {
|
public void openTextEdit(SignBlockEntity signEntity, boolean isFrontText) {
|
||||||
@@ -100,7 +100,7 @@
|
|||||||
this.connection.send(new ClientboundBlockUpdatePacket(this.level(), signEntity.getBlockPos()));
|
this.connection.send(new ClientboundBlockUpdatePacket(this.level(), signEntity.getBlockPos()));
|
||||||
this.connection.send(new ClientboundOpenSignEditorPacket(signEntity.getBlockPos(), isFrontText));
|
this.connection.send(new ClientboundOpenSignEditorPacket(signEntity.getBlockPos(), isFrontText));
|
||||||
}
|
}
|
||||||
@@ -1904,6 +_,26 @@
|
@@ -1908,6 +_,26 @@
|
||||||
this.lastSentExp = -1; // CraftBukkit - Added to reset
|
this.lastSentExp = -1; // CraftBukkit - Added to reset
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -127,7 +127,7 @@
|
|||||||
@Override
|
@Override
|
||||||
public void displayClientMessage(Component chatComponent, boolean actionBar) {
|
public void displayClientMessage(Component chatComponent, boolean actionBar) {
|
||||||
this.sendSystemMessage(chatComponent, actionBar);
|
this.sendSystemMessage(chatComponent, actionBar);
|
||||||
@@ -2121,6 +_,20 @@
|
@@ -2125,6 +_,20 @@
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -148,7 +148,7 @@
|
|||||||
public void sendSystemMessage(Component mesage) {
|
public void sendSystemMessage(Component mesage) {
|
||||||
this.sendSystemMessage(mesage, false);
|
this.sendSystemMessage(mesage, false);
|
||||||
}
|
}
|
||||||
@@ -2259,7 +_,67 @@
|
@@ -2263,7 +_,67 @@
|
||||||
|
|
||||||
public void resetLastActionTime() {
|
public void resetLastActionTime() {
|
||||||
this.lastActionTime = Util.getMillis();
|
this.lastActionTime = Util.getMillis();
|
||||||
@@ -217,7 +217,7 @@
|
|||||||
|
|
||||||
public ServerStatsCounter getStats() {
|
public ServerStatsCounter getStats() {
|
||||||
return this.stats;
|
return this.stats;
|
||||||
@@ -2887,4 +_,56 @@
|
@@ -2891,4 +_,56 @@
|
||||||
return (org.bukkit.craftbukkit.entity.CraftPlayer) super.getBukkitEntity();
|
return (org.bukkit.craftbukkit.entity.CraftPlayer) super.getBukkitEntity();
|
||||||
}
|
}
|
||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
|
|||||||
@@ -9,13 +9,11 @@
|
|||||||
);
|
);
|
||||||
// Paper start - PlayerLaunchProjectileEvent
|
// Paper start - PlayerLaunchProjectileEvent
|
||||||
com.destroystokyo.paper.event.player.PlayerLaunchProjectileEvent event = new com.destroystokyo.paper.event.player.PlayerLaunchProjectileEvent((org.bukkit.entity.Player) player.getBukkitEntity(), org.bukkit.craftbukkit.inventory.CraftItemStack.asCraftMirror(stack), (org.bukkit.entity.Projectile) tridentDelayed.projectile().getBukkitEntity());
|
com.destroystokyo.paper.event.player.PlayerLaunchProjectileEvent event = new com.destroystokyo.paper.event.player.PlayerLaunchProjectileEvent((org.bukkit.entity.Player) player.getBukkitEntity(), org.bukkit.craftbukkit.inventory.CraftItemStack.asCraftMirror(stack), (org.bukkit.entity.Projectile) tridentDelayed.projectile().getBukkitEntity());
|
||||||
@@ -94,6 +_,9 @@
|
@@ -94,6 +_,7 @@
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
ThrownTrident thrownTrident = tridentDelayed.projectile(); // Paper - PlayerLaunchProjectileEvent
|
ThrownTrident thrownTrident = tridentDelayed.projectile(); // Paper - PlayerLaunchProjectileEvent
|
||||||
+
|
|
||||||
+ thrownTrident.setActualEnchantments(stack.getEnchantments()); // Purpur - Add an option to fix MC-3304 projectile looting
|
+ thrownTrident.setActualEnchantments(stack.getEnchantments()); // Purpur - Add an option to fix MC-3304 projectile looting
|
||||||
+
|
|
||||||
if (event.shouldConsume()) {
|
if (event.shouldConsume()) {
|
||||||
stack.consume(1, player);
|
|
||||||
stack.hurtWithoutBreaking(1, player); // Paper - PlayerLaunchProjectileEvent
|
stack.hurtWithoutBreaking(1, player); // Paper - PlayerLaunchProjectileEvent
|
||||||
|
}
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ Subject: [PATCH] API for any mob to burn daylight
|
|||||||
Co-authored by: Encode42 <me@encode42.dev>
|
Co-authored by: Encode42 <me@encode42.dev>
|
||||||
|
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||||
index 549f6fcf5ded0563e665673a797fa92496786c3b..852938bc4007c4f4ef5b51330d13b0fbc624102b 100644
|
index d8ed459b49624180e6939d9c5eefb453296f0559..83a23a82335eac087d36fd27ca6c6417960b881f 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||||
@@ -107,6 +107,13 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
@@ -107,6 +107,13 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||||
@@ -24,10 +24,10 @@ index 549f6fcf5ded0563e665673a797fa92496786c3b..852938bc4007c4f4ef5b51330d13b0fb
|
|||||||
Preconditions.checkArgument(entity != null, "Unknown entity");
|
Preconditions.checkArgument(entity != null, "Unknown entity");
|
||||||
|
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||||
index f4425a0e16573200be1951d073e4d0998585ec47..03dbdb8c32a2ed81987fa855567ee192f5c92e41 100644
|
index 61750e2e36d7654a2284637c7b84908416705fe6..5b74ca7c52fb0437726a2a00483134884dc50b2f 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||||
@@ -1173,4 +1173,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
@@ -1167,4 +1167,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||||
public boolean canUseEquipmentSlot(org.bukkit.inventory.EquipmentSlot slot) {
|
public boolean canUseEquipmentSlot(org.bukkit.inventory.EquipmentSlot slot) {
|
||||||
return this.getHandle().canUseSlot(org.bukkit.craftbukkit.CraftEquipmentSlot.getNMS(slot));
|
return this.getHandle().canUseSlot(org.bukkit.craftbukkit.CraftEquipmentSlot.getNMS(slot));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||||
@@ -526,7 +_,7 @@
|
@@ -520,7 +_,7 @@
|
||||||
net.minecraft.server.level.ServerPlayer nmsKiller = killer == null ? null : ((CraftPlayer) killer).getHandle();
|
net.minecraft.server.level.ServerPlayer nmsKiller = killer == null ? null : ((CraftPlayer) killer).getHandle();
|
||||||
this.getHandle().setLastHurtByMob(nmsKiller);
|
this.getHandle().setLastHurtByMob(nmsKiller);
|
||||||
if (nmsKiller != null) {
|
if (nmsKiller != null) {
|
||||||
|
|||||||
Reference in New Issue
Block a user