Only limit global sounds to same world if limiting radius ()

This commit is contained in:
evan 2022-10-23 13:52:40 -05:00 committed by GitHub
parent 44ce9b3e9c
commit 1c1aeb20e2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
146 changed files with 37 additions and 43 deletions
patches/server
0101-Only-send-global-sounds-to-same-world-if-limiting-ra.patch0790-Check-player-world-in-endPortalSoundRadius.patch0790-Validate-usernames.patch0791-Make-water-animal-spawn-height-configurable.patch0792-Expose-vanilla-BiomeProvider-from-WorldInfo.patch0793-Add-config-option-for-worlds-affected-by-time-cmd.patch0794-Add-new-overload-to-PersistentDataContainer-has.patch0795-Multiple-Entries-with-Scoreboards.patch0796-Reset-placed-block-on-exception.patch0797-Add-configurable-height-for-slime-spawn.patch0798-Added-getHostname-to-AsyncPlayerPreLoginEvent.patch0799-Fix-xp-reward-for-baby-zombies.patch0800-Kick-on-main-for-illegal-chat.patch0801-Multi-Block-Change-API-Implementation.patch0802-Fix-NotePlayEvent.patch0803-Freeze-Tick-Lock-API.patch0804-Dolphin-API.patch0805-More-PotionEffectType-API.patch0806-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch0807-API-for-creating-command-sender-which-forwards-feedb.patch0808-Add-missing-structure-set-seed-configs.patch0809-Implement-regenerateChunk.patch0810-Fix-cancelled-powdered-snow-bucket-placement.patch0811-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch0812-Add-GameEvent-tags.patch0813-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch0814-Furnace-RecipesUsed-API.patch0815-Configurable-sculk-sensor-listener-range.patch0816-Add-missing-block-data-mins-and-maxes.patch0817-Option-to-have-default-CustomSpawners-in-custom-worl.patch0818-Put-world-into-worldlist-before-initing-the-world.patch0819-Fix-Entity-Position-Desync.patch0820-Custom-Potion-Mixes.patch0821-Fix-Fluid-tags-isTagged-method.patch0822-Force-close-world-loading-screen.patch0823-Fix-falling-block-spawn-methods.patch0824-Expose-furnace-minecart-push-values.patch0825-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch0826-More-Projectile-API.patch0827-Fix-swamp-hut-cat-generation-deadlock.patch0828-Don-t-allow-vehicle-movement-from-players-while-tele.patch0829-Implement-getComputedBiome-API.patch0830-Make-some-itemstacks-nonnull.patch0831-Add-debug-for-invalid-GameProfiles-on-skull-blocks-i.patch0832-Implement-enchantWithLevels-API.patch0833-Fix-saving-in-unloadWorld.patch0834-Buffer-OOB-setBlock-calls.patch0835-Add-TameableDeathMessageEvent.patch0836-Fix-new-block-data-for-EntityChangeBlockEvent-when-s.patch0837-fix-player-loottables-running-when-mob-loot-gamerule.patch0838-Ensure-entity-passenger-world-matches-ridden-entity.patch0839-Guard-against-invalid-entity-positions.patch0840-cache-resource-keys.patch0841-Allow-to-change-the-podium-for-the-EnderDragon.patch0842-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch0843-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch0844-Prevent-tile-entity-copies-loading-chunks.patch0845-Use-username-instead-of-display-name-in-PlayerList-g.patch0846-Fix-slime-spawners-not-spawning-outside-slime-chunks.patch0847-Pass-ServerLevel-for-gamerule-callbacks.patch0848-Add-pre-unbreaking-amount-to-PlayerItemDamageEvent.patch0849-WorldCreator-keepSpawnLoaded.patch0850-Fix-NPE-for-BlockDataMeta-getBlockData.patch0851-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch0852-Add-EntityDyeEvent-and-CollarColorable-interface.patch0853-Fire-CauldronLevelChange-on-initial-fill.patch0854-fix-powder-snow-cauldrons-not-turning-to-water.patch0855-Add-PlayerStopUsingItemEvent.patch0856-FallingBlock-auto-expire-setting.patch0857-Don-t-tick-markers.patch0858-Do-not-accept-invalid-client-settings.patch0859-Add-support-for-Proxy-Protocol.patch0860-Fix-OfflinePlayer-getBedSpawnLocation.patch0861-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch0862-Sanitize-Sent-BlockEntity-NBT.patch0863-Prevent-entity-loading-causing-async-lookups.patch0864-Disable-component-selector-resolving-in-books-by-def.patch0865-Throw-exception-on-world-create-while-being-ticked.patch0866-Add-Alternate-Current-redstone-implementation.patch0867-Dont-resent-entity-on-art-update.patch0868-Add-missing-spawn-eggs.patch0869-Add-WardenAngerChangeEvent.patch0870-Add-option-for-strict-advancement-dimension-checks.patch0871-Add-missing-important-BlockStateListPopulator-method.patch0872-Nameable-Banner-API.patch0873-Don-t-broadcast-messages-to-command-blocks.patch0874-Prevent-empty-items-from-being-added-to-world.patch0875-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch0876-Don-t-print-component-in-resource-pack-rejection-mes.patch0877-Add-Player-getFishHook.patch0878-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch0879-Add-various-missing-EntityDropItemEvent-calls.patch0880-Add-some-minimal-debug-information-to-chat-packet-er.patch0881-Fix-Bee-flower-NPE.patch0882-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch0883-Fixes-and-additions-to-the-SpawnReason-API.patch0884-More-Teleport-API.patch0885-Add-EntityPortalReadyEvent.patch0886-Don-t-use-level-random-in-entity-constructors.patch0887-Send-block-entities-after-destroy-prediction.patch

