Updated Upstream (Paper)

Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@6bb9dc6b Normalize and trim spaces in Player#performCommand (#12892)
PaperMC/Paper@840dd9e1 Fix dialog preconditions (#12895)
PaperMC/Paper@9ccc51df Fix legacy pearls forgetting owner on disconnect (#12884)
PaperMC/Paper@57c13137 Allow to change despawnInPeaceful (#12880)
PaperMC/Paper@a5763618  Add WorldDifficultyChangeEvent (#12471)
PaperMC/Paper@dbc367ba Keep non-container slots synced when in container view (#12881)
This commit is contained in:
granny
2025-07-28 16:39:42 -07:00
parent 6c88d74021
commit 520a7e500d
14 changed files with 97 additions and 95 deletions

View File

@@ -31,7 +31,7 @@
}
private void saveParentVehicle(ValueOutput output) {
@@ -1075,6 +_,7 @@
@@ -1079,6 +_,7 @@
// Paper - moved up to sendClientboundPlayerCombatKillPacket()
sendClientboundPlayerCombatKillPacket(event.getShowDeathMessages(), deathScreenMessage); // Paper - Expand PlayerDeathEvent
Team team = this.getTeam();
@@ -39,7 +39,7 @@
if (team == null || team.getDeathMessageVisibility() == Team.Visibility.ALWAYS) {
this.server.getPlayerList().broadcastSystemMessage(deathMessage, false);
} else if (team.getDeathMessageVisibility() == Team.Visibility.HIDE_FOR_OTHER_TEAMS) {
@@ -1181,6 +_,13 @@
@@ -1185,6 +_,13 @@
if (this.isInvulnerableTo(level, damageSource)) {
return false;
} else {
@@ -53,7 +53,7 @@
Entity entity = damageSource.getEntity();
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))
@@ -1434,6 +_,7 @@
@@ -1438,6 +_,7 @@
serverLevel.removePlayerImmediately(this, Entity.RemovalReason.CHANGED_DIMENSION);
this.unsetRemoved();
// CraftBukkit end
@@ -61,7 +61,7 @@
this.setServerLevel(level);
this.connection.internalTeleport(PositionMoveRotation.of(teleportTransition), teleportTransition.relatives()); // CraftBukkit - use internal teleport without event
this.connection.resetPosition();
@@ -1550,7 +_,7 @@
@@ -1554,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),
monster -> monster.isPreventingPlayerRest(this.level(), this)
);
@@ -70,7 +70,7 @@
return Either.left(Player.BedSleepingProblem.NOT_SAFE);
}
}
@@ -1587,7 +_,19 @@
@@ -1591,7 +_,19 @@
CriteriaTriggers.SLEPT_IN_BED.trigger(this);
});
if (!this.level().canSleepThroughNights()) {
@@ -91,7 +91,7 @@
}
this.level().updateSleepingPlayerList();
@@ -1679,6 +_,7 @@
@@ -1683,6 +_,7 @@
@Override
public void openTextEdit(SignBlockEntity signEntity, boolean isFrontText) {
@@ -99,7 +99,7 @@
this.connection.send(new ClientboundBlockUpdatePacket(this.level(), signEntity.getBlockPos()));
this.connection.send(new ClientboundOpenSignEditorPacket(signEntity.getBlockPos(), isFrontText));
}
@@ -1988,6 +_,26 @@
@@ -1992,6 +_,26 @@
this.lastSentExp = -1; // CraftBukkit - Added to reset
}
@@ -126,7 +126,7 @@
@Override
public void displayClientMessage(Component chatComponent, boolean actionBar) {
this.sendSystemMessage(chatComponent, actionBar);
@@ -2206,6 +_,20 @@
@@ -2210,6 +_,20 @@
);
}
@@ -147,7 +147,7 @@
public void sendSystemMessage(Component mesage) {
this.sendSystemMessage(mesage, false);
}
@@ -2344,7 +_,67 @@
@@ -2348,7 +_,67 @@
public void resetLastActionTime() {
this.lastActionTime = Util.getMillis();
@@ -216,7 +216,7 @@
public ServerStatsCounter getStats() {
return this.stats;
@@ -2972,4 +_,56 @@
@@ -2976,4 +_,56 @@
return (org.bukkit.craftbukkit.entity.CraftPlayer) super.getBukkitEntity();
}
// CraftBukkit end

View File

@@ -222,7 +222,7 @@
packet.dispatch(
new ServerboundInteractPacket.Handler() {
private void performInteraction(InteractionHand hand, ServerGamePacketListenerImpl.EntityInteraction entityInteraction, PlayerInteractEntityEvent event) { // CraftBukkit
@@ -3491,7 +_,7 @@
@@ -3492,7 +_,7 @@
@Override
public void handleChangeGameMode(ServerboundChangeGameModePacket packet) {
PacketUtils.ensureRunningOnSameThread(packet, this, this.player.level());

View File

@@ -16,7 +16,7 @@
ServerLevel serverLevel = player.level();
player.awardStat(Stats.LEAVE_GAME);
// CraftBukkit start - Quitting must be before we do final save of data, in case plugins need to modify it
@@ -895,6 +_,20 @@
@@ -893,6 +_,20 @@
}
}
@@ -37,7 +37,7 @@
public void broadcastAll(Packet<?> packet, ResourceKey<Level> dimension) {
for (ServerPlayer serverPlayer : this.players) {
if (serverPlayer.level().dimension() == dimension) {
@@ -979,6 +_,7 @@
@@ -977,6 +_,7 @@
} else {
b = (byte)(24 + permLevel);
}
@@ -45,7 +45,7 @@
player.connection.send(new ClientboundEntityEventPacket(player, b));
}
@@ -991,7 +_,7 @@
@@ -989,7 +_,7 @@
// Paper start - whitelist verify event / login event
public LoginResult canBypassFullServerLogin(final GameProfile profile, final LoginResult currentResult) {

View File

@@ -1,14 +1,14 @@
--- a/net/minecraft/world/entity/Mob.java
+++ b/net/minecraft/world/entity/Mob.java
@@ -139,6 +_,7 @@
private BlockPos homePosition = BlockPos.ZERO;
@@ -140,6 +_,7 @@
private int homeRadius = -1;
public boolean aware = true; // CraftBukkit
public net.kyori.adventure.util.TriState despawnInPeacefulOverride = net.kyori.adventure.util.TriState.NOT_SET; // Paper - allow changing despawnInPeaceful
+ public int ticksSinceLastInteraction; // Purpur - Entity lifespan
protected Mob(EntityType<? extends Mob> entityType, Level level) {
super(entityType, level);
@@ -284,6 +_,7 @@
@@ -285,6 +_,7 @@
target = null;
}
}
@@ -16,7 +16,7 @@
this.target = target;
return true;
// CraftBukkit end
@@ -327,7 +_,27 @@
@@ -328,7 +_,27 @@
}
profilerFiller.pop();
@@ -45,23 +45,23 @@
@Override
protected void playHurtSound(DamageSource source) {
@@ -427,6 +_,7 @@
output.putBoolean("NoAI", this.isNoAi());
@@ -433,6 +_,7 @@
output.putString("Paper.DespawnInPeacefulOverride", this.despawnInPeacefulOverride.name());
}
output.putBoolean("Bukkit.Aware", this.aware); // CraftBukkit
// Paper end - allow changing despawnInPeaceful
+ output.putInt("Purpur.ticksSinceLastInteraction", this.ticksSinceLastInteraction); // Purpur - Entity lifespan
}
@Override
@@ -454,6 +_,7 @@
this.lootTableSeed = input.getLongOr("DeathLootTableSeed", 0L);
@@ -461,6 +_,7 @@
this.setNoAi(input.getBooleanOr("NoAI", false));
this.aware = input.getBooleanOr("Bukkit.Aware", true); // CraftBukkit
this.despawnInPeacefulOverride = input.read("Paper.DespawnInPeacefulOverride", io.papermc.paper.util.PaperCodecs.TRI_STATE_CODEC).orElse(net.kyori.adventure.util.TriState.NOT_SET); // Paper - allow changing despawnInPeaceful
+ this.ticksSinceLastInteraction = input.getIntOr("Purpur.ticksSinceLastInteraction", 0); // Purpur- Entity lifespan
}
@Override
@@ -1188,7 +_,7 @@
@@ -1201,7 +_,7 @@
);
}
@@ -70,7 +70,7 @@
return spawnGroupData;
}
@@ -1525,6 +_,7 @@
@@ -1538,6 +_,7 @@
this.playAttackSound();
}