Updated Upstream (Bukkit/CraftBukkit/Spigot) (#9104)

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:
eb4b416d PR-822: Add experimental armor trim API
33498e1d PR-831: Add a standard of annotations for Minecraft experimental things and API

CraftBukkit Changes:
19de3550d SPIGOT-7315: Bed placement duplicates crops if cancelled
1eb88374e PR-1147: Add experimental armor trim API
c4c0bb0e9 Show clean error for invalidly configured server.properties options
3ae90697f Fix UUID not being updated when changing world of MapView
e43000601 PR-1164, MC-227255, MC-253819: Fix rotation of beehives and bells

Spigot Changes:
d2fdfe39 Rebuild patches
This commit is contained in:
Jake Potrebic 2023-04-08 17:00:50 -07:00
parent a37ccc7532
commit 14a8204d35
15 changed files with 350 additions and 1400 deletions

View File

@ -0,0 +1,314 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jake Potrebic <jake.m.potrebic@gmail.com>
Date: Thu, 8 Dec 2022 17:31:21 -0800
Subject: [PATCH] Actually mark mc experimental API as such
upstream has inconsistent and incomplete
minecraft experimental annotations
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, net.kyori.adventure.transla
/**
* BlockData: {@link Orientable}
*/
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
STRIPPED_BAMBOO_BLOCK(14799, Orientable.class),
/**
* BlockData: {@link Orientable}
@@ -0,0 +0,0 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla
/**
* BlockData: {@link Fence}
*/
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BAMBOO_FENCE(17207, Fence.class),
/**
* BlockData: {@link Fence}
@@ -0,0 +0,0 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla
/**
* BlockData: {@link Switch}
*/
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BAMBOO_BUTTON(21810, Switch.class),
/**
* BlockData: {@link Switch}
@@ -0,0 +0,0 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla
/**
* BlockData: {@link Powerable}
*/
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BAMBOO_PRESSURE_PLATE(26740, Powerable.class),
/**
* BlockData: {@link Powerable}
@@ -0,0 +0,0 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla
/**
* BlockData: {@link Door}
*/
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BAMBOO_DOOR(19971, Door.class),
/**
* BlockData: {@link Door}
@@ -0,0 +0,0 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla
/**
* BlockData: {@link TrapDoor}
*/
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BAMBOO_TRAPDOOR(9174, TrapDoor.class),
/**
* BlockData: {@link TrapDoor}
@@ -0,0 +0,0 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla
/**
* BlockData: {@link Gate}
*/
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BAMBOO_FENCE_GATE(14290, Gate.class),
/**
* BlockData: {@link Gate}
@@ -0,0 +0,0 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla
DARK_OAK_CHEST_BOAT(8733, 1),
MANGROVE_BOAT(20792, 1),
MANGROVE_CHEST_BOAT(18572, 1),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BAMBOO_RAFT(25901, 1),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BAMBOO_CHEST_RAFT(20056, 1),
/**
* BlockData: {@link StructureBlock}
@@ -0,0 +0,0 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla
/**
* BlockData: {@link Sign}
*/
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BAMBOO_SIGN(26139, 16, Sign.class),
/**
* BlockData: {@link Sign}
@@ -0,0 +0,0 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla
/**
* BlockData: {@link WallSign}
*/
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BAMBOO_WALL_SIGN(18857, 16, WallSign.class),
/**
* BlockData: {@link WallHangingSign}
diff --git a/src/main/java/org/bukkit/Sound.java b/src/main/java/org/bukkit/Sound.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/Sound.java
+++ b/src/main/java/org/bukkit/Sound.java
@@ -0,0 +0,0 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa
BLOCK_BAMBOO_SAPLING_HIT("block.bamboo_sapling.hit"),
BLOCK_BAMBOO_SAPLING_PLACE("block.bamboo_sapling.place"),
BLOCK_BAMBOO_STEP("block.bamboo.step"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_BAMBOO_WOOD_BREAK("block.bamboo_wood.break"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_BAMBOO_WOOD_BUTTON_CLICK_OFF("block.bamboo_wood_button.click_off"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_BAMBOO_WOOD_BUTTON_CLICK_ON("block.bamboo_wood_button.click_on"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_BAMBOO_WOOD_DOOR_CLOSE("block.bamboo_wood_door.close"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_BAMBOO_WOOD_DOOR_OPEN("block.bamboo_wood_door.open"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_BAMBOO_WOOD_FALL("block.bamboo_wood.fall"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_BAMBOO_WOOD_FENCE_GATE_CLOSE("block.bamboo_wood_fence_gate.close"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_BAMBOO_WOOD_FENCE_GATE_OPEN("block.bamboo_wood_fence_gate.open"),
@MinecraftExperimental
@ApiStatus.Experimental
@@ -0,0 +0,0 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa
@MinecraftExperimental
@ApiStatus.Experimental
BLOCK_BAMBOO_WOOD_HANGING_SIGN_STEP("block.bamboo_wood_hanging_sign.step"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_BAMBOO_WOOD_HIT("block.bamboo_wood.hit"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_BAMBOO_WOOD_PLACE("block.bamboo_wood.place"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_BAMBOO_WOOD_PRESSURE_PLATE_CLICK_OFF("block.bamboo_wood_pressure_plate.click_off"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_BAMBOO_WOOD_PRESSURE_PLATE_CLICK_ON("block.bamboo_wood_pressure_plate.click_on"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_BAMBOO_WOOD_STEP("block.bamboo_wood.step"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_BAMBOO_WOOD_TRAPDOOR_CLOSE("block.bamboo_wood_trapdoor.close"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_BAMBOO_WOOD_TRAPDOOR_OPEN("block.bamboo_wood_trapdoor.open"),
BLOCK_BARREL_CLOSE("block.barrel.close"),
BLOCK_BARREL_OPEN("block.barrel.open"),
@@ -0,0 +0,0 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa
BLOCK_HANGING_ROOTS_HIT("block.hanging_roots.hit"),
BLOCK_HANGING_ROOTS_PLACE("block.hanging_roots.place"),
BLOCK_HANGING_ROOTS_STEP("block.hanging_roots.step"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_HANGING_SIGN_BREAK("block.hanging_sign.break"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_HANGING_SIGN_FALL("block.hanging_sign.fall"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_HANGING_SIGN_HIT("block.hanging_sign.hit"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_HANGING_SIGN_PLACE("block.hanging_sign.place"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_HANGING_SIGN_STEP("block.hanging_sign.step"),
BLOCK_HONEY_BLOCK_BREAK("block.honey_block.break"),
BLOCK_HONEY_BLOCK_FALL("block.honey_block.fall"),
@@ -0,0 +0,0 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa
BLOCK_NOTE_BLOCK_GUITAR("block.note_block.guitar"),
BLOCK_NOTE_BLOCK_HARP("block.note_block.harp"),
BLOCK_NOTE_BLOCK_HAT("block.note_block.hat"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_NOTE_BLOCK_IMITATE_CREEPER("block.note_block.imitate.creeper"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_NOTE_BLOCK_IMITATE_ENDER_DRAGON("block.note_block.imitate.ender_dragon"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_NOTE_BLOCK_IMITATE_PIGLIN("block.note_block.imitate.piglin"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_NOTE_BLOCK_IMITATE_SKELETON("block.note_block.imitate.skeleton"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_NOTE_BLOCK_IMITATE_WITHER_SKELETON("block.note_block.imitate.wither_skeleton"),
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
BLOCK_NOTE_BLOCK_IMITATE_ZOMBIE("block.note_block.imitate.zombie"),
BLOCK_NOTE_BLOCK_IRON_XYLOPHONE("block.note_block.iron_xylophone"),
BLOCK_NOTE_BLOCK_PLING("block.note_block.pling"),
@@ -0,0 +0,0 @@ public enum Sound implements Keyed, net.kyori.adventure.sound.Sound.Type { // Pa
ENTITY_BOAT_PADDLE_LAND("entity.boat.paddle_land"),
ENTITY_BOAT_PADDLE_WATER("entity.boat.paddle_water"),
@MinecraftExperimental
+ @ApiStatus.Experimental // Paper
ENTITY_CAMEL_AMBIENT("entity.camel.ambient"),
@MinecraftExperimental
+ @ApiStatus.Experimental // Paper
ENTITY_CAMEL_DASH("entity.camel.dash"),
@MinecraftExperimental
+ @ApiStatus.Experimental // Paper
ENTITY_CAMEL_DASH_READY("entity.camel.dash_ready"),
@MinecraftExperimental
+ @ApiStatus.Experimental // Paper
ENTITY_CAMEL_DEATH("entity.camel.death"),
@MinecraftExperimental
+ @ApiStatus.Experimental // Paper
ENTITY_CAMEL_EAT("entity.camel.eat"),
@MinecraftExperimental
+ @ApiStatus.Experimental // Paper
ENTITY_CAMEL_HURT("entity.camel.hurt"),
@MinecraftExperimental
+ @ApiStatus.Experimental // Paper
ENTITY_CAMEL_SADDLE("entity.camel.saddle"),
@MinecraftExperimental
+ @ApiStatus.Experimental // Paper
ENTITY_CAMEL_SIT("entity.camel.sit"),
@MinecraftExperimental
+ @ApiStatus.Experimental // Paper
ENTITY_CAMEL_STAND("entity.camel.stand"),
@MinecraftExperimental
+ @ApiStatus.Experimental // Paper
ENTITY_CAMEL_STEP("entity.camel.step"),
@MinecraftExperimental
+ @ApiStatus.Experimental // Paper
ENTITY_CAMEL_STEP_SAND("entity.camel.step_sand"),
ENTITY_CAT_AMBIENT("entity.cat.ambient"),
ENTITY_CAT_BEG_FOR_FOOD("entity.cat.beg_for_food"),
diff --git a/src/main/java/org/bukkit/Tag.java b/src/main/java/org/bukkit/Tag.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/Tag.java
+++ b/src/main/java/org/bukkit/Tag.java
@@ -0,0 +0,0 @@ public interface Tag<T extends Keyed> extends Keyed {
/**
* Vanilla block tag representing all bamboo blocks.
*/
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
Tag<Material> BAMBOO_BLOCKS = Bukkit.getTag(REGISTRY_BLOCKS, NamespacedKey.minecraft("bamboo_blocks"), Material.class);
/**
* Vanilla block tag representing all banner blocks.
@@ -0,0 +0,0 @@ public interface Tag<T extends Keyed> extends Keyed {
/**
* Vanilla item tag representing all books that may be placed on bookshelves.
*/
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
Tag<Material> ITEMS_BOOKSHELF_BOOKS = Bukkit.getTag(REGISTRY_ITEMS, NamespacedKey.minecraft("bookshelf_books"), Material.class);
/**
* Vanilla item tag representing all items that may be placed in beacons.
@@ -0,0 +0,0 @@ public interface Tag<T extends Keyed> extends Keyed {
/**
* Vanilla item tag representing all hanging signs.
*/
+ @MinecraftExperimental // Paper
+ @ApiStatus.Experimental // Paper
Tag<Material> ITEMS_HANGING_SIGNS = Bukkit.getTag(REGISTRY_ITEMS, NamespacedKey.minecraft("hanging_signs"), Material.class);
/**
* Vanilla item tag representing all items which will ignite creepers when
diff --git a/src/main/java/org/bukkit/event/inventory/InventoryType.java b/src/main/java/org/bukkit/event/inventory/InventoryType.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/event/inventory/InventoryType.java
+++ b/src/main/java/org/bukkit/event/inventory/InventoryType.java
@@ -0,0 +0,0 @@ public enum InventoryType {
/**
* Pseudo chiseled bookshelf inventory, with 6 slots of undefined type.
*/
+ @MinecraftExperimental // Paper
+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper
CHISELED_BOOKSHELF(6, "Chiseled Bookshelf", false),
/**
* Pseudo jukebox inventory with 1 slot of undefined type.
@@ -0,0 +0,0 @@ public enum InventoryType {
* @apiNote draft, experimental 1.20 API
*/
@MinecraftExperimental
+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper
SMITHING_NEW(4, "Upgrade Gear"),
;
diff --git a/src/main/java/org/bukkit/inventory/SmithingTransformRecipe.java b/src/main/java/org/bukkit/inventory/SmithingTransformRecipe.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/inventory/SmithingTransformRecipe.java
+++ b/src/main/java/org/bukkit/inventory/SmithingTransformRecipe.java
@@ -0,0 +0,0 @@ import org.jetbrains.annotations.NotNull;
/**
* Represents a smithing transform recipe.
*/
+@org.bukkit.MinecraftExperimental // Paper
+@org.jetbrains.annotations.ApiStatus.Experimental // Paper
public class SmithingTransformRecipe extends SmithingRecipe {
private final RecipeChoice template;

View File

@ -64,6 +64,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
+ "https://jd.advntr.dev/text-serializer-plain/$adventureVersion/",
+ // Paper end
)
options.tags("apiNote:a:API Note:")
+ inputs.files(apiAndDocs).ignoreEmptyDirectories().withPropertyName(apiAndDocs.name + "-configuration")
+ doFirst {

View File

@ -45,7 +45,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
+ "https://javadoc.io/doc/org.jetbrains/annotations/23.0.0/", // Paper - we don't want Java 5 annotations
"https://javadoc.io/doc/net.md-5/bungeecord-chat/1.16-R0.4/",
)
options.tags("apiNote:a:API Note:")
@@ -0,0 +0,0 @@ tasks.withType<Javadoc> {
}
}

