handle group of properties, add missing methods/api

Fix wrong blockdata used in material
Mark the bundle item as experimental in that enum
This commit is contained in:
Lulu13022002 2024-03-13 18:09:06 +01:00
parent 51e1fe3dca
commit 75f4fa5413
No known key found for this signature in database
GPG Key ID: 491C8F0B8ACDEB01
191 changed files with 2973 additions and 872 deletions

View File

@ -172,6 +172,8 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla
BROWN_DYE(-1),
BRUSH(-1, 1, 64),
BUCKET(-1, 16),
@MinecraftExperimental("bundle feature")
@org.jetbrains.annotations.ApiStatus.Experimental
BUNDLE(-1, 1),
BURN_POTTERY_SHERD(-1),
CAMEL_SPAWN_EGG(-1),
@ -948,7 +950,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla
FURNACE(-1, Furnace.class),
GILDED_BLACKSTONE(-1),
GLASS(-1),
GLASS_PANE(-1, Waterlogged.class),
GLASS_PANE(-1, Fence.class),
GLOW_LICHEN(-1, GlowLichen.class),
GLOWSTONE(-1),
GOLD_BLOCK(-1),
@ -1006,7 +1008,7 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla
INFESTED_MOSSY_STONE_BRICKS(-1),
INFESTED_STONE(-1),
INFESTED_STONE_BRICKS(-1),
IRON_BARS(-1, Waterlogged.class),
IRON_BARS(-1, Fence.class),
IRON_BLOCK(-1),
IRON_DOOR(-1, Door.class),
IRON_ORE(-1),

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.AmethystClusterBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -30,6 +31,11 @@ public class CraftAmethystCluster extends CraftBlockData implements AmethystClus
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isWaterlogged() {
return this.get(WATERLOGGED);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.AnvilBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.DirectionProperty;
@ -26,4 +27,9 @@ public class CraftAnvil extends CraftBlockData implements Directional {
public void setFacing(final BlockFace blockFace) {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.AttachedStemBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.DirectionProperty;
@ -26,4 +27,9 @@ public class CraftAttachedStem extends CraftBlockData implements Directional {
public void setFacing(final BlockFace blockFace) {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
}

View File

@ -32,6 +32,11 @@ public class CraftBambooStalk extends CraftBlockData implements Bamboo {
this.set(AGE, age);
}
@Override
public int getMaximumAge() {
return AGE.max;
}
@Override
public Bamboo.Leaves getLeaves() {
return this.get(LEAVES, Bamboo.Leaves.class);
@ -51,4 +56,9 @@ public class CraftBambooStalk extends CraftBlockData implements Bamboo {
public void setStage(final int stage) {
this.set(STAGE, stage);
}
@Override
public int getMaximumStage() {
return STAGE.max;
}
}

View File

@ -26,8 +26,8 @@ public class CraftBanner extends CraftBlockData implements Rotatable {
@Override
public void setRotation(final BlockFace blockFace) {
Vector vec = blockFace.getDirection();
float angle = (float) -Math.toDegrees(Math.atan2(vec.getX(), vec.getZ()));
Vector dir = blockFace.getDirection();
float angle = (float) -Math.toDegrees(Math.atan2(dir.getX(), dir.getZ()));
this.set(ROTATION, RotationSegment.convertToSegment(angle));
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.BarrelBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -30,6 +31,11 @@ public class CraftBarrel extends CraftBlockData implements Barrel {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isOpen() {
return this.get(OPEN);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.BaseCoralWallFanBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -30,6 +31,11 @@ public class CraftBaseCoralWallFan extends CraftBlockData implements CoralWallFa
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isWaterlogged() {
return this.get(WATERLOGGED);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.BedBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BedPart;
@ -34,6 +35,11 @@ public class CraftBed extends CraftBlockData implements Bed {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isOccupied() {
return this.get(OCCUPIED);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.BeehiveBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.DirectionProperty;
@ -30,6 +31,11 @@ public class CraftBeehive extends CraftBlockData implements Beehive {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public int getHoneyLevel() {
return this.get(HONEY_LEVEL);
@ -39,4 +45,9 @@ public class CraftBeehive extends CraftBlockData implements Beehive {
public void setHoneyLevel(final int honeyLevel) {
this.set(HONEY_LEVEL, honeyLevel);
}
@Override
public int getMaximumHoneyLevel() {
return HONEY_LEVEL.max;
}
}

View File

@ -25,4 +25,9 @@ public class CraftBeetroot extends CraftBlockData implements Ageable {
public void setAge(final int age) {
this.set(AGE, age);
}
@Override
public int getMaximumAge() {
return AGE.max;
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.BellBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BellAttachType;
@ -44,6 +45,11 @@ public class CraftBell extends CraftBlockData implements Bell {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isPowered() {
return this.get(POWERED);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.BigDripleafBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BlockStateProperties;
@ -34,6 +35,11 @@ public class CraftBigDripleaf extends CraftBlockData implements BigDripleaf {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public BigDripleaf.Tilt getTilt() {
return this.get(TILT, BigDripleaf.Tilt.class);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.BigDripleafStemBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BlockStateProperties;
@ -31,6 +32,11 @@ public class CraftBigDripleafStem extends CraftBlockData implements Dripleaf {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isWaterlogged() {
return this.get(WATERLOGGED);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.BlastFurnaceBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -30,6 +31,11 @@ public class CraftBlastFurnace extends CraftBlockData implements Furnace {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isLit() {
return this.get(LIT);

View File

@ -1,6 +1,8 @@
package org.bukkit.craftbukkit.block.impl;
import com.google.common.collect.ImmutableSet;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.BrewingStandBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -10,37 +12,35 @@ import org.bukkit.craftbukkit.block.data.CraftBlockData;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
public class CraftBrewingStand extends CraftBlockData implements BrewingStand {
private static final BooleanProperty HAS_BOTTLE = BrewingStandBlock.HAS_BOTTLE;
private static final BooleanProperty HAS_BOTTLE = BrewingStandBlock.HAS_BOTTLE;
private static final BooleanProperty HAS_BOTTLE = BrewingStandBlock.HAS_BOTTLE;
private static final BooleanProperty[] HAS_BOTTLE = BrewingStandBlock.HAS_BOTTLE;
public CraftBrewingStand(BlockState state) {
super(state);
}
public boolean hasBottle0() {
return this.get(HAS_BOTTLE);
@Override
public boolean hasBottle(final int index) {
return this.get(HAS_BOTTLE[index]);
}
public void hasBottle0(final boolean hasBottle0) {
this.set(HAS_BOTTLE, hasBottle0);
@Override
public void setBottle(final int index, final boolean bottle) {
this.set(HAS_BOTTLE[index], bottle);
}
public boolean hasBottle1() {
return this.get(HAS_BOTTLE);
@Override
public Set<Integer> getBottles() {
ImmutableSet.Builder<Integer> bottles = ImmutableSet.builder();
for (int index = 0, len = HAS_BOTTLE.length; index < len; index++) {
if (this.get(HAS_BOTTLE[index])) {
bottles.add(index);
}
}
return bottles.build();
}
public void hasBottle1(final boolean hasBottle1) {
this.set(HAS_BOTTLE, hasBottle1);
}
public boolean hasBottle2() {
return this.get(HAS_BOTTLE);
}
public void hasBottle2(final boolean hasBottle2) {
this.set(HAS_BOTTLE, hasBottle2);
@Override
public int getMaximumBottles() {
return HAS_BOTTLE.length;
}
}

View File

@ -25,4 +25,9 @@ public class CraftBrushable extends CraftBlockData implements Brushable {
public void setDusted(final int dusted) {
this.set(DUSTED, dusted);
}
@Override
public int getMaximumDusted() {
return DUSTED.max;
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.ButtonBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.AttachFace;
@ -45,6 +46,11 @@ public class CraftButton extends CraftBlockData implements Switch {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isPowered() {
return this.get(POWERED);

View File

@ -25,4 +25,9 @@ public class CraftCactus extends CraftBlockData implements Ageable {
public void setAge(final int age) {
this.set(AGE, age);
}
@Override
public int getMaximumAge() {
return AGE.max;
}
}

View File

@ -25,4 +25,9 @@ public class CraftCake extends CraftBlockData implements Cake {
public void setBites(final int bites) {
this.set(BITES, bites);
}
@Override
public int getMaximumBites() {
return BITES.max;
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.CalibratedSculkSensorBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -37,6 +38,11 @@ public class CraftCalibratedSculkSensor extends CraftBlockData implements Calibr
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public int getPower() {
return this.get(POWER);
@ -47,6 +53,11 @@ public class CraftCalibratedSculkSensor extends CraftBlockData implements Calibr
this.set(POWER, power);
}
@Override
public int getMaximumPower() {
return POWER.max;
}
@Override
public org.bukkit.block.data.type.SculkSensor.Phase getSculkSensorPhase() {
return this.get(PHASE, org.bukkit.block.data.type.SculkSensor.Phase.class);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.CampfireBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -34,6 +35,11 @@ public class CraftCampfire extends CraftBlockData implements Campfire {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isLit() {
return this.get(LIT);

View File

@ -31,6 +31,16 @@ public class CraftCandle extends CraftBlockData implements Candle {
this.set(CANDLES, candles);
}
@Override
public int getMinimumCandles() {
return CANDLES.min;
}
@Override
public int getMaximumCandles() {
return CANDLES.max;
}
@Override
public boolean isLit() {
return this.get(LIT);

View File

@ -25,4 +25,9 @@ public class CraftCarrot extends CraftBlockData implements Ageable {
public void setAge(final int age) {
this.set(AGE, age);
}
@Override
public int getMaximumAge() {
return AGE.max;
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.CarvedPumpkinBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.DirectionProperty;
@ -26,4 +27,9 @@ public class CraftCarvedPumpkin extends CraftBlockData implements Directional {
public void setFacing(final BlockFace blockFace) {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
}

View File

@ -29,6 +29,11 @@ public class CraftCaveVines extends CraftBlockData implements CaveVines {
this.set(AGE, age);
}
@Override
public int getMaximumAge() {
return AGE.max;
}
@Override
public boolean hasBerries() {
return this.get(BERRIES);

View File

@ -41,8 +41,8 @@ public class CraftCeilingHangingSign extends CraftBlockData implements HangingSi
@Override
public void setRotation(final BlockFace blockFace) {
Vector vec = blockFace.getDirection();
float angle = (float) -Math.toDegrees(Math.atan2(vec.getX(), vec.getZ()));
Vector dir = blockFace.getDirection();
float angle = (float) -Math.toDegrees(Math.atan2(dir.getX(), dir.getZ()));
this.set(ROTATION, RotationSegment.convertToSegment(angle));
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.core.Direction;
import net.minecraft.world.level.block.ChainBlock;
import net.minecraft.world.level.block.state.BlockState;
@ -31,6 +32,11 @@ public class CraftChain extends CraftBlockData implements Chain {
this.set(AXIS, axis);
}
@Override
public Set<Axis> getAxes() {
return this.getValues(AXIS, Axis.class);
}
@Override
public boolean isWaterlogged() {
return this.get(WATERLOGGED);

View File

@ -31,6 +31,16 @@ public class CraftCherryLeaves extends CraftBlockData implements Leaves {
this.set(DISTANCE, distance);
}
@Override
public int getMinimumDistance() {
return DISTANCE.min;
}
@Override
public int getMaximumDistance() {
return DISTANCE.max;
}
@Override
public boolean isPersistent() {
return this.get(PERSISTENT);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.ChestBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -34,6 +35,11 @@ public class CraftChest extends CraftBlockData implements Chest {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public Chest.Type getType() {
return this.get(TYPE, Chest.Type.class);

View File

@ -1,6 +1,9 @@
package org.bukkit.craftbukkit.block.impl;
import com.google.common.collect.ImmutableSet;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.List;
import java.util.Set;
import net.minecraft.world.level.block.ChiseledBookShelfBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BlockStateProperties;
@ -15,17 +18,7 @@ import org.bukkit.craftbukkit.block.data.CraftBlockData;
public class CraftChiseledBookShelf extends CraftBlockData implements ChiseledBookshelf {
private static final DirectionProperty HORIZONTAL_FACING = BlockStateProperties.HORIZONTAL_FACING;
private static final BooleanProperty SLOT_OCCUPIED_PROPERTIES = ChiseledBookShelfBlock.SLOT_OCCUPIED_PROPERTIES;
private static final BooleanProperty SLOT_OCCUPIED_PROPERTIES = ChiseledBookShelfBlock.SLOT_OCCUPIED_PROPERTIES;
private static final BooleanProperty SLOT_OCCUPIED_PROPERTIES = ChiseledBookShelfBlock.SLOT_OCCUPIED_PROPERTIES;
private static final BooleanProperty SLOT_OCCUPIED_PROPERTIES = ChiseledBookShelfBlock.SLOT_OCCUPIED_PROPERTIES;
private static final BooleanProperty SLOT_OCCUPIED_PROPERTIES = ChiseledBookShelfBlock.SLOT_OCCUPIED_PROPERTIES;
private static final BooleanProperty SLOT_OCCUPIED_PROPERTIES = ChiseledBookShelfBlock.SLOT_OCCUPIED_PROPERTIES;
private static final List<BooleanProperty> SLOT_OCCUPIED_PROPERTIES = ChiseledBookShelfBlock.SLOT_OCCUPIED_PROPERTIES;
public CraftChiseledBookShelf(BlockState state) {
super(state);
@ -41,51 +34,34 @@ public class CraftChiseledBookShelf extends CraftBlockData implements ChiseledBo
this.set(HORIZONTAL_FACING, blockFace);
}
public boolean getSlot0Occupied() {
return this.get(SLOT_OCCUPIED_PROPERTIES);
@Override
public Set<BlockFace> getFaces() {
return this.getValues(HORIZONTAL_FACING, BlockFace.class);
}
public void setSlot0Occupied(final boolean slot0Occupied) {
this.set(SLOT_OCCUPIED_PROPERTIES, slot0Occupied);
@Override
public boolean isSlotOccupied(final int index) {
return this.get(SLOT_OCCUPIED_PROPERTIES.get(index));
}
public boolean getSlot1Occupied() {
return this.get(SLOT_OCCUPIED_PROPERTIES);
@Override
public void setSlotOccupied(final int index, final boolean slotOccupied) {
this.set(SLOT_OCCUPIED_PROPERTIES.get(index), slotOccupied);
}
public void setSlot1Occupied(final boolean slot1Occupied) {
this.set(SLOT_OCCUPIED_PROPERTIES, slot1Occupied);
@Override
public Set<Integer> getOccupiedSlots() {
ImmutableSet.Builder<Integer> slotOccupieds = ImmutableSet.builder();
for (int index = 0, size = SLOT_OCCUPIED_PROPERTIES.size(); index < size; index++) {
if (this.get(SLOT_OCCUPIED_PROPERTIES.get(index))) {
slotOccupieds.add(index);
}
}
return slotOccupieds.build();
}
public boolean getSlot2Occupied() {
return this.get(SLOT_OCCUPIED_PROPERTIES);
}
public void setSlot2Occupied(final boolean slot2Occupied) {
this.set(SLOT_OCCUPIED_PROPERTIES, slot2Occupied);
}
public boolean getSlot3Occupied() {
return this.get(SLOT_OCCUPIED_PROPERTIES);
}
public void setSlot3Occupied(final boolean slot3Occupied) {
this.set(SLOT_OCCUPIED_PROPERTIES, slot3Occupied);
}
public boolean getSlot4Occupied() {
return this.get(SLOT_OCCUPIED_PROPERTIES);
}
public void setSlot4Occupied(final boolean slot4Occupied) {
this.set(SLOT_OCCUPIED_PROPERTIES, slot4Occupied);
}
public boolean getSlot5Occupied() {
return this.get(SLOT_OCCUPIED_PROPERTIES);
}
public void setSlot5Occupied(final boolean slot5Occupied) {
this.set(SLOT_OCCUPIED_PROPERTIES, slot5Occupied);
@Override
public int getMaximumOccupiedSlots() {
return SLOT_OCCUPIED_PROPERTIES.size();
}
}

View File

@ -25,4 +25,9 @@ public class CraftChorusFlower extends CraftBlockData implements Ageable {
public void setAge(final int age) {
this.set(AGE, age);
}
@Override
public int getMaximumAge() {
return AGE.max;
}
}

View File

@ -1,76 +1,52 @@
package org.bukkit.craftbukkit.block.impl;
import com.google.common.collect.ImmutableSet;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Collections;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
import net.minecraft.world.level.block.ChorusPlantBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.MultipleFacing;
import org.bukkit.craftbukkit.block.CraftBlock;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
public class CraftChorusPlant extends CraftBlockData implements MultipleFacing {
private static final BooleanProperty DOWN = ChorusPlantBlock.DOWN;
private static final BooleanProperty EAST = ChorusPlantBlock.EAST;
private static final BooleanProperty NORTH = ChorusPlantBlock.NORTH;
private static final BooleanProperty SOUTH = ChorusPlantBlock.SOUTH;
private static final BooleanProperty UP = ChorusPlantBlock.UP;
private static final BooleanProperty WEST = ChorusPlantBlock.WEST;
private static final Map<BlockFace, BooleanProperty> PROPERTY_BY_DIRECTION = ChorusPlantBlock.PROPERTY_BY_DIRECTION.entrySet().stream()
.collect(Collectors.toMap(entry -> CraftBlock.notchToBlockFace(entry.getKey()), entry -> entry.getValue()));
public CraftChorusPlant(BlockState state) {
super(state);
}
public boolean getDown() {
return this.get(DOWN);
@Override
public boolean hasFace(final BlockFace blockFace) {
return this.get(PROPERTY_BY_DIRECTION.get(blockFace));
}
public void setDown(final boolean down) {
this.set(DOWN, down);
@Override
public void setFace(final BlockFace blockFace, final boolean face) {
this.set(PROPERTY_BY_DIRECTION.get(blockFace), face);
}
public boolean getEast() {
return this.get(EAST);
@Override
public Set<BlockFace> getFaces() {
ImmutableSet.Builder<BlockFace> faces = ImmutableSet.builder();
for (BlockFace blockFace : PROPERTY_BY_DIRECTION.keySet()) {
if (this.get(PROPERTY_BY_DIRECTION.get(blockFace))) {
faces.add(blockFace);
}
}
return faces.build();
}
public void setEast(final boolean east) {
this.set(EAST, east);
}
public boolean getNorth() {
return this.get(NORTH);
}
public void setNorth(final boolean north) {
this.set(NORTH, north);
}
public boolean getSouth() {
return this.get(SOUTH);
}
public void setSouth(final boolean south) {
this.set(SOUTH, south);
}
public boolean isUp() {
return this.get(UP);
}
public void setUp(final boolean up) {
this.set(UP, up);
}
public boolean getWest() {
return this.get(WEST);
}
public void setWest(final boolean west) {
this.set(WEST, west);
@Override
public Set<BlockFace> getAllowedFaces() {
return Collections.unmodifiableSet(PROPERTY_BY_DIRECTION.keySet());
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.CocoaBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.DirectionProperty;
@ -30,6 +31,11 @@ public class CraftCocoa extends CraftBlockData implements Cocoa {
this.set(AGE, age);
}
@Override
public int getMaximumAge() {
return AGE.max;
}
@Override
public BlockFace getFacing() {
return this.get(FACING, BlockFace.class);
@ -39,4 +45,9 @@ public class CraftCocoa extends CraftBlockData implements Cocoa {
public void setFacing(final BlockFace blockFace) {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
import net.minecraft.world.level.block.state.properties.DirectionProperty;
@ -38,4 +39,9 @@ public class CraftCommandBlock extends CraftBlockData implements CommandBlock {
public void setFacing(final BlockFace blockFace) {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.ComparatorBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -34,6 +35,11 @@ public class CraftComparator extends CraftBlockData implements Comparator {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public Comparator.Mode getMode() {
return this.get(MODE, Comparator.Mode.class);

View File

@ -25,4 +25,14 @@ public class CraftComposter extends CraftBlockData implements Levelled {
public void setLevel(final int level) {
this.set(LEVEL, level);
}
@Override
public int getMinimumLevel() {
return LEVEL.min;
}
@Override
public int getMaximumLevel() {
return LEVEL.max;
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.CoralWallFanBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -30,6 +31,11 @@ public class CraftCoralWallFan extends CraftBlockData implements CoralWallFan {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isWaterlogged() {
return this.get(WATERLOGGED);

View File

@ -25,4 +25,9 @@ public class CraftCrop extends CraftBlockData implements Ageable {
public void setAge(final int age) {
this.set(AGE, age);
}
@Override
public int getMaximumAge() {
return AGE.max;
}
}

View File

@ -38,4 +38,9 @@ public class CraftDaylightDetector extends CraftBlockData implements DaylightDet
public void setPower(final int power) {
this.set(POWER, power);
}
@Override
public int getMaximumPower() {
return POWER.max;
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.DecoratedPotBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BlockStateProperties;
@ -43,6 +44,11 @@ public class CraftDecoratedPot extends CraftBlockData implements DecoratedPot {
this.set(HORIZONTAL_FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(HORIZONTAL_FACING, BlockFace.class);
}
@Override
public boolean isWaterlogged() {
return this.get(WATERLOGGED);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.DetectorRailBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -42,6 +43,11 @@ public class CraftDetectorRail extends CraftBlockData implements RedstoneRail {
this.set(SHAPE, shape);
}
@Override
public Set<org.bukkit.block.data.Rail.Shape> getShapes() {
return this.getValues(SHAPE, org.bukkit.block.data.Rail.Shape.class);
}
@Override
public boolean isWaterlogged() {
return this.get(WATERLOGGED);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.DispenserBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -30,6 +31,11 @@ public class CraftDispenser extends CraftBlockData implements Dispenser {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isTriggered() {
return this.get(TRIGGERED);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.DoorBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -39,6 +40,11 @@ public class CraftDoor extends CraftBlockData implements Door {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public org.bukkit.block.data.Bisected.Half getHalf() {
return this.get(HALF, org.bukkit.block.data.Bisected.Half.class);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.DropperBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -30,6 +31,11 @@ public class CraftDropper extends CraftBlockData implements Dispenser {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isTriggered() {
return this.get(TRIGGERED);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.EndPortalFrameBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -39,4 +40,9 @@ public class CraftEndPortalFrame extends CraftBlockData implements EndPortalFram
public void setFacing(final BlockFace blockFace) {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.EndRodBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.DirectionProperty;
@ -26,4 +27,9 @@ public class CraftEndRod extends CraftBlockData implements Directional {
public void setFacing(final BlockFace blockFace) {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.EnderChestBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -30,6 +31,11 @@ public class CraftEnderChest extends CraftBlockData implements EnderChest {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isWaterlogged() {
return this.get(WATERLOGGED);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.EquipableCarvedPumpkinBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.DirectionProperty;
@ -26,4 +27,9 @@ public class CraftEquipableCarvedPumpkin extends CraftBlockData implements Direc
public void setFacing(final BlockFace blockFace) {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
}

View File

@ -25,4 +25,9 @@ public class CraftFarm extends CraftBlockData implements Farmland {
public void setMoisture(final int moisture) {
this.set(MOISTURE, moisture);
}
@Override
public int getMaximumMoisture() {
return MOISTURE.max;
}
}

View File

@ -1,53 +1,33 @@
package org.bukkit.craftbukkit.block.impl;
import com.google.common.collect.ImmutableSet;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Collections;
import java.util.Map;
import java.util.Set;
import net.minecraft.world.level.block.FenceBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.type.Fence;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
public class CraftFence extends CraftBlockData implements Fence {
private static final BooleanProperty EAST = FenceBlock.EAST;
private static final BooleanProperty NORTH = FenceBlock.NORTH;
private static final BooleanProperty SOUTH = FenceBlock.SOUTH;
private static final BooleanProperty WATERLOGGED = FenceBlock.WATERLOGGED;
private static final BooleanProperty WEST = FenceBlock.WEST;
private static final Map<BlockFace, BooleanProperty> PROPERTY_BY_DIRECTION = Map.of(
BlockFace.EAST, FenceBlock.EAST,
BlockFace.NORTH, FenceBlock.NORTH,
BlockFace.SOUTH, FenceBlock.SOUTH,
BlockFace.WEST, FenceBlock.WEST
);
public CraftFence(BlockState state) {
super(state);
}
public boolean getEast() {
return this.get(EAST);
}
public void setEast(final boolean east) {
this.set(EAST, east);
}
public boolean getNorth() {
return this.get(NORTH);
}
public void setNorth(final boolean north) {
this.set(NORTH, north);
}
public boolean getSouth() {
return this.get(SOUTH);
}
public void setSouth(final boolean south) {
this.set(SOUTH, south);
}
@Override
public boolean isWaterlogged() {
return this.get(WATERLOGGED);
@ -58,11 +38,29 @@ public class CraftFence extends CraftBlockData implements Fence {
this.set(WATERLOGGED, waterlogged);
}
public boolean getWest() {
return this.get(WEST);
@Override
public boolean hasFace(final BlockFace blockFace) {
return this.get(PROPERTY_BY_DIRECTION.get(blockFace));
}
public void setWest(final boolean west) {
this.set(WEST, west);
@Override
public void setFace(final BlockFace blockFace, final boolean face) {
this.set(PROPERTY_BY_DIRECTION.get(blockFace), face);
}
@Override
public Set<BlockFace> getFaces() {
ImmutableSet.Builder<BlockFace> faces = ImmutableSet.builder();
for (BlockFace blockFace : PROPERTY_BY_DIRECTION.keySet()) {
if (this.get(PROPERTY_BY_DIRECTION.get(blockFace))) {
faces.add(blockFace);
}
}
return faces.build();
}
@Override
public Set<BlockFace> getAllowedFaces() {
return Collections.unmodifiableSet(PROPERTY_BY_DIRECTION.keySet());
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.FenceGateBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -34,6 +35,11 @@ public class CraftFenceGate extends CraftBlockData implements Gate {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isInWall() {
return this.get(IN_WALL);

View File

@ -1,10 +1,15 @@
package org.bukkit.craftbukkit.block.impl;
import com.google.common.collect.ImmutableSet;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Collections;
import java.util.Map;
import java.util.Set;
import net.minecraft.world.level.block.FireBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.type.Fire;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
@ -13,15 +18,13 @@ import org.bukkit.craftbukkit.block.data.CraftBlockData;
public class CraftFire extends CraftBlockData implements Fire {
private static final IntegerProperty AGE = FireBlock.AGE;
private static final BooleanProperty EAST = FireBlock.EAST;
private static final BooleanProperty NORTH = FireBlock.NORTH;
private static final BooleanProperty SOUTH = FireBlock.SOUTH;
private static final BooleanProperty UP = FireBlock.UP;
private static final BooleanProperty WEST = FireBlock.WEST;
private static final Map<BlockFace, BooleanProperty> PROPERTY_BY_DIRECTION = Map.of(
BlockFace.EAST, FireBlock.EAST,
BlockFace.NORTH, FireBlock.NORTH,
BlockFace.SOUTH, FireBlock.SOUTH,
BlockFace.UP, FireBlock.UP,
BlockFace.WEST, FireBlock.WEST
);
public CraftFire(BlockState state) {
super(state);
@ -37,43 +40,34 @@ public class CraftFire extends CraftBlockData implements Fire {
this.set(AGE, age);
}
public boolean getEast() {
return this.get(EAST);
@Override
public int getMaximumAge() {
return AGE.max;
}
public void setEast(final boolean east) {
this.set(EAST, east);
@Override
public boolean hasFace(final BlockFace blockFace) {
return this.get(PROPERTY_BY_DIRECTION.get(blockFace));
}
public boolean getNorth() {
return this.get(NORTH);
@Override
public void setFace(final BlockFace blockFace, final boolean face) {
this.set(PROPERTY_BY_DIRECTION.get(blockFace), face);
}
public void setNorth(final boolean north) {
this.set(NORTH, north);
@Override
public Set<BlockFace> getFaces() {
ImmutableSet.Builder<BlockFace> faces = ImmutableSet.builder();
for (BlockFace blockFace : PROPERTY_BY_DIRECTION.keySet()) {
if (this.get(PROPERTY_BY_DIRECTION.get(blockFace))) {
faces.add(blockFace);
}
}
return faces.build();
}
public boolean getSouth() {
return this.get(SOUTH);
}
public void setSouth(final boolean south) {
this.set(SOUTH, south);
}
public boolean isUp() {
return this.get(UP);
}
public void setUp(final boolean up) {
this.set(UP, up);
}
public boolean getWest() {
return this.get(WEST);
}
public void setWest(final boolean west) {
this.set(WEST, west);
@Override
public Set<BlockFace> getAllowedFaces() {
return Collections.unmodifiableSet(PROPERTY_BY_DIRECTION.keySet());
}
}

View File

@ -25,4 +25,9 @@ public class CraftFrostedIce extends CraftBlockData implements Ageable {
public void setAge(final int age) {
this.set(AGE, age);
}
@Override
public int getMaximumAge() {
return AGE.max;
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.FurnaceBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -30,6 +31,11 @@ public class CraftFurnace extends CraftBlockData implements Furnace {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isLit() {
return this.get(LIT);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.GlazedTerracottaBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.DirectionProperty;
@ -26,4 +27,9 @@ public class CraftGlazedTerracotta extends CraftBlockData implements Directional
public void setFacing(final BlockFace blockFace) {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
}

View File

@ -1,73 +1,35 @@
package org.bukkit.craftbukkit.block.impl;
import com.google.common.collect.ImmutableSet;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Collections;
import java.util.Map;
import java.util.Set;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BlockStateProperties;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.type.GlowLichen;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
public class CraftGlowLichen extends CraftBlockData implements GlowLichen {
private static final BooleanProperty DOWN = BlockStateProperties.DOWN;
private static final BooleanProperty EAST = BlockStateProperties.EAST;
private static final BooleanProperty NORTH = BlockStateProperties.NORTH;
private static final BooleanProperty SOUTH = BlockStateProperties.SOUTH;
private static final BooleanProperty UP = BlockStateProperties.UP;
private static final BooleanProperty WATERLOGGED = BlockStateProperties.WATERLOGGED;
private static final BooleanProperty WEST = BlockStateProperties.WEST;
private static final Map<BlockFace, BooleanProperty> PROPERTY_BY_DIRECTION = Map.of(
BlockFace.DOWN, BlockStateProperties.DOWN,
BlockFace.EAST, BlockStateProperties.EAST,
BlockFace.NORTH, BlockStateProperties.NORTH,
BlockFace.SOUTH, BlockStateProperties.SOUTH,
BlockFace.UP, BlockStateProperties.UP,
BlockFace.WEST, BlockStateProperties.WEST
);
public CraftGlowLichen(BlockState state) {
super(state);
}
public boolean getDown() {
return this.get(DOWN);
}
public void setDown(final boolean down) {
this.set(DOWN, down);
}
public boolean getEast() {
return this.get(EAST);
}
public void setEast(final boolean east) {
this.set(EAST, east);
}
public boolean getNorth() {
return this.get(NORTH);
}
public void setNorth(final boolean north) {
this.set(NORTH, north);
}
public boolean getSouth() {
return this.get(SOUTH);
}
public void setSouth(final boolean south) {
this.set(SOUTH, south);
}
public boolean isUp() {
return this.get(UP);
}
public void setUp(final boolean up) {
this.set(UP, up);
}
@Override
public boolean isWaterlogged() {
return this.get(WATERLOGGED);
@ -78,11 +40,29 @@ public class CraftGlowLichen extends CraftBlockData implements GlowLichen {
this.set(WATERLOGGED, waterlogged);
}
public boolean getWest() {
return this.get(WEST);
@Override
public boolean hasFace(final BlockFace blockFace) {
return this.get(PROPERTY_BY_DIRECTION.get(blockFace));
}
public void setWest(final boolean west) {
this.set(WEST, west);
@Override
public void setFace(final BlockFace blockFace, final boolean face) {
this.set(PROPERTY_BY_DIRECTION.get(blockFace), face);
}
@Override
public Set<BlockFace> getFaces() {
ImmutableSet.Builder<BlockFace> faces = ImmutableSet.builder();
for (BlockFace blockFace : PROPERTY_BY_DIRECTION.keySet()) {
if (this.get(PROPERTY_BY_DIRECTION.get(blockFace))) {
faces.add(blockFace);
}
}
return faces.build();
}
@Override
public Set<BlockFace> getAllowedFaces() {
return Collections.unmodifiableSet(PROPERTY_BY_DIRECTION.keySet());
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.GrindstoneBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.AttachFace;
@ -41,4 +42,9 @@ public class CraftGrindstone extends CraftBlockData implements Grindstone {
public void setFacing(final BlockFace blockFace) {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.core.Direction;
import net.minecraft.world.level.block.HayBlock;
import net.minecraft.world.level.block.state.BlockState;
@ -27,4 +28,9 @@ public class CraftHay extends CraftBlockData implements Orientable {
public void setAxis(final Axis axis) {
this.set(AXIS, axis);
}
@Override
public Set<Axis> getAxes() {
return this.getValues(AXIS, Axis.class);
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.HopperBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -39,4 +40,9 @@ public class CraftHopper extends CraftBlockData implements Hopper {
public void setFacing(final BlockFace blockFace) {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
}

View File

@ -1,76 +1,56 @@
package org.bukkit.craftbukkit.block.impl;
import com.google.common.collect.ImmutableSet;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Collections;
import java.util.Map;
import java.util.Set;
import net.minecraft.world.level.block.HugeMushroomBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.MultipleFacing;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
public class CraftHugeMushroom extends CraftBlockData implements MultipleFacing {
private static final BooleanProperty DOWN = HugeMushroomBlock.DOWN;
private static final BooleanProperty EAST = HugeMushroomBlock.EAST;
private static final BooleanProperty NORTH = HugeMushroomBlock.NORTH;
private static final BooleanProperty SOUTH = HugeMushroomBlock.SOUTH;
private static final BooleanProperty UP = HugeMushroomBlock.UP;
private static final BooleanProperty WEST = HugeMushroomBlock.WEST;
private static final Map<BlockFace, BooleanProperty> PROPERTY_BY_DIRECTION = Map.of(
BlockFace.DOWN, HugeMushroomBlock.DOWN,
BlockFace.EAST, HugeMushroomBlock.EAST,
BlockFace.NORTH, HugeMushroomBlock.NORTH,
BlockFace.SOUTH, HugeMushroomBlock.SOUTH,
BlockFace.UP, HugeMushroomBlock.UP,
BlockFace.WEST, HugeMushroomBlock.WEST
);
public CraftHugeMushroom(BlockState state) {
super(state);
}
public boolean getDown() {
return this.get(DOWN);
@Override
public boolean hasFace(final BlockFace blockFace) {
return this.get(PROPERTY_BY_DIRECTION.get(blockFace));
}
public void setDown(final boolean down) {
this.set(DOWN, down);
@Override
public void setFace(final BlockFace blockFace, final boolean face) {
this.set(PROPERTY_BY_DIRECTION.get(blockFace), face);
}
public boolean getEast() {
return this.get(EAST);
@Override
public Set<BlockFace> getFaces() {
ImmutableSet.Builder<BlockFace> faces = ImmutableSet.builder();
for (BlockFace blockFace : PROPERTY_BY_DIRECTION.keySet()) {
if (this.get(PROPERTY_BY_DIRECTION.get(blockFace))) {
faces.add(blockFace);
}
}
return faces.build();
}
public void setEast(final boolean east) {
this.set(EAST, east);
}
public boolean getNorth() {
return this.get(NORTH);
}
public void setNorth(final boolean north) {
this.set(NORTH, north);
}
public boolean getSouth() {
return this.get(SOUTH);
}
public void setSouth(final boolean south) {
this.set(SOUTH, south);
}
public boolean isUp() {
return this.get(UP);
}
public void setUp(final boolean up) {
this.set(UP, up);
}
public boolean getWest() {
return this.get(WEST);
}
public void setWest(final boolean west) {
this.set(WEST, west);
@Override
public Set<BlockFace> getAllowedFaces() {
return Collections.unmodifiableSet(PROPERTY_BY_DIRECTION.keySet());
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.core.Direction;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BlockStateProperties;
@ -27,4 +28,9 @@ public class CraftInfestedRotatedPillar extends CraftBlockData implements Orient
public void setAxis(final Axis axis) {
this.set(AXIS, axis);
}
@Override
public Set<Axis> getAxes() {
return this.getValues(AXIS, Axis.class);
}
}

View File

@ -1,53 +1,33 @@
package org.bukkit.craftbukkit.block.impl;
import com.google.common.collect.ImmutableSet;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Collections;
import java.util.Map;
import java.util.Set;
import net.minecraft.world.level.block.IronBarsBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
import org.bukkit.block.data.Waterlogged;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.type.Fence;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
public class CraftIronBars extends CraftBlockData implements Waterlogged {
private static final BooleanProperty EAST = IronBarsBlock.EAST;
private static final BooleanProperty NORTH = IronBarsBlock.NORTH;
private static final BooleanProperty SOUTH = IronBarsBlock.SOUTH;
public class CraftIronBars extends CraftBlockData implements Fence {
private static final BooleanProperty WATERLOGGED = IronBarsBlock.WATERLOGGED;
private static final BooleanProperty WEST = IronBarsBlock.WEST;
private static final Map<BlockFace, BooleanProperty> PROPERTY_BY_DIRECTION = Map.of(
BlockFace.EAST, IronBarsBlock.EAST,
BlockFace.NORTH, IronBarsBlock.NORTH,
BlockFace.SOUTH, IronBarsBlock.SOUTH,
BlockFace.WEST, IronBarsBlock.WEST
);
public CraftIronBars(BlockState state) {
super(state);
}
public boolean getEast() {
return this.get(EAST);
}
public void setEast(final boolean east) {
this.set(EAST, east);
}
public boolean getNorth() {
return this.get(NORTH);
}
public void setNorth(final boolean north) {
this.set(NORTH, north);
}
public boolean getSouth() {
return this.get(SOUTH);
}
public void setSouth(final boolean south) {
this.set(SOUTH, south);
}
@Override
public boolean isWaterlogged() {
return this.get(WATERLOGGED);
@ -58,11 +38,29 @@ public class CraftIronBars extends CraftBlockData implements Waterlogged {
this.set(WATERLOGGED, waterlogged);
}
public boolean getWest() {
return this.get(WEST);
@Override
public boolean hasFace(final BlockFace blockFace) {
return this.get(PROPERTY_BY_DIRECTION.get(blockFace));
}
public void setWest(final boolean west) {
this.set(WEST, west);
@Override
public void setFace(final BlockFace blockFace, final boolean face) {
this.set(PROPERTY_BY_DIRECTION.get(blockFace), face);
}
@Override
public Set<BlockFace> getFaces() {
ImmutableSet.Builder<BlockFace> faces = ImmutableSet.builder();
for (BlockFace blockFace : PROPERTY_BY_DIRECTION.keySet()) {
if (this.get(PROPERTY_BY_DIRECTION.get(blockFace))) {
faces.add(blockFace);
}
}
return faces.build();
}
@Override
public Set<BlockFace> getAllowedFaces() {
return Collections.unmodifiableSet(PROPERTY_BY_DIRECTION.keySet());
}
}

View File

@ -21,7 +21,8 @@ public class CraftJukebox extends CraftBlockData implements Jukebox {
return this.get(HAS_RECORD);
}
public void hasRecord(final boolean hasRecord) {
@Override
public void setHasRecord(final boolean hasRecord) {
this.set(HAS_RECORD, hasRecord);
}
}

View File

@ -25,4 +25,9 @@ public class CraftKelp extends CraftBlockData implements Ageable {
public void setAge(final int age) {
this.set(AGE, age);
}
@Override
public int getMaximumAge() {
return AGE.max;
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.LadderBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -30,6 +31,11 @@ public class CraftLadder extends CraftBlockData implements Ladder {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isWaterlogged() {
return this.get(WATERLOGGED);

View File

@ -25,4 +25,14 @@ public class CraftLayeredCauldron extends CraftBlockData implements Levelled {
public void setLevel(final int level) {
this.set(LEVEL, level);
}
@Override
public int getMinimumLevel() {
return LEVEL.min;
}
@Override
public int getMaximumLevel() {
return LEVEL.max;
}
}

View File

@ -31,6 +31,16 @@ public class CraftLeaves extends CraftBlockData implements Leaves {
this.set(DISTANCE, distance);
}
@Override
public int getMinimumDistance() {
return DISTANCE.min;
}
@Override
public int getMaximumDistance() {
return DISTANCE.max;
}
@Override
public boolean isPersistent() {
return this.get(PERSISTENT);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.LecternBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -32,12 +33,18 @@ public class CraftLectern extends CraftBlockData implements Lectern {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean hasBook() {
return this.get(HAS_BOOK);
}
public void hasBook(final boolean hasBook) {
@Override
public void setHasBook(final boolean hasBook) {
this.set(HAS_BOOK, hasBook);
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.LeverBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.AttachFace;
@ -45,6 +46,11 @@ public class CraftLever extends CraftBlockData implements Switch {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isPowered() {
return this.get(POWERED);

View File

@ -29,6 +29,16 @@ public class CraftLight extends CraftBlockData implements Light {
this.set(LEVEL, level);
}
@Override
public int getMinimumLevel() {
return LEVEL.min;
}
@Override
public int getMaximumLevel() {
return LEVEL.max;
}
@Override
public boolean isWaterlogged() {
return this.get(WATERLOGGED);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.LightningRodBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -32,6 +33,11 @@ public class CraftLightningRod extends CraftBlockData implements LightningRod {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isPowered() {
return this.get(POWERED);

View File

@ -25,4 +25,14 @@ public class CraftLiquid extends CraftBlockData implements Levelled {
public void setLevel(final int level) {
this.set(LEVEL, level);
}
@Override
public int getMinimumLevel() {
return LEVEL.min;
}
@Override
public int getMaximumLevel() {
return LEVEL.max;
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.LoomBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.DirectionProperty;
@ -26,4 +27,9 @@ public class CraftLoom extends CraftBlockData implements Directional {
public void setFacing(final BlockFace blockFace) {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
}

View File

@ -31,6 +31,16 @@ public class CraftMangroveLeaves extends CraftBlockData implements Leaves {
this.set(DISTANCE, distance);
}
@Override
public int getMinimumDistance() {
return DISTANCE.min;
}
@Override
public int getMaximumDistance() {
return DISTANCE.max;
}
@Override
public boolean isPersistent() {
return this.get(PERSISTENT);

View File

@ -34,6 +34,11 @@ public class CraftMangrovePropagule extends CraftBlockData implements MangrovePr
this.set(AGE, age);
}
@Override
public int getMaximumAge() {
return AGE.max;
}
@Override
public boolean isHanging() {
return this.get(HANGING);
@ -54,6 +59,11 @@ public class CraftMangrovePropagule extends CraftBlockData implements MangrovePr
this.set(STAGE, stage);
}
@Override
public int getMaximumStage() {
return STAGE.max;
}
@Override
public boolean isWaterlogged() {
return this.get(WATERLOGGED);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.piston.MovingPistonBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.DirectionProperty;
@ -31,6 +32,11 @@ public class CraftMovingPiston extends CraftBlockData implements TechnicalPiston
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public TechnicalPiston.Type getType() {
return this.get(TYPE, TechnicalPiston.Type.class);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.core.Direction;
import net.minecraft.world.level.block.NetherPortalBlock;
import net.minecraft.world.level.block.state.BlockState;
@ -27,4 +28,9 @@ public class CraftNetherPortal extends CraftBlockData implements Orientable {
public void setAxis(final Axis axis) {
this.set(AXIS, axis);
}
@Override
public Set<Axis> getAxes() {
return this.getValues(AXIS, Axis.class);
}
}

View File

@ -25,4 +25,9 @@ public class CraftNetherWart extends CraftBlockData implements Ageable {
public void setAge(final int age) {
this.set(AGE, age);
}
@Override
public int getMaximumAge() {
return AGE.max;
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.ObserverBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -30,6 +31,11 @@ public class CraftObserver extends CraftBlockData implements Observer {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isPowered() {
return this.get(POWERED);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.PiglinWallSkullBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -30,6 +31,11 @@ public class CraftPiglinWallSkull extends CraftBlockData implements SkullWall {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isPowered() {
return this.get(POWERED);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.PinkPetalsBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.DirectionProperty;
@ -30,6 +31,11 @@ public class CraftPinkPetals extends CraftBlockData implements PinkPetals {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public int getFlowerAmount() {
return this.get(AMOUNT);
@ -39,4 +45,14 @@ public class CraftPinkPetals extends CraftBlockData implements PinkPetals {
public void setFlowerAmount(final int flowerAmount) {
this.set(AMOUNT, flowerAmount);
}
@Override
public int getMinimumFlowerAmount() {
return AMOUNT.min;
}
@Override
public int getMaximumFlowerAmount() {
return AMOUNT.max;
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.piston.PistonBaseBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -39,4 +40,9 @@ public class CraftPistonBase extends CraftBlockData implements Piston {
public void setFacing(final BlockFace blockFace) {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.piston.PistonHeadBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -34,6 +35,11 @@ public class CraftPistonHead extends CraftBlockData implements PistonHead {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isShort() {
return this.get(SHORT);

View File

@ -30,6 +30,11 @@ public class CraftPitcherCrop extends CraftBlockData implements PitcherCrop {
this.set(AGE, age);
}
@Override
public int getMaximumAge() {
return AGE.max;
}
@Override
public org.bukkit.block.data.Bisected.Half getHalf() {
return this.get(HALF, org.bukkit.block.data.Bisected.Half.class);

View File

@ -39,8 +39,8 @@ public class CraftPlayerHead extends CraftBlockData implements Skull {
@Override
public void setRotation(final BlockFace blockFace) {
Vector vec = blockFace.getDirection();
float angle = (float) -Math.toDegrees(Math.atan2(vec.getX(), vec.getZ()));
Vector dir = blockFace.getDirection();
float angle = (float) -Math.toDegrees(Math.atan2(dir.getX(), dir.getZ()));
this.set(ROTATION, RotationSegment.convertToSegment(angle));
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.PlayerWallHeadBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -30,6 +31,11 @@ public class CraftPlayerWallHead extends CraftBlockData implements SkullWall {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isPowered() {
return this.get(POWERED);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.PointedDripstoneBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -44,6 +45,11 @@ public class CraftPointedDripstone extends CraftBlockData implements PointedDrip
this.set(TIP_DIRECTION, blockFace);
}
@Override
public Set<BlockFace> getVerticalDirections() {
return this.getValues(TIP_DIRECTION, BlockFace.class);
}
@Override
public boolean isWaterlogged() {
return this.get(WATERLOGGED);

View File

@ -25,4 +25,9 @@ public class CraftPotato extends CraftBlockData implements Ageable {
public void setAge(final int age) {
this.set(AGE, age);
}
@Override
public int getMaximumAge() {
return AGE.max;
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.PoweredRailBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -42,6 +43,11 @@ public class CraftPoweredRail extends CraftBlockData implements RedstoneRail {
this.set(SHAPE, shape);
}
@Override
public Set<org.bukkit.block.data.Rail.Shape> getShapes() {
return this.getValues(SHAPE, org.bukkit.block.data.Rail.Shape.class);
}
@Override
public boolean isWaterlogged() {
return this.get(WATERLOGGED);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.RailBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -30,6 +31,11 @@ public class CraftRail extends CraftBlockData implements Rail {
this.set(SHAPE, shape);
}
@Override
public Set<Rail.Shape> getShapes() {
return this.getValues(SHAPE, Rail.Shape.class);
}
@Override
public boolean isWaterlogged() {
return this.get(WATERLOGGED);

View File

@ -1,47 +1,32 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Collections;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
import net.minecraft.world.level.block.RedStoneWireBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.EnumProperty;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import net.minecraft.world.level.block.state.properties.RedstoneSide;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.type.RedstoneWire;
import org.bukkit.craftbukkit.block.CraftBlock;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
public class CraftRedStoneWire extends CraftBlockData implements RedstoneWire {
private static final EnumProperty<RedstoneSide> EAST = RedStoneWireBlock.EAST;
private static final EnumProperty<RedstoneSide> NORTH = RedStoneWireBlock.NORTH;
private static final IntegerProperty POWER = RedStoneWireBlock.POWER;
private static final EnumProperty<RedstoneSide> SOUTH = RedStoneWireBlock.SOUTH;
private static final EnumProperty<RedstoneSide> WEST = RedStoneWireBlock.WEST;
private static final Map<BlockFace, EnumProperty<RedstoneSide>> PROPERTY_BY_DIRECTION = RedStoneWireBlock.PROPERTY_BY_DIRECTION.entrySet().stream()
.collect(Collectors.toMap(entry -> CraftBlock.notchToBlockFace(entry.getKey()), entry -> entry.getValue()));
public CraftRedStoneWire(BlockState state) {
super(state);
}
public RedstoneWire.Connection getEast() {
return this.get(EAST, RedstoneWire.Connection.class);
}
public void setEast(final RedstoneWire.Connection connection) {
this.set(EAST, connection);
}
public RedstoneWire.Connection getNorth() {
return this.get(NORTH, RedstoneWire.Connection.class);
}
public void setNorth(final RedstoneWire.Connection connection) {
this.set(NORTH, connection);
}
@Override
public int getPower() {
return this.get(POWER);
@ -52,19 +37,23 @@ public class CraftRedStoneWire extends CraftBlockData implements RedstoneWire {
this.set(POWER, power);
}
public RedstoneWire.Connection getSouth() {
return this.get(SOUTH, RedstoneWire.Connection.class);
@Override
public int getMaximumPower() {
return POWER.max;
}
public void setSouth(final RedstoneWire.Connection connection) {
this.set(SOUTH, connection);
@Override
public RedstoneWire.Connection getFace(final BlockFace blockFace) {
return this.get(PROPERTY_BY_DIRECTION.get(blockFace), RedstoneWire.Connection.class);
}
public RedstoneWire.Connection getWest() {
return this.get(WEST, RedstoneWire.Connection.class);
@Override
public void setFace(final BlockFace blockFace, final RedstoneWire.Connection connection) {
this.set(PROPERTY_BY_DIRECTION.get(blockFace), connection);
}
public void setWest(final RedstoneWire.Connection connection) {
this.set(WEST, connection);
@Override
public Set<BlockFace> getAllowedFaces() {
return Collections.unmodifiableSet(PROPERTY_BY_DIRECTION.keySet());
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.RedstoneWallTorchBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -30,6 +31,11 @@ public class CraftRedstoneWallTorch extends CraftBlockData implements RedstoneWa
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isLit() {
return this.get(LIT);

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.world.level.block.RepeaterBlock;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
@ -35,6 +36,16 @@ public class CraftRepeater extends CraftBlockData implements Repeater {
this.set(DELAY, delay);
}
@Override
public int getMinimumDelay() {
return DELAY.min;
}
@Override
public int getMaximumDelay() {
return DELAY.max;
}
@Override
public BlockFace getFacing() {
return this.get(FACING, BlockFace.class);
@ -45,6 +56,11 @@ public class CraftRepeater extends CraftBlockData implements Repeater {
this.set(FACING, blockFace);
}
@Override
public Set<BlockFace> getFaces() {
return this.getValues(FACING, BlockFace.class);
}
@Override
public boolean isLocked() {
return this.get(LOCKED);

View File

@ -25,4 +25,9 @@ public class CraftRespawnAnchor extends CraftBlockData implements RespawnAnchor
public void setCharges(final int charges) {
this.set(CHARGE, charges);
}
@Override
public int getMaximumCharges() {
return CHARGE.max;
}
}

View File

@ -1,6 +1,7 @@
package org.bukkit.craftbukkit.block.impl;
import io.papermc.paper.generated.GeneratedFrom;
import java.util.Set;
import net.minecraft.core.Direction;
import net.minecraft.world.level.block.RotatedPillarBlock;
import net.minecraft.world.level.block.state.BlockState;
@ -27,4 +28,9 @@ public class CraftRotatedPillar extends CraftBlockData implements Orientable {
public void setAxis(final Axis axis) {
this.set(AXIS, axis);
}
@Override
public Set<Axis> getAxes() {
return this.getValues(AXIS, Axis.class);
}
}

View File

@ -25,4 +25,9 @@ public class CraftSapling extends CraftBlockData implements Sapling {
public void setStage(final int stage) {
this.set(STAGE, stage);
}
@Override
public int getMaximumStage() {
return STAGE.max;
}
}

View File

@ -41,6 +41,11 @@ public class CraftScaffolding extends CraftBlockData implements Scaffolding {
this.set(DISTANCE, distance);
}
@Override
public int getMaximumDistance() {
return DISTANCE.max;
}
@Override
public boolean isWaterlogged() {
return this.get(WATERLOGGED);

View File

@ -33,6 +33,11 @@ public class CraftSculkSensor extends CraftBlockData implements SculkSensor {
this.set(POWER, power);
}
@Override
public int getMaximumPower() {
return POWER.max;
}
@Override
public SculkSensor.Phase getSculkSensorPhase() {
return this.get(PHASE, SculkSensor.Phase.class);

View File

@ -20,7 +20,8 @@ public class CraftSculkShrieker extends CraftBlockData implements SculkShrieker
super(state);
}
public boolean getCanSummon() {
@Override
public boolean isCanSummon() {
return this.get(CAN_SUMMON);
}
@ -29,7 +30,8 @@ public class CraftSculkShrieker extends CraftBlockData implements SculkShrieker
this.set(CAN_SUMMON, canSummon);
}
public boolean getShrieking() {
@Override
public boolean isShrieking() {
return this.get(SHRIEKING);
}

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