View file

@ -1,12 +1,13 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Tue, 31 May 2016 22:53:50 -0400
Subject: [PATCH] Only send Dragon/Wither Death sounds to same world
Subject: [PATCH] Only send global sounds to same world if limiting radius
Also fix view distance lookup
Co-authored-by: Evan McCarthy <evanmccarthy@outlook.com>
Co-authored-by: lexikiq <noellekiq@gmail.com>
diff --git a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
index dd1d606543da93e6068b8fa4239d369a4b648523..e6a6b0a298e69ce975eac413723f068aaef72ec0 100644
index dd1d606543da93e6068b8fa4239d369a4b648523..127aab56eef67d7f02f5c3de80d8f445ba70e7db 100644
--- a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
+++ b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
@@ -654,7 +654,7 @@ public class EnderDragon extends Mob implements Enemy {
@ -14,12 +15,12 @@ index dd1d606543da93e6068b8fa4239d369a4b648523..e6a6b0a298e69ce975eac413723f068a
// this.world.b(1028, this.getChunkCoordinates(), 0);
int viewDistance = ((ServerLevel) this.level).getCraftServer().getViewDistance() * 16;
- for (net.minecraft.server.level.ServerPlayer player : this.level.getServer().getPlayerList().players) {
+ for (net.minecraft.server.level.ServerPlayer player : (List<net.minecraft.server.level.ServerPlayer>) ((ServerLevel)level).players()) {
+ for (net.minecraft.server.level.ServerPlayer player : level.spigotConfig.dragonDeathSoundRadius > 0 ? ((ServerLevel) level).players() : level.getServer().getPlayerList().players) { // Paper
double deltaX = this.getX() - player.getX();
double deltaZ = this.getZ() - player.getZ();
double distanceSquared = deltaX * deltaX + deltaZ * deltaZ;
diff --git a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
index 78bffaddbc9e478fb53639396e9c4970e9961b21..1fc862a3b5d40a45cf91703051bcfb06ec1b177a 100644
index 78bffaddbc9e478fb53639396e9c4970e9961b21..0d36a903b7aa8d26232e6edcb0fdbba1defde660 100644
--- a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
+++ b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
@@ -272,7 +272,7 @@ public class WitherBoss extends Monster implements PowerableMob, RangedAttackMob
@ -27,7 +28,20 @@ index 78bffaddbc9e478fb53639396e9c4970e9961b21..1fc862a3b5d40a45cf91703051bcfb06
// this.world.globalLevelEvent(1023, new BlockPosition(this), 0);
int viewDistance = ((ServerLevel) this.level).getCraftServer().getViewDistance() * 16;
- for (ServerPlayer player : (List<ServerPlayer>) MinecraftServer.getServer().getPlayerList().players) {
+ for (ServerPlayer player : (List<ServerPlayer>)this.level.players()) { // Paper
+ for (ServerPlayer player : level.spigotConfig.witherSpawnSoundRadius > 0 ? ((ServerLevel) level).players() : level.getServer().getPlayerList().players) { // Paper
double deltaX = this.getX() - player.getX();
double deltaZ = this.getZ() - player.getZ();
double distanceSquared = deltaX * deltaX + deltaZ * deltaZ;
diff --git a/src/main/java/net/minecraft/world/item/EnderEyeItem.java b/src/main/java/net/minecraft/world/item/EnderEyeItem.java
index a88ffff41481d346a99762352094cdb4e8dd6cc2..e0c3aa1285709a40ff0ea8c1d74d43d2b341aecc 100644
--- a/src/main/java/net/minecraft/world/item/EnderEyeItem.java
+++ b/src/main/java/net/minecraft/world/item/EnderEyeItem.java
@@ -64,7 +64,7 @@ public class EnderEyeItem extends Item {
// world.b(1038, blockposition1.c(1, 0, 1), 0);
int viewDistance = world.getCraftServer().getViewDistance() * 16;
BlockPos soundPos = blockposition1.offset(1, 0, 1);
- for (ServerPlayer player : world.getServer().getPlayerList().players) {
+ for (ServerPlayer player : world.spigotConfig.endPortalSoundRadius > 0 ? ((ServerLevel) world).players() : world.getServer().getPlayerList().players) { // Paper
double deltaX = soundPos.getX() - player.getX();
double deltaZ = soundPos.getZ() - player.getZ();
double distanceSquared = deltaX * deltaX + deltaZ * deltaZ;

View file

@ -1,20 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: lexikiq <noellekiq@gmail.com>
Date: Sat, 17 Jul 2021 20:37:02 -0400
Subject: [PATCH] Check player world in endPortalSoundRadius
Fixes Spigot's endPortalSoundRadius not checking player worlds
diff --git a/src/main/java/net/minecraft/world/item/EnderEyeItem.java b/src/main/java/net/minecraft/world/item/EnderEyeItem.java
index a88ffff41481d346a99762352094cdb4e8dd6cc2..0b3e9e4ed162a6d9e1f3f55b9522b75c94d13254 100644
--- a/src/main/java/net/minecraft/world/item/EnderEyeItem.java
+++ b/src/main/java/net/minecraft/world/item/EnderEyeItem.java
@@ -68,7 +68,7 @@ public class EnderEyeItem extends Item {
double deltaX = soundPos.getX() - player.getX();
double deltaZ = soundPos.getZ() - player.getZ();
double distanceSquared = deltaX * deltaX + deltaZ * deltaZ;
- if (world.spigotConfig.endPortalSoundRadius > 0 && distanceSquared > world.spigotConfig.endPortalSoundRadius * world.spigotConfig.endPortalSoundRadius) continue; // Spigot
+ if (world.spigotConfig.endPortalSoundRadius > 0 && (distanceSquared > world.spigotConfig.endPortalSoundRadius * world.spigotConfig.endPortalSoundRadius || player.getLevel() != world)) continue; // Spigot // Paper - ensure recipient is in same world as portal
if (distanceSquared > viewDistance * viewDistance) {
double deltaLength = Math.sqrt(distanceSquared);
double relativeX = player.getX() + (deltaX / deltaLength) * viewDistance;

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Validate usernames
diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
index b87bd1c2d3a371e2fca1d0bff6d0985188b22584..64e2004e023f79d28c400f7182b0ffa93789620d 100644
index dd599443c7197868eaa0708b4be26f1a341ce4e4..82b55548d4652ec0c25d3dc6da628573a9c9000a 100644
--- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
@@ -66,6 +66,7 @@ public class ServerLoginPacketListenerImpl implements TickablePacketListener, Se

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Added getHostname to AsyncPlayerPreLoginEvent
diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
index 64e2004e023f79d28c400f7182b0ffa93789620d..dff440dc51724e85d9fea88a9602efcbb5450776 100644
index 82b55548d4652ec0c25d3dc6da628573a9c9000a..62a404871650ff5caffcd9c6c83046abeefff49d 100644
--- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
@@ -411,7 +411,7 @@ public class ServerLoginPacketListenerImpl implements TickablePacketListener, Se

View file

@ -12,7 +12,7 @@ already-existing field on AbstractArrow for tracking entities hit by
piercing arrows to avoid duplicate damage being applied.
diff --git a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java
index 8564ecd20578d907bcfa1b9c149da22e424e254a..bc01e5014e1355a225bdf5c47f2965290b45e2d2 100644
index 39136b9707221e4e4934ee0ef18fc2cb92723aa2..def3b3f8dac4b28eaaafdd9bc2e7f4b9ec9d6855 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java
@@ -300,6 +300,19 @@ public abstract class AbstractArrow extends Projectile {

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Allow to change the podium for the EnderDragon
diff --git a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
index 6495b0421cab1b067b9483cc448222705c15578c..ac3d4d90407288526a8c787e365ff41234a58543 100644
index 3f854bea2e6be82c7ad12b4d13064de8baec55c7..b786bd5178a605a5dfb7682b7cb809646895aea3 100644
--- a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
+++ b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
@@ -99,6 +99,10 @@ public class EnderDragon extends Mob implements Enemy {

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Fix StructureGrowEvent species for RED_MUSHROOM
diff --git a/src/main/java/net/minecraft/world/level/block/MushroomBlock.java b/src/main/java/net/minecraft/world/level/block/MushroomBlock.java
index 5333188e45e47c12c8c56939b87603750a45af57..881d899ff551bc2c2c6fc7d58107a2aee7d86f2a 100644
index 30dac710f355de75e620b807f88c6a209615b05f..88a7b38f33500a618f42aed427e7e15db9e837b3 100644
--- a/src/main/java/net/minecraft/world/level/block/MushroomBlock.java
+++ b/src/main/java/net/minecraft/world/level/block/MushroomBlock.java
@@ -85,7 +85,7 @@ public class MushroomBlock extends BushBlock implements BonemealableBlock {

View file

@ -5,7 +5,7 @@ Subject: [PATCH] FallingBlock auto expire setting
diff --git a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
index f6405e862b15b71dbb96215e604610fe5ff59bfc..ef07967b64180c54338b8fb2ba1780adec87f333 100644
index da00fab453f3fb580acc9de65a0853656f9b6fc4..b2d1a17867cdbaad0c6e5c2376c716f9461af124 100644
--- a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
+++ b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
@@ -61,6 +61,7 @@ public class FallingBlockEntity extends Entity {

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Fix Bee flower NPE
diff --git a/src/main/java/net/minecraft/world/entity/animal/Bee.java b/src/main/java/net/minecraft/world/entity/animal/Bee.java
index bd048cc30046f19f9eee89c6ba45d0816a160e67..e5de2c1d11e5de88420caba35bf75c8bbd799db5 100644
index f2243f65cdf0e4b327e8597dfefe5b2de8912cef..87f8d46cb2032474008811ca11dc7ff1f7859f7e 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Bee.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Bee.java
@@ -802,7 +802,7 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal {

View file

@ -29,7 +29,7 @@ index 421d7e28370085dffa415d71d4e28d3c4d38ac87..92617a19fb328320e17b58956cf0276d
d0 = to.getX();
d1 = to.getY();
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
index c4ffccddce33cf461d9b04ccbb90026544f16b7d..99b99fae67e53a688b3519d8a8d0cc5f3468e7e8 100644
index 2015147126f463f11202d04ca475cc86e5ac12c2..a1e2664c9a6cc41edf0dfb92cd2b9d77170d8fde 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
@@ -542,15 +542,33 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {

View file

@ -9,7 +9,7 @@ should be supported. Some entities (for whatever
reason) use the level's random in some places.
diff --git a/src/main/java/net/minecraft/world/entity/animal/Bee.java b/src/main/java/net/minecraft/world/entity/animal/Bee.java
index e5de2c1d11e5de88420caba35bf75c8bbd799db5..a9cdf9034ad269f7a71358443acc053288cfbe6d 100644
index 87f8d46cb2032474008811ca11dc7ff1f7859f7e..2e05c953182c27e3571b2c33eceeb379e60b54be 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Bee.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Bee.java
@@ -1028,7 +1028,7 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal {
@ -49,7 +49,7 @@ index 4c78c04ed031ec2e04642ebe5d79527e848d95f6..fcc5444a1268931a0fd2df1e6bbbc17c
public ItemEntity(Level world, double x, double y, double z, ItemStack stack, double velocityX, double velocityY, double velocityZ) {
diff --git a/src/main/java/net/minecraft/world/entity/item/PrimedTnt.java b/src/main/java/net/minecraft/world/entity/item/PrimedTnt.java
index 8101f358975b35b5a2dafbade3d14a910e408fa2..e09271450cae84f6206a20d6622918fe37380d59 100644
index 65f0aa076dbfc4cd72d14ec485d1edf5533d825e..438de71a17d7bfaed8fbb1b4f7aa7f53538603a2 100644
--- a/src/main/java/net/minecraft/world/entity/item/PrimedTnt.java
+++ b/src/main/java/net/minecraft/world/entity/item/PrimedTnt.java
@@ -35,7 +35,7 @@ public class PrimedTnt extends Entity {

Some files were not shown because too many files have changed in this diff Show more