View File

@ -101,6 +101,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
+ "https://javadoc.io/doc/org.jetbrains/annotations-java5/23.0.0/",
+ "https://javadoc.io/doc/net.md-5/bungeecord-chat/1.16-R0.4/",
+ )
+ options.tags("apiNote:a:API Note:")
+
+ // workaround for https://github.com/gradle/gradle/issues/4046
+ inputs.dir("src/main/javadoc").withPropertyName("javadoc-sourceset")
@ -319,6 +320,13 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
- <link>https://javadoc.io/doc/org.jetbrains/annotations-java5/23.0.0/</link>
- <link>https://javadoc.io/doc/net.md-5/bungeecord-chat/1.16-R0.4/</link>
- </links>
- <tags>
- <tag>
- <name>apiNote</name>
- <placement>a</placement>
- <head>API Note:</head>
- </tag>
- </tags>
- </configuration>
- </plugin>
- </plugins>

View File

@ -203,14 +203,14 @@ diff --git a/src/main/java/org/bukkit/UndefinedNullability.java b/src/main/java/
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/UndefinedNullability.java
+++ b/src/main/java/org/bukkit/UndefinedNullability.java
@@ -0,0 +0,0 @@ import java.lang.annotation.RetentionPolicy;
@@ -0,0 +0,0 @@ import org.jetbrains.annotations.ApiStatus;
* suggests a bad API design.
*/
@Retention(RetentionPolicy.CLASS)
+@java.lang.annotation.Documented // Paper
@ApiStatus.Internal
@Deprecated
public @interface UndefinedNullability {
diff --git a/src/main/java/org/bukkit/Vibration.java b/src/main/java/org/bukkit/Vibration.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/Vibration.java
@ -369,43 +369,6 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
+ @Deprecated // Paper
public MaterialData getDisplayBlock();
/**
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -0,0 +0,0 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
*
* @param plugin Plugin that wants to hide the entity
* @param entity Entity to hide
- * @deprecated draft API
*/
- @Deprecated
+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper
public void hideEntity(@NotNull Plugin plugin, @NotNull Entity entity);
/**
@@ -0,0 +0,0 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
*
* @param plugin Plugin that wants to show the entity
* @param entity Entity to show
- * @deprecated draft API
*/
- @Deprecated
+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper
public void showEntity(@NotNull Plugin plugin, @NotNull Entity entity);
/**
@@ -0,0 +0,0 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
* @param entity Entity to check
* @return True if the provided entity is not being hidden from this
* player
- * @deprecated draft API
*/
- @Deprecated
+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper
public boolean canSee(@NotNull Entity entity);
/**
diff --git a/src/main/java/org/bukkit/entity/Projectile.java b/src/main/java/org/bukkit/entity/Projectile.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
@ -495,21 +458,6 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
@Override
public void setCancelled(boolean cancel) {
this.cancel = cancel;
diff --git a/src/main/java/org/bukkit/event/player/PlayerHideEntityEvent.java b/src/main/java/org/bukkit/event/player/PlayerHideEntityEvent.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/event/player/PlayerHideEntityEvent.java
+++ b/src/main/java/org/bukkit/event/player/PlayerHideEntityEvent.java
@@ -0,0 +0,0 @@ import org.jetbrains.annotations.NotNull;
* This event is called regardless of if the entity was within tracking range.
*
* @see Player#hideEntity(org.bukkit.plugin.Plugin, org.bukkit.entity.Entity)
- * @deprecated draft API
*/
-@Deprecated
+@org.jetbrains.annotations.ApiStatus.Experimental // Paper
@Warning(false)
public class PlayerHideEntityEvent extends PlayerEvent {
diff --git a/src/main/java/org/bukkit/event/player/PlayerMoveEvent.java b/src/main/java/org/bukkit/event/player/PlayerMoveEvent.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/event/player/PlayerMoveEvent.java
@ -523,21 +471,6 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
public Location getTo() {
return to;
}
diff --git a/src/main/java/org/bukkit/event/player/PlayerShowEntityEvent.java b/src/main/java/org/bukkit/event/player/PlayerShowEntityEvent.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/event/player/PlayerShowEntityEvent.java
+++ b/src/main/java/org/bukkit/event/player/PlayerShowEntityEvent.java
@@ -0,0 +0,0 @@ import org.jetbrains.annotations.NotNull;
* range.
*
* @see Player#showEntity(org.bukkit.plugin.Plugin, org.bukkit.entity.Entity)
- * @deprecated draft API
*/
-@Deprecated
+@org.jetbrains.annotations.ApiStatus.Experimental // Paper
@Warning(false)
public class PlayerShowEntityEvent extends PlayerEvent {
diff --git a/src/main/java/org/bukkit/event/vehicle/VehicleEntityCollisionEvent.java b/src/main/java/org/bukkit/event/vehicle/VehicleEntityCollisionEvent.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/event/vehicle/VehicleEntityCollisionEvent.java

View File

@ -972,8 +972,8 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
- * Setting to show/hide armor trim from leather armor.
+ * Setting to show/hide armor trim from armor.
*/
HIDE_ARMOR_TRIM;
}
@MinecraftExperimental
@ApiStatus.Experimental
diff --git a/src/main/java/org/bukkit/inventory/PlayerInventory.java b/src/main/java/org/bukkit/inventory/PlayerInventory.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/inventory/PlayerInventory.java

File diff suppressed because it is too large Load Diff

View File

@ -19,8 +19,8 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
/**
* Setting to show/hide dyes from colored leather armor.
@@ -0,0 +0,0 @@ public enum ItemFlag {
*/
@org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20
@MinecraftExperimental
@ApiStatus.Experimental
HIDE_ARMOR_TRIM;
+ // Paper start
+ /**

View File

@ -29,47 +29,52 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
*/
STICKS(0x3),
@@ -0,0 +0,0 @@ public enum Instrument {
/**
* Zombie is normally played when a Zombie Head is on top of the note block.
*/
@MinecraftExperimental
@ApiStatus.Experimental
- ZOMBIE,
+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20
+ ZOMBIE(0x10), // Paper
/**
* Skeleton is normally played when a Skeleton Head is on top of the note block.
*/
@MinecraftExperimental
@ApiStatus.Experimental
- SKELETON,
+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20
+ SKELETON(0x11), // Paper
/**
* Creeper is normally played when a Creeper Head is on top of the note block.
*/
@MinecraftExperimental
@ApiStatus.Experimental
- CREEPER,
+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20
+ CREEPER(0x12), // Paper
/**
* Dragon is normally played when a Dragon Head is on top of the note block.
*/
@MinecraftExperimental
@ApiStatus.Experimental
- DRAGON,
+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20
+ DRAGON(0x13), // Paper
/**
* Wither Skeleton is normally played when a Wither Skeleton Head is on top of the note block.
*/
@MinecraftExperimental
@ApiStatus.Experimental
- WITHER_SKELETON,
+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20
+ WITHER_SKELETON(0x14), // Paper
/**
* Piglin is normally played when a Piglin Head is on top of the note block.
*/
@MinecraftExperimental
@ApiStatus.Experimental
- PIGLIN,
+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20
+ PIGLIN(0x15), // Paper
/**
* Custom Sound is normally played when a Player Head with the required data is on top of the note block.
*/
@MinecraftExperimental
@ApiStatus.Experimental
- CUSTOM_HEAD;
+ @org.jetbrains.annotations.ApiStatus.Experimental // Paper - 1.20
+ CUSTOM_HEAD(0x16); // Paper
private final byte type;

View File

@ -80,7 +80,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java
@@ -0,0 +0,0 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> {
return new CraftRegistry<>(BuiltInRegistries.STRUCTURE_TYPE, CraftStructureType::new);
return new CraftRegistry<>(registryHolder.registryOrThrow(Registries.TRIM_PATTERN), CraftTrimPattern::new);
}
// TODO registry modification API
+ // Paper start - remove this after a while along with all ConfiguredStructure stuff

View File

@ -1,19 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jake Potrebic <jake.m.potrebic@gmail.com>
Date: Sun, 26 Mar 2023 13:17:41 -0700
Subject: [PATCH] Properly cancel bed block placement
diff --git a/src/main/java/net/minecraft/world/level/block/BedBlock.java b/src/main/java/net/minecraft/world/level/block/BedBlock.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/net/minecraft/world/level/block/BedBlock.java
+++ b/src/main/java/net/minecraft/world/level/block/BedBlock.java
@@ -0,0 +0,0 @@ public class BedBlock extends HorizontalDirectionalBlock implements EntityBlock
world.setBlock(blockposition1, (BlockState) state.setValue(BedBlock.PART, BedPart.HEAD), 3);
world.blockUpdated(pos, Blocks.AIR);
- state.updateNeighbourShapes(world, pos, 3);
+ // state.updateNeighbourShapes(world, pos, 3); // Paper - shapes will be updated on successful block place
}
}

View File

@ -9,8 +9,8 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java
@@ -0,0 +0,0 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> {
if (bukkitClass == StructureType.class) {
return new CraftRegistry<>(BuiltInRegistries.STRUCTURE_TYPE, CraftStructureType::new);
if (bukkitClass == TrimPattern.class) {
return new CraftRegistry<>(registryHolder.registryOrThrow(Registries.TRIM_PATTERN), CraftTrimPattern::new);
}
+ // TODO registry modification API

@ -1 +1 @@
Subproject commit 5efeb7bdbfa459cd0a59aa6a8941ff962662617f
Subproject commit eb4b416d2b270c01dba22a583204e62c4440dd3d

@ -1 +1 @@
Subproject commit be8682aa824764ebf811107c5eb928ffad6c1af5
Subproject commit 19de3550d85d736cdf1ae0838fe7891576985e49

@ -1 +1 @@
Subproject commit b31949f2f33ef94ed07dbe37fb00939cf049a989
Subproject commit d2fdfe39154577ac5ee1dac1672eab79a9577dc2