mirror of
https://github.com/PaperMC/Paper.git
synced 2025-02-05 15:11:28 +01:00
Update to Minecraft 1.21
By: md_5 <git@md-5.net>
This commit is contained in:
parent
9c6bdb14e4
commit
5c69fd52f0
@ -5,7 +5,7 @@
|
||||
|
||||
<groupId>org.bukkit</groupId>
|
||||
<artifactId>bukkit</artifactId>
|
||||
<version>1.20.6-R0.1-SNAPSHOT</version>
|
||||
<version>1.21-R0.1-SNAPSHOT</version>
|
||||
<packaging>jar</packaging>
|
||||
|
||||
<name>Bukkit</name>
|
||||
|
@ -40,7 +40,27 @@ public enum Art implements Keyed {
|
||||
EARTH(26, 2, 2),
|
||||
WIND(27, 2, 2),
|
||||
WATER(28, 2, 2),
|
||||
FIRE(29, 2, 2);
|
||||
FIRE(29, 2, 2),
|
||||
BAROQUE(30, 2, 2),
|
||||
HUMBLE(31, 2, 2),
|
||||
MEDITATIVE(32, 1, 1),
|
||||
PRAIRIE_RIDE(33, 1, 2),
|
||||
UNPACKED(34, 4, 4),
|
||||
BACKYARD(35, 3, 4),
|
||||
BOUQUET(36, 3, 3),
|
||||
CAVEBIRD(37, 3, 3),
|
||||
CHANGING(38, 4, 2),
|
||||
COTAN(39, 3, 3),
|
||||
ENDBOSS(40, 3, 3),
|
||||
FERN(41, 3, 3),
|
||||
FINDING(42, 4, 2),
|
||||
LOWMIST(43, 4, 2),
|
||||
ORB(44, 4, 4),
|
||||
OWLEMONS(45, 3, 3),
|
||||
PASSAGE(46, 4, 2),
|
||||
POND(47, 3, 4),
|
||||
SUNFLOWERS(48, 3, 3),
|
||||
TIDES(49, 3, 3);
|
||||
|
||||
private final int id, width, height;
|
||||
private final NamespacedKey key;
|
||||
|
@ -57,6 +57,7 @@ import org.bukkit.scoreboard.Criteria;
|
||||
import org.bukkit.scoreboard.ScoreboardManager;
|
||||
import org.bukkit.structure.StructureManager;
|
||||
import org.bukkit.util.CachedServerIcon;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.Contract;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
@ -1694,6 +1695,17 @@ public final class Bukkit {
|
||||
server.setMotd(motd);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the server links which will be sent to clients
|
||||
*
|
||||
* @return the server's links
|
||||
*/
|
||||
@NotNull
|
||||
@ApiStatus.Experimental
|
||||
public static ServerLinks getServerLinks() {
|
||||
return server.getServerLinks();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the default message that is displayed when the server is stopped.
|
||||
*
|
||||
|
@ -25,5 +25,11 @@ public interface FeatureFlag extends Keyed {
|
||||
|
||||
public static final FeatureFlag TRADE_REBALANCE = Bukkit.getUnsafe().getFeatureFlag(NamespacedKey.minecraft("trade_rebalance"));
|
||||
|
||||
/**
|
||||
* <strong>AVAILABLE BETWEEN VERSIONS:</strong> 1.20.5 - 1.20.6
|
||||
*
|
||||
* @deprecated not available since 1.21
|
||||
*/
|
||||
@Deprecated
|
||||
public static final FeatureFlag UPDATE_121 = Bukkit.getUnsafe().getFeatureFlag(NamespacedKey.minecraft("update_1_21"));
|
||||
}
|
||||
|
37
paper-api/src/main/java/org/bukkit/JukeboxSong.java
Normal file
37
paper-api/src/main/java/org/bukkit/JukeboxSong.java
Normal file
@ -0,0 +1,37 @@
|
||||
package org.bukkit;
|
||||
|
||||
import java.util.Objects;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Represents a song which may play in a Jukebox.
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
public interface JukeboxSong extends Keyed, Translatable {
|
||||
|
||||
public static final JukeboxSong THIRTEEN = get("13");
|
||||
public static final JukeboxSong CAT = get("cat");
|
||||
public static final JukeboxSong BLOCKS = get("blocks");
|
||||
public static final JukeboxSong CHIRP = get("chirp");
|
||||
public static final JukeboxSong FAR = get("far");
|
||||
public static final JukeboxSong MALL = get("mall");
|
||||
public static final JukeboxSong MELLOHI = get("mellohi");
|
||||
public static final JukeboxSong STAL = get("stal");
|
||||
public static final JukeboxSong STRAD = get("strad");
|
||||
public static final JukeboxSong WARD = get("ward");
|
||||
public static final JukeboxSong ELEVEN = get("11");
|
||||
public static final JukeboxSong WAIT = get("wait");
|
||||
public static final JukeboxSong PIGSTEP = get("pigstep");
|
||||
public static final JukeboxSong OTHERSIDE = get("otherside");
|
||||
public static final JukeboxSong FIVE = get("5");
|
||||
public static final JukeboxSong RELIC = get("relic");
|
||||
public static final JukeboxSong PRECIPICE = get("precipice");
|
||||
public static final JukeboxSong CREATOR = get("creator");
|
||||
public static final JukeboxSong CREATOR_MUSIC_BOX = get("creator_music_box");
|
||||
|
||||
@NotNull
|
||||
private static JukeboxSong get(@NotNull String s) {
|
||||
return Objects.requireNonNull(Registry.JUKEBOX_SONG.get(NamespacedKey.minecraft(s)), "Missing song " + s);
|
||||
}
|
||||
}
|
@ -7,7 +7,6 @@ import java.lang.reflect.Constructor;
|
||||
import java.util.Locale;
|
||||
import java.util.Map;
|
||||
import java.util.function.Consumer;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.bukkit.attribute.Attribute;
|
||||
import org.bukkit.attribute.AttributeModifier;
|
||||
import org.bukkit.block.Block;
|
||||
@ -149,55 +148,42 @@ public enum Material implements Keyed, Translatable {
|
||||
/**
|
||||
* BlockData: {@link Slab}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TUFF_SLAB(19305, Slab.class),
|
||||
/**
|
||||
* BlockData: {@link Stairs}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TUFF_STAIRS(11268, Stairs.class),
|
||||
/**
|
||||
* BlockData: {@link Wall}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TUFF_WALL(24395, Wall.class),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
CHISELED_TUFF(15831),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
POLISHED_TUFF(17801),
|
||||
/**
|
||||
* BlockData: {@link Slab}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
POLISHED_TUFF_SLAB(31096, Slab.class),
|
||||
/**
|
||||
* BlockData: {@link Stairs}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
POLISHED_TUFF_STAIRS(7964, Stairs.class),
|
||||
/**
|
||||
* BlockData: {@link Wall}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
POLISHED_TUFF_WALL(28886, Wall.class),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TUFF_BRICKS(26276),
|
||||
/**
|
||||
* BlockData: {@link Slab}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TUFF_BRICK_SLAB(11843, Slab.class),
|
||||
/**
|
||||
* BlockData: {@link Stairs}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TUFF_BRICK_STAIRS(30753, Stairs.class),
|
||||
/**
|
||||
* BlockData: {@link Wall}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TUFF_BRICK_WALL(11761, Wall.class),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
CHISELED_TUFF_BRICKS(8601),
|
||||
DRIPSTONE_BLOCK(26227),
|
||||
/**
|
||||
@ -303,7 +289,6 @@ public enum Material implements Keyed, Translatable {
|
||||
/**
|
||||
* BlockData: {@link Waterlogged}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
HEAVY_CORE(15788, Waterlogged.class),
|
||||
AMETHYST_BLOCK(18919),
|
||||
BUDDING_AMETHYST(13963),
|
||||
@ -315,13 +300,9 @@ public enum Material implements Keyed, Translatable {
|
||||
EXPOSED_COPPER(28488),
|
||||
WEATHERED_COPPER(19699),
|
||||
OXIDIZED_COPPER(19490),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
CHISELED_COPPER(12143),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
EXPOSED_CHISELED_COPPER(4570),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WEATHERED_CHISELED_COPPER(30876),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
OXIDIZED_CHISELED_COPPER(27719),
|
||||
CUT_COPPER(32519),
|
||||
EXPOSED_CUT_COPPER(18000),
|
||||
@ -363,13 +344,9 @@ public enum Material implements Keyed, Translatable {
|
||||
WAXED_EXPOSED_COPPER(27989),
|
||||
WAXED_WEATHERED_COPPER(5960),
|
||||
WAXED_OXIDIZED_COPPER(25626),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WAXED_CHISELED_COPPER(7500),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WAXED_EXPOSED_CHISELED_COPPER(30658),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WAXED_WEATHERED_CHISELED_COPPER(5970),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WAXED_OXIDIZED_CHISELED_COPPER(7735),
|
||||
WAXED_CUT_COPPER(11030),
|
||||
WAXED_EXPOSED_CUT_COPPER(30043),
|
||||
@ -2110,42 +2087,34 @@ public enum Material implements Keyed, Translatable {
|
||||
/**
|
||||
* BlockData: {@link Door}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
COPPER_DOOR(26809, Door.class),
|
||||
/**
|
||||
* BlockData: {@link Door}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
EXPOSED_COPPER_DOOR(13236, Door.class),
|
||||
/**
|
||||
* BlockData: {@link Door}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WEATHERED_COPPER_DOOR(10208, Door.class),
|
||||
/**
|
||||
* BlockData: {@link Door}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
OXIDIZED_COPPER_DOOR(5348, Door.class),
|
||||
/**
|
||||
* BlockData: {@link Door}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WAXED_COPPER_DOOR(9954, Door.class),
|
||||
/**
|
||||
* BlockData: {@link Door}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WAXED_EXPOSED_COPPER_DOOR(20748, Door.class),
|
||||
/**
|
||||
* BlockData: {@link Door}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WAXED_WEATHERED_COPPER_DOOR(25073, Door.class),
|
||||
/**
|
||||
* BlockData: {@link Door}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WAXED_OXIDIZED_COPPER_DOOR(23888, Door.class),
|
||||
/**
|
||||
* BlockData: {@link TrapDoor}
|
||||
@ -2198,42 +2167,34 @@ public enum Material implements Keyed, Translatable {
|
||||
/**
|
||||
* BlockData: {@link TrapDoor}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
COPPER_TRAPDOOR(12110, TrapDoor.class),
|
||||
/**
|
||||
* BlockData: {@link TrapDoor}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
EXPOSED_COPPER_TRAPDOOR(19219, TrapDoor.class),
|
||||
/**
|
||||
* BlockData: {@link TrapDoor}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WEATHERED_COPPER_TRAPDOOR(28254, TrapDoor.class),
|
||||
/**
|
||||
* BlockData: {@link TrapDoor}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
OXIDIZED_COPPER_TRAPDOOR(26518, TrapDoor.class),
|
||||
/**
|
||||
* BlockData: {@link TrapDoor}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WAXED_COPPER_TRAPDOOR(12626, TrapDoor.class),
|
||||
/**
|
||||
* BlockData: {@link TrapDoor}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WAXED_EXPOSED_COPPER_TRAPDOOR(11010, TrapDoor.class),
|
||||
/**
|
||||
* BlockData: {@link TrapDoor}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WAXED_WEATHERED_COPPER_TRAPDOOR(30709, TrapDoor.class),
|
||||
/**
|
||||
* BlockData: {@link TrapDoor}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WAXED_OXIDIZED_COPPER_TRAPDOOR(21450, TrapDoor.class),
|
||||
/**
|
||||
* BlockData: {@link Gate}
|
||||
@ -2335,6 +2296,7 @@ public enum Material implements Keyed, Translatable {
|
||||
ARMADILLO_SCUTE(11497),
|
||||
WOLF_ARMOR(17138, 1, 64),
|
||||
FLINT_AND_STEEL(28620, 1, 64),
|
||||
BOWL(32661),
|
||||
APPLE(7720),
|
||||
BOW(8745, 1, 384),
|
||||
ARROW(31091),
|
||||
@ -2384,7 +2346,6 @@ public enum Material implements Keyed, Translatable {
|
||||
NETHERITE_AXE(29533, 1, 2031),
|
||||
NETHERITE_HOE(27385, 1, 2031),
|
||||
STICK(9773),
|
||||
BOWL(32661),
|
||||
MUSHROOM_STEW(16336, 1),
|
||||
STRING(12806),
|
||||
FEATHER(30548),
|
||||
@ -2640,7 +2601,6 @@ public enum Material implements Keyed, Translatable {
|
||||
/**
|
||||
* BlockData: {@link Crafter}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
CRAFTER(25243, Crafter.class),
|
||||
FILLED_MAP(23504),
|
||||
SHEARS(27971, 1, 238),
|
||||
@ -2680,9 +2640,7 @@ public enum Material implements Keyed, Translatable {
|
||||
BAT_SPAWN_EGG(14607),
|
||||
BEE_SPAWN_EGG(22924),
|
||||
BLAZE_SPAWN_EGG(4759),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BOGGED_SPAWN_EGG(12042),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BREEZE_SPAWN_EGG(7580),
|
||||
CAT_SPAWN_EGG(29583),
|
||||
CAMEL_SPAWN_EGG(14760),
|
||||
@ -2758,12 +2716,10 @@ public enum Material implements Keyed, Translatable {
|
||||
ZOMBIFIED_PIGLIN_SPAWN_EGG(6626),
|
||||
EXPERIENCE_BOTTLE(12858),
|
||||
FIRE_CHARGE(4842),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WIND_CHARGE(23928),
|
||||
WRITABLE_BOOK(13393, 1),
|
||||
WRITTEN_BOOK(24164, 16),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
MACE(4771, 1, 250),
|
||||
MACE(4771, 1, 500),
|
||||
ITEM_FRAME(27318),
|
||||
GLOW_ITEM_FRAME(26473),
|
||||
FLOWER_POT(30567),
|
||||
@ -2911,6 +2867,8 @@ public enum Material implements Keyed, Translatable {
|
||||
MUSIC_DISC_CAT(16246, 1),
|
||||
MUSIC_DISC_BLOCKS(26667, 1),
|
||||
MUSIC_DISC_CHIRP(19436, 1),
|
||||
MUSIC_DISC_CREATOR(20345, 1),
|
||||
MUSIC_DISC_CREATOR_MUSIC_BOX(7202, 1),
|
||||
MUSIC_DISC_FAR(31742, 1),
|
||||
MUSIC_DISC_MALL(11517, 1),
|
||||
MUSIC_DISC_MELLOHI(26117, 1),
|
||||
@ -2923,6 +2881,7 @@ public enum Material implements Keyed, Translatable {
|
||||
MUSIC_DISC_RELIC(8200, 1),
|
||||
MUSIC_DISC_5(9212, 1),
|
||||
MUSIC_DISC_PIGSTEP(21323, 1),
|
||||
MUSIC_DISC_PRECIPICE(28677, 1),
|
||||
DISC_FRAGMENT_5(29729),
|
||||
TRIDENT(7534, 1, 250),
|
||||
PHANTOM_MEMBRANE(18398),
|
||||
@ -3160,9 +3119,7 @@ public enum Material implements Keyed, Translatable {
|
||||
SILENCE_ARMOR_TRIM_SMITHING_TEMPLATE(7070),
|
||||
RAISER_ARMOR_TRIM_SMITHING_TEMPLATE(29116),
|
||||
HOST_ARMOR_TRIM_SMITHING_TEMPLATE(12165),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
FLOW_ARMOR_TRIM_SMITHING_TEMPLATE(29175),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BOLT_ARMOR_TRIM_SMITHING_TEMPLATE(9698),
|
||||
ANGLER_POTTERY_SHERD(9952),
|
||||
ARCHER_POTTERY_SHERD(21629),
|
||||
@ -3172,10 +3129,8 @@ public enum Material implements Keyed, Translatable {
|
||||
BURN_POTTERY_SHERD(21259),
|
||||
DANGER_POTTERY_SHERD(30506),
|
||||
EXPLORER_POTTERY_SHERD(5124),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
FLOW_POTTERY_SHERD(4896),
|
||||
FRIEND_POTTERY_SHERD(18221),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
GUSTER_POTTERY_SHERD(28193),
|
||||
HEART_POTTERY_SHERD(17607),
|
||||
HEARTBREAK_POTTERY_SHERD(21108),
|
||||
@ -3184,7 +3139,6 @@ public enum Material implements Keyed, Translatable {
|
||||
MOURNER_POTTERY_SHERD(23993),
|
||||
PLENTY_POTTERY_SHERD(28236),
|
||||
PRIZE_POTTERY_SHERD(4341),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
SCRAPE_POTTERY_SHERD(30034),
|
||||
SHEAF_POTTERY_SHERD(23652),
|
||||
SHELTER_POTTERY_SHERD(28390),
|
||||
@ -3193,100 +3147,78 @@ public enum Material implements Keyed, Translatable {
|
||||
/**
|
||||
* BlockData: {@link Waterlogged}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
COPPER_GRATE(16221, Waterlogged.class),
|
||||
/**
|
||||
* BlockData: {@link Waterlogged}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
EXPOSED_COPPER_GRATE(7783, Waterlogged.class),
|
||||
/**
|
||||
* BlockData: {@link Waterlogged}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WEATHERED_COPPER_GRATE(24954, Waterlogged.class),
|
||||
/**
|
||||
* BlockData: {@link Waterlogged}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
OXIDIZED_COPPER_GRATE(14122, Waterlogged.class),
|
||||
/**
|
||||
* BlockData: {@link Waterlogged}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WAXED_COPPER_GRATE(11230, Waterlogged.class),
|
||||
/**
|
||||
* BlockData: {@link Waterlogged}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WAXED_EXPOSED_COPPER_GRATE(20520, Waterlogged.class),
|
||||
/**
|
||||
* BlockData: {@link Waterlogged}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WAXED_WEATHERED_COPPER_GRATE(16533, Waterlogged.class),
|
||||
/**
|
||||
* BlockData: {@link Waterlogged}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WAXED_OXIDIZED_COPPER_GRATE(32010, Waterlogged.class),
|
||||
/**
|
||||
* BlockData: {@link CopperBulb}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
COPPER_BULB(21370, CopperBulb.class),
|
||||
/**
|
||||
* BlockData: {@link CopperBulb}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
EXPOSED_COPPER_BULB(11944, CopperBulb.class),
|
||||
/**
|
||||
* BlockData: {@link CopperBulb}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WEATHERED_COPPER_BULB(10800, CopperBulb.class),
|
||||
/**
|
||||
* BlockData: {@link CopperBulb}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
OXIDIZED_COPPER_BULB(22421, CopperBulb.class),
|
||||
/**
|
||||
* BlockData: {@link CopperBulb}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WAXED_COPPER_BULB(23756, CopperBulb.class),
|
||||
/**
|
||||
* BlockData: {@link CopperBulb}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WAXED_EXPOSED_COPPER_BULB(5530, CopperBulb.class),
|
||||
/**
|
||||
* BlockData: {@link CopperBulb}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WAXED_WEATHERED_COPPER_BULB(13239, CopperBulb.class),
|
||||
/**
|
||||
* BlockData: {@link CopperBulb}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WAXED_OXIDIZED_COPPER_BULB(26892, CopperBulb.class),
|
||||
/**
|
||||
* BlockData: {@link TrialSpawner}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_SPAWNER(19902, TrialSpawner.class),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_KEY(12725),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
OMINOUS_TRIAL_KEY(4986),
|
||||
/**
|
||||
* BlockData: {@link Vault}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
VAULT(6288, Vault.class),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
OMINOUS_BOTTLE(26321),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BREEZE_ROD(14281),
|
||||
/**
|
||||
* BlockData: {@link Levelled}
|
||||
|
@ -47,6 +47,5 @@ public @interface MinecraftExperimental {
|
||||
@ApiStatus.Internal
|
||||
public enum Requires {
|
||||
|
||||
UPDATE_1_21
|
||||
}
|
||||
}
|
||||
|
@ -1,7 +1,6 @@
|
||||
package org.bukkit;
|
||||
|
||||
import com.google.common.base.Preconditions;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.bukkit.block.data.BlockData;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@ -129,34 +128,21 @@ public enum Particle implements Keyed {
|
||||
EGG_CRACK("egg_crack"),
|
||||
DUST_PLUME("dust_plume"),
|
||||
WHITE_SMOKE("white_smoke"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
GUST("gust"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
SMALL_GUST("small_gust"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
GUST_EMITTER_LARGE("gust_emitter_large"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
GUST_EMITTER_SMALL("gust_emitter_small"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_SPAWNER_DETECTION("trial_spawner_detection"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_SPAWNER_DETECTION_OMINOUS("trial_spawner_detection_ominous"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
VAULT_CONNECTION("vault_connection"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
INFESTED("infested"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ITEM_COBWEB("item_cobweb"),
|
||||
/**
|
||||
* Uses {@link BlockData} as DataType
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
DUST_PILLAR("dust_pillar", BlockData.class),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
OMINOUS_SPAWNING("ominous_spawning"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
RAID_OMEN("raid_omen"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_OMEN("trial_omen"),
|
||||
/**
|
||||
* Uses {@link BlockData} as DataType
|
||||
|
@ -236,6 +236,13 @@ public interface Registry<T extends Keyed> extends Iterable<T> {
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
Registry<DamageType> DAMAGE_TYPE = Objects.requireNonNull(Bukkit.getRegistry(DamageType.class), "No registry present for DamageType. This is a bug.");
|
||||
/**
|
||||
* Jukebox songs.
|
||||
*
|
||||
* @see JukeboxSong
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
Registry<JukeboxSong> JUKEBOX_SONG = Objects.requireNonNull(Bukkit.getRegistry(JukeboxSong.class), "No registry present for JukeboxSong. This is a bug.");
|
||||
/**
|
||||
* Villager profession.
|
||||
*
|
||||
|
@ -58,6 +58,7 @@ import org.bukkit.scoreboard.Criteria;
|
||||
import org.bukkit.scoreboard.ScoreboardManager;
|
||||
import org.bukkit.structure.StructureManager;
|
||||
import org.bukkit.util.CachedServerIcon;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.Contract;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
@ -1438,6 +1439,15 @@ public interface Server extends PluginMessageRecipient {
|
||||
*/
|
||||
void setMotd(@NotNull String motd);
|
||||
|
||||
/**
|
||||
* Gets the server links which will be sent to clients
|
||||
*
|
||||
* @return the server's links
|
||||
*/
|
||||
@NotNull
|
||||
@ApiStatus.Experimental
|
||||
ServerLinks getServerLinks();
|
||||
|
||||
/**
|
||||
* Gets the default message that is displayed when the server is stopped.
|
||||
*
|
||||
|
129
paper-api/src/main/java/org/bukkit/ServerLinks.java
Normal file
129
paper-api/src/main/java/org/bukkit/ServerLinks.java
Normal file
@ -0,0 +1,129 @@
|
||||
package org.bukkit;
|
||||
|
||||
import java.net.URI;
|
||||
import java.util.List;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* Represents a collections of links which may be sent to a client.
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
public interface ServerLinks {
|
||||
|
||||
/**
|
||||
* Gets the link of a given type, if it exists.
|
||||
*
|
||||
* @param type link type
|
||||
* @return link or null
|
||||
*/
|
||||
@Nullable
|
||||
ServerLink getLink(@NotNull Type type);
|
||||
|
||||
/**
|
||||
* Gets an immutable list of all links.
|
||||
*
|
||||
* @return immutable list
|
||||
*/
|
||||
@NotNull
|
||||
List<ServerLink> getLinks();
|
||||
|
||||
/**
|
||||
* Adds the given link, overwriting the first link of the same type if
|
||||
* already set.
|
||||
*
|
||||
* @param type link type
|
||||
* @param url link url
|
||||
* @return the added link
|
||||
*/
|
||||
@NotNull
|
||||
ServerLink setLink(@NotNull Type type, @NotNull URI url);
|
||||
|
||||
/**
|
||||
* Adds the given link to the list of links.
|
||||
*
|
||||
* @param type link type
|
||||
* @param url link url
|
||||
* @return the added link
|
||||
*/
|
||||
@NotNull
|
||||
ServerLink addLink(@NotNull Type type, @NotNull URI url);
|
||||
|
||||
/**
|
||||
* Adds the given link to the list of links.
|
||||
*
|
||||
* @param displayName link name / display text
|
||||
* @param url link url
|
||||
* @return the added link
|
||||
*/
|
||||
@NotNull
|
||||
ServerLink addLink(@NotNull String displayName, @NotNull URI url);
|
||||
|
||||
/**
|
||||
* Removes the given link.
|
||||
*
|
||||
* @param link the link to remove
|
||||
* @return if the link existed and was removed
|
||||
*/
|
||||
boolean removeLink(@NotNull ServerLink link);
|
||||
|
||||
/**
|
||||
* Returns a copy of this link collection, unassociated from the server.
|
||||
*
|
||||
* @return copied links
|
||||
*/
|
||||
@NotNull
|
||||
ServerLinks copy();
|
||||
|
||||
/**
|
||||
* Represents a server link.
|
||||
*/
|
||||
public interface ServerLink {
|
||||
|
||||
/**
|
||||
* Gets the type of this link if it is a known special type.
|
||||
*
|
||||
* @return type or null
|
||||
*/
|
||||
@Nullable
|
||||
Type getType();
|
||||
|
||||
/**
|
||||
* Gets the display name/text of this link.
|
||||
*
|
||||
* @return display name
|
||||
*/
|
||||
@NotNull
|
||||
String getDisplayName();
|
||||
|
||||
/**
|
||||
* Gets the url of this link.
|
||||
*
|
||||
* @return link url
|
||||
*/
|
||||
@NotNull
|
||||
URI getUrl();
|
||||
}
|
||||
|
||||
/**
|
||||
* Represents a known type of link which will be translated by the client
|
||||
* and may have special functionality.
|
||||
*/
|
||||
public enum Type {
|
||||
|
||||
/**
|
||||
* Bug report links which may appear on disconnect/crash screens.
|
||||
*/
|
||||
REPORT_BUG,
|
||||
COMMUNITY_GUIDELINES,
|
||||
SUPPORT,
|
||||
STATUS,
|
||||
FEEDBACK,
|
||||
COMMUNITY,
|
||||
WEBSITE,
|
||||
FORUMS,
|
||||
NEWS,
|
||||
ANNOUNCEMENTS;
|
||||
}
|
||||
}
|
@ -1,7 +1,6 @@
|
||||
package org.bukkit;
|
||||
|
||||
import org.bukkit.entity.Entity;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
@ -11,7 +10,6 @@ import org.jetbrains.annotations.NotNull;
|
||||
*
|
||||
* @see <a href="https://minecraft.wiki/w/Commands/tick">Tick Command</a>
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
public interface ServerTickManager {
|
||||
|
||||
/**
|
||||
|
@ -1,6 +1,5 @@
|
||||
package org.bukkit;
|
||||
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
@ -220,41 +219,25 @@ public enum Sound implements Keyed {
|
||||
BLOCK_CONDUIT_ATTACK_TARGET("block.conduit.attack.target"),
|
||||
BLOCK_CONDUIT_DEACTIVATE("block.conduit.deactivate"),
|
||||
BLOCK_COPPER_BREAK("block.copper.break"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_COPPER_BULB_BREAK("block.copper_bulb.break"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_COPPER_BULB_FALL("block.copper_bulb.fall"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_COPPER_BULB_HIT("block.copper_bulb.hit"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_COPPER_BULB_PLACE("block.copper_bulb.place"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_COPPER_BULB_STEP("block.copper_bulb.step"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_COPPER_BULB_TURN_OFF("block.copper_bulb.turn_off"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_COPPER_BULB_TURN_ON("block.copper_bulb.turn_on"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_COPPER_DOOR_CLOSE("block.copper_door.close"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_COPPER_DOOR_OPEN("block.copper_door.open"),
|
||||
BLOCK_COPPER_FALL("block.copper.fall"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_COPPER_GRATE_BREAK("block.copper_grate.break"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_COPPER_GRATE_FALL("block.copper_grate.fall"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_COPPER_GRATE_HIT("block.copper_grate.hit"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_COPPER_GRATE_PLACE("block.copper_grate.place"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_COPPER_GRATE_STEP("block.copper_grate.step"),
|
||||
BLOCK_COPPER_HIT("block.copper.hit"),
|
||||
BLOCK_COPPER_PLACE("block.copper.place"),
|
||||
BLOCK_COPPER_STEP("block.copper.step"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_COPPER_TRAPDOOR_CLOSE("block.copper_trapdoor.close"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_COPPER_TRAPDOOR_OPEN("block.copper_trapdoor.open"),
|
||||
BLOCK_CORAL_BLOCK_BREAK("block.coral_block.break"),
|
||||
BLOCK_CORAL_BLOCK_FALL("block.coral_block.fall"),
|
||||
@ -360,15 +343,10 @@ public enum Sound implements Keyed {
|
||||
BLOCK_HANGING_SIGN_PLACE("block.hanging_sign.place"),
|
||||
BLOCK_HANGING_SIGN_STEP("block.hanging_sign.step"),
|
||||
BLOCK_HANGING_SIGN_WAXED_INTERACT_FAIL("block.hanging_sign.waxed_interact_fail"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_HEAVY_CORE_BREAK("block.heavy_core.break"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_HEAVY_CORE_FALL("block.heavy_core.fall"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_HEAVY_CORE_HIT("block.heavy_core.hit"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_HEAVY_CORE_PLACE("block.heavy_core.place"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_HEAVY_CORE_STEP("block.heavy_core.step"),
|
||||
BLOCK_HONEY_BLOCK_BREAK("block.honey_block.break"),
|
||||
BLOCK_HONEY_BLOCK_FALL("block.honey_block.fall"),
|
||||
@ -546,15 +524,10 @@ public enum Sound implements Keyed {
|
||||
BLOCK_POLISHED_DEEPSLATE_HIT("block.polished_deepslate.hit"),
|
||||
BLOCK_POLISHED_DEEPSLATE_PLACE("block.polished_deepslate.place"),
|
||||
BLOCK_POLISHED_DEEPSLATE_STEP("block.polished_deepslate.step"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_POLISHED_TUFF_BREAK("block.polished_tuff.break"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_POLISHED_TUFF_FALL("block.polished_tuff.fall"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_POLISHED_TUFF_HIT("block.polished_tuff.hit"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_POLISHED_TUFF_PLACE("block.polished_tuff.place"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_POLISHED_TUFF_STEP("block.polished_tuff.step"),
|
||||
BLOCK_PORTAL_AMBIENT("block.portal.ambient"),
|
||||
BLOCK_PORTAL_TRAVEL("block.portal.travel"),
|
||||
@ -699,82 +672,49 @@ public enum Sound implements Keyed {
|
||||
BLOCK_SWEET_BERRY_BUSH_BREAK("block.sweet_berry_bush.break"),
|
||||
BLOCK_SWEET_BERRY_BUSH_PICK_BERRIES("block.sweet_berry_bush.pick_berries"),
|
||||
BLOCK_SWEET_BERRY_BUSH_PLACE("block.sweet_berry_bush.place"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TRIAL_SPAWNER_ABOUT_TO_SPAWN_ITEM("block.trial_spawner.about_to_spawn_item"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TRIAL_SPAWNER_AMBIENT("block.trial_spawner.ambient"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TRIAL_SPAWNER_AMBIENT_CHARGED("block.trial_spawner.ambient_charged"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TRIAL_SPAWNER_AMBIENT_OMINOUS("block.trial_spawner.ambient_ominous"),
|
||||
BLOCK_TRIAL_SPAWNER_BREAK("block.trial_spawner.break"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TRIAL_SPAWNER_CHARGE_ACTIVATE("block.trial_spawner.charge_activate"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TRIAL_SPAWNER_CLOSE_SHUTTER("block.trial_spawner.close_shutter"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TRIAL_SPAWNER_DETECT_PLAYER("block.trial_spawner.detect_player"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TRIAL_SPAWNER_EJECT_ITEM("block.trial_spawner.eject_item"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TRIAL_SPAWNER_FALL("block.trial_spawner.fall"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TRIAL_SPAWNER_HIT("block.trial_spawner.hit"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TRIAL_SPAWNER_OMINOUS_ACTIVATE("block.trial_spawner.ominous_activate"),
|
||||
BLOCK_TRIAL_SPAWNER_OPEN_SHUTTER("block.trial_spawner.open_shutter"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TRIAL_SPAWNER_PLACE("block.trial_spawner.place"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TRIAL_SPAWNER_SPAWN_ITEM("block.trial_spawner.spawn_item"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TRIAL_SPAWNER_SPAWN_ITEM_BEGIN("block.trial_spawner.spawn_item_begin"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TRIAL_SPAWNER_SPAWN_MOB("block.trial_spawner.spawn_mob"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TRIAL_SPAWNER_STEP("block.trial_spawner.step"),
|
||||
BLOCK_TRIPWIRE_ATTACH("block.tripwire.attach"),
|
||||
BLOCK_TRIPWIRE_CLICK_OFF("block.tripwire.click_off"),
|
||||
BLOCK_TRIPWIRE_CLICK_ON("block.tripwire.click_on"),
|
||||
BLOCK_TRIPWIRE_DETACH("block.tripwire.detach"),
|
||||
BLOCK_TUFF_BREAK("block.tuff.break"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TUFF_BRICKS_BREAK("block.tuff_bricks.break"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TUFF_BRICKS_FALL("block.tuff_bricks.fall"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TUFF_BRICKS_HIT("block.tuff_bricks.hit"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TUFF_BRICKS_PLACE("block.tuff_bricks.place"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_TUFF_BRICKS_STEP("block.tuff_bricks.step"),
|
||||
BLOCK_TUFF_FALL("block.tuff.fall"),
|
||||
BLOCK_TUFF_HIT("block.tuff.hit"),
|
||||
BLOCK_TUFF_PLACE("block.tuff.place"),
|
||||
BLOCK_TUFF_STEP("block.tuff.step"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_VAULT_ACTIVATE("block.vault.activate"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_VAULT_AMBIENT("block.vault.ambient"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_VAULT_BREAK("block.vault.break"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_VAULT_CLOSE_SHUTTER("block.vault.close_shutter"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_VAULT_DEACTIVATE("block.vault.deactivate"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_VAULT_EJECT_ITEM("block.vault.eject_item"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_VAULT_FALL("block.vault.fall"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_VAULT_HIT("block.vault.hit"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_VAULT_INSERT_ITEM("block.vault.insert_item"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_VAULT_INSERT_ITEM_FAIL("block.vault.insert_item_fail"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_VAULT_OPEN_SHUTTER("block.vault.open_shutter"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_VAULT_PLACE("block.vault.place"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
BLOCK_VAULT_REJECT_REWARDED_PLAYER("block.vault.reject_rewarded_player"),
|
||||
BLOCK_VAULT_STEP("block.vault.step"),
|
||||
BLOCK_VINE_BREAK("block.vine.break"),
|
||||
BLOCK_VINE_FALL("block.vine.fall"),
|
||||
@ -874,41 +814,23 @@ public enum Sound implements Keyed {
|
||||
ENTITY_BLAZE_SHOOT("entity.blaze.shoot"),
|
||||
ENTITY_BOAT_PADDLE_LAND("entity.boat.paddle_land"),
|
||||
ENTITY_BOAT_PADDLE_WATER("entity.boat.paddle_water"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_BOGGED_AMBIENT("entity.bogged.ambient"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_BOGGED_DEATH("entity.bogged.death"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_BOGGED_HURT("entity.bogged.hurt"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_BOGGED_SHEAR("entity.bogged.shear"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_BOGGED_STEP("entity.bogged.step"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_BREEZE_CHARGE("entity.breeze.charge"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_BREEZE_DEATH("entity.breeze.death"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_BREEZE_DEFLECT("entity.breeze.deflect"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_BREEZE_HURT("entity.breeze.hurt"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_BREEZE_IDLE_AIR("entity.breeze.idle_air"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_BREEZE_IDLE_GROUND("entity.breeze.idle_ground"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_BREEZE_INHALE("entity.breeze.inhale"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_BREEZE_JUMP("entity.breeze.jump"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_BREEZE_LAND("entity.breeze.land"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_BREEZE_SHOOT("entity.breeze.shoot"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_BREEZE_SLIDE("entity.breeze.slide"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_BREEZE_WHIRL("entity.breeze.whirl"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_BREEZE_WIND_BURST("entity.breeze.wind_burst"),
|
||||
ENTITY_CAMEL_AMBIENT("entity.camel.ambient"),
|
||||
ENTITY_CAMEL_DASH("entity.camel.dash"),
|
||||
@ -1207,9 +1129,7 @@ public enum Sound implements Keyed {
|
||||
ENTITY_PARROT_FLY("entity.parrot.fly"),
|
||||
ENTITY_PARROT_HURT("entity.parrot.hurt"),
|
||||
ENTITY_PARROT_IMITATE_BLAZE("entity.parrot.imitate.blaze"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_PARROT_IMITATE_BOGGED("entity.parrot.imitate.bogged"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_PARROT_IMITATE_BREEZE("entity.parrot.imitate.breeze"),
|
||||
ENTITY_PARROT_IMITATE_CREEPER("entity.parrot.imitate.creeper"),
|
||||
ENTITY_PARROT_IMITATE_DROWNED("entity.parrot.imitate.drowned"),
|
||||
@ -1488,9 +1408,7 @@ public enum Sound implements Keyed {
|
||||
ENTITY_WARDEN_SONIC_CHARGE("entity.warden.sonic_charge"),
|
||||
ENTITY_WARDEN_STEP("entity.warden.step"),
|
||||
ENTITY_WARDEN_TENDRIL_CLICKS("entity.warden.tendril_clicks"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_WIND_CHARGE_THROW("entity.wind_charge.throw"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ENTITY_WIND_CHARGE_WIND_BURST("entity.wind_charge.wind_burst"),
|
||||
ENTITY_WITCH_AMBIENT("entity.witch.ambient"),
|
||||
ENTITY_WITCH_CELEBRATE("entity.witch.celebrate"),
|
||||
@ -1546,11 +1464,8 @@ public enum Sound implements Keyed {
|
||||
ENTITY_ZOMBIFIED_PIGLIN_ANGRY("entity.zombified_piglin.angry"),
|
||||
ENTITY_ZOMBIFIED_PIGLIN_DEATH("entity.zombified_piglin.death"),
|
||||
ENTITY_ZOMBIFIED_PIGLIN_HURT("entity.zombified_piglin.hurt"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
EVENT_MOB_EFFECT_BAD_OMEN("event.mob_effect.bad_omen"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
EVENT_MOB_EFFECT_RAID_OMEN("event.mob_effect.raid_omen"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
EVENT_MOB_EFFECT_TRIAL_OMEN("event.mob_effect.trial_omen"),
|
||||
EVENT_RAID_HORN("event.raid.horn"),
|
||||
INTENTIONALLY_EMPTY("intentionally_empty"),
|
||||
@ -1623,14 +1538,10 @@ public enum Sound implements Keyed {
|
||||
ITEM_HONEY_BOTTLE_DRINK("item.honey_bottle.drink"),
|
||||
ITEM_INK_SAC_USE("item.ink_sac.use"),
|
||||
ITEM_LODESTONE_COMPASS_LOCK("item.lodestone_compass.lock"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ITEM_MACE_SMASH_AIR("item.mace.smash_air"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ITEM_MACE_SMASH_GROUND("item.mace.smash_ground"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ITEM_MACE_SMASH_GROUND_HEAVY("item.mace.smash_ground_heavy"),
|
||||
ITEM_NETHER_WART_PLANT("item.nether_wart.plant"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ITEM_OMINOUS_BOTTLE_DISPOSE("item.ominous_bottle.dispose"),
|
||||
ITEM_SHIELD_BLOCK("item.shield.block"),
|
||||
ITEM_SHIELD_BREAK("item.shield.break"),
|
||||
@ -1646,13 +1557,9 @@ public enum Sound implements Keyed {
|
||||
ITEM_TRIDENT_RIPTIDE_3("item.trident.riptide_3"),
|
||||
ITEM_TRIDENT_THROW("item.trident.throw"),
|
||||
ITEM_TRIDENT_THUNDER("item.trident.thunder"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ITEM_WOLF_ARMOR_BREAK("item.wolf_armor.break"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ITEM_WOLF_ARMOR_CRACK("item.wolf_armor.crack"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ITEM_WOLF_ARMOR_DAMAGE("item.wolf_armor.damage"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
ITEM_WOLF_ARMOR_REPAIR("item.wolf_armor.repair"),
|
||||
MUSIC_CREATIVE("music.creative"),
|
||||
MUSIC_CREDITS("music.credits"),
|
||||
@ -1662,11 +1569,14 @@ public enum Sound implements Keyed {
|
||||
MUSIC_DISC_BLOCKS("music_disc.blocks"),
|
||||
MUSIC_DISC_CAT("music_disc.cat"),
|
||||
MUSIC_DISC_CHIRP("music_disc.chirp"),
|
||||
MUSIC_DISC_CREATOR("music_disc.creator"),
|
||||
MUSIC_DISC_CREATOR_MUSIC_BOX("music_disc.creator_music_box"),
|
||||
MUSIC_DISC_FAR("music_disc.far"),
|
||||
MUSIC_DISC_MALL("music_disc.mall"),
|
||||
MUSIC_DISC_MELLOHI("music_disc.mellohi"),
|
||||
MUSIC_DISC_OTHERSIDE("music_disc.otherside"),
|
||||
MUSIC_DISC_PIGSTEP("music_disc.pigstep"),
|
||||
MUSIC_DISC_PRECIPICE("music_disc.precipice"),
|
||||
MUSIC_DISC_RELIC("music_disc.relic"),
|
||||
MUSIC_DISC_STAL("music_disc.stal"),
|
||||
MUSIC_DISC_STRAD("music_disc.strad"),
|
||||
|
@ -58,6 +58,10 @@ public interface Tag<T extends Keyed> extends Keyed {
|
||||
* Vanilla block tag representing all wooden doors.
|
||||
*/
|
||||
Tag<Material> WOODEN_DOORS = Bukkit.getTag(REGISTRY_BLOCKS, NamespacedKey.minecraft("wooden_doors"), Material.class);
|
||||
/**
|
||||
* Vanilla block tag representing all doors which can be opened by mobs.
|
||||
*/
|
||||
Tag<Material> MOB_INTERACTABLE_DOORS = Bukkit.getTag(REGISTRY_BLOCKS, NamespacedKey.minecraft("mob_interactable_doors"), Material.class);
|
||||
/**
|
||||
* Vanilla block tag representing all wooden stairs.
|
||||
*/
|
||||
@ -771,6 +775,10 @@ public interface Tag<T extends Keyed> extends Keyed {
|
||||
* Vanilla block tag representing solid blocks which do not block hopper operation.
|
||||
*/
|
||||
Tag<Material> DOES_NOT_BLOCK_HOPPERS = Bukkit.getTag(REGISTRY_BLOCKS, NamespacedKey.minecraft("does_not_block_hoppers"), Material.class);
|
||||
/**
|
||||
* Vanilla block tag representing all blocks that resemble air.
|
||||
*/
|
||||
Tag<Material> AIR = Bukkit.getTag(REGISTRY_BLOCKS, NamespacedKey.minecraft("air"), Material.class);
|
||||
/**
|
||||
* Key for the built in item registry.
|
||||
*/
|
||||
@ -933,10 +941,6 @@ public interface Tag<T extends Keyed> extends Keyed {
|
||||
* Vanilla item tag representing all fish items.
|
||||
*/
|
||||
Tag<Material> ITEMS_FISHES = Bukkit.getTag(REGISTRY_ITEMS, NamespacedKey.minecraft("fishes"), Material.class);
|
||||
/**
|
||||
* Vanilla item tag representing all music disc items.
|
||||
*/
|
||||
Tag<Material> ITEMS_MUSIC_DISCS = Bukkit.getTag(REGISTRY_ITEMS, NamespacedKey.minecraft("music_discs"), Material.class);
|
||||
/**
|
||||
* Vanilla item tag representing all music disc items dropped by creepers.
|
||||
*/
|
||||
|
@ -83,6 +83,26 @@ public enum Attribute implements Keyed, Translatable {
|
||||
* Strength with which an Entity will jump.
|
||||
*/
|
||||
GENERIC_JUMP_STRENGTH("generic.jump_strength"),
|
||||
/**
|
||||
* How long an entity remains burning after ingition.
|
||||
*/
|
||||
GENERIC_BURNING_TIME("generic.burning_time"),
|
||||
/**
|
||||
* Resistance to knockback from explosions.
|
||||
*/
|
||||
GENERIC_EXPLOSION_KNOCKBACK_RESISTANCE("generic.explosion_knockback_resistance"),
|
||||
/**
|
||||
* Movement speed through difficult terrain.
|
||||
*/
|
||||
GENERIC_MOVEMENT_EFFICIENCY("generic.movement_efficiency"),
|
||||
/**
|
||||
* Oxygen use underwater.
|
||||
*/
|
||||
GENERIC_OXYGEN_BONUS("generic.oxygen_bonus"),
|
||||
/**
|
||||
* Movement speed through water.
|
||||
*/
|
||||
GENERIC_WATER_MOVEMENT_EFFICIENCY("generic.water_movement_efficiency"),
|
||||
/**
|
||||
* The block reach distance of a Player.
|
||||
*/
|
||||
@ -95,6 +115,22 @@ public enum Attribute implements Keyed, Translatable {
|
||||
* Block break speed of a Player.
|
||||
*/
|
||||
PLAYER_BLOCK_BREAK_SPEED("player.block_break_speed"),
|
||||
/**
|
||||
* Mining speed for correct tools.
|
||||
*/
|
||||
PLAYER_MINING_EFFICIENCY("player.mining_efficiency"),
|
||||
/**
|
||||
* Sneaking speed.
|
||||
*/
|
||||
PLAYER_SNEAKING_SPEED("player.sneaking_speed"),
|
||||
/**
|
||||
* Underwater mining speed.
|
||||
*/
|
||||
PLAYER_SUBMERGED_MINING_SPEED("player.submerged_mining_speed"),
|
||||
/**
|
||||
* Sweeping damage.
|
||||
*/
|
||||
PLAYER_SWEEPING_DAMAGE_RATIO("player.sweeping_damage_ratio"),
|
||||
/**
|
||||
* Chance of a zombie to spawn reinforcements.
|
||||
*/
|
||||
|
@ -6,6 +6,8 @@ import java.util.Locale;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
import java.util.UUID;
|
||||
import org.bukkit.Keyed;
|
||||
import org.bukkit.NamespacedKey;
|
||||
import org.bukkit.configuration.serialization.ConfigurationSerializable;
|
||||
import org.bukkit.inventory.EquipmentSlot;
|
||||
import org.bukkit.inventory.EquipmentSlotGroup;
|
||||
@ -16,33 +18,38 @@ import org.jetbrains.annotations.Nullable;
|
||||
/**
|
||||
* Concrete implementation of an attribute modifier.
|
||||
*/
|
||||
public class AttributeModifier implements ConfigurationSerializable {
|
||||
public class AttributeModifier implements ConfigurationSerializable, Keyed {
|
||||
|
||||
private final UUID uuid;
|
||||
private final String name;
|
||||
private final NamespacedKey key;
|
||||
private final double amount;
|
||||
private final Operation operation;
|
||||
private final EquipmentSlotGroup slot;
|
||||
|
||||
@Deprecated
|
||||
public AttributeModifier(@NotNull String name, double amount, @NotNull Operation operation) {
|
||||
this(UUID.randomUUID(), name, amount, operation);
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
public AttributeModifier(@NotNull UUID uuid, @NotNull String name, double amount, @NotNull Operation operation) {
|
||||
this(uuid, name, amount, operation, (EquipmentSlot) null);
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
public AttributeModifier(@NotNull UUID uuid, @NotNull String name, double amount, @NotNull Operation operation, @Nullable EquipmentSlot slot) {
|
||||
this(uuid, name, amount, operation, (slot) == null ? EquipmentSlotGroup.ANY : slot.getGroup());
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
public AttributeModifier(@NotNull UUID uuid, @NotNull String name, double amount, @NotNull Operation operation, @NotNull EquipmentSlotGroup slot) {
|
||||
Preconditions.checkArgument(uuid != null, "UUID cannot be null");
|
||||
Preconditions.checkArgument(name != null, "Name cannot be null");
|
||||
this(NamespacedKey.fromString(uuid.toString()), amount, operation, slot);
|
||||
}
|
||||
|
||||
public AttributeModifier(@NotNull NamespacedKey key, double amount, @NotNull Operation operation, @NotNull EquipmentSlotGroup slot) {
|
||||
Preconditions.checkArgument(key != null, "Key cannot be null");
|
||||
Preconditions.checkArgument(operation != null, "Operation cannot be null");
|
||||
Preconditions.checkArgument(slot != null, "EquipmentSlotGroup cannot be null");
|
||||
this.uuid = uuid;
|
||||
this.name = name;
|
||||
this.key = key;
|
||||
this.amount = amount;
|
||||
this.operation = operation;
|
||||
this.slot = slot;
|
||||
@ -52,10 +59,19 @@ public class AttributeModifier implements ConfigurationSerializable {
|
||||
* Get the unique ID for this modifier.
|
||||
*
|
||||
* @return unique id
|
||||
* @see #getKey()
|
||||
* @deprecated attributes are now identified by keys
|
||||
*/
|
||||
@NotNull
|
||||
@Deprecated
|
||||
public UUID getUniqueId() {
|
||||
return uuid;
|
||||
return UUID.fromString(getKey().toString());
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public NamespacedKey getKey() {
|
||||
return key;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -65,7 +81,7 @@ public class AttributeModifier implements ConfigurationSerializable {
|
||||
*/
|
||||
@NotNull
|
||||
public String getName() {
|
||||
return name;
|
||||
return key.getKey();
|
||||
}
|
||||
|
||||
/**
|
||||
@ -115,8 +131,7 @@ public class AttributeModifier implements ConfigurationSerializable {
|
||||
@Override
|
||||
public Map<String, Object> serialize() {
|
||||
Map<String, Object> data = new HashMap<String, Object>();
|
||||
data.put("uuid", uuid.toString());
|
||||
data.put("name", name);
|
||||
data.put("key", key.toString());
|
||||
data.put("operation", operation.ordinal());
|
||||
data.put("amount", amount);
|
||||
if (slot != null && slot != EquipmentSlotGroup.ANY) {
|
||||
@ -132,14 +147,13 @@ public class AttributeModifier implements ConfigurationSerializable {
|
||||
}
|
||||
AttributeModifier mod = (AttributeModifier) other;
|
||||
boolean slots = (this.slot != null ? (this.slot == mod.slot) : mod.slot == null);
|
||||
return this.uuid.equals(mod.uuid) && this.name.equals(mod.name) && this.amount == mod.amount && this.operation == mod.operation && slots;
|
||||
return this.key.equals(mod.key) && this.amount == mod.amount && this.operation == mod.operation && slots;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
int hash = 5;
|
||||
hash = 17 * hash + Objects.hashCode(this.uuid);
|
||||
hash = 17 * hash + Objects.hashCode(this.name);
|
||||
hash = 17 * hash + Objects.hashCode(this.key);
|
||||
hash = 17 * hash + (int) (Double.doubleToLongBits(this.amount) ^ (Double.doubleToLongBits(this.amount) >>> 32));
|
||||
hash = 17 * hash + Objects.hashCode(this.operation);
|
||||
hash = 17 * hash + Objects.hashCode(this.slot);
|
||||
@ -149,8 +163,7 @@ public class AttributeModifier implements ConfigurationSerializable {
|
||||
@Override
|
||||
public String toString() {
|
||||
return "AttributeModifier{"
|
||||
+ "uuid=" + this.uuid.toString()
|
||||
+ ", name=" + this.name
|
||||
+ "key=" + this.key.toString()
|
||||
+ ", operation=" + this.operation.name()
|
||||
+ ", amount=" + this.amount
|
||||
+ ", slot=" + (this.slot != null ? this.slot.toString() : "")
|
||||
@ -159,6 +172,12 @@ public class AttributeModifier implements ConfigurationSerializable {
|
||||
|
||||
@NotNull
|
||||
public static AttributeModifier deserialize(@NotNull Map<String, Object> args) {
|
||||
NamespacedKey key;
|
||||
if (args.containsKey("uuid")) {
|
||||
key = NamespacedKey.fromString((String) args.get("uuid"));
|
||||
} else {
|
||||
key = NamespacedKey.fromString((String) args.get("key"));
|
||||
}
|
||||
if (args.containsKey("slot")) {
|
||||
EquipmentSlotGroup slotGroup = EquipmentSlotGroup.getByName(args.get("slot").toString().toLowerCase(Locale.ROOT));
|
||||
if (slotGroup == null) {
|
||||
@ -170,9 +189,9 @@ public class AttributeModifier implements ConfigurationSerializable {
|
||||
}
|
||||
}
|
||||
|
||||
return new AttributeModifier(UUID.fromString((String) args.get("uuid")), (String) args.get("name"), NumberConversions.toDouble(args.get("amount")), Operation.values()[NumberConversions.toInt(args.get("operation"))], slotGroup);
|
||||
return new AttributeModifier(key, NumberConversions.toDouble(args.get("amount")), Operation.values()[NumberConversions.toInt(args.get("operation"))], slotGroup);
|
||||
}
|
||||
return new AttributeModifier(UUID.fromString((String) args.get("uuid")), (String) args.get("name"), NumberConversions.toDouble(args.get("amount")), Operation.values()[NumberConversions.toInt(args.get("operation"))]);
|
||||
return new AttributeModifier(key, NumberConversions.toDouble(args.get("amount")), Operation.values()[NumberConversions.toInt(args.get("operation"))], EquipmentSlotGroup.ANY);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -4,8 +4,6 @@ import com.google.common.base.Preconditions;
|
||||
import java.util.function.Consumer;
|
||||
import org.bukkit.Keyed;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.bukkit.NamespacedKey;
|
||||
import org.bukkit.Registry;
|
||||
import org.bukkit.Translatable;
|
||||
@ -2877,68 +2875,42 @@ public interface BlockType extends Keyed, Translatable {
|
||||
/**
|
||||
* BlockData: {@link Slab}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Slab> TUFF_SLAB = getBlockType("tuff_slab");
|
||||
/**
|
||||
* BlockData: {@link Stairs}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Stairs> TUFF_STAIRS = getBlockType("tuff_stairs");
|
||||
/**
|
||||
* BlockData: {@link Wall}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Wall> TUFF_WALL = getBlockType("tuff_wall");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<BlockData> POLISHED_TUFF = getBlockType("polished_tuff");
|
||||
/**
|
||||
* BlockData: {@link Slab}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Slab> POLISHED_TUFF_SLAB = getBlockType("polished_tuff_slab");
|
||||
/**
|
||||
* BlockData: {@link Stairs}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Stairs> POLISHED_TUFF_STAIRS = getBlockType("polished_tuff_stairs");
|
||||
/**
|
||||
* BlockData: {@link Wall}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Wall> POLISHED_TUFF_WALL = getBlockType("polished_tuff_wall");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<BlockData> CHISELED_TUFF = getBlockType("chiseled_tuff");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<BlockData> TUFF_BRICKS = getBlockType("tuff_bricks");
|
||||
/**
|
||||
* BlockData: {@link Slab}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Slab> TUFF_BRICK_SLAB = getBlockType("tuff_brick_slab");
|
||||
/**
|
||||
* BlockData: {@link Stairs}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Stairs> TUFF_BRICK_STAIRS = getBlockType("tuff_brick_stairs");
|
||||
/**
|
||||
* BlockData: {@link Wall}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Wall> TUFF_BRICK_WALL = getBlockType("tuff_brick_wall");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<BlockData> CHISELED_TUFF_BRICKS = getBlockType("chiseled_tuff_bricks");
|
||||
BlockType.Typed<BlockData> CALCITE = getBlockType("calcite");
|
||||
BlockType.Typed<BlockData> TINTED_GLASS = getBlockType("tinted_glass");
|
||||
@ -2974,29 +2946,13 @@ public interface BlockType extends Keyed, Translatable {
|
||||
BlockType.Typed<BlockData> WEATHERED_CUT_COPPER = getBlockType("weathered_cut_copper");
|
||||
BlockType.Typed<BlockData> EXPOSED_CUT_COPPER = getBlockType("exposed_cut_copper");
|
||||
BlockType.Typed<BlockData> CUT_COPPER = getBlockType("cut_copper");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<BlockData> OXIDIZED_CHISELED_COPPER = getBlockType("oxidized_chiseled_copper");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<BlockData> WEATHERED_CHISELED_COPPER = getBlockType("weathered_chiseled_copper");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<BlockData> EXPOSED_CHISELED_COPPER = getBlockType("exposed_chiseled_copper");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<BlockData> CHISELED_COPPER = getBlockType("chiseled_copper");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<BlockData> WAXED_OXIDIZED_CHISELED_COPPER = getBlockType("waxed_oxidized_chiseled_copper");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<BlockData> WAXED_WEATHERED_CHISELED_COPPER = getBlockType("waxed_weathered_chiseled_copper");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<BlockData> WAXED_EXPOSED_CHISELED_COPPER = getBlockType("waxed_exposed_chiseled_copper");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<BlockData> WAXED_CHISELED_COPPER = getBlockType("waxed_chiseled_copper");
|
||||
/**
|
||||
* BlockData: {@link Stairs}
|
||||
@ -3073,194 +3029,130 @@ public interface BlockType extends Keyed, Translatable {
|
||||
/**
|
||||
* BlockData: {@link Door}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Door> COPPER_DOOR = getBlockType("copper_door");
|
||||
/**
|
||||
* BlockData: {@link Door}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Door> EXPOSED_COPPER_DOOR = getBlockType("exposed_copper_door");
|
||||
/**
|
||||
* BlockData: {@link Door}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Door> OXIDIZED_COPPER_DOOR = getBlockType("oxidized_copper_door");
|
||||
/**
|
||||
* BlockData: {@link Door}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Door> WEATHERED_COPPER_DOOR = getBlockType("weathered_copper_door");
|
||||
/**
|
||||
* BlockData: {@link Door}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Door> WAXED_COPPER_DOOR = getBlockType("waxed_copper_door");
|
||||
/**
|
||||
* BlockData: {@link Door}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Door> WAXED_EXPOSED_COPPER_DOOR = getBlockType("waxed_exposed_copper_door");
|
||||
/**
|
||||
* BlockData: {@link Door}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Door> WAXED_OXIDIZED_COPPER_DOOR = getBlockType("waxed_oxidized_copper_door");
|
||||
/**
|
||||
* BlockData: {@link Door}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Door> WAXED_WEATHERED_COPPER_DOOR = getBlockType("waxed_weathered_copper_door");
|
||||
/**
|
||||
* BlockData: {@link TrapDoor}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<TrapDoor> COPPER_TRAPDOOR = getBlockType("copper_trapdoor");
|
||||
/**
|
||||
* BlockData: {@link TrapDoor}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<TrapDoor> EXPOSED_COPPER_TRAPDOOR = getBlockType("exposed_copper_trapdoor");
|
||||
/**
|
||||
* BlockData: {@link TrapDoor}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<TrapDoor> OXIDIZED_COPPER_TRAPDOOR = getBlockType("oxidized_copper_trapdoor");
|
||||
/**
|
||||
* BlockData: {@link TrapDoor}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<TrapDoor> WEATHERED_COPPER_TRAPDOOR = getBlockType("weathered_copper_trapdoor");
|
||||
/**
|
||||
* BlockData: {@link TrapDoor}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<TrapDoor> WAXED_COPPER_TRAPDOOR = getBlockType("waxed_copper_trapdoor");
|
||||
/**
|
||||
* BlockData: {@link TrapDoor}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<TrapDoor> WAXED_EXPOSED_COPPER_TRAPDOOR = getBlockType("waxed_exposed_copper_trapdoor");
|
||||
/**
|
||||
* BlockData: {@link TrapDoor}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<TrapDoor> WAXED_OXIDIZED_COPPER_TRAPDOOR = getBlockType("waxed_oxidized_copper_trapdoor");
|
||||
/**
|
||||
* BlockData: {@link TrapDoor}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<TrapDoor> WAXED_WEATHERED_COPPER_TRAPDOOR = getBlockType("waxed_weathered_copper_trapdoor");
|
||||
/**
|
||||
* BlockData: {@link Waterlogged}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Waterlogged> COPPER_GRATE = getBlockType("copper_grate");
|
||||
/**
|
||||
* BlockData: {@link Waterlogged}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Waterlogged> EXPOSED_COPPER_GRATE = getBlockType("exposed_copper_grate");
|
||||
/**
|
||||
* BlockData: {@link Waterlogged}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Waterlogged> WEATHERED_COPPER_GRATE = getBlockType("weathered_copper_grate");
|
||||
/**
|
||||
* BlockData: {@link Waterlogged}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Waterlogged> OXIDIZED_COPPER_GRATE = getBlockType("oxidized_copper_grate");
|
||||
/**
|
||||
* BlockData: {@link Waterlogged}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Waterlogged> WAXED_COPPER_GRATE = getBlockType("waxed_copper_grate");
|
||||
/**
|
||||
* BlockData: {@link Waterlogged}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Waterlogged> WAXED_EXPOSED_COPPER_GRATE = getBlockType("waxed_exposed_copper_grate");
|
||||
/**
|
||||
* BlockData: {@link Waterlogged}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Waterlogged> WAXED_WEATHERED_COPPER_GRATE = getBlockType("waxed_weathered_copper_grate");
|
||||
/**
|
||||
* BlockData: {@link Waterlogged}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Waterlogged> WAXED_OXIDIZED_COPPER_GRATE = getBlockType("waxed_oxidized_copper_grate");
|
||||
/**
|
||||
* BlockData: {@link CopperBulb}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<CopperBulb> COPPER_BULB = getBlockType("copper_bulb");
|
||||
/**
|
||||
* BlockData: {@link CopperBulb}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<CopperBulb> EXPOSED_COPPER_BULB = getBlockType("exposed_copper_bulb");
|
||||
/**
|
||||
* BlockData: {@link CopperBulb}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<CopperBulb> WEATHERED_COPPER_BULB = getBlockType("weathered_copper_bulb");
|
||||
/**
|
||||
* BlockData: {@link CopperBulb}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<CopperBulb> OXIDIZED_COPPER_BULB = getBlockType("oxidized_copper_bulb");
|
||||
/**
|
||||
* BlockData: {@link CopperBulb}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<CopperBulb> WAXED_COPPER_BULB = getBlockType("waxed_copper_bulb");
|
||||
/**
|
||||
* BlockData: {@link CopperBulb}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<CopperBulb> WAXED_EXPOSED_COPPER_BULB = getBlockType("waxed_exposed_copper_bulb");
|
||||
/**
|
||||
* BlockData: {@link CopperBulb}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<CopperBulb> WAXED_WEATHERED_COPPER_BULB = getBlockType("waxed_weathered_copper_bulb");
|
||||
/**
|
||||
* BlockData: {@link CopperBulb}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<CopperBulb> WAXED_OXIDIZED_COPPER_BULB = getBlockType("waxed_oxidized_copper_bulb");
|
||||
/**
|
||||
* BlockData: {@link LightningRod}
|
||||
@ -3396,14 +3288,10 @@ public interface BlockType extends Keyed, Translatable {
|
||||
/**
|
||||
* BlockData: {@link Crafter}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<Crafter> CRAFTER = getBlockType("crafter");
|
||||
/**
|
||||
* BlockData: {@link TrialSpawner}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BlockType.Typed<TrialSpawner> TRIAL_SPAWNER = getBlockType("trial_spawner");
|
||||
|
||||
//</editor-fold>
|
||||
|
@ -1,7 +1,5 @@
|
||||
package org.bukkit.block;
|
||||
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.bukkit.loot.Lootable;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
|
||||
@ -9,7 +7,6 @@ import org.jetbrains.annotations.ApiStatus;
|
||||
* Represents a captured state of a crafter.
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
public interface Crafter extends Container, Lootable {
|
||||
|
||||
/**
|
||||
|
@ -1,13 +1,10 @@
|
||||
package org.bukkit.block;
|
||||
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
|
||||
/**
|
||||
* Represents a captured state of a trial spawner.
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
public interface TrialSpawner extends TileState {
|
||||
}
|
||||
|
@ -1,13 +1,10 @@
|
||||
package org.bukkit.block;
|
||||
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
|
||||
/**
|
||||
* Represents a captured state of a trial spawner.
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
public interface Vault extends TileState {
|
||||
}
|
||||
|
@ -3,8 +3,6 @@ package org.bukkit.block.banner;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import org.bukkit.Keyed;
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.bukkit.NamespacedKey;
|
||||
import org.bukkit.Registry;
|
||||
import org.jetbrains.annotations.Contract;
|
||||
@ -53,9 +51,7 @@ public enum PatternType implements Keyed {
|
||||
MOJANG("moj", "mojang"),
|
||||
GLOBE("glb", "globe"),
|
||||
PIGLIN("pig", "piglin"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
FLOW("flw", "flow"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
GUSTER("gus", "guster");
|
||||
|
||||
private final String identifier;
|
||||
|
@ -1,12 +1,7 @@
|
||||
package org.bukkit.block.data.type;
|
||||
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.bukkit.block.data.Lightable;
|
||||
import org.bukkit.block.data.Powerable;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
public interface CopperBulb extends Lightable, Powerable {
|
||||
}
|
||||
|
@ -1,10 +1,7 @@
|
||||
package org.bukkit.block.data.type;
|
||||
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.bukkit.block.data.BlockData;
|
||||
import org.bukkit.block.data.Powerable;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
@ -15,8 +12,6 @@ import org.jetbrains.annotations.NotNull;
|
||||
* <br>
|
||||
* 'crafting' is whether crafter's mouth is open and top is glowing.
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
public interface Crafter extends BlockData {
|
||||
|
||||
/**
|
||||
|
@ -1,9 +1,6 @@
|
||||
package org.bukkit.block.data.type;
|
||||
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.bukkit.block.data.BlockData;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
@ -11,8 +8,6 @@ import org.jetbrains.annotations.NotNull;
|
||||
* <br>
|
||||
* 'ominous' indicates if the block has ominous effects.
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
public interface TrialSpawner extends BlockData {
|
||||
|
||||
/**
|
||||
|
@ -1,9 +1,6 @@
|
||||
package org.bukkit.block.data.type;
|
||||
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.bukkit.block.data.Directional;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
@ -11,8 +8,6 @@ import org.jetbrains.annotations.NotNull;
|
||||
* <br>
|
||||
* 'ominous' indicates if the block has ominous effects.
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
public interface Vault extends Directional {
|
||||
|
||||
/**
|
||||
|
@ -1,7 +1,6 @@
|
||||
package org.bukkit.command;
|
||||
|
||||
import java.net.SocketAddress;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public interface RemoteConsoleCommandSender extends CommandSender {
|
||||
@ -12,6 +11,5 @@ public interface RemoteConsoleCommandSender extends CommandSender {
|
||||
* @return the remote sender's address
|
||||
*/
|
||||
@NotNull
|
||||
@ApiStatus.Experimental
|
||||
public SocketAddress getAddress();
|
||||
}
|
||||
|
@ -21,6 +21,7 @@ import org.jetbrains.annotations.NotNull;
|
||||
public interface DamageType extends Keyed, Translatable {
|
||||
|
||||
public static final DamageType IN_FIRE = getDamageType("in_fire");
|
||||
public static final DamageType CAMPFIRE = getDamageType("campfire");
|
||||
public static final DamageType LIGHTNING_BOLT = getDamageType("lightning_bolt");
|
||||
public static final DamageType ON_FIRE = getDamageType("on_fire");
|
||||
public static final DamageType LAVA = getDamageType("lava");
|
||||
|
@ -4,8 +4,6 @@ import com.google.common.base.Preconditions;
|
||||
import com.google.common.collect.Lists;
|
||||
import java.util.Locale;
|
||||
import org.bukkit.Keyed;
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.bukkit.NamespacedKey;
|
||||
import org.bukkit.Registry;
|
||||
import org.bukkit.Translatable;
|
||||
@ -198,19 +196,16 @@ public abstract class Enchantment implements Keyed, Translatable {
|
||||
/**
|
||||
* Increases fall damage of maces
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
public static final Enchantment DENSITY = getEnchantment("density");
|
||||
|
||||
/**
|
||||
* Reduces armor effectiveness against maces
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
public static final Enchantment BREACH = getEnchantment("breach");
|
||||
|
||||
/**
|
||||
* Emits wind burst upon hitting enemy
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
public static final Enchantment WIND_BURST = getEnchantment("wind_burst");
|
||||
|
||||
/**
|
||||
@ -284,7 +279,9 @@ public abstract class Enchantment implements Keyed, Translatable {
|
||||
* fishing.
|
||||
*
|
||||
* @return true if the enchantment is a treasure enchantment
|
||||
* @deprecated enchantment types are now managed by tags
|
||||
*/
|
||||
@Deprecated
|
||||
public abstract boolean isTreasure();
|
||||
|
||||
/**
|
||||
|
@ -17,14 +17,20 @@ public interface AbstractArrow extends Projectile {
|
||||
* of the bow that shot it.
|
||||
*
|
||||
* @return the knockback strength value
|
||||
* @see #getWeapon()
|
||||
* @deprecated a function of the firing weapon
|
||||
*/
|
||||
@Deprecated
|
||||
public int getKnockbackStrength();
|
||||
|
||||
/**
|
||||
* Sets the knockback strength for an arrow.
|
||||
*
|
||||
* @param knockbackStrength the knockback strength value
|
||||
* @see #setWeapon(org.bukkit.inventory.ItemStack)
|
||||
* @deprecated a function of the firing weapon
|
||||
*/
|
||||
@Deprecated
|
||||
public void setKnockbackStrength(int knockbackStrength);
|
||||
|
||||
/**
|
||||
@ -123,7 +129,10 @@ public interface AbstractArrow extends Projectile {
|
||||
* Sets if this arrow was shot from a crossbow.
|
||||
*
|
||||
* @param shotFromCrossbow if shot from a crossbow
|
||||
* @see #setWeapon(org.bukkit.inventory.ItemStack)
|
||||
* @deprecated a function of the firing weapon instead
|
||||
*/
|
||||
@Deprecated
|
||||
public void setShotFromCrossbow(boolean shotFromCrossbow);
|
||||
|
||||
/**
|
||||
@ -143,6 +152,23 @@ public interface AbstractArrow extends Projectile {
|
||||
@ApiStatus.Experimental
|
||||
public void setItem(@NotNull ItemStack item);
|
||||
|
||||
/**
|
||||
* Gets the ItemStack which fired this arrow.
|
||||
*
|
||||
* @return The firing ItemStack
|
||||
*/
|
||||
@NotNull
|
||||
@ApiStatus.Experimental
|
||||
public ItemStack getWeapon();
|
||||
|
||||
/**
|
||||
* Sets the ItemStack which fired this arrow.
|
||||
*
|
||||
* @param item The firing ItemStack
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
public void setWeapon(@NotNull ItemStack item);
|
||||
|
||||
/**
|
||||
* Represents the pickup status of this arrow.
|
||||
*/
|
||||
|
@ -1,13 +1,10 @@
|
||||
package org.bukkit.entity;
|
||||
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
|
||||
/**
|
||||
* Represents a Wind Charge.
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
public interface AbstractWindCharge extends Fireball {
|
||||
|
||||
|
@ -1,13 +1,10 @@
|
||||
package org.bukkit.entity;
|
||||
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
|
||||
/**
|
||||
* Represents a Bogged Skeleton.
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
public interface Bogged extends AbstractSkeleton {
|
||||
}
|
||||
|
@ -1,13 +1,10 @@
|
||||
package org.bukkit.entity;
|
||||
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
|
||||
/**
|
||||
* Represents a Breeze. Whoosh!
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
public interface Breeze extends Monster {
|
||||
}
|
||||
|
@ -1,13 +1,10 @@
|
||||
package org.bukkit.entity;
|
||||
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
|
||||
/**
|
||||
* Represents a Wind Charge.
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
public interface BreezeWindCharge extends AbstractWindCharge {
|
||||
|
||||
|
@ -7,8 +7,6 @@ import java.util.Map;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Keyed;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.bukkit.NamespacedKey;
|
||||
import org.bukkit.Translatable;
|
||||
import org.bukkit.World;
|
||||
@ -21,7 +19,6 @@ import org.bukkit.entity.minecart.SpawnerMinecart;
|
||||
import org.bukkit.entity.minecart.StorageMinecart;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.potion.PotionEffectType;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.Contract;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
@ -288,21 +285,11 @@ public enum EntityType implements Keyed, Translatable {
|
||||
ITEM_DISPLAY("item_display", ItemDisplay.class, -1),
|
||||
SNIFFER("sniffer", Sniffer.class, -1),
|
||||
TEXT_DISPLAY("text_display", TextDisplay.class, -1),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BREEZE("breeze", Breeze.class, -1),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
WIND_CHARGE("wind_charge", WindCharge.class, -1),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BREEZE_WIND_CHARGE("breeze_wind_charge", BreezeWindCharge.class, -1),
|
||||
ARMADILLO("armadillo", Armadillo.class, -1),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
BOGGED("bogged", Bogged.class, -1),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
OMINOUS_ITEM_SPAWNER("ominous_item_spawner", OminousItemSpawner.class, -1),
|
||||
/**
|
||||
* A fishing line and bobber.
|
||||
|
@ -1,7 +1,5 @@
|
||||
package org.bukkit.entity;
|
||||
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
@ -9,7 +7,6 @@ import org.jetbrains.annotations.Nullable;
|
||||
/**
|
||||
* Represents an ominous item spawner.
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
public interface OminousItemSpawner extends Entity {
|
||||
|
||||
|
@ -21,6 +21,7 @@ import org.bukkit.Note;
|
||||
import org.bukkit.OfflinePlayer;
|
||||
import org.bukkit.Particle;
|
||||
import org.bukkit.Server;
|
||||
import org.bukkit.ServerLinks;
|
||||
import org.bukkit.Sound;
|
||||
import org.bukkit.SoundCategory;
|
||||
import org.bukkit.WeatherType;
|
||||
@ -184,7 +185,6 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
|
||||
* null value.
|
||||
*/
|
||||
@NotNull
|
||||
@ApiStatus.Experimental
|
||||
CompletableFuture<byte[]> retrieveCookie(@NotNull NamespacedKey key);
|
||||
|
||||
/**
|
||||
@ -194,7 +194,6 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
|
||||
* @param value the data to store in the cookie
|
||||
* @throws IllegalStateException if a cookie cannot be stored at this time
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
void storeCookie(@NotNull NamespacedKey key, @NotNull byte[] value);
|
||||
|
||||
/**
|
||||
@ -206,7 +205,6 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
|
||||
* @throws IllegalStateException if a transfer cannot take place at this
|
||||
* time
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
void transfer(@NotNull String host, int port);
|
||||
|
||||
/**
|
||||
@ -1015,6 +1013,13 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
|
||||
*/
|
||||
public void sendHurtAnimation(float yaw);
|
||||
|
||||
/**
|
||||
* Sends the given server links to the player.
|
||||
*
|
||||
* @param links links to send
|
||||
*/
|
||||
public void sendLinks(@NotNull ServerLinks links);
|
||||
|
||||
/**
|
||||
* Add custom chat completion suggestions shown to the player while typing a
|
||||
* message.
|
||||
|
@ -1,13 +1,10 @@
|
||||
package org.bukkit.entity;
|
||||
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
|
||||
/**
|
||||
* Represents a Wind Charge.
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
public interface WindCharge extends AbstractWindCharge {
|
||||
|
||||
|
@ -4,7 +4,6 @@ import org.bukkit.block.Block;
|
||||
import org.bukkit.event.HandlerList;
|
||||
import org.bukkit.event.inventory.FurnaceStartSmeltEvent;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
@ -14,10 +13,7 @@ import org.jetbrains.annotations.NotNull;
|
||||
* <li>A Brewing-Stand starts brewing {@link BrewingStartEvent}</li>
|
||||
* <li>A Campfire starts cooking {@link CampfireStartEvent}</li>
|
||||
* </ul>
|
||||
*
|
||||
* @apiNote draft API
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
public class InventoryBlockStartEvent extends BlockEvent {
|
||||
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
|
@ -197,6 +197,10 @@ public class CreatureSpawnEvent extends EntitySpawnEvent {
|
||||
* When a creature is spawned by the "/summon" command
|
||||
*/
|
||||
COMMAND,
|
||||
/**
|
||||
* When a creature is spawned by an enchantment
|
||||
*/
|
||||
ENCHANTMENT,
|
||||
/**
|
||||
* When a creature is spawned by plugins
|
||||
*/
|
||||
|
@ -11,7 +11,12 @@ import org.jetbrains.annotations.Nullable;
|
||||
public class EntityCombustByBlockEvent extends EntityCombustEvent {
|
||||
private final Block combuster;
|
||||
|
||||
@Deprecated
|
||||
public EntityCombustByBlockEvent(@Nullable final Block combuster, @NotNull final Entity combustee, final int duration) {
|
||||
this(combuster, combustee, (float) duration);
|
||||
}
|
||||
|
||||
public EntityCombustByBlockEvent(@Nullable final Block combuster, @NotNull final Entity combustee, final float duration) {
|
||||
super(combustee, duration);
|
||||
this.combuster = combuster;
|
||||
}
|
||||
|
@ -9,7 +9,12 @@ import org.jetbrains.annotations.NotNull;
|
||||
public class EntityCombustByEntityEvent extends EntityCombustEvent {
|
||||
private final Entity combuster;
|
||||
|
||||
@Deprecated
|
||||
public EntityCombustByEntityEvent(@NotNull final Entity combuster, @NotNull final Entity combustee, final int duration) {
|
||||
this(combuster, combustee, (float) duration);
|
||||
}
|
||||
|
||||
public EntityCombustByEntityEvent(@NotNull final Entity combuster, @NotNull final Entity combustee, final float duration) {
|
||||
super(combustee, duration);
|
||||
this.combuster = combuster;
|
||||
}
|
||||
|
@ -12,10 +12,15 @@ import org.jetbrains.annotations.NotNull;
|
||||
*/
|
||||
public class EntityCombustEvent extends EntityEvent implements Cancellable {
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
private int duration;
|
||||
private float duration;
|
||||
private boolean cancel;
|
||||
|
||||
@Deprecated
|
||||
public EntityCombustEvent(@NotNull final Entity combustee, final int duration) {
|
||||
this(combustee, (float) duration);
|
||||
}
|
||||
|
||||
public EntityCombustEvent(@NotNull final Entity combustee, final float duration) {
|
||||
super(combustee);
|
||||
this.duration = duration;
|
||||
this.cancel = false;
|
||||
@ -35,7 +40,7 @@ public class EntityCombustEvent extends EntityEvent implements Cancellable {
|
||||
* @return the amount of time (in seconds) the combustee should be alight
|
||||
* for
|
||||
*/
|
||||
public int getDuration() {
|
||||
public float getDuration() {
|
||||
return duration;
|
||||
}
|
||||
|
||||
@ -47,6 +52,21 @@ public class EntityCombustEvent extends EntityEvent implements Cancellable {
|
||||
*
|
||||
* @param duration the time in seconds to be alight for.
|
||||
*/
|
||||
public void setDuration(float duration) {
|
||||
this.duration = duration;
|
||||
}
|
||||
|
||||
/**
|
||||
* The number of seconds the combustee should be alight for.
|
||||
* <p>
|
||||
* This value will only ever increase the combustion time, not decrease
|
||||
* existing combustion times.
|
||||
*
|
||||
* @param duration the time in seconds to be alight for.
|
||||
* @see #setDuration(float)
|
||||
* @deprecated duration is now a float
|
||||
*/
|
||||
@Deprecated(forRemoval = true)
|
||||
public void setDuration(int duration) {
|
||||
this.duration = duration;
|
||||
}
|
||||
|
@ -1,7 +1,5 @@
|
||||
package org.bukkit.event.inventory;
|
||||
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.bukkit.inventory.InventoryHolder;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@ -148,7 +146,6 @@ public enum InventoryType {
|
||||
/**
|
||||
* A crafter inventory, with 9 CRAFTING slots.
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
CRAFTER(9, "Crafter"),
|
||||
/**
|
||||
|
@ -2,13 +2,11 @@ package org.bukkit.event.player;
|
||||
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.HandlerList;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a player's experience cooldown changes.
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
public class PlayerExpCooldownChangeEvent extends PlayerEvent {
|
||||
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
|
@ -0,0 +1,43 @@
|
||||
package org.bukkit.event.player;
|
||||
|
||||
import org.bukkit.ServerLinks;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.HandlerList;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* This event is called when the list of links is sent to the player.
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
public class PlayerLinksSendEvent extends PlayerEvent {
|
||||
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
private final ServerLinks links;
|
||||
|
||||
public PlayerLinksSendEvent(@NotNull final Player player, @NotNull final ServerLinks links) {
|
||||
super(player);
|
||||
this.links = links;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the links to be sent, for modification.
|
||||
*
|
||||
* @return the links
|
||||
*/
|
||||
@NotNull
|
||||
public ServerLinks getLinks() {
|
||||
return links;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public HandlerList getHandlers() {
|
||||
return handlers;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public static HandlerList getHandlerList() {
|
||||
return handlers;
|
||||
}
|
||||
}
|
@ -5,13 +5,11 @@ import org.bukkit.block.sign.Side;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.Cancellable;
|
||||
import org.bukkit.event.HandlerList;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* This event is fired when a sign is opened by the player.
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
public class PlayerSignOpenEvent extends PlayerEvent implements Cancellable {
|
||||
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
@ -78,7 +76,6 @@ public class PlayerSignOpenEvent extends PlayerEvent implements Cancellable {
|
||||
return handlers;
|
||||
}
|
||||
|
||||
@ApiStatus.Experimental
|
||||
public enum Cause {
|
||||
|
||||
/**
|
||||
|
@ -5,15 +5,12 @@ import org.bukkit.Location;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.Cancellable;
|
||||
import org.bukkit.event.HandlerList;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* This event is fired when the spawn point of the player is changed.
|
||||
* @apiNote draft API
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
public class PlayerSpawnChangeEvent extends PlayerEvent implements Cancellable {
|
||||
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
|
@ -92,6 +92,10 @@ public class LightningStrikeEvent extends WeatherEvent implements Cancellable {
|
||||
* Triggered by weather.
|
||||
*/
|
||||
WEATHER,
|
||||
/**
|
||||
* Triggered by an enchantment but not a trident.
|
||||
*/
|
||||
ENCHANTMENT,
|
||||
/**
|
||||
* Unknown trigger.
|
||||
*/
|
||||
|
@ -1,8 +1,6 @@
|
||||
package org.bukkit.generator.structure;
|
||||
|
||||
import org.bukkit.Keyed;
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.bukkit.NamespacedKey;
|
||||
import org.bukkit.Registry;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@ -49,7 +47,6 @@ public abstract class Structure implements Keyed {
|
||||
public static final Structure RUINED_PORTAL_NETHER = getStructure("ruined_portal_nether");
|
||||
public static final Structure ANCIENT_CITY = getStructure("ancient_city");
|
||||
public static final Structure TRAIL_RUINS = getStructure("trail_ruins");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
public static final Structure TRIAL_CHAMBERS = getStructure("trial_chambers");
|
||||
|
||||
private static Structure getStructure(String name) {
|
||||
|
@ -1,12 +1,9 @@
|
||||
package org.bukkit.inventory;
|
||||
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
|
||||
/**
|
||||
* Interface to the inventory of a Crafter.
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
public interface CrafterInventory extends Inventory { }
|
||||
|
@ -5,8 +5,6 @@ import com.google.common.collect.Multimap;
|
||||
import java.util.function.Consumer;
|
||||
import org.bukkit.Keyed;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.bukkit.NamespacedKey;
|
||||
import org.bukkit.Registry;
|
||||
import org.bukkit.Translatable;
|
||||
@ -107,44 +105,18 @@ public interface ItemType extends Keyed, Translatable {
|
||||
ItemType.Typed<ItemMeta> POLISHED_DEEPSLATE = getItemType("polished_deepslate");
|
||||
ItemType.Typed<ItemMeta> CALCITE = getItemType("calcite");
|
||||
ItemType.Typed<ItemMeta> TUFF = getItemType("tuff");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> TUFF_SLAB = getItemType("tuff_slab");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> TUFF_STAIRS = getItemType("tuff_stairs");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> TUFF_WALL = getItemType("tuff_wall");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> CHISELED_TUFF = getItemType("chiseled_tuff");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> POLISHED_TUFF = getItemType("polished_tuff");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> POLISHED_TUFF_SLAB = getItemType("polished_tuff_slab");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> POLISHED_TUFF_STAIRS = getItemType("polished_tuff_stairs");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> POLISHED_TUFF_WALL = getItemType("polished_tuff_wall");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> TUFF_BRICKS = getItemType("tuff_bricks");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> TUFF_BRICK_SLAB = getItemType("tuff_brick_slab");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> TUFF_BRICK_STAIRS = getItemType("tuff_brick_stairs");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> TUFF_BRICK_WALL = getItemType("tuff_brick_wall");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> CHISELED_TUFF_BRICKS = getItemType("chiseled_tuff_bricks");
|
||||
ItemType.Typed<ItemMeta> DRIPSTONE_BLOCK = getItemType("dripstone_block");
|
||||
ItemType.Typed<ItemMeta> GRASS_BLOCK = getItemType("grass_block");
|
||||
@ -211,8 +183,6 @@ public interface ItemType extends Keyed, Translatable {
|
||||
ItemType.Typed<ItemMeta> RAW_IRON_BLOCK = getItemType("raw_iron_block");
|
||||
ItemType.Typed<ItemMeta> RAW_COPPER_BLOCK = getItemType("raw_copper_block");
|
||||
ItemType.Typed<ItemMeta> RAW_GOLD_BLOCK = getItemType("raw_gold_block");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> HEAVY_CORE = getItemType("heavy_core");
|
||||
ItemType.Typed<ItemMeta> AMETHYST_BLOCK = getItemType("amethyst_block");
|
||||
ItemType.Typed<ItemMeta> BUDDING_AMETHYST = getItemType("budding_amethyst");
|
||||
@ -224,17 +194,9 @@ public interface ItemType extends Keyed, Translatable {
|
||||
ItemType.Typed<ItemMeta> EXPOSED_COPPER = getItemType("exposed_copper");
|
||||
ItemType.Typed<ItemMeta> WEATHERED_COPPER = getItemType("weathered_copper");
|
||||
ItemType.Typed<ItemMeta> OXIDIZED_COPPER = getItemType("oxidized_copper");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> CHISELED_COPPER = getItemType("chiseled_copper");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> EXPOSED_CHISELED_COPPER = getItemType("exposed_chiseled_copper");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WEATHERED_CHISELED_COPPER = getItemType("weathered_chiseled_copper");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> OXIDIZED_CHISELED_COPPER = getItemType("oxidized_chiseled_copper");
|
||||
ItemType.Typed<ItemMeta> CUT_COPPER = getItemType("cut_copper");
|
||||
ItemType.Typed<ItemMeta> EXPOSED_CUT_COPPER = getItemType("exposed_cut_copper");
|
||||
@ -252,17 +214,9 @@ public interface ItemType extends Keyed, Translatable {
|
||||
ItemType.Typed<ItemMeta> WAXED_EXPOSED_COPPER = getItemType("waxed_exposed_copper");
|
||||
ItemType.Typed<ItemMeta> WAXED_WEATHERED_COPPER = getItemType("waxed_weathered_copper");
|
||||
ItemType.Typed<ItemMeta> WAXED_OXIDIZED_COPPER = getItemType("waxed_oxidized_copper");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WAXED_CHISELED_COPPER = getItemType("waxed_chiseled_copper");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WAXED_EXPOSED_CHISELED_COPPER = getItemType("waxed_exposed_chiseled_copper");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WAXED_WEATHERED_CHISELED_COPPER = getItemType("waxed_weathered_chiseled_copper");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WAXED_OXIDIZED_CHISELED_COPPER = getItemType("waxed_oxidized_chiseled_copper");
|
||||
ItemType.Typed<ItemMeta> WAXED_CUT_COPPER = getItemType("waxed_cut_copper");
|
||||
ItemType.Typed<ItemMeta> WAXED_EXPOSED_CUT_COPPER = getItemType("waxed_exposed_cut_copper");
|
||||
@ -986,29 +940,13 @@ public interface ItemType extends Keyed, Translatable {
|
||||
ItemType.Typed<ItemMeta> BAMBOO_DOOR = getItemType("bamboo_door");
|
||||
ItemType.Typed<ItemMeta> CRIMSON_DOOR = getItemType("crimson_door");
|
||||
ItemType.Typed<ItemMeta> WARPED_DOOR = getItemType("warped_door");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> COPPER_DOOR = getItemType("copper_door");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> EXPOSED_COPPER_DOOR = getItemType("exposed_copper_door");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WEATHERED_COPPER_DOOR = getItemType("weathered_copper_door");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> OXIDIZED_COPPER_DOOR = getItemType("oxidized_copper_door");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WAXED_COPPER_DOOR = getItemType("waxed_copper_door");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WAXED_EXPOSED_COPPER_DOOR = getItemType("waxed_exposed_copper_door");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WAXED_WEATHERED_COPPER_DOOR = getItemType("waxed_weathered_copper_door");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WAXED_OXIDIZED_COPPER_DOOR = getItemType("waxed_oxidized_copper_door");
|
||||
ItemType.Typed<ItemMeta> IRON_TRAPDOOR = getItemType("iron_trapdoor");
|
||||
ItemType.Typed<ItemMeta> OAK_TRAPDOOR = getItemType("oak_trapdoor");
|
||||
@ -1022,29 +960,13 @@ public interface ItemType extends Keyed, Translatable {
|
||||
ItemType.Typed<ItemMeta> BAMBOO_TRAPDOOR = getItemType("bamboo_trapdoor");
|
||||
ItemType.Typed<ItemMeta> CRIMSON_TRAPDOOR = getItemType("crimson_trapdoor");
|
||||
ItemType.Typed<ItemMeta> WARPED_TRAPDOOR = getItemType("warped_trapdoor");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> COPPER_TRAPDOOR = getItemType("copper_trapdoor");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> EXPOSED_COPPER_TRAPDOOR = getItemType("exposed_copper_trapdoor");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WEATHERED_COPPER_TRAPDOOR = getItemType("weathered_copper_trapdoor");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> OXIDIZED_COPPER_TRAPDOOR = getItemType("oxidized_copper_trapdoor");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WAXED_COPPER_TRAPDOOR = getItemType("waxed_copper_trapdoor");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WAXED_EXPOSED_COPPER_TRAPDOOR = getItemType("waxed_exposed_copper_trapdoor");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WAXED_WEATHERED_COPPER_TRAPDOOR = getItemType("waxed_weathered_copper_trapdoor");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WAXED_OXIDIZED_COPPER_TRAPDOOR = getItemType("waxed_oxidized_copper_trapdoor");
|
||||
ItemType.Typed<ItemMeta> OAK_FENCE_GATE = getItemType("oak_fence_gate");
|
||||
ItemType.Typed<ItemMeta> SPRUCE_FENCE_GATE = getItemType("spruce_fence_gate");
|
||||
@ -1106,6 +1028,7 @@ public interface ItemType extends Keyed, Translatable {
|
||||
* ItemMeta: {@link ColorableArmorMeta}
|
||||
*/
|
||||
ItemType.Typed<ColorableArmorMeta> WOLF_ARMOR = getItemType("wolf_armor");
|
||||
ItemType.Typed<ItemMeta> BOWL = getItemType("bowl");
|
||||
ItemType.Typed<ItemMeta> FLINT_AND_STEEL = getItemType("flint_and_steel");
|
||||
ItemType.Typed<ItemMeta> APPLE = getItemType("apple");
|
||||
ItemType.Typed<ItemMeta> BOW = getItemType("bow");
|
||||
@ -1156,7 +1079,6 @@ public interface ItemType extends Keyed, Translatable {
|
||||
ItemType.Typed<ItemMeta> NETHERITE_AXE = getItemType("netherite_axe");
|
||||
ItemType.Typed<ItemMeta> NETHERITE_HOE = getItemType("netherite_hoe");
|
||||
ItemType.Typed<ItemMeta> STICK = getItemType("stick");
|
||||
ItemType.Typed<ItemMeta> BOWL = getItemType("bowl");
|
||||
ItemType.Typed<ItemMeta> MUSHROOM_STEW = getItemType("mushroom_stew");
|
||||
ItemType.Typed<ItemMeta> STRING = getItemType("string");
|
||||
ItemType.Typed<ItemMeta> FEATHER = getItemType("feather");
|
||||
@ -1442,8 +1364,6 @@ public interface ItemType extends Keyed, Translatable {
|
||||
/**
|
||||
* ItemMeta: {@link BlockStateMeta}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<BlockStateMeta> CRAFTER = getItemType("crafter");
|
||||
/**
|
||||
* ItemMeta: {@link MapMeta}
|
||||
@ -1507,14 +1427,10 @@ public interface ItemType extends Keyed, Translatable {
|
||||
/**
|
||||
* ItemMeta: {@link SpawnEggMeta}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<SpawnEggMeta> BOGGED_SPAWN_EGG = getItemType("bogged_spawn_egg");
|
||||
/**
|
||||
* ItemMeta: {@link SpawnEggMeta}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<SpawnEggMeta> BREEZE_SPAWN_EGG = getItemType("breeze_spawn_egg");
|
||||
/**
|
||||
* ItemMeta: {@link SpawnEggMeta}
|
||||
@ -1806,8 +1722,6 @@ public interface ItemType extends Keyed, Translatable {
|
||||
ItemType.Typed<SpawnEggMeta> ZOMBIFIED_PIGLIN_SPAWN_EGG = getItemType("zombified_piglin_spawn_egg");
|
||||
ItemType.Typed<ItemMeta> EXPERIENCE_BOTTLE = getItemType("experience_bottle");
|
||||
ItemType.Typed<ItemMeta> FIRE_CHARGE = getItemType("fire_charge");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WIND_CHARGE = getItemType("wind_charge");
|
||||
/**
|
||||
* ItemMeta: {@link BookMeta}
|
||||
@ -1817,8 +1731,6 @@ public interface ItemType extends Keyed, Translatable {
|
||||
* ItemMeta: {@link BookMeta}
|
||||
*/
|
||||
ItemType.Typed<BookMeta> WRITTEN_BOOK = getItemType("written_book");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> MACE = getItemType("mace");
|
||||
ItemType.Typed<ItemMeta> ITEM_FRAME = getItemType("item_frame");
|
||||
ItemType.Typed<ItemMeta> GLOW_ITEM_FRAME = getItemType("glow_item_frame");
|
||||
@ -1994,6 +1906,8 @@ public interface ItemType extends Keyed, Translatable {
|
||||
ItemType.Typed<ItemMeta> MUSIC_DISC_CAT = getItemType("music_disc_cat");
|
||||
ItemType.Typed<ItemMeta> MUSIC_DISC_BLOCKS = getItemType("music_disc_blocks");
|
||||
ItemType.Typed<ItemMeta> MUSIC_DISC_CHIRP = getItemType("music_disc_chirp");
|
||||
ItemType.Typed<ItemMeta> MUSIC_DISC_CREATOR = getItemType("music_disc_creator");
|
||||
ItemType.Typed<ItemMeta> MUSIC_DISC_CREATOR_MUSIC_BOX = getItemType("music_disc_creator_music_box");
|
||||
ItemType.Typed<ItemMeta> MUSIC_DISC_FAR = getItemType("music_disc_far");
|
||||
ItemType.Typed<ItemMeta> MUSIC_DISC_MALL = getItemType("music_disc_mall");
|
||||
ItemType.Typed<ItemMeta> MUSIC_DISC_MELLOHI = getItemType("music_disc_mellohi");
|
||||
@ -2006,6 +1920,7 @@ public interface ItemType extends Keyed, Translatable {
|
||||
ItemType.Typed<ItemMeta> MUSIC_DISC_RELIC = getItemType("music_disc_relic");
|
||||
ItemType.Typed<ItemMeta> MUSIC_DISC_5 = getItemType("music_disc_5");
|
||||
ItemType.Typed<ItemMeta> MUSIC_DISC_PIGSTEP = getItemType("music_disc_pigstep");
|
||||
ItemType.Typed<ItemMeta> MUSIC_DISC_PRECIPICE = getItemType("music_disc_precipice");
|
||||
ItemType.Typed<ItemMeta> DISC_FRAGMENT_5 = getItemType("disc_fragment_5");
|
||||
ItemType.Typed<ItemMeta> TRIDENT = getItemType("trident");
|
||||
ItemType.Typed<ItemMeta> PHANTOM_MEMBRANE = getItemType("phantom_membrane");
|
||||
@ -2026,11 +1941,7 @@ public interface ItemType extends Keyed, Translatable {
|
||||
ItemType.Typed<ItemMeta> MOJANG_BANNER_PATTERN = getItemType("mojang_banner_pattern");
|
||||
ItemType.Typed<ItemMeta> GLOBE_BANNER_PATTERN = getItemType("globe_banner_pattern");
|
||||
ItemType.Typed<ItemMeta> PIGLIN_BANNER_PATTERN = getItemType("piglin_banner_pattern");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> FLOW_BANNER_PATTERN = getItemType("flow_banner_pattern");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> GUSTER_BANNER_PATTERN = getItemType("guster_banner_pattern");
|
||||
/**
|
||||
* ItemMeta: {@link MusicInstrumentMeta}
|
||||
@ -2142,11 +2053,7 @@ public interface ItemType extends Keyed, Translatable {
|
||||
ItemType.Typed<ItemMeta> SILENCE_ARMOR_TRIM_SMITHING_TEMPLATE = getItemType("silence_armor_trim_smithing_template");
|
||||
ItemType.Typed<ItemMeta> RAISER_ARMOR_TRIM_SMITHING_TEMPLATE = getItemType("raiser_armor_trim_smithing_template");
|
||||
ItemType.Typed<ItemMeta> HOST_ARMOR_TRIM_SMITHING_TEMPLATE = getItemType("host_armor_trim_smithing_template");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> FLOW_ARMOR_TRIM_SMITHING_TEMPLATE = getItemType("flow_armor_trim_smithing_template");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> BOLT_ARMOR_TRIM_SMITHING_TEMPLATE = getItemType("bolt_armor_trim_smithing_template");
|
||||
ItemType.Typed<ItemMeta> ANGLER_POTTERY_SHERD = getItemType("angler_pottery_sherd");
|
||||
ItemType.Typed<ItemMeta> ARCHER_POTTERY_SHERD = getItemType("archer_pottery_sherd");
|
||||
@ -2156,12 +2063,8 @@ public interface ItemType extends Keyed, Translatable {
|
||||
ItemType.Typed<ItemMeta> BURN_POTTERY_SHERD = getItemType("burn_pottery_sherd");
|
||||
ItemType.Typed<ItemMeta> DANGER_POTTERY_SHERD = getItemType("danger_pottery_sherd");
|
||||
ItemType.Typed<ItemMeta> EXPLORER_POTTERY_SHERD = getItemType("explorer_pottery_sherd");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> FLOW_POTTERY_SHERD = getItemType("flow_pottery_sherd");
|
||||
ItemType.Typed<ItemMeta> FRIEND_POTTERY_SHERD = getItemType("friend_pottery_sherd");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> GUSTER_POTTERY_SHERD = getItemType("guster_pottery_sherd");
|
||||
ItemType.Typed<ItemMeta> HEART_POTTERY_SHERD = getItemType("heart_pottery_sherd");
|
||||
ItemType.Typed<ItemMeta> HEARTBREAK_POTTERY_SHERD = getItemType("heartbreak_pottery_sherd");
|
||||
@ -2170,87 +2073,41 @@ public interface ItemType extends Keyed, Translatable {
|
||||
ItemType.Typed<ItemMeta> MOURNER_POTTERY_SHERD = getItemType("mourner_pottery_sherd");
|
||||
ItemType.Typed<ItemMeta> PLENTY_POTTERY_SHERD = getItemType("plenty_pottery_sherd");
|
||||
ItemType.Typed<ItemMeta> PRIZE_POTTERY_SHERD = getItemType("prize_pottery_sherd");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> SCRAPE_POTTERY_SHERD = getItemType("scrape_pottery_sherd");
|
||||
ItemType.Typed<ItemMeta> SHEAF_POTTERY_SHERD = getItemType("sheaf_pottery_sherd");
|
||||
ItemType.Typed<ItemMeta> SHELTER_POTTERY_SHERD = getItemType("shelter_pottery_sherd");
|
||||
ItemType.Typed<ItemMeta> SKULL_POTTERY_SHERD = getItemType("skull_pottery_sherd");
|
||||
ItemType.Typed<ItemMeta> SNORT_POTTERY_SHERD = getItemType("snort_pottery_sherd");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> COPPER_GRATE = getItemType("copper_grate");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> EXPOSED_COPPER_GRATE = getItemType("exposed_copper_grate");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WEATHERED_COPPER_GRATE = getItemType("weathered_copper_grate");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> OXIDIZED_COPPER_GRATE = getItemType("oxidized_copper_grate");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WAXED_COPPER_GRATE = getItemType("waxed_copper_grate");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WAXED_EXPOSED_COPPER_GRATE = getItemType("waxed_exposed_copper_grate");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WAXED_WEATHERED_COPPER_GRATE = getItemType("waxed_weathered_copper_grate");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WAXED_OXIDIZED_COPPER_GRATE = getItemType("waxed_oxidized_copper_grate");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> COPPER_BULB = getItemType("copper_bulb");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> EXPOSED_COPPER_BULB = getItemType("exposed_copper_bulb");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WEATHERED_COPPER_BULB = getItemType("weathered_copper_bulb");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> OXIDIZED_COPPER_BULB = getItemType("oxidized_copper_bulb");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WAXED_COPPER_BULB = getItemType("waxed_copper_bulb");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WAXED_EXPOSED_COPPER_BULB = getItemType("waxed_exposed_copper_bulb");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WAXED_WEATHERED_COPPER_BULB = getItemType("waxed_weathered_copper_bulb");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> WAXED_OXIDIZED_COPPER_BULB = getItemType("waxed_oxidized_copper_bulb");
|
||||
/**
|
||||
* ItemMeta: {@link BlockStateMeta}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<BlockStateMeta> TRIAL_SPAWNER = getItemType("trial_spawner");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> TRIAL_KEY = getItemType("trial_key");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> OMINOUS_TRIAL_KEY = getItemType("ominous_trial_key");
|
||||
/**
|
||||
* ItemMeta: {@link BlockStateMeta}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<BlockStateMeta> VAULT = getItemType("vault");
|
||||
/**
|
||||
* ItemMeta: {@link OminousBottleMeta}
|
||||
*/
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<OminousBottleMeta> OMINOUS_BOTTLE = getItemType("ominous_bottle");
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
@ApiStatus.Experimental
|
||||
ItemType.Typed<ItemMeta> BREEZE_ROD = getItemType("breeze_rod");
|
||||
|
||||
|
||||
|
@ -1,6 +1,5 @@
|
||||
package org.bukkit.inventory;
|
||||
|
||||
import org.bukkit.Tag;
|
||||
import org.bukkit.block.Jukebox;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
@ -13,9 +12,7 @@ public interface JukeboxInventory extends Inventory {
|
||||
* Set the record in the jukebox.
|
||||
* <p>
|
||||
* This will immediately start playing the inserted item or stop playing if the
|
||||
* item provided is null. If the provided item is not a record (according to
|
||||
* {@link Tag#ITEMS_MUSIC_DISCS}), this method will do nothing and not set the
|
||||
* item in the inventory.
|
||||
* item provided is null.
|
||||
*
|
||||
* @param item the new record
|
||||
*/
|
||||
|
@ -14,6 +14,7 @@ import org.bukkit.inventory.ItemFactory;
|
||||
import org.bukkit.inventory.ItemFlag;
|
||||
import org.bukkit.inventory.ItemRarity;
|
||||
import org.bukkit.inventory.meta.components.FoodComponent;
|
||||
import org.bukkit.inventory.meta.components.JukeboxPlayableComponent;
|
||||
import org.bukkit.inventory.meta.components.ToolComponent;
|
||||
import org.bukkit.inventory.meta.tags.CustomItemTagContainer;
|
||||
import org.bukkit.persistence.PersistentDataHolder;
|
||||
@ -452,6 +453,34 @@ public interface ItemMeta extends Cloneable, ConfigurationSerializable, Persiste
|
||||
*/
|
||||
void setTool(@Nullable ToolComponent tool);
|
||||
|
||||
/**
|
||||
* Checks if the jukebox playable is set.
|
||||
*
|
||||
* @return if a jukebox playable is set
|
||||
*/
|
||||
boolean hasJukeboxPlayable();
|
||||
|
||||
/**
|
||||
* Gets the jukebox playable component set on this item.
|
||||
* <p>
|
||||
* The returned component is a snapshot of its current state and does not
|
||||
* reflect a live view of what is on an item. After changing any value on
|
||||
* this component, it must be set with
|
||||
* {@link #setJukeboxPlayable(org.bukkit.inventory.meta.components.JukeboxComponent)}
|
||||
* to apply the changes.
|
||||
*
|
||||
* @return component
|
||||
*/
|
||||
@Nullable
|
||||
JukeboxPlayableComponent getJukeboxPlayable();
|
||||
|
||||
/**
|
||||
* Sets the item tool.
|
||||
*
|
||||
* @param jukeboxPlayable new component
|
||||
*/
|
||||
void setJukeboxPlayable(@Nullable JukeboxPlayableComponent jukeboxPlayable);
|
||||
|
||||
/**
|
||||
* Checks for the existence of any AttributeModifiers.
|
||||
*
|
||||
@ -566,7 +595,7 @@ public interface ItemMeta extends Cloneable, ConfigurationSerializable, Persiste
|
||||
* @throws NullPointerException if the Attribute is null
|
||||
* @throws NullPointerException if the AttributeModifier is null
|
||||
*
|
||||
* @see AttributeModifier#getUniqueId()
|
||||
* @see AttributeModifier#getKey()
|
||||
*/
|
||||
boolean removeAttributeModifier(@NotNull Attribute attribute, @NotNull AttributeModifier modifier);
|
||||
|
||||
|
@ -2,9 +2,11 @@ package org.bukkit.inventory.meta.components;
|
||||
|
||||
import java.util.List;
|
||||
import org.bukkit.configuration.serialization.ConfigurationSerializable;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.potion.PotionEffect;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* Represents a component which can turn any item into food.
|
||||
@ -68,6 +70,21 @@ public interface FoodComponent extends ConfigurationSerializable {
|
||||
*/
|
||||
void setEatSeconds(float eatSeconds);
|
||||
|
||||
/**
|
||||
* Gets the item this food will convert to once eaten.
|
||||
*
|
||||
* @return converted item
|
||||
*/
|
||||
@Nullable
|
||||
ItemStack getUsingConvertsTo();
|
||||
|
||||
/**
|
||||
* Sets the item this food will convert to once eaten.
|
||||
*
|
||||
* @param item converted item
|
||||
*/
|
||||
void setUsingConvertsTo(@Nullable ItemStack item);
|
||||
|
||||
/**
|
||||
* Gets the effects which may be applied by this item when eaten.
|
||||
*
|
||||
|
@ -0,0 +1,59 @@
|
||||
package org.bukkit.inventory.meta.components;
|
||||
|
||||
import org.bukkit.JukeboxSong;
|
||||
import org.bukkit.NamespacedKey;
|
||||
import org.bukkit.configuration.serialization.ConfigurationSerializable;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* Represents a component which can be inserted into a jukebox.
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
public interface JukeboxPlayableComponent extends ConfigurationSerializable {
|
||||
|
||||
/**
|
||||
* Gets the song assigned to this component.
|
||||
*
|
||||
* @return song, or null if the song does not exist on the server
|
||||
*/
|
||||
@Nullable
|
||||
JukeboxSong getSong();
|
||||
|
||||
/**
|
||||
* Gets the key of the song assigned to this component.
|
||||
*
|
||||
* @return the song key
|
||||
*/
|
||||
@NotNull
|
||||
NamespacedKey getSongKey();
|
||||
|
||||
/**
|
||||
* Sets the song assigned to this component.
|
||||
*
|
||||
* @param song the song
|
||||
*/
|
||||
void setSong(@NotNull JukeboxSong song);
|
||||
|
||||
/**
|
||||
* Sets the key of the song assigned to this component.
|
||||
*
|
||||
* @param song the song key
|
||||
*/
|
||||
void setSongKey(@NotNull NamespacedKey song);
|
||||
|
||||
/**
|
||||
* Gets if the song will show in the item tooltip.
|
||||
*
|
||||
* @return if the song will show in the tooltip
|
||||
*/
|
||||
boolean isShowInTooltip();
|
||||
|
||||
/**
|
||||
* Sets if the song will show in the item tooltip.
|
||||
*
|
||||
* @param show true if the song will show in the tooltip
|
||||
*/
|
||||
void setShowInTooltip(boolean show);
|
||||
}
|
@ -62,7 +62,9 @@ public final class LootContext {
|
||||
* {@link #getKiller()} entity's looting level will be used instead.
|
||||
*
|
||||
* @return the looting level
|
||||
* @deprecated no longer functional
|
||||
*/
|
||||
@Deprecated
|
||||
public int getLootingModifier() {
|
||||
return lootingModifier;
|
||||
}
|
||||
@ -131,8 +133,10 @@ public final class LootContext {
|
||||
*
|
||||
* @param modifier the looting level modifier
|
||||
* @return the Builder
|
||||
* @deprecated no longer functional
|
||||
*/
|
||||
@NotNull
|
||||
@Deprecated
|
||||
public Builder lootingModifier(int modifier) {
|
||||
this.lootingModifier = modifier;
|
||||
return this;
|
||||
|
@ -2,8 +2,6 @@ package org.bukkit.loot;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Keyed;
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.bukkit.NamespacedKey;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
@ -35,45 +33,25 @@ public enum LootTables implements Keyed {
|
||||
ANCIENT_CITY("chests/ancient_city"),
|
||||
ANCIENT_CITY_ICE_BOX("chests/ancient_city_ice_box"),
|
||||
RUINED_PORTAL("chests/ruined_portal"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_CHAMBERS_REWARD("chests/trial_chambers/reward"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_CHAMBERS_REWARD_COMMON("chests/trial_chambers/reward_common"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_CHAMBERS_REWARD_RARE("chests/trial_chambers/reward_rare"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_CHAMBERS_REWARD_UNIQUE("chests/trial_chambers/reward_unique"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_CHAMBERS_REWARD_OMINOUS("chests/trial_chambers/reward_ominous"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_CHAMBERS_REWARD_OMINOUS_COMMON("chests/trial_chambers/reward_ominous_common"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_CHAMBERS_REWARD_OMINOUS_RARE("chests/trial_chambers/reward_ominous_rare"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_CHAMBERS_REWARD_OMINOUS_UNIQUE("chests/trial_chambers/reward_ominous_unique"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_CHAMBERS_SUPPLY("chests/trial_chambers/supply"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_CHAMBERS_CORRIDOR("chests/trial_chambers/corridor"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_CHAMBERS_INTERSECTION("chests/trial_chambers/intersection"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_CHAMBERS_INTERSECTION_BARREL("chests/trial_chambers/intersection_barrel"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_CHAMBERS_ENTRANCE("chests/trial_chambers/entrance"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_CHAMBERS_CORRIDOR_DISPENSER("dispensers/trial_chambers/corridor"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_CHAMBERS_CHAMBER_DISPENSER("dispensers/trial_chambers/chamber"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_CHAMBERS_WATER_DISPENSER("dispensers/trial_chambers/water"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_CHAMBERS_CORRIDOR_POT("pots/trial_chambers/corridor"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
EQUIPMENT_TRIAL_CHAMBER("equipment/trial_chamber"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
EQUIPMENT_TRIAL_CHAMBER_RANGED("equipment/trial_chamber_ranged"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
EQUIPMENT_TRIAL_CHAMBER_MELEE("equipment/trial_chamber_melee"),
|
||||
SHIPWRECK_MAP("chests/shipwreck_map"),
|
||||
SHIPWRECK_SUPPLY("chests/shipwreck_supply"),
|
||||
@ -201,15 +179,10 @@ public enum LootTables implements Keyed {
|
||||
PANDA_SNEEZE("gameplay/panda_sneeze"),
|
||||
PIGLIN_BARTERING("gameplay/piglin_bartering"),
|
||||
// Spawners
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_CHAMBER_KEY("spawners/trial_chamber/key"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_CHAMBER_CONSUMABLES("spawners/trial_chamber/consumables"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
OMINOUS_TRIAL_CHAMBER_KEY("spawners/ominous/trial_chamber/key"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
OMINOUS_TRIAL_CHAMBER_CONSUMABLES("spawners/ominous/trial_chamber/consumables"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
TRIAL_CHAMBER_ITEMS_TO_DROP_WHEN_OMINOUS("spawners/trial_chamber/items_to_drop_when_ominous"),
|
||||
// Shearing
|
||||
SHEARING_BOGGED("shearing/bogged"),
|
||||
|
@ -3,7 +3,6 @@ package org.bukkit.packs;
|
||||
import java.util.Set;
|
||||
import org.bukkit.FeatureFlag;
|
||||
import org.bukkit.Keyed;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
@ -11,7 +10,6 @@ import org.jetbrains.annotations.NotNull;
|
||||
*
|
||||
* @see <a href="https://minecraft.wiki/w/Data_pack">Minecraft wiki</a>
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
public interface DataPack extends Keyed {
|
||||
|
||||
/**
|
||||
|
@ -14,7 +14,6 @@ import org.jetbrains.annotations.Nullable;
|
||||
/**
|
||||
* Manager of data packs.
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
public interface DataPackManager {
|
||||
|
||||
/**
|
||||
|
@ -1,7 +1,6 @@
|
||||
package org.bukkit.packs;
|
||||
|
||||
import java.util.UUID;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
@ -10,7 +9,6 @@ import org.jetbrains.annotations.Nullable;
|
||||
*
|
||||
* @see <a href="https://minecraft.wiki/w/Resource_pack">Minecraft wiki</a>
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
public interface ResourcePack {
|
||||
|
||||
/**
|
||||
|
@ -1,5 +1,4 @@
|
||||
/**
|
||||
* Classes dedicated to handling data pack information.
|
||||
*/
|
||||
@org.jetbrains.annotations.ApiStatus.Experimental
|
||||
package org.bukkit.packs;
|
||||
|
@ -5,8 +5,6 @@ import java.util.List;
|
||||
import java.util.function.Supplier;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Keyed;
|
||||
import org.bukkit.MinecraftExperimental;
|
||||
import org.bukkit.MinecraftExperimental.Requires;
|
||||
import org.bukkit.NamespacedKey;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@ -59,13 +57,9 @@ public enum PotionType implements Keyed {
|
||||
STRONG_TURTLE_MASTER("strong_turtle_master"),
|
||||
SLOW_FALLING("slow_falling"),
|
||||
LONG_SLOW_FALLING("long_slow_falling"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WIND_CHARGED("wind_charged"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
WEAVING("weaving"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
OOZING("oozing"),
|
||||
@MinecraftExperimental(Requires.UPDATE_1_21)
|
||||
INFESTED("infested"),
|
||||
;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user