@@ -11,6 +11,8 @@ import net.minecraft.core.BlockPosition;
|
||||
import net.minecraft.core.EnumDirection;
|
||||
import net.minecraft.core.Holder;
|
||||
import net.minecraft.core.IRegistry;
|
||||
import net.minecraft.core.registries.BuiltInRegistries;
|
||||
import net.minecraft.core.registries.Registries;
|
||||
import net.minecraft.resources.ResourceKey;
|
||||
import net.minecraft.server.level.WorldServer;
|
||||
import net.minecraft.world.EnumHand;
|
||||
@@ -360,7 +362,7 @@ public class CraftBlock implements Block {
|
||||
return null;
|
||||
}
|
||||
|
||||
return registry.getHolderOrThrow(ResourceKey.create(IRegistry.BIOME_REGISTRY, CraftNamespacedKey.toMinecraft(bio.getKey())));
|
||||
return registry.getHolderOrThrow(ResourceKey.create(Registries.BIOME, CraftNamespacedKey.toMinecraft(bio.getKey())));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -11,6 +11,8 @@ import javax.annotation.Nullable;
|
||||
import net.minecraft.core.BlockPosition;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.world.level.GeneratorAccess;
|
||||
import net.minecraft.world.level.block.entity.ChiseledBookShelfBlockEntity;
|
||||
import net.minecraft.world.level.block.entity.HangingSignBlockEntity;
|
||||
import net.minecraft.world.level.block.entity.SculkCatalystBlockEntity;
|
||||
import net.minecraft.world.level.block.entity.SculkSensorBlockEntity;
|
||||
import net.minecraft.world.level.block.entity.SculkShriekerBlockEntity;
|
||||
@@ -124,6 +126,8 @@ public final class CraftBlockStates {
|
||||
Arrays.asList(
|
||||
Material.ACACIA_SIGN,
|
||||
Material.ACACIA_WALL_SIGN,
|
||||
Material.BAMBOO_SIGN,
|
||||
Material.BAMBOO_WALL_SIGN,
|
||||
Material.BIRCH_SIGN,
|
||||
Material.BIRCH_WALL_SIGN,
|
||||
Material.CRIMSON_SIGN,
|
||||
@@ -143,12 +147,39 @@ public final class CraftBlockStates {
|
||||
), CraftSign.class, CraftSign::new, TileEntitySign::new
|
||||
);
|
||||
|
||||
register(
|
||||
Arrays.asList(
|
||||
Material.ACACIA_HANGING_SIGN,
|
||||
Material.ACACIA_WALL_HANGING_SIGN,
|
||||
Material.BAMBOO_HANGING_SIGN,
|
||||
Material.BAMBOO_WALL_HANGING_SIGN,
|
||||
Material.BIRCH_HANGING_SIGN,
|
||||
Material.BIRCH_WALL_HANGING_SIGN,
|
||||
Material.CRIMSON_HANGING_SIGN,
|
||||
Material.CRIMSON_WALL_HANGING_SIGN,
|
||||
Material.DARK_OAK_HANGING_SIGN,
|
||||
Material.DARK_OAK_WALL_HANGING_SIGN,
|
||||
Material.JUNGLE_HANGING_SIGN,
|
||||
Material.JUNGLE_WALL_HANGING_SIGN,
|
||||
Material.MANGROVE_HANGING_SIGN,
|
||||
Material.MANGROVE_WALL_HANGING_SIGN,
|
||||
Material.OAK_HANGING_SIGN,
|
||||
Material.OAK_WALL_HANGING_SIGN,
|
||||
Material.SPRUCE_HANGING_SIGN,
|
||||
Material.SPRUCE_WALL_HANGING_SIGN,
|
||||
Material.WARPED_HANGING_SIGN,
|
||||
Material.WARPED_WALL_HANGING_SIGN
|
||||
), CraftHangingSign.class, CraftHangingSign::new, HangingSignBlockEntity::new
|
||||
);
|
||||
|
||||
register(
|
||||
Arrays.asList(
|
||||
Material.CREEPER_HEAD,
|
||||
Material.CREEPER_WALL_HEAD,
|
||||
Material.DRAGON_HEAD,
|
||||
Material.DRAGON_WALL_HEAD,
|
||||
Material.PIGLIN_HEAD,
|
||||
Material.PIGLIN_WALL_HEAD,
|
||||
Material.PLAYER_HEAD,
|
||||
Material.PLAYER_WALL_HEAD,
|
||||
Material.SKELETON_SKULL,
|
||||
@@ -268,6 +299,7 @@ public final class CraftBlockStates {
|
||||
register(Material.BLAST_FURNACE, CraftBlastFurnace.class, CraftBlastFurnace::new, TileEntityBlastFurnace::new);
|
||||
register(Material.BREWING_STAND, CraftBrewingStand.class, CraftBrewingStand::new, TileEntityBrewingStand::new);
|
||||
register(Material.CHEST, CraftChest.class, CraftChest::new, TileEntityChest::new);
|
||||
register(Material.CHISELED_BOOKSHELF, CraftChiseledBookshelf.class, CraftChiseledBookshelf::new, ChiseledBookShelfBlockEntity::new);
|
||||
register(Material.COMPARATOR, CraftComparator.class, CraftComparator::new, TileEntityComparator::new);
|
||||
register(Material.CONDUIT, CraftConduit.class, CraftConduit::new, TileEntityConduit::new);
|
||||
register(Material.DAYLIGHT_DETECTOR, CraftDaylightDetector.class, CraftDaylightDetector::new, TileEntityLightDetector::new);
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
package org.bukkit.craftbukkit.block;
|
||||
|
||||
import net.minecraft.world.level.block.entity.ChiseledBookShelfBlockEntity;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.ChiseledBookshelf;
|
||||
import org.bukkit.craftbukkit.inventory.CraftInventoryChiseledBookshelf;
|
||||
import org.bukkit.inventory.ChiseledBookshelfInventory;
|
||||
|
||||
public class CraftChiseledBookshelf extends CraftBlockEntityState<ChiseledBookShelfBlockEntity> implements ChiseledBookshelf {
|
||||
|
||||
public CraftChiseledBookshelf(World world, ChiseledBookShelfBlockEntity tileEntity) {
|
||||
super(world, tileEntity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getLastInteractedSlot() {
|
||||
return getSnapshot().getLastInteractedSlot();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setLastInteractedSlot(int lastInteractedSlot) {
|
||||
getSnapshot().lastInteractedSlot = lastInteractedSlot;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ChiseledBookshelfInventory getSnapshotInventory() {
|
||||
return new CraftInventoryChiseledBookshelf(this.getSnapshot());
|
||||
}
|
||||
|
||||
@Override
|
||||
public ChiseledBookshelfInventory getInventory() {
|
||||
if (!this.isPlaced()) {
|
||||
return this.getSnapshotInventory();
|
||||
}
|
||||
|
||||
return new CraftInventoryChiseledBookshelf(this.getTileEntity());
|
||||
}
|
||||
}
|
||||
@@ -26,7 +26,7 @@ public class CraftCreatureSpawner extends CraftBlockEntityState<TileEntityMobSpa
|
||||
throw new IllegalArgumentException("Can't spawn EntityType " + entityType + " from mobspawners!");
|
||||
}
|
||||
|
||||
this.getSnapshot().getSpawner().setEntityId(EntityTypes.byString(entityType.getName()).get());
|
||||
this.getSnapshot().setEntityId(EntityTypes.byString(entityType.getName()).get(), this.getWorldHandle().getRandom());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
package org.bukkit.craftbukkit.block;
|
||||
|
||||
import net.minecraft.world.level.block.entity.HangingSignBlockEntity;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.HangingSign;
|
||||
|
||||
public class CraftHangingSign extends CraftSign<HangingSignBlockEntity> implements HangingSign {
|
||||
|
||||
public CraftHangingSign(World world, HangingSignBlockEntity tileEntity) {
|
||||
super(world, tileEntity);
|
||||
}
|
||||
}
|
||||
@@ -11,13 +11,13 @@ import org.bukkit.craftbukkit.entity.CraftPlayer;
|
||||
import org.bukkit.craftbukkit.util.CraftChatMessage;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
public class CraftSign extends CraftBlockEntityState<TileEntitySign> implements Sign {
|
||||
public class CraftSign<T extends TileEntitySign> extends CraftBlockEntityState<T> implements Sign {
|
||||
|
||||
// Lazily initialized only if requested:
|
||||
private String[] originalLines = null;
|
||||
private String[] lines = null;
|
||||
|
||||
public CraftSign(World world, TileEntitySign tileEntity) {
|
||||
public CraftSign(World world, T tileEntity) {
|
||||
super(world, tileEntity);
|
||||
}
|
||||
|
||||
@@ -75,7 +75,7 @@ public class CraftSign extends CraftBlockEntityState<TileEntitySign> implements
|
||||
}
|
||||
|
||||
@Override
|
||||
public void applyTo(TileEntitySign sign) {
|
||||
public void applyTo(T sign) {
|
||||
super.applyTo(sign);
|
||||
|
||||
if (lines != null) {
|
||||
@@ -94,7 +94,7 @@ public class CraftSign extends CraftBlockEntityState<TileEntitySign> implements
|
||||
Preconditions.checkArgument(sign.isPlaced(), "Sign must be placed");
|
||||
Preconditions.checkArgument(sign.getWorld() == player.getWorld(), "Sign must be in same world as Player");
|
||||
|
||||
TileEntitySign handle = ((CraftSign) sign).getTileEntity();
|
||||
TileEntitySign handle = ((CraftSign<?>) sign).getTileEntity();
|
||||
handle.isEditable = true;
|
||||
|
||||
((CraftPlayer) player).getHandle().openTextEdit(handle);
|
||||
|
||||
@@ -149,6 +149,9 @@ public class CraftSkull extends CraftBlockEntityState<TileEntitySkull> implement
|
||||
case ZOMBIE_HEAD:
|
||||
case ZOMBIE_WALL_HEAD:
|
||||
return SkullType.ZOMBIE;
|
||||
case PIGLIN_HEAD:
|
||||
case PIGLIN_WALL_HEAD:
|
||||
return SkullType.PIGLIN;
|
||||
case PLAYER_HEAD:
|
||||
case PLAYER_WALL_HEAD:
|
||||
return SkullType.PLAYER;
|
||||
|
||||
@@ -12,7 +12,7 @@ import java.util.stream.Collectors;
|
||||
import net.minecraft.commands.arguments.blocks.ArgumentBlock;
|
||||
import net.minecraft.core.BlockPosition;
|
||||
import net.minecraft.core.EnumDirection;
|
||||
import net.minecraft.core.IRegistry;
|
||||
import net.minecraft.core.registries.BuiltInRegistries;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.util.INamable;
|
||||
import net.minecraft.world.level.BlockAccessAir;
|
||||
@@ -227,7 +227,7 @@ public class CraftBlockData implements BlockData {
|
||||
|
||||
// Mimicked from BlockDataAbstract#toString()
|
||||
public String toString(Map<IBlockState<?>, Comparable<?>> states) {
|
||||
StringBuilder stateString = new StringBuilder(IRegistry.BLOCK.getKey(state.getBlock()).toString());
|
||||
StringBuilder stateString = new StringBuilder(BuiltInRegistries.BLOCK.getKey(state.getBlock()).toString());
|
||||
|
||||
if (!states.isEmpty()) {
|
||||
stateString.append('[');
|
||||
@@ -306,7 +306,7 @@ public class CraftBlockData implements BlockData {
|
||||
private static IBlockState<?> getState(Class<? extends Block> block, String name, boolean optional) {
|
||||
IBlockState<?> state = null;
|
||||
|
||||
for (Block instance : IRegistry.BLOCK) {
|
||||
for (Block instance : BuiltInRegistries.BLOCK) {
|
||||
if (instance.getClass() == block) {
|
||||
if (state == null) {
|
||||
state = instance.getStateDefinition().getProperty(name);
|
||||
@@ -363,6 +363,7 @@ public class CraftBlockData implements BlockData {
|
||||
register(net.minecraft.world.level.block.BlockBlastFurnace.class, org.bukkit.craftbukkit.block.impl.CraftBlastFurnace::new);
|
||||
register(net.minecraft.world.level.block.BlockBrewingStand.class, org.bukkit.craftbukkit.block.impl.CraftBrewingStand::new);
|
||||
register(net.minecraft.world.level.block.BlockBubbleColumn.class, org.bukkit.craftbukkit.block.impl.CraftBubbleColumn::new);
|
||||
register(net.minecraft.world.level.block.BlockButtonAbstract.class, org.bukkit.craftbukkit.block.impl.CraftButtonAbstract::new);
|
||||
register(net.minecraft.world.level.block.BlockCactus.class, org.bukkit.craftbukkit.block.impl.CraftCactus::new);
|
||||
register(net.minecraft.world.level.block.BlockCake.class, org.bukkit.craftbukkit.block.impl.CraftCake::new);
|
||||
register(net.minecraft.world.level.block.BlockCampfire.class, org.bukkit.craftbukkit.block.impl.CraftCampfire::new);
|
||||
@@ -453,7 +454,6 @@ public class CraftBlockData implements BlockData {
|
||||
register(net.minecraft.world.level.block.BlockStem.class, org.bukkit.craftbukkit.block.impl.CraftStem::new);
|
||||
register(net.minecraft.world.level.block.BlockStemAttached.class, org.bukkit.craftbukkit.block.impl.CraftStemAttached::new);
|
||||
register(net.minecraft.world.level.block.BlockStepAbstract.class, org.bukkit.craftbukkit.block.impl.CraftStepAbstract::new);
|
||||
register(net.minecraft.world.level.block.BlockStoneButton.class, org.bukkit.craftbukkit.block.impl.CraftStoneButton::new);
|
||||
register(net.minecraft.world.level.block.BlockStonecutter.class, org.bukkit.craftbukkit.block.impl.CraftStonecutter::new);
|
||||
register(net.minecraft.world.level.block.BlockStructure.class, org.bukkit.craftbukkit.block.impl.CraftStructure::new);
|
||||
register(net.minecraft.world.level.block.BlockSweetBerryBush.class, org.bukkit.craftbukkit.block.impl.CraftSweetBerryBush::new);
|
||||
@@ -472,11 +472,12 @@ public class CraftBlockData implements BlockData {
|
||||
register(net.minecraft.world.level.block.BlockWeepingVines.class, org.bukkit.craftbukkit.block.impl.CraftWeepingVines::new);
|
||||
register(net.minecraft.world.level.block.BlockWitherSkull.class, org.bukkit.craftbukkit.block.impl.CraftWitherSkull::new);
|
||||
register(net.minecraft.world.level.block.BlockWitherSkullWall.class, org.bukkit.craftbukkit.block.impl.CraftWitherSkullWall::new);
|
||||
register(net.minecraft.world.level.block.BlockWoodButton.class, org.bukkit.craftbukkit.block.impl.CraftWoodButton::new);
|
||||
register(net.minecraft.world.level.block.CandleBlock.class, org.bukkit.craftbukkit.block.impl.CraftCandle::new);
|
||||
register(net.minecraft.world.level.block.CandleCakeBlock.class, org.bukkit.craftbukkit.block.impl.CraftCandleCake::new);
|
||||
register(net.minecraft.world.level.block.CaveVinesBlock.class, org.bukkit.craftbukkit.block.impl.CraftCaveVines::new);
|
||||
register(net.minecraft.world.level.block.CaveVinesPlantBlock.class, org.bukkit.craftbukkit.block.impl.CraftCaveVinesPlant::new);
|
||||
register(net.minecraft.world.level.block.CeilingHangingSignBlock.class, org.bukkit.craftbukkit.block.impl.CraftCeilingHangingSign::new);
|
||||
register(net.minecraft.world.level.block.ChiseledBookShelfBlock.class, org.bukkit.craftbukkit.block.impl.CraftChiseledBookShelf::new);
|
||||
register(net.minecraft.world.level.block.GlowLichenBlock.class, org.bukkit.craftbukkit.block.impl.CraftGlowLichen::new);
|
||||
register(net.minecraft.world.level.block.HangingRootsBlock.class, org.bukkit.craftbukkit.block.impl.CraftHangingRoots::new);
|
||||
register(net.minecraft.world.level.block.InfestedRotatedPillarBlock.class, org.bukkit.craftbukkit.block.impl.CraftInfestedRotatedPillar::new);
|
||||
@@ -486,6 +487,7 @@ public class CraftBlockData implements BlockData {
|
||||
register(net.minecraft.world.level.block.MangroveLeavesBlock.class, org.bukkit.craftbukkit.block.impl.CraftMangroveLeaves::new);
|
||||
register(net.minecraft.world.level.block.MangrovePropaguleBlock.class, org.bukkit.craftbukkit.block.impl.CraftMangrovePropagule::new);
|
||||
register(net.minecraft.world.level.block.MangroveRootsBlock.class, org.bukkit.craftbukkit.block.impl.CraftMangroveRoots::new);
|
||||
register(net.minecraft.world.level.block.PiglinWallSkullBlock.class, org.bukkit.craftbukkit.block.impl.CraftPiglinWallSkull::new);
|
||||
register(net.minecraft.world.level.block.PointedDripstoneBlock.class, org.bukkit.craftbukkit.block.impl.CraftPointedDripstone::new);
|
||||
register(net.minecraft.world.level.block.PowderSnowCauldronBlock.class, org.bukkit.craftbukkit.block.impl.CraftPowderSnowCauldron::new);
|
||||
register(net.minecraft.world.level.block.SculkCatalystBlock.class, org.bukkit.craftbukkit.block.impl.CraftSculkCatalyst::new);
|
||||
@@ -494,6 +496,7 @@ public class CraftBlockData implements BlockData {
|
||||
register(net.minecraft.world.level.block.SculkVeinBlock.class, org.bukkit.craftbukkit.block.impl.CraftSculkVein::new);
|
||||
register(net.minecraft.world.level.block.SmallDripleafBlock.class, org.bukkit.craftbukkit.block.impl.CraftSmallDripleaf::new);
|
||||
register(net.minecraft.world.level.block.TallSeagrassBlock.class, org.bukkit.craftbukkit.block.impl.CraftTallSeagrass::new);
|
||||
register(net.minecraft.world.level.block.WallHangingSignBlock.class, org.bukkit.craftbukkit.block.impl.CraftWallHangingSign::new);
|
||||
register(net.minecraft.world.level.block.WeatheringCopperSlabBlock.class, org.bukkit.craftbukkit.block.impl.CraftWeatheringCopperSlab::new);
|
||||
register(net.minecraft.world.level.block.WeatheringCopperStairBlock.class, org.bukkit.craftbukkit.block.impl.CraftWeatheringCopperStair::new);
|
||||
register(net.minecraft.world.level.block.piston.BlockPiston.class, org.bukkit.craftbukkit.block.impl.CraftPiston::new);
|
||||
@@ -518,11 +521,11 @@ public class CraftBlockData implements BlockData {
|
||||
try {
|
||||
// Material provided, force that material in
|
||||
if (block != null) {
|
||||
data = IRegistry.BLOCK.getKey(block) + data;
|
||||
data = BuiltInRegistries.BLOCK.getKey(block) + data;
|
||||
}
|
||||
|
||||
StringReader reader = new StringReader(data);
|
||||
ArgumentBlock.a arg = ArgumentBlock.parseForBlock(IRegistry.BLOCK, reader, false);
|
||||
ArgumentBlock.a arg = ArgumentBlock.parseForBlock(BuiltInRegistries.BLOCK.asLookup(), reader, false);
|
||||
Preconditions.checkArgument(!reader.canRead(), "Spurious trailing data: " + data);
|
||||
|
||||
blockData = arg.blockState();
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
package org.bukkit.craftbukkit.block.data.type;
|
||||
|
||||
import org.bukkit.block.data.type.ChiseledBookshelf;
|
||||
import org.bukkit.craftbukkit.block.data.CraftBlockData;
|
||||
|
||||
public abstract class CraftChiseledBookshelf extends CraftBlockData implements ChiseledBookshelf {
|
||||
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateBoolean[] SLOT_OCCUPIED = new net.minecraft.world.level.block.state.properties.BlockStateBoolean[]{
|
||||
getBoolean("slot_0_occupied"), getBoolean("slot_1_occupied"), getBoolean("slot_2_occupied"),
|
||||
getBoolean("slot_3_occupied"), getBoolean("slot_4_occupied"), getBoolean("slot_5_occupied")
|
||||
};
|
||||
|
||||
@Override
|
||||
public boolean isSlotOccupied(int slot) {
|
||||
return get(SLOT_OCCUPIED[slot]);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSlotOccupied(int slot, boolean has) {
|
||||
set(SLOT_OCCUPIED[slot], has);
|
||||
}
|
||||
|
||||
@Override
|
||||
public java.util.Set<Integer> getOccupiedSlots() {
|
||||
com.google.common.collect.ImmutableSet.Builder<Integer> slots = com.google.common.collect.ImmutableSet.builder();
|
||||
|
||||
for (int index = 0; index < getMaximumOccupiedSlots(); index++) {
|
||||
if (isSlotOccupied(index)) {
|
||||
slots.add(index);
|
||||
}
|
||||
}
|
||||
|
||||
return slots.build();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMaximumOccupiedSlots() {
|
||||
return SLOT_OCCUPIED.length;
|
||||
}
|
||||
}
|
||||
@@ -3,19 +3,19 @@
|
||||
*/
|
||||
package org.bukkit.craftbukkit.block.impl;
|
||||
|
||||
public final class CraftStoneButton extends org.bukkit.craftbukkit.block.data.CraftBlockData implements org.bukkit.block.data.type.Switch, org.bukkit.block.data.Directional, org.bukkit.block.data.FaceAttachable, org.bukkit.block.data.Powerable {
|
||||
public final class CraftButtonAbstract extends org.bukkit.craftbukkit.block.data.CraftBlockData implements org.bukkit.block.data.type.Switch, org.bukkit.block.data.Directional, org.bukkit.block.data.FaceAttachable, org.bukkit.block.data.Powerable {
|
||||
|
||||
public CraftStoneButton() {
|
||||
public CraftButtonAbstract() {
|
||||
super();
|
||||
}
|
||||
|
||||
public CraftStoneButton(net.minecraft.world.level.block.state.IBlockData state) {
|
||||
public CraftButtonAbstract(net.minecraft.world.level.block.state.IBlockData state) {
|
||||
super(state);
|
||||
}
|
||||
|
||||
// org.bukkit.craftbukkit.block.data.type.CraftSwitch
|
||||
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateEnum<?> FACE = getEnum(net.minecraft.world.level.block.BlockStoneButton.class, "face");
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateEnum<?> FACE = getEnum(net.minecraft.world.level.block.BlockButtonAbstract.class, "face");
|
||||
|
||||
@Override
|
||||
public org.bukkit.block.data.type.Switch.Face getFace() {
|
||||
@@ -29,7 +29,7 @@ public final class CraftStoneButton extends org.bukkit.craftbukkit.block.data.Cr
|
||||
|
||||
// org.bukkit.craftbukkit.block.data.CraftDirectional
|
||||
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateEnum<?> FACING = getEnum(net.minecraft.world.level.block.BlockStoneButton.class, "facing");
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateEnum<?> FACING = getEnum(net.minecraft.world.level.block.BlockButtonAbstract.class, "facing");
|
||||
|
||||
@Override
|
||||
public org.bukkit.block.BlockFace getFacing() {
|
||||
@@ -48,7 +48,7 @@ public final class CraftStoneButton extends org.bukkit.craftbukkit.block.data.Cr
|
||||
|
||||
// org.bukkit.craftbukkit.block.data.CraftFaceAttachable
|
||||
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateEnum<?> ATTACH_FACE = getEnum(net.minecraft.world.level.block.BlockStoneButton.class, "face");
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateEnum<?> ATTACH_FACE = getEnum(net.minecraft.world.level.block.BlockButtonAbstract.class, "face");
|
||||
|
||||
@Override
|
||||
public org.bukkit.block.data.FaceAttachable.AttachedFace getAttachedFace() {
|
||||
@@ -62,7 +62,7 @@ public final class CraftStoneButton extends org.bukkit.craftbukkit.block.data.Cr
|
||||
|
||||
// org.bukkit.craftbukkit.block.data.CraftPowerable
|
||||
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateBoolean POWERED = getBoolean(net.minecraft.world.level.block.BlockStoneButton.class, "powered");
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateBoolean POWERED = getBoolean(net.minecraft.world.level.block.BlockButtonAbstract.class, "powered");
|
||||
|
||||
@Override
|
||||
public boolean isPowered() {
|
||||
@@ -0,0 +1,146 @@
|
||||
/**
|
||||
* Automatically generated file, changes will be lost.
|
||||
*/
|
||||
package org.bukkit.craftbukkit.block.impl;
|
||||
|
||||
public final class CraftCeilingHangingSign extends org.bukkit.craftbukkit.block.data.CraftBlockData implements org.bukkit.block.data.type.HangingSign, org.bukkit.block.data.Attachable, org.bukkit.block.data.Rotatable, org.bukkit.block.data.Waterlogged {
|
||||
|
||||
public CraftCeilingHangingSign() {
|
||||
super();
|
||||
}
|
||||
|
||||
public CraftCeilingHangingSign(net.minecraft.world.level.block.state.IBlockData state) {
|
||||
super(state);
|
||||
}
|
||||
|
||||
// org.bukkit.craftbukkit.block.data.CraftAttachable
|
||||
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateBoolean ATTACHED = getBoolean(net.minecraft.world.level.block.CeilingHangingSignBlock.class, "attached");
|
||||
|
||||
@Override
|
||||
public boolean isAttached() {
|
||||
return get(ATTACHED);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setAttached(boolean attached) {
|
||||
set(ATTACHED, attached);
|
||||
}
|
||||
|
||||
// org.bukkit.craftbukkit.block.data.CraftRotatable
|
||||
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateInteger ROTATION = getInteger(net.minecraft.world.level.block.CeilingHangingSignBlock.class, "rotation");
|
||||
|
||||
@Override
|
||||
public org.bukkit.block.BlockFace getRotation() {
|
||||
int data = get(ROTATION);
|
||||
switch (data) {
|
||||
case 0x0:
|
||||
return org.bukkit.block.BlockFace.SOUTH;
|
||||
case 0x1:
|
||||
return org.bukkit.block.BlockFace.SOUTH_SOUTH_WEST;
|
||||
case 0x2:
|
||||
return org.bukkit.block.BlockFace.SOUTH_WEST;
|
||||
case 0x3:
|
||||
return org.bukkit.block.BlockFace.WEST_SOUTH_WEST;
|
||||
case 0x4:
|
||||
return org.bukkit.block.BlockFace.WEST;
|
||||
case 0x5:
|
||||
return org.bukkit.block.BlockFace.WEST_NORTH_WEST;
|
||||
case 0x6:
|
||||
return org.bukkit.block.BlockFace.NORTH_WEST;
|
||||
case 0x7:
|
||||
return org.bukkit.block.BlockFace.NORTH_NORTH_WEST;
|
||||
case 0x8:
|
||||
return org.bukkit.block.BlockFace.NORTH;
|
||||
case 0x9:
|
||||
return org.bukkit.block.BlockFace.NORTH_NORTH_EAST;
|
||||
case 0xA:
|
||||
return org.bukkit.block.BlockFace.NORTH_EAST;
|
||||
case 0xB:
|
||||
return org.bukkit.block.BlockFace.EAST_NORTH_EAST;
|
||||
case 0xC:
|
||||
return org.bukkit.block.BlockFace.EAST;
|
||||
case 0xD:
|
||||
return org.bukkit.block.BlockFace.EAST_SOUTH_EAST;
|
||||
case 0xE:
|
||||
return org.bukkit.block.BlockFace.SOUTH_EAST;
|
||||
case 0xF:
|
||||
return org.bukkit.block.BlockFace.SOUTH_SOUTH_EAST;
|
||||
default:
|
||||
throw new IllegalArgumentException("Unknown rotation " + data);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setRotation(org.bukkit.block.BlockFace rotation) {
|
||||
int val;
|
||||
switch (rotation) {
|
||||
case SOUTH:
|
||||
val = 0x0;
|
||||
break;
|
||||
case SOUTH_SOUTH_WEST:
|
||||
val = 0x1;
|
||||
break;
|
||||
case SOUTH_WEST:
|
||||
val = 0x2;
|
||||
break;
|
||||
case WEST_SOUTH_WEST:
|
||||
val = 0x3;
|
||||
break;
|
||||
case WEST:
|
||||
val = 0x4;
|
||||
break;
|
||||
case WEST_NORTH_WEST:
|
||||
val = 0x5;
|
||||
break;
|
||||
case NORTH_WEST:
|
||||
val = 0x6;
|
||||
break;
|
||||
case NORTH_NORTH_WEST:
|
||||
val = 0x7;
|
||||
break;
|
||||
case NORTH:
|
||||
val = 0x8;
|
||||
break;
|
||||
case NORTH_NORTH_EAST:
|
||||
val = 0x9;
|
||||
break;
|
||||
case NORTH_EAST:
|
||||
val = 0xA;
|
||||
break;
|
||||
case EAST_NORTH_EAST:
|
||||
val = 0xB;
|
||||
break;
|
||||
case EAST:
|
||||
val = 0xC;
|
||||
break;
|
||||
case EAST_SOUTH_EAST:
|
||||
val = 0xD;
|
||||
break;
|
||||
case SOUTH_EAST:
|
||||
val = 0xE;
|
||||
break;
|
||||
case SOUTH_SOUTH_EAST:
|
||||
val = 0xF;
|
||||
break;
|
||||
default:
|
||||
throw new IllegalArgumentException("Illegal rotation " + rotation);
|
||||
}
|
||||
set(ROTATION, val);
|
||||
}
|
||||
|
||||
// org.bukkit.craftbukkit.block.data.CraftWaterlogged
|
||||
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateBoolean WATERLOGGED = getBoolean(net.minecraft.world.level.block.CeilingHangingSignBlock.class, "waterlogged");
|
||||
|
||||
@Override
|
||||
public boolean isWaterlogged() {
|
||||
return get(WATERLOGGED);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setWaterlogged(boolean waterlogged) {
|
||||
set(WATERLOGGED, waterlogged);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,69 @@
|
||||
/**
|
||||
* Automatically generated file, changes will be lost.
|
||||
*/
|
||||
package org.bukkit.craftbukkit.block.impl;
|
||||
|
||||
public final class CraftChiseledBookShelf extends org.bukkit.craftbukkit.block.data.CraftBlockData implements org.bukkit.block.data.type.ChiseledBookshelf, org.bukkit.block.data.Directional {
|
||||
|
||||
public CraftChiseledBookShelf() {
|
||||
super();
|
||||
}
|
||||
|
||||
public CraftChiseledBookShelf(net.minecraft.world.level.block.state.IBlockData state) {
|
||||
super(state);
|
||||
}
|
||||
|
||||
// org.bukkit.craftbukkit.block.data.type.CraftChiseledBookshelf
|
||||
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateBoolean[] SLOT_OCCUPIED = new net.minecraft.world.level.block.state.properties.BlockStateBoolean[]{
|
||||
getBoolean(net.minecraft.world.level.block.ChiseledBookShelfBlock.class, "slot_0_occupied"), getBoolean(net.minecraft.world.level.block.ChiseledBookShelfBlock.class, "slot_1_occupied"), getBoolean(net.minecraft.world.level.block.ChiseledBookShelfBlock.class, "slot_2_occupied"),
|
||||
getBoolean(net.minecraft.world.level.block.ChiseledBookShelfBlock.class, "slot_3_occupied"), getBoolean(net.minecraft.world.level.block.ChiseledBookShelfBlock.class, "slot_4_occupied"), getBoolean(net.minecraft.world.level.block.ChiseledBookShelfBlock.class, "slot_5_occupied")
|
||||
};
|
||||
|
||||
@Override
|
||||
public boolean isSlotOccupied(int slot) {
|
||||
return get(SLOT_OCCUPIED[slot]);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSlotOccupied(int slot, boolean has) {
|
||||
set(SLOT_OCCUPIED[slot], has);
|
||||
}
|
||||
|
||||
@Override
|
||||
public java.util.Set<Integer> getOccupiedSlots() {
|
||||
com.google.common.collect.ImmutableSet.Builder<Integer> slots = com.google.common.collect.ImmutableSet.builder();
|
||||
|
||||
for (int index = 0; index < getMaximumOccupiedSlots(); index++) {
|
||||
if (isSlotOccupied(index)) {
|
||||
slots.add(index);
|
||||
}
|
||||
}
|
||||
|
||||
return slots.build();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMaximumOccupiedSlots() {
|
||||
return SLOT_OCCUPIED.length;
|
||||
}
|
||||
|
||||
// org.bukkit.craftbukkit.block.data.CraftDirectional
|
||||
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateEnum<?> FACING = getEnum(net.minecraft.world.level.block.ChiseledBookShelfBlock.class, "facing");
|
||||
|
||||
@Override
|
||||
public org.bukkit.block.BlockFace getFacing() {
|
||||
return get(FACING, org.bukkit.block.BlockFace.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setFacing(org.bukkit.block.BlockFace facing) {
|
||||
set(FACING, facing);
|
||||
}
|
||||
|
||||
@Override
|
||||
public java.util.Set<org.bukkit.block.BlockFace> getFaces() {
|
||||
return getValues(FACING, org.bukkit.block.BlockFace.class);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
/**
|
||||
* Automatically generated file, changes will be lost.
|
||||
*/
|
||||
package org.bukkit.craftbukkit.block.impl;
|
||||
|
||||
public final class CraftPiglinWallSkull extends org.bukkit.craftbukkit.block.data.CraftBlockData implements org.bukkit.block.data.Directional {
|
||||
|
||||
public CraftPiglinWallSkull() {
|
||||
super();
|
||||
}
|
||||
|
||||
public CraftPiglinWallSkull(net.minecraft.world.level.block.state.IBlockData state) {
|
||||
super(state);
|
||||
}
|
||||
|
||||
// org.bukkit.craftbukkit.block.data.CraftDirectional
|
||||
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateEnum<?> FACING = getEnum(net.minecraft.world.level.block.PiglinWallSkullBlock.class, "facing");
|
||||
|
||||
@Override
|
||||
public org.bukkit.block.BlockFace getFacing() {
|
||||
return get(FACING, org.bukkit.block.BlockFace.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setFacing(org.bukkit.block.BlockFace facing) {
|
||||
set(FACING, facing);
|
||||
}
|
||||
|
||||
@Override
|
||||
public java.util.Set<org.bukkit.block.BlockFace> getFaces() {
|
||||
return getValues(FACING, org.bukkit.block.BlockFace.class);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
/**
|
||||
* Automatically generated file, changes will be lost.
|
||||
*/
|
||||
package org.bukkit.craftbukkit.block.impl;
|
||||
|
||||
public final class CraftWallHangingSign extends org.bukkit.craftbukkit.block.data.CraftBlockData implements org.bukkit.block.data.type.WallHangingSign, org.bukkit.block.data.Directional, org.bukkit.block.data.Waterlogged {
|
||||
|
||||
public CraftWallHangingSign() {
|
||||
super();
|
||||
}
|
||||
|
||||
public CraftWallHangingSign(net.minecraft.world.level.block.state.IBlockData state) {
|
||||
super(state);
|
||||
}
|
||||
|
||||
// org.bukkit.craftbukkit.block.data.CraftDirectional
|
||||
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateEnum<?> FACING = getEnum(net.minecraft.world.level.block.WallHangingSignBlock.class, "facing");
|
||||
|
||||
@Override
|
||||
public org.bukkit.block.BlockFace getFacing() {
|
||||
return get(FACING, org.bukkit.block.BlockFace.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setFacing(org.bukkit.block.BlockFace facing) {
|
||||
set(FACING, facing);
|
||||
}
|
||||
|
||||
@Override
|
||||
public java.util.Set<org.bukkit.block.BlockFace> getFaces() {
|
||||
return getValues(FACING, org.bukkit.block.BlockFace.class);
|
||||
}
|
||||
|
||||
// org.bukkit.craftbukkit.block.data.CraftWaterlogged
|
||||
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateBoolean WATERLOGGED = getBoolean(net.minecraft.world.level.block.WallHangingSignBlock.class, "waterlogged");
|
||||
|
||||
@Override
|
||||
public boolean isWaterlogged() {
|
||||
return get(WATERLOGGED);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setWaterlogged(boolean waterlogged) {
|
||||
set(WATERLOGGED, waterlogged);
|
||||
}
|
||||
}
|
||||
@@ -1,76 +0,0 @@
|
||||
/**
|
||||
* Automatically generated file, changes will be lost.
|
||||
*/
|
||||
package org.bukkit.craftbukkit.block.impl;
|
||||
|
||||
public final class CraftWoodButton extends org.bukkit.craftbukkit.block.data.CraftBlockData implements org.bukkit.block.data.type.Switch, org.bukkit.block.data.Directional, org.bukkit.block.data.FaceAttachable, org.bukkit.block.data.Powerable {
|
||||
|
||||
public CraftWoodButton() {
|
||||
super();
|
||||
}
|
||||
|
||||
public CraftWoodButton(net.minecraft.world.level.block.state.IBlockData state) {
|
||||
super(state);
|
||||
}
|
||||
|
||||
// org.bukkit.craftbukkit.block.data.type.CraftSwitch
|
||||
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateEnum<?> FACE = getEnum(net.minecraft.world.level.block.BlockWoodButton.class, "face");
|
||||
|
||||
@Override
|
||||
public org.bukkit.block.data.type.Switch.Face getFace() {
|
||||
return get(FACE, org.bukkit.block.data.type.Switch.Face.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setFace(org.bukkit.block.data.type.Switch.Face face) {
|
||||
set(FACE, face);
|
||||
}
|
||||
|
||||
// org.bukkit.craftbukkit.block.data.CraftDirectional
|
||||
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateEnum<?> FACING = getEnum(net.minecraft.world.level.block.BlockWoodButton.class, "facing");
|
||||
|
||||
@Override
|
||||
public org.bukkit.block.BlockFace getFacing() {
|
||||
return get(FACING, org.bukkit.block.BlockFace.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setFacing(org.bukkit.block.BlockFace facing) {
|
||||
set(FACING, facing);
|
||||
}
|
||||
|
||||
@Override
|
||||
public java.util.Set<org.bukkit.block.BlockFace> getFaces() {
|
||||
return getValues(FACING, org.bukkit.block.BlockFace.class);
|
||||
}
|
||||
|
||||
// org.bukkit.craftbukkit.block.data.CraftFaceAttachable
|
||||
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateEnum<?> ATTACH_FACE = getEnum(net.minecraft.world.level.block.BlockWoodButton.class, "face");
|
||||
|
||||
@Override
|
||||
public org.bukkit.block.data.FaceAttachable.AttachedFace getAttachedFace() {
|
||||
return get(ATTACH_FACE, org.bukkit.block.data.FaceAttachable.AttachedFace.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setAttachedFace(org.bukkit.block.data.FaceAttachable.AttachedFace face) {
|
||||
set(ATTACH_FACE, face);
|
||||
}
|
||||
|
||||
// org.bukkit.craftbukkit.block.data.CraftPowerable
|
||||
|
||||
private static final net.minecraft.world.level.block.state.properties.BlockStateBoolean POWERED = getBoolean(net.minecraft.world.level.block.BlockWoodButton.class, "powered");
|
||||
|
||||
@Override
|
||||
public boolean isPowered() {
|
||||
return get(POWERED);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPowered(boolean powered) {
|
||||
set(POWERED, powered);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user