Updated Upstream (Bukkit/CraftBukkit/Spigot)

Upstream has released updates that appear to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

Bukkit Changes:
044d4ee9 SPIGOT-7283, SPIGOT-7318: Add AsyncStructureGenerateEvent and BlockState cloning
57b73d57 PR-913: Deprecate Projectile#doesBounce() and #setBounce()
43373c44 PR-904: Update FeatureFlag for 1.20.2
a7bbbf0c PR-911: Expand DataPack API with 1.20.2 pack version methods
0341e3a0 SPIGOT-7489: Add TeleportDuration to Display Entity
bcd8d2aa PR-912: Update Minecraft Wiki URLs

CraftBukkit Changes:
99aafc222 Increase outdated build delay
dab849f08 SPIGOT-7283, SPIGOT-7318: Add AsyncStructureGenerateEvent and BlockState cloning
041b29ae3 Upgrade specialsource-maven-plugin
851a32cff PR-1263: Remove unused implementation of AbstractProjectile#doesBounce() and #setBounce()
251af0da3 PR-1261: Expand DataPack API with 1.20.2 pack version methods
46e4ba627 Upgrade specialsource-maven-plugin
df3738a24 SPIGOT-7489: Add TeleportDuration to Display Entity
8d0fea457 PR-1262: Update Minecraft Wiki URLs
e62905aab SPIGOT-7490: Fix entity equipment updates

Spigot Changes:
a0f3d486 Rebuild patches
This commit is contained in:
Nassim Jahnke
2023-09-29 10:28:26 +10:00
parent 8e2e1e5208
commit a5cf9bd970
35 changed files with 175 additions and 98 deletions

View File

@@ -133,9 +133,9 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/org/bukkit/packs/DataPack.java --- a/src/main/java/org/bukkit/packs/DataPack.java
+++ b/src/main/java/org/bukkit/packs/DataPack.java +++ b/src/main/java/org/bukkit/packs/DataPack.java
@@ -0,0 +0,0 @@ import org.jetbrains.annotations.NotNull; @@ -0,0 +0,0 @@ import org.jetbrains.annotations.NotNull;
/**
* Represents a data pack. * Represents a data pack.
*
* @see <a href="https://minecraft.wiki/w/Data_pack">Minecraft wiki</a>
+ * @deprecated use {@link io.papermc.paper.datapack.Datapack} + * @deprecated use {@link io.papermc.paper.datapack.Datapack}
*/ */
@ApiStatus.Experimental @ApiStatus.Experimental

View File

@@ -511,22 +511,20 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/org/bukkit/entity/Projectile.java --- a/src/main/java/org/bukkit/entity/Projectile.java
+++ b/src/main/java/org/bukkit/entity/Projectile.java +++ b/src/main/java/org/bukkit/entity/Projectile.java
@@ -0,0 +0,0 @@ public interface Projectile extends Entity { @@ -0,0 +0,0 @@ public interface Projectile extends Entity {
* If a small fireball does not bounce it will set the target on fire.
*
* @return true if it should bounce. * @return true if it should bounce.
+ * @deprecated Does not do anything * @deprecated does not do anything
*/ */
+ @Deprecated(forRemoval = true) // Paper - @Deprecated
+ @Deprecated(forRemoval = true)
public boolean doesBounce(); public boolean doesBounce();
/** /**
@@ -0,0 +0,0 @@ public interface Projectile extends Entity { @@ -0,0 +0,0 @@ public interface Projectile extends Entity {
* something.
*
* @param doesBounce whether or not it should bounce. * @param doesBounce whether or not it should bounce.
+ * @deprecated Does not do anything * @deprecated does not do anything
*/ */
+ @Deprecated(forRemoval = true) // Paper - @Deprecated
+ @Deprecated(forRemoval = true)
public void setBounce(boolean doesBounce); public void setBounce(boolean doesBounce);
} }
diff --git a/src/main/java/org/bukkit/entity/SplashPotion.java b/src/main/java/org/bukkit/entity/SplashPotion.java diff --git a/src/main/java/org/bukkit/entity/SplashPotion.java b/src/main/java/org/bukkit/entity/SplashPotion.java

View File

@@ -74,32 +74,6 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
* @param z Z-coordinate (0-15) * @param z Z-coordinate (0-15)
* @return temperature at given coordinate * @return temperature at given coordinate
*/ */
diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/Material.java
+++ b/src/main/java/org/bukkit/Material.java
@@ -0,0 +0,0 @@ public enum Material implements Keyed, Translatable {
* <li>Only occluding blocks can be "powered" ({@link Block#isBlockPowered()}).
* </ul>
* This list may be inconclusive. For a full list of the side effects of an occluding
- * block, see the <a href="https://minecraft.fandom.com/wiki/Opacity">Minecraft Wiki</a>.
+ * block, see the <a href="https://minecraft.wiki/wiki/Opacity">Minecraft Wiki</a>.
*
* @return True if this material is a block and occludes light
*/
diff --git a/src/main/java/org/bukkit/MinecraftExperimental.java b/src/main/java/org/bukkit/MinecraftExperimental.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/MinecraftExperimental.java
+++ b/src/main/java/org/bukkit/MinecraftExperimental.java
@@ -0,0 +0,0 @@ import org.jetbrains.annotations.ApiStatus;
/**
* Indicates that the annotated element (class, method, field, etc.) is part of a
- * <a href="https://minecraft.fandom.com/wiki/Experimental_Gameplay">minecraft experimental feature</a>
+ * <a href="https://minecraft.wiki/wiki/Experimental_Gameplay">minecraft experimental feature</a>
* and is subject to changes by Mojang.
* <p>
* <b>Note:</b> Elements marked with this annotation require the use of a datapack or otherwise
diff --git a/src/main/java/org/bukkit/Particle.java b/src/main/java/org/bukkit/Particle.java diff --git a/src/main/java/org/bukkit/Particle.java b/src/main/java/org/bukkit/Particle.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/Particle.java --- a/src/main/java/org/bukkit/Particle.java
@@ -534,19 +508,6 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
* *
* @param location the location to remove * @param location the location to remove
* @see #getExploredLocations() * @see #getExploredLocations()
diff --git a/src/main/java/org/bukkit/entity/SpawnCategory.java b/src/main/java/org/bukkit/entity/SpawnCategory.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/entity/SpawnCategory.java
+++ b/src/main/java/org/bukkit/entity/SpawnCategory.java
@@ -0,0 +0,0 @@ package org.bukkit.entity;
/**
* Represents groups of entities with shared spawn behaviors and mob caps.
*
- * @see <a href="https://minecraft.fandom.com/wiki/Spawn#Java_Edition_mob_cap">Minecraft Wiki</a>
+ * @see <a href="https://minecraft.wiki/wiki/Spawn#Java_Edition_mob_cap">Minecraft Wiki</a>
*/
public enum SpawnCategory {
diff --git a/src/main/java/org/bukkit/entity/Villager.java b/src/main/java/org/bukkit/entity/Villager.java diff --git a/src/main/java/org/bukkit/entity/Villager.java b/src/main/java/org/bukkit/entity/Villager.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/entity/Villager.java --- a/src/main/java/org/bukkit/entity/Villager.java

View File

@@ -191,7 +191,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
public ProjectileSource getShooter(); public ProjectileSource getShooter();
@@ -0,0 +0,0 @@ public interface Projectile extends Entity { @@ -0,0 +0,0 @@ public interface Projectile extends Entity {
*/ */
@Deprecated(forRemoval = true) // Paper @Deprecated(forRemoval = true)
public void setBounce(boolean doesBounce); public void setBounce(boolean doesBounce);
+ // Paper start + // Paper start
+ +

View File

@@ -76,7 +76,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
private final T tileEntity; private final T tileEntity;
private final T snapshot; private final T snapshot;
+ public final boolean snapshotDisabled; // Paper + public boolean snapshotDisabled; // Paper
+ public static boolean DISABLE_SNAPSHOT = false; // Paper + public static boolean DISABLE_SNAPSHOT = false; // Paper
public CraftBlockEntityState(World world, T tileEntity) { public CraftBlockEntityState(World world, T tileEntity) {
@@ -100,10 +100,10 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
+ // Paper end + // Paper end
} }
public void refreshSnapshot() { protected CraftBlockEntityState(CraftBlockEntityState<T> state) {
@@ -0,0 +0,0 @@ public class CraftBlockEntityState<T extends BlockEntity> extends CraftBlockStat @@ -0,0 +0,0 @@ public class CraftBlockEntityState<T extends BlockEntity> extends CraftBlockStat
T vanillaTileEntitiy = (T) BlockEntity.loadStatic(CraftLocation.toBlockPosition(location), getHandle(), this.getSnapshotNBT()); public CraftBlockEntityState<T> copy() {
return ClientboundBlockEntityDataPacket.create(vanillaTileEntitiy); return new CraftBlockEntityState<>(this);
} }
+ +
+ // Paper start + // Paper start

View File

@@ -25,9 +25,10 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBeehive.java --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBeehive.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBeehive.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBeehive.java
@@ -0,0 +0,0 @@ public class CraftBeehive extends CraftBlockEntityState<BeehiveBlockEntity> impl @@ -0,0 +0,0 @@ public class CraftBeehive extends CraftBlockEntityState<BeehiveBlockEntity> impl
public CraftBeehive copy() {
getSnapshot().addOccupant(((CraftBee) entity).getHandle(), false); return new CraftBeehive(this);
} }
+
+ // Paper start - Add EntityBlockStorage clearEntities + // Paper start - Add EntityBlockStorage clearEntities
+ @Override + @Override
+ public void clearEntities() { + public void clearEntities() {

View File

@@ -17,7 +17,11 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
public CraftMovingPiston(World world, PistonMovingBlockEntity tileEntity) { public CraftMovingPiston(World world, PistonMovingBlockEntity tileEntity) {
super(world, tileEntity); super(world, tileEntity);
@@ -0,0 +0,0 @@ public class CraftMovingPiston extends CraftBlockEntityState<PistonMovingBlockEn
public CraftMovingPiston copy() {
return new CraftMovingPiston(this);
} }
+
+ // Paper start - Add Moving Piston API + // Paper start - Add Moving Piston API
+ @Override + @Override
+ public org.bukkit.block.data.BlockData getMovingBlock() { + public org.bukkit.block.data.BlockData getMovingBlock() {

View File

@@ -27,8 +27,8 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockState.java --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockState.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockState.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockState.java
@@ -0,0 +0,0 @@ public class CraftBlockState implements BlockState { @@ -0,0 +0,0 @@ public class CraftBlockState implements BlockState {
protected void requirePlaced() { public CraftBlockState copy() {
Preconditions.checkState(this.isPlaced(), "The blockState must be placed to call this method"); return new CraftBlockState(this);
} }
+ +
+ // Paper start + // Paper start

View File

@@ -70,8 +70,8 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftCampfire.java --- a/src/main/java/org/bukkit/craftbukkit/block/CraftCampfire.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftCampfire.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftCampfire.java
@@ -0,0 +0,0 @@ public class CraftCampfire extends CraftBlockEntityState<CampfireBlockEntity> im @@ -0,0 +0,0 @@ public class CraftCampfire extends CraftBlockEntityState<CampfireBlockEntity> im
public void setCookTimeTotal(int index, int cookTimeTotal) { public CraftCampfire copy() {
getSnapshot().cookingTime[index] = cookTimeTotal; return new CraftCampfire(this);
} }
+ +
+ // Paper start + // Paper start

View File

@@ -3167,8 +3167,8 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftCommandBlock.java --- a/src/main/java/org/bukkit/craftbukkit/block/CraftCommandBlock.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftCommandBlock.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftCommandBlock.java
@@ -0,0 +0,0 @@ public class CraftCommandBlock extends CraftBlockEntityState<CommandBlockEntity> @@ -0,0 +0,0 @@ public class CraftCommandBlock extends CraftBlockEntityState<CommandBlockEntity>
public void setName(String name) { public CraftCommandBlock copy() {
getSnapshot().getCommandBlock().setName(CraftChatMessage.fromStringOrNull(name != null ? name : "@")); return new CraftCommandBlock(this);
} }
+ +
+ // Paper start + // Paper start
@@ -3212,7 +3212,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftEnchantingTable.java --- a/src/main/java/org/bukkit/craftbukkit/block/CraftEnchantingTable.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftEnchantingTable.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftEnchantingTable.java
@@ -0,0 +0,0 @@ public class CraftEnchantingTable extends CraftBlockEntityState<EnchantmentTable @@ -0,0 +0,0 @@ public class CraftEnchantingTable extends CraftBlockEntityState<EnchantmentTable
super(world, tileEntity); super(state);
} }
+ // Paper start + // Paper start

View File

@@ -67,7 +67,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
+ +
+ if (this.noTickEquipmentDirty) { + if (this.noTickEquipmentDirty) {
+ this.noTickEquipmentDirty = false; + this.noTickEquipmentDirty = false;
+ this.detectEquipmentUpdates(); + this.detectEquipmentUpdatesPublic();
+ } + }
+ +
+ return; + return;

View File

@@ -108,8 +108,8 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
for (Player human : nms) { for (Player human : nms) {
@@ -0,0 +0,0 @@ public class CraftBeacon extends CraftBlockEntityState<BeaconBlockEntity> implem @@ -0,0 +0,0 @@ public class CraftBeacon extends CraftBlockEntityState<BeaconBlockEntity> implem
public void setLock(String key) { public CraftBeacon copy() {
this.getSnapshot().lockKey = (key == null) ? LockCode.NO_LOCK : new LockCode(key); return new CraftBeacon(this);
} }
+ +
+ // Paper start + // Paper start

View File

@@ -157,7 +157,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
+ Date buildDate = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss Z").parse(Main.class.getPackage().getImplementationVendor()); // Paper + Date buildDate = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss Z").parse(Main.class.getPackage().getImplementationVendor()); // Paper
Calendar deadline = Calendar.getInstance(); Calendar deadline = Calendar.getInstance();
deadline.add(Calendar.DAY_OF_YEAR, -3); deadline.add(Calendar.DAY_OF_YEAR, -7);
diff --git a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java diff --git a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java --- a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java

View File

@@ -88,9 +88,10 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftSculkSensor.java --- a/src/main/java/org/bukkit/craftbukkit/block/CraftSculkSensor.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftSculkSensor.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftSculkSensor.java
@@ -0,0 +0,0 @@ public class CraftSculkSensor<T extends SculkSensorBlockEntity> extends CraftBlo @@ -0,0 +0,0 @@ public class CraftSculkSensor<T extends SculkSensorBlockEntity> extends CraftBlo
Preconditions.checkArgument(0 <= lastVibrationFrequency && lastVibrationFrequency <= 15, "Vibration frequency must be between 0-15"); public CraftSculkSensor<T> copy() {
getSnapshot().lastVibrationFrequency = lastVibrationFrequency; return new CraftSculkSensor<>(this);
} }
+
+ // Paper start + // Paper start
+ @Override + @Override
+ public int getListenerRange() { + public int getListenerRange() {

View File

@@ -24,7 +24,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
+ // Paper end + // Paper end
world.setBlock(blockposition2, Blocks.BARRIER.defaultBlockState(), 20); world.setBlock(blockposition2, Blocks.BARRIER.defaultBlockState(), 20);
} }
// CraftBukkit start
@@ -0,0 +0,0 @@ public class StructureTemplate { @@ -0,0 +0,0 @@ public class StructureTemplate {
if (pair1.getSecond() != null) { if (pair1.getSecond() != null) {
tileentity = world.getBlockEntity(blockposition6); tileentity = world.getBlockEntity(blockposition6);

View File

@@ -41,4 +41,4 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
+ // Paper + // Paper
} }
public static CapturedBlockState getBlockState(Level world, BlockPos pos, int flag) { @Override

View File

@@ -36,7 +36,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -0,0 +0,0 @@ public class Main { @@ -0,0 +0,0 @@ public class Main {
Calendar deadline = Calendar.getInstance(); Calendar deadline = Calendar.getInstance();
deadline.add(Calendar.DAY_OF_YEAR, -3); deadline.add(Calendar.DAY_OF_YEAR, -7);
if (buildDate.before(deadline.getTime())) { if (buildDate.before(deadline.getTime())) {
- System.err.println("*** Error, this build is outdated ***"); - System.err.println("*** Error, this build is outdated ***");
+ // Paper start - This is some stupid bullshit + // Paper start - This is some stupid bullshit

View File

@@ -38,6 +38,17 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
private final T tileEntity; private final T tileEntity;
private final T snapshot; private final T snapshot;
@@ -0,0 +0,0 @@ public class CraftBlockEntityState<T extends BlockEntity> extends CraftBlockStat
}
@Override
- public CraftBlockEntityState<T> copy() {
- return new CraftBlockEntityState<>(this);
- }
+ public abstract CraftBlockEntityState<T> copy(); // Paper - make abstract
// Paper start
@Override
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockStates.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockStates.java diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockStates.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockStates.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockStates.java --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockStates.java

View File

@@ -110,8 +110,8 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftFurnace.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftFurnace.java
@@ -0,0 +0,0 @@ public abstract class CraftFurnace<T extends AbstractFurnaceBlockEntity> extends @@ -0,0 +0,0 @@ public abstract class CraftFurnace<T extends AbstractFurnaceBlockEntity> extends
return recipesUsed.build(); @Override
} public abstract CraftFurnace<T> copy();
+ +
+ // Paper start - cook speed multiplier API + // Paper start - cook speed multiplier API
+ @Override + @Override

View File

@@ -257,3 +257,16 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
return AbortableIterationConsumer.Continuation.ABORT; return AbortableIterationConsumer.Continuation.ABORT;
} }
} }
diff --git a/src/main/java/net/minecraft/world/level/levelgen/structure/StructurePiece.java b/src/main/java/net/minecraft/world/level/levelgen/structure/StructurePiece.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/net/minecraft/world/level/levelgen/structure/StructurePiece.java
+++ b/src/main/java/net/minecraft/world/level/levelgen/structure/StructurePiece.java
@@ -0,0 +0,0 @@ public abstract class StructurePiece {
}
public static BoundingBox createBoundingBox(Stream<StructurePiece> pieces) {
- Stream stream1 = pieces.map(StructurePiece::getBoundingBox);
+ Stream<BoundingBox> stream1 = pieces.map(StructurePiece::getBoundingBox); // Paper - decompile fx
Objects.requireNonNull(stream1);
return (BoundingBox) BoundingBox.encapsulatingBoxes(stream1::iterator).orElseThrow(() -> {

View File

@@ -8234,6 +8234,43 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
// ======================================================================== // ========================================================================
public static byte toLegacyData(BlockState data) { public static byte toLegacyData(BlockState data) {
diff --git a/src/main/java/org/bukkit/craftbukkit/util/DelegatedGeneratorAccess.java b/src/main/java/org/bukkit/craftbukkit/util/DelegatedGeneratorAccess.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/DelegatedGeneratorAccess.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/DelegatedGeneratorAccess.java
@@ -0,0 +0,0 @@ import net.minecraft.world.ticks.LevelTickAccess;
import net.minecraft.world.ticks.ScheduledTick;
import net.minecraft.world.ticks.TickPriority;
import org.bukkit.event.entity.CreatureSpawnEvent;
+import org.jetbrains.annotations.Nullable;
public abstract class DelegatedGeneratorAccess implements WorldGenLevel {
@@ -0,0 +0,0 @@ public abstract class DelegatedGeneratorAccess implements WorldGenLevel {
public int getMoonPhase() {
return this.handle.getMoonPhase();
}
+
+ // Paper start
+ @Nullable
+ @Override
+ public BlockState getBlockStateIfLoaded(final BlockPos blockposition) {
+ return null;
+ }
+
+ @Nullable
+ @Override
+ public FluidState getFluidIfLoaded(final BlockPos blockposition) {
+ return null;
+ }
+
+ @Nullable
+ @Override
+ public ChunkAccess getChunkIfLoadedImmediately(final int x, final int z) {
+ return null;
+ }
+ // Paper end
}
diff --git a/src/main/java/org/bukkit/craftbukkit/util/DummyGeneratorAccess.java b/src/main/java/org/bukkit/craftbukkit/util/DummyGeneratorAccess.java diff --git a/src/main/java/org/bukkit/craftbukkit/util/DummyGeneratorAccess.java b/src/main/java/org/bukkit/craftbukkit/util/DummyGeneratorAccess.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/DummyGeneratorAccess.java --- a/src/main/java/org/bukkit/craftbukkit/util/DummyGeneratorAccess.java

View File

@@ -73,8 +73,8 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftCreatureSpawner.java --- a/src/main/java/org/bukkit/craftbukkit/block/CraftCreatureSpawner.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftCreatureSpawner.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftCreatureSpawner.java
@@ -0,0 +0,0 @@ public class CraftCreatureSpawner extends CraftBlockEntityState<SpawnerBlockEnti @@ -0,0 +0,0 @@ public class CraftCreatureSpawner extends CraftBlockEntityState<SpawnerBlockEnti
public void setSpawnRange(int spawnRange) { public CraftCreatureSpawner copy() {
this.getSnapshot().getSpawner().spawnRange = spawnRange; return new CraftCreatureSpawner(this);
} }
+ +
+ // Paper start + // Paper start

View File

@@ -9,8 +9,8 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBarrel.java --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBarrel.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBarrel.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBarrel.java
@@ -0,0 +0,0 @@ public class CraftBarrel extends CraftLootable<BarrelBlockEntity> implements Bar @@ -0,0 +0,0 @@ public class CraftBarrel extends CraftLootable<BarrelBlockEntity> implements Bar
} public CraftBarrel copy() {
getTileEntity().openersCounter.opened = false; return new CraftBarrel(this);
} }
+ +
+ // Paper start - More Lidded Block API + // Paper start - More Lidded Block API
@@ -25,8 +25,8 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftChest.java --- a/src/main/java/org/bukkit/craftbukkit/block/CraftChest.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftChest.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftChest.java
@@ -0,0 +0,0 @@ public class CraftChest extends CraftLootable<ChestBlockEntity> implements Chest @@ -0,0 +0,0 @@ public class CraftChest extends CraftLootable<ChestBlockEntity> implements Chest
} public CraftChest copy() {
getTileEntity().openersCounter.opened = false; return new CraftChest(this);
} }
+ +
+ // Paper start - More Lidded Block API + // Paper start - More Lidded Block API
@@ -41,8 +41,8 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftEnderChest.java --- a/src/main/java/org/bukkit/craftbukkit/block/CraftEnderChest.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftEnderChest.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftEnderChest.java
@@ -0,0 +0,0 @@ public class CraftEnderChest extends CraftBlockEntityState<EnderChestBlockEntity @@ -0,0 +0,0 @@ public class CraftEnderChest extends CraftBlockEntityState<EnderChestBlockEntity
} public CraftEnderChest copy() {
getTileEntity().openersCounter.opened = false; return new CraftEnderChest(this);
} }
+ +
+ // Paper start - More Lidded Block API + // Paper start - More Lidded Block API
@@ -65,6 +65,10 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
} }
getTileEntity().opened = false; getTileEntity().opened = false;
} }
@@ -0,0 +0,0 @@ public class CraftShulkerBox extends CraftLootable<ShulkerBoxBlockEntity> implem
public CraftShulkerBox copy() {
return new CraftShulkerBox(this);
}
+ +
+ // Paper start - More Lidded Block API + // Paper start - More Lidded Block API
+ @Override + @Override

View File

@@ -49,9 +49,9 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/org/bukkit/craftbukkit/entity/AbstractProjectile.java --- a/src/main/java/org/bukkit/craftbukkit/entity/AbstractProjectile.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/AbstractProjectile.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/AbstractProjectile.java
@@ -0,0 +0,0 @@ public abstract class AbstractProjectile extends CraftEntity implements Projecti @@ -0,0 +0,0 @@ public abstract class AbstractProjectile extends CraftEntity implements Projecti
public void setBounce(boolean doesBounce) { @Override
this.doesBounce = doesBounce; public void setBounce(boolean doesBounce) {}
}
+ // Paper start + // Paper start
+ @Override + @Override
+ public boolean hasLeftShooter() { + public boolean hasLeftShooter() {
@@ -113,7 +113,6 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
+ return this.getHandle().ownerUUID; + return this.getHandle().ownerUUID;
+ } + }
+ // Paper end + // Paper end
} }
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftArrow.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftArrow.java diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftArrow.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftArrow.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644

View File

@@ -9,9 +9,10 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBanner.java --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBanner.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBanner.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBanner.java
@@ -0,0 +0,0 @@ public class CraftBanner extends CraftBlockEntityState<BannerBlockEntity> implem @@ -0,0 +0,0 @@ public class CraftBanner extends CraftBlockEntityState<BannerBlockEntity> implem
} public CraftBanner copy() {
banner.itemPatterns = newPatterns; return new CraftBanner(this);
} }
+
+ // Paper start + // Paper start
+ @Override + @Override
+ public net.kyori.adventure.text.Component customName() { + public net.kyori.adventure.text.Component customName() {

View File

@@ -9,7 +9,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/net/minecraft/server/level/ServerEntity.java --- a/src/main/java/net/minecraft/server/level/ServerEntity.java
+++ b/src/main/java/net/minecraft/server/level/ServerEntity.java +++ b/src/main/java/net/minecraft/server/level/ServerEntity.java
@@ -0,0 +0,0 @@ public class ServerEntity { @@ -0,0 +0,0 @@ public class ServerEntity {
((LivingEntity) this.entity).detectEquipmentUpdates(); // CraftBukkit - SPIGOT-3789: sync again immediately after sending ((LivingEntity) this.entity).detectEquipmentUpdatesPublic(); // CraftBukkit - SPIGOT-3789: sync again immediately after sending
} }
- // CraftBukkit start - MC-109346: Fix for nonsensical head yaw - // CraftBukkit start - MC-109346: Fix for nonsensical head yaw

View File

@@ -22860,6 +22860,53 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
} }
@Override @Override
diff --git a/src/main/java/org/bukkit/craftbukkit/util/DelegatedGeneratorAccess.java b/src/main/java/org/bukkit/craftbukkit/util/DelegatedGeneratorAccess.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/DelegatedGeneratorAccess.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/DelegatedGeneratorAccess.java
@@ -0,0 +0,0 @@ public abstract class DelegatedGeneratorAccess implements WorldGenLevel {
@Nullable
@Override
public BlockState getBlockStateIfLoaded(final BlockPos blockposition) {
- return null;
+ return this.handle.getBlockStateIfLoaded(blockposition);
}
@Nullable
@Override
public FluidState getFluidIfLoaded(final BlockPos blockposition) {
- return null;
+ return this.handle.getFluidIfLoaded(blockposition);
}
@Nullable
@Override
public ChunkAccess getChunkIfLoadedImmediately(final int x, final int z) {
- return null;
+ return this.handle.getChunkIfLoadedImmediately(x, z);
+ }
+
+ @Override
+ public void getHardCollidingEntities(final Entity except, final AABB box, final Predicate<? super Entity> predicate, final List<Entity> into) {
+ this.handle.getHardCollidingEntities(except, box, predicate, into);
+ }
+
+ @Override
+ public List<Entity> getHardCollidingEntities(final Entity except, final AABB box, final Predicate<? super Entity> predicate) {
+ return this.handle.getHardCollidingEntities(except, box, predicate);
+ }
+
+ @Override
+ public void getEntities(final Entity except, final AABB box, final Predicate<? super Entity> predicate, final List<Entity> into) {
+ this.handle.getEntities(except, box, predicate, into);
+ }
+
+ @Override
+ public <T> void getEntitiesByClass(final Class<? extends T> clazz, final Entity except, final AABB box, final List<? super T> into, final Predicate<? super T> predicate) {
+ this.handle.getEntitiesByClass(clazz, except, box, into, predicate);
}
// Paper end
}
diff --git a/src/main/java/org/bukkit/craftbukkit/util/DummyGeneratorAccess.java b/src/main/java/org/bukkit/craftbukkit/util/DummyGeneratorAccess.java diff --git a/src/main/java/org/bukkit/craftbukkit/util/DummyGeneratorAccess.java b/src/main/java/org/bukkit/craftbukkit/util/DummyGeneratorAccess.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/DummyGeneratorAccess.java --- a/src/main/java/org/bukkit/craftbukkit/util/DummyGeneratorAccess.java

View File

@@ -11,8 +11,8 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftSculkCatalyst.java --- a/src/main/java/org/bukkit/craftbukkit/block/CraftSculkCatalyst.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftSculkCatalyst.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftSculkCatalyst.java
@@ -0,0 +0,0 @@ public class CraftSculkCatalyst extends CraftBlockEntityState<SculkCatalystBlock @@ -0,0 +0,0 @@ public class CraftSculkCatalyst extends CraftBlockEntityState<SculkCatalystBlock
getTileEntity().getListener().bloom(world.getHandle(), getPosition(), getHandle(), world.getHandle().getRandom()); public CraftSculkCatalyst copy() {
getTileEntity().getListener().getSculkSpreader().addCursors(new BlockPos(block.getX(), block.getY(), block.getZ()), charge); return new CraftSculkCatalyst(this);
} }
+ +
+ // Paper start - SculkCatalyst bloom API + // Paper start - SculkCatalyst bloom API

View File

@@ -586,7 +586,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
- <plugin> - <plugin>
- <groupId>net.md-5</groupId> - <groupId>net.md-5</groupId>
- <artifactId>specialsource-maven-plugin</artifactId> - <artifactId>specialsource-maven-plugin</artifactId>
- <version>2.0.0</version> - <version>2.0.2</version>
- <executions> - <executions>
- <execution> - <execution>
- <phase>package</phase> - <phase>package</phase>

View File

@@ -36,7 +36,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/org/bukkit/craftbukkit/Main.java --- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -0,0 +0,0 @@ public class Main { @@ -0,0 +0,0 @@ public class Main {
deadline.add(Calendar.DAY_OF_YEAR, -3); deadline.add(Calendar.DAY_OF_YEAR, -7);
if (buildDate.before(deadline.getTime())) { if (buildDate.before(deadline.getTime())) {
System.err.println("*** Error, this build is outdated ***"); System.err.println("*** Error, this build is outdated ***");
- System.err.println("*** Please download a new build as per instructions from https://www.spigotmc.org/go/outdated-spigot ***"); - System.err.println("*** Please download a new build as per instructions from https://www.spigotmc.org/go/outdated-spigot ***");

View File

@@ -30,4 +30,4 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
+ // Paper end + // Paper end
} }
public void refreshSnapshot() { protected CraftBlockEntityState(CraftBlockEntityState<T> state) {

View File

@@ -1461,7 +1461,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
- SpigotTimings.timerEntityTickRest.stopTiming(); // Spigot - SpigotTimings.timerEntityTickRest.stopTiming(); // Spigot
} }
public void detectEquipmentUpdates() { public void detectEquipmentUpdatesPublic() { // CraftBukkit
@@ -0,0 +0,0 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -0,0 +0,0 @@ public abstract class LivingEntity extends Entity implements Attackable {
this.setDeltaMovement(d0, d1, d2); this.setDeltaMovement(d0, d1, d2);