revert range annotations and remove some leftovers

This commit is contained in:
Lulu13022002 2024-03-14 18:20:35 +01:00
parent c6fe0211b2
commit 10db421e7e
No known key found for this signature in database
GPG Key ID: 491C8F0B8ACDEB01
57 changed files with 107 additions and 459 deletions

View File

@ -9,7 +9,6 @@ import net.minecraft.world.level.block.state.properties.EnumProperty;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.type.Bamboo;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -25,16 +24,12 @@ public class CraftBambooStalk extends CraftBlockData implements Bamboo {
}
@Override
@Range(
from = 0,
to = 1
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 1) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}
@ -55,16 +50,12 @@ public class CraftBambooStalk extends CraftBlockData implements Bamboo {
}
@Override
@Range(
from = 0,
to = 1
)
public int getStage() {
return this.get(STAGE);
}
@Override
public void setStage(@Range(from = 0, to = 1) final int stage) {
public void setStage(final int stage) {
this.set(STAGE, stage);
}

View File

@ -10,7 +10,6 @@ import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.type.Beehive;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -41,16 +40,12 @@ public class CraftBeehive extends CraftBlockData implements Beehive {
}
@Override
@Range(
from = 0,
to = 5
)
public int getHoneyLevel() {
return this.get(HONEY_LEVEL);
}
@Override
public void setHoneyLevel(@Range(from = 0, to = 5) final int honeyLevel) {
public void setHoneyLevel(final int honeyLevel) {
this.set(HONEY_LEVEL, honeyLevel);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.Ageable;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftBeetroot extends CraftBlockData implements Ageable {
}
@Override
@Range(
from = 0,
to = 3
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 3) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.properties.BlockStateProperties;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.Brushable;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftBrushable extends CraftBlockData implements Brushable {
}
@Override
@Range(
from = 0,
to = 3
)
public int getDusted() {
return this.get(DUSTED);
}
@Override
public void setDusted(@Range(from = 0, to = 3) final int dusted) {
public void setDusted(final int dusted) {
this.set(DUSTED, dusted);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.Ageable;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftCactus extends CraftBlockData implements Ageable {
}
@Override
@Range(
from = 0,
to = 15
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 15) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.type.Cake;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftCake extends CraftBlockData implements Cake {
}
@Override
@Range(
from = 0,
to = 6
)
public int getBites() {
return this.get(BITES);
}
@Override
public void setBites(@Range(from = 0, to = 6) final int bites) {
public void setBites(final int bites) {
this.set(BITES, bites);
}

View File

@ -13,7 +13,6 @@ import net.minecraft.world.level.block.state.properties.SculkSensorPhase;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.type.CalibratedSculkSensor;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -48,16 +47,12 @@ public class CraftCalibratedSculkSensor extends CraftBlockData implements Calibr
}
@Override
@Range(
from = 0,
to = 15
)
public int getPower() {
return this.get(POWER);
}
@Override
public void setPower(@Range(from = 0, to = 15) final int power) {
public void setPower(final int power) {
this.set(POWER, power);
}

View File

@ -7,7 +7,6 @@ import net.minecraft.world.level.block.state.properties.BooleanProperty;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.type.Candle;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -23,16 +22,12 @@ public class CraftCandle extends CraftBlockData implements Candle {
}
@Override
@Range(
from = 1,
to = 4
)
public int getCandles() {
return this.get(CANDLES);
}
@Override
public void setCandles(@Range(from = 1, to = 4) final int candles) {
public void setCandles(final int candles) {
this.set(CANDLES, candles);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.Ageable;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftCarrot extends CraftBlockData implements Ageable {
}
@Override
@Range(
from = 0,
to = 7
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 7) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}

View File

@ -7,7 +7,6 @@ import net.minecraft.world.level.block.state.properties.BooleanProperty;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.type.CaveVines;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -21,16 +20,12 @@ public class CraftCaveVines extends CraftBlockData implements CaveVines {
}
@Override
@Range(
from = 0,
to = 25
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 25) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}

View File

@ -7,7 +7,6 @@ import net.minecraft.world.level.block.state.properties.BooleanProperty;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.type.Leaves;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -23,16 +22,12 @@ public class CraftCherryLeaves extends CraftBlockData implements Leaves {
}
@Override
@Range(
from = 1,
to = 7
)
public int getDistance() {
return this.get(DISTANCE);
}
@Override
public void setDistance(@Range(from = 1, to = 7) final int distance) {
public void setDistance(final int distance) {
this.set(DISTANCE, distance);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.Ageable;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftChorusFlower extends CraftBlockData implements Ageable {
}
@Override
@Range(
from = 0,
to = 5
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 5) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}

View File

@ -10,7 +10,6 @@ import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.type.Cocoa;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -24,16 +23,12 @@ public class CraftCocoa extends CraftBlockData implements Cocoa {
}
@Override
@Range(
from = 0,
to = 2
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 2) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.Levelled;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftComposter extends CraftBlockData implements Levelled {
}
@Override
@Range(
from = 0,
to = 8
)
public int getLevel() {
return this.get(LEVEL);
}
@Override
public void setLevel(@Range(from = 0, to = 8) final int level) {
public void setLevel(final int level) {
this.set(LEVEL, level);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.Ageable;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftCrop extends CraftBlockData implements Ageable {
}
@Override
@Range(
from = 0,
to = 7
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 7) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}

View File

@ -7,7 +7,6 @@ import net.minecraft.world.level.block.state.properties.BooleanProperty;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.type.DaylightDetector;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -31,16 +30,12 @@ public class CraftDaylightDetector extends CraftBlockData implements DaylightDet
}
@Override
@Range(
from = 0,
to = 15
)
public int getPower() {
return this.get(POWER);
}
@Override
public void setPower(@Range(from = 0, to = 15) final int power) {
public void setPower(final int power) {
this.set(POWER, power);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.type.Farmland;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftFarm extends CraftBlockData implements Farmland {
}
@Override
@Range(
from = 0,
to = 7
)
public int getMoisture() {
return this.get(MOISTURE);
}
@Override
public void setMoisture(@Range(from = 0, to = 7) final int moisture) {
public void setMoisture(final int moisture) {
this.set(MOISTURE, moisture);
}

View File

@ -14,7 +14,6 @@ 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;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -34,16 +33,12 @@ public class CraftFire extends CraftBlockData implements Fire {
}
@Override
@Range(
from = 0,
to = 15
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 15) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.Ageable;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftFrostedIce extends CraftBlockData implements Ageable {
}
@Override
@Range(
from = 0,
to = 3
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 3) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.Ageable;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftKelp extends CraftBlockData implements Ageable {
}
@Override
@Range(
from = 0,
to = 25
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 25) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.Levelled;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftLayeredCauldron extends CraftBlockData implements Levelled {
}
@Override
@Range(
from = 1,
to = 3
)
public int getLevel() {
return this.get(LEVEL);
}
@Override
public void setLevel(@Range(from = 1, to = 3) final int level) {
public void setLevel(final int level) {
this.set(LEVEL, level);
}

View File

@ -7,7 +7,6 @@ import net.minecraft.world.level.block.state.properties.BooleanProperty;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.type.Leaves;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -23,16 +22,12 @@ public class CraftLeaves extends CraftBlockData implements Leaves {
}
@Override
@Range(
from = 1,
to = 7
)
public int getDistance() {
return this.get(DISTANCE);
}
@Override
public void setDistance(@Range(from = 1, to = 7) final int distance) {
public void setDistance(final int distance) {
this.set(DISTANCE, distance);
}

View File

@ -7,7 +7,6 @@ import net.minecraft.world.level.block.state.properties.BooleanProperty;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.type.Light;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -21,16 +20,12 @@ public class CraftLight extends CraftBlockData implements Light {
}
@Override
@Range(
from = 0,
to = 15
)
public int getLevel() {
return this.get(LEVEL);
}
@Override
public void setLevel(@Range(from = 0, to = 15) final int level) {
public void setLevel(final int level) {
this.set(LEVEL, level);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.Levelled;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftLiquid extends CraftBlockData implements Levelled {
}
@Override
@Range(
from = 0,
to = 15
)
public int getLevel() {
return this.get(LEVEL);
}
@Override
public void setLevel(@Range(from = 0, to = 15) final int level) {
public void setLevel(final int level) {
this.set(LEVEL, level);
}

View File

@ -7,7 +7,6 @@ import net.minecraft.world.level.block.state.properties.BooleanProperty;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.type.Leaves;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -23,16 +22,12 @@ public class CraftMangroveLeaves extends CraftBlockData implements Leaves {
}
@Override
@Range(
from = 1,
to = 7
)
public int getDistance() {
return this.get(DISTANCE);
}
@Override
public void setDistance(@Range(from = 1, to = 7) final int distance) {
public void setDistance(final int distance) {
this.set(DISTANCE, distance);
}

View File

@ -8,7 +8,6 @@ import net.minecraft.world.level.block.state.properties.BooleanProperty;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.type.MangrovePropagule;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -26,16 +25,12 @@ public class CraftMangrovePropagule extends CraftBlockData implements MangrovePr
}
@Override
@Range(
from = 0,
to = 4
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 4) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}
@ -55,16 +50,12 @@ public class CraftMangrovePropagule extends CraftBlockData implements MangrovePr
}
@Override
@Range(
from = 0,
to = 1
)
public int getStage() {
return this.get(STAGE);
}
@Override
public void setStage(@Range(from = 0, to = 1) final int stage) {
public void setStage(final int stage) {
this.set(STAGE, stage);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.Ageable;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftNetherWart extends CraftBlockData implements Ageable {
}
@Override
@Range(
from = 0,
to = 3
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 3) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}

View File

@ -10,7 +10,6 @@ import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.type.PinkPetals;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -41,16 +40,12 @@ public class CraftPinkPetals extends CraftBlockData implements PinkPetals {
}
@Override
@Range(
from = 1,
to = 4
)
public int getFlowerAmount() {
return this.get(AMOUNT);
}
@Override
public void setFlowerAmount(@Range(from = 1, to = 4) final int flowerAmount) {
public void setFlowerAmount(final int flowerAmount) {
this.set(AMOUNT, flowerAmount);
}

View File

@ -9,7 +9,6 @@ import net.minecraft.world.level.block.state.properties.EnumProperty;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.type.PitcherCrop;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -23,16 +22,12 @@ public class CraftPitcherCrop extends CraftBlockData implements PitcherCrop {
}
@Override
@Range(
from = 0,
to = 4
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 4) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.Ageable;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftPotato extends CraftBlockData implements Ageable {
}
@Override
@Range(
from = 0,
to = 7
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 7) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}

View File

@ -15,7 +15,6 @@ 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;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -30,16 +29,12 @@ public class CraftRedStoneWire extends CraftBlockData implements RedstoneWire {
}
@Override
@Range(
from = 0,
to = 15
)
public int getPower() {
return this.get(POWER);
}
@Override
public void setPower(@Range(from = 0, to = 15) final int power) {
public void setPower(final int power) {
this.set(POWER, power);
}

View File

@ -11,7 +11,6 @@ import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.type.Repeater;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -29,16 +28,12 @@ public class CraftRepeater extends CraftBlockData implements Repeater {
}
@Override
@Range(
from = 1,
to = 4
)
public int getDelay() {
return this.get(DELAY);
}
@Override
public void setDelay(@Range(from = 1, to = 4) final int delay) {
public void setDelay(final int delay) {
this.set(DELAY, delay);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.type.RespawnAnchor;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftRespawnAnchor extends CraftBlockData implements RespawnAnchor
}
@Override
@Range(
from = 0,
to = 4
)
public int getCharges() {
return this.get(CHARGE);
}
@Override
public void setCharges(@Range(from = 0, to = 4) final int charges) {
public void setCharges(final int charges) {
this.set(CHARGE, charges);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.type.Sapling;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftSapling extends CraftBlockData implements Sapling {
}
@Override
@Range(
from = 0,
to = 1
)
public int getStage() {
return this.get(STAGE);
}
@Override
public void setStage(@Range(from = 0, to = 1) final int stage) {
public void setStage(final int stage) {
this.set(STAGE, stage);
}

View File

@ -7,7 +7,6 @@ import net.minecraft.world.level.block.state.properties.BooleanProperty;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.type.Scaffolding;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -33,16 +32,12 @@ public class CraftScaffolding extends CraftBlockData implements Scaffolding {
}
@Override
@Range(
from = 0,
to = 7
)
public int getDistance() {
return this.get(DISTANCE);
}
@Override
public void setDistance(@Range(from = 0, to = 7) final int distance) {
public void setDistance(final int distance) {
this.set(DISTANCE, distance);
}

View File

@ -10,7 +10,6 @@ import net.minecraft.world.level.block.state.properties.IntegerProperty;
import net.minecraft.world.level.block.state.properties.SculkSensorPhase;
import org.bukkit.block.data.type.SculkSensor;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -26,16 +25,12 @@ public class CraftSculkSensor extends CraftBlockData implements SculkSensor {
}
@Override
@Range(
from = 0,
to = 15
)
public int getPower() {
return this.get(POWER);
}
@Override
public void setPower(@Range(from = 0, to = 15) final int power) {
public void setPower(final int power) {
this.set(POWER, power);
}

View File

@ -7,7 +7,6 @@ import net.minecraft.world.level.block.state.properties.BooleanProperty;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.type.SeaPickle;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -21,16 +20,12 @@ public class CraftSeaPickle extends CraftBlockData implements SeaPickle {
}
@Override
@Range(
from = 1,
to = 4
)
public int getPickles() {
return this.get(PICKLES);
}
@Override
public void setPickles(@Range(from = 1, to = 4) final int pickles) {
public void setPickles(final int pickles) {
this.set(PICKLES, pickles);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.Hatchable;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftSnifferEgg extends CraftBlockData implements Hatchable {
}
@Override
@Range(
from = 0,
to = 2
)
public int getHatch() {
return this.get(HATCH);
}
@Override
public void setHatch(@Range(from = 0, to = 2) final int hatch) {
public void setHatch(final int hatch) {
this.set(HATCH, hatch);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.type.Snow;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftSnowLayer extends CraftBlockData implements Snow {
}
@Override
@Range(
from = 1,
to = 8
)
public int getLayers() {
return this.get(LAYERS);
}
@Override
public void setLayers(@Range(from = 1, to = 8) final int layers) {
public void setLayers(final int layers) {
this.set(LAYERS, layers);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.Ageable;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftStem extends CraftBlockData implements Ageable {
}
@Override
@Range(
from = 0,
to = 7
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 7) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.Ageable;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftSugarCane extends CraftBlockData implements Ageable {
}
@Override
@Range(
from = 0,
to = 15
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 15) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.Ageable;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftSweetBerryBush extends CraftBlockData implements Ageable {
}
@Override
@Range(
from = 0,
to = 3
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 3) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.properties.BlockStateProperties;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.AnaloguePowerable;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftTarget extends CraftBlockData implements AnaloguePowerable {
}
@Override
@Range(
from = 0,
to = 15
)
public int getPower() {
return this.get(POWER);
}
@Override
public void setPower(@Range(from = 0, to = 15) final int power) {
public void setPower(final int power) {
this.set(POWER, power);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.Ageable;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftTorchflowerCrop extends CraftBlockData implements Ageable {
}
@Override
@Range(
from = 0,
to = 1
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 1) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.type.TurtleEgg;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -20,16 +19,12 @@ public class CraftTurtleEgg extends CraftBlockData implements TurtleEgg {
}
@Override
@Range(
from = 1,
to = 4
)
public int getEggs() {
return this.get(EGGS);
}
@Override
public void setEggs(@Range(from = 1, to = 4) final int eggs) {
public void setEggs(final int eggs) {
this.set(EGGS, eggs);
}
@ -44,16 +39,12 @@ public class CraftTurtleEgg extends CraftBlockData implements TurtleEgg {
}
@Override
@Range(
from = 0,
to = 2
)
public int getHatch() {
return this.get(HATCH);
}
@Override
public void setHatch(@Range(from = 0, to = 2) final int hatch) {
public void setHatch(final int hatch) {
this.set(HATCH, hatch);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.Ageable;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftTwistingVines extends CraftBlockData implements Ageable {
}
@Override
@Range(
from = 0,
to = 25
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 25) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.Ageable;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftWeepingVines extends CraftBlockData implements Ageable {
}
@Override
@Range(
from = 0,
to = 25
)
public int getAge() {
return this.get(AGE);
}
@Override
public void setAge(@Range(from = 0, to = 25) final int age) {
public void setAge(final int age) {
this.set(AGE, age);
}

View File

@ -6,7 +6,6 @@ import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.bukkit.block.data.AnaloguePowerable;
import org.bukkit.craftbukkit.block.data.CraftBlockData;
import org.jetbrains.annotations.Range;
@GeneratedFrom("1.20.4")
@SuppressWarnings("unused")
@ -18,16 +17,12 @@ public class CraftWeightedPressurePlate extends CraftBlockData implements Analog
}
@Override
@Range(
from = 0,
to = 15
)
public int getPower() {
return this.get(POWER);
}
@Override
public void setPower(@Range(from = 0, to = 15) final int power) {
public void setPower(final int power) {
this.set(POWER, power);
}

View File

@ -24,7 +24,6 @@ import net.minecraft.world.level.block.BrewingStandBlock;
import net.minecraft.world.level.block.ChiseledBookShelfBlock;
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.IntegerProperty;
import net.minecraft.world.level.block.state.properties.Property;
import org.bukkit.Axis;
import org.bukkit.block.BlockFace;
@ -53,38 +52,9 @@ public class CraftBlockDataGenerator<T extends BlockData> extends StructuredGene
this.blockData = blockData;
}
private static final NamingManager.AccessKeyword IS_KEYWORD = keywordGet("is");
private static final Map<Property<?>, NamingManager.AccessKeyword> FLUENT_KEYWORD = ImmutableMap.<Property<?>, NamingManager.AccessKeyword>builder()
.put(BlockStateProperties.WATERLOGGED, IS_KEYWORD)
.put(BlockStateProperties.OPEN, IS_KEYWORD)
.put(BlockStateProperties.OCCUPIED, IS_KEYWORD)
.put(BlockStateProperties.LIT, IS_KEYWORD)
.put(BlockStateProperties.DRAG, IS_KEYWORD)
.put(BlockStateProperties.ATTACH_FACE, keywordGetSet("getAttached", "setAttached")) // todo remove this once switch methods are gone
.put(BlockStateProperties.SIGNAL_FIRE, IS_KEYWORD)
.put(BlockStateProperties.UP, IS_KEYWORD)
.put(BlockStateProperties.CONDITIONAL, IS_KEYWORD)
.put(BlockStateProperties.POWERED, IS_KEYWORD)
.put(BlockStateProperties.CRAFTING, IS_KEYWORD)
.put(BlockStateProperties.TRIGGERED, IS_KEYWORD)
.put(BlockStateProperties.INVERTED, IS_KEYWORD)
.put(BlockStateProperties.CRACKED, IS_KEYWORD)
.put(BlockStateProperties.EYE, keywordGet("has"))
.put(BlockStateProperties.IN_WALL, IS_KEYWORD)
.put(BlockStateProperties.SNOWY, IS_KEYWORD)
.put(BlockStateProperties.ENABLED, IS_KEYWORD)
.put(BlockStateProperties.HANGING, IS_KEYWORD)
.put(BlockStateProperties.PERSISTENT, IS_KEYWORD)
.put(BlockStateProperties.EXTENDED, IS_KEYWORD)
.put(BlockStateProperties.LOCKED, IS_KEYWORD)
.put(BlockStateProperties.BOTTOM, IS_KEYWORD)
.put(BlockStateProperties.BLOOM, IS_KEYWORD)
.put(BlockStateProperties.UNSTABLE, IS_KEYWORD)
.put(BlockStateProperties.DISARMED, IS_KEYWORD)
.put(BlockStateProperties.ATTACHED, IS_KEYWORD)
.put(BlockStateProperties.SHORT, IS_KEYWORD)
.put(BlockStateProperties.SHRIEKING, IS_KEYWORD)
.put(BlockStateProperties.CAN_SUMMON, IS_KEYWORD)
.put(BlockStateProperties.BERRIES, keywordGet("has")) // spigot method rename
// data holder keywords is only needed for the first property they hold
.put(BrewingStandBlock.HAS_BOTTLE[0], keywordGet("has"))
@ -161,15 +131,16 @@ public class CraftBlockDataGenerator<T extends BlockData> extends StructuredGene
ConverterBase converter = Converters.getOrDefault(property, propertyMaker);
Class<?> apiClass = converter.getApiType();
NamingManager.AccessKeyword accessKeyword = FLUENT_KEYWORD.get(property);
NamingManager.AccessKeyword accessKeyword = null;
if (apiClass == Boolean.TYPE) {
accessKeyword = keywordGet("is");
}
accessKeyword = FLUENT_KEYWORD.getOrDefault(property, accessKeyword);
NamingManager naming = new NamingManager(accessKeyword, CaseFormat.LOWER_UNDERSCORE, property.getName());
// get
{
MethodSpec.Builder methodBuilder = createMethod(naming.simpleGetterName(name -> !name.startsWith("is_") && !name.startsWith("has_")));
if (property instanceof IntegerProperty intProperty && apiClass == Integer.TYPE) {
methodBuilder.addAnnotation(Annotations.intRange(intProperty.min, intProperty.max));
}
converter.convertGetter(methodBuilder, field);
methodBuilder.returns(apiClass);
@ -179,11 +150,7 @@ public class CraftBlockDataGenerator<T extends BlockData> extends StructuredGene
// set
{
String paramName = naming.paramName(apiClass);
ParameterSpec.Builder parameterBuilder = ParameterSpec.builder(apiClass, paramName, FINAL);
if (property instanceof IntegerProperty intProperty && apiClass == Integer.TYPE) {
parameterBuilder.addAnnotation(Annotations.intRange(intProperty.min, intProperty.max));
}
ParameterSpec parameter = parameterBuilder.build();
ParameterSpec parameter = ParameterSpec.builder(apiClass, paramName, FINAL).build();
MethodSpec.Builder methodBuilder = createMethod(naming.simpleSetterName(name -> !name.startsWith("is_")), apiClass).addParameter(parameter);
if (!apiClass.isPrimitive()) {
@ -210,7 +177,7 @@ public class CraftBlockDataGenerator<T extends BlockData> extends StructuredGene
Class<?> apiClass = propertyConverter.getApiType();
TypeName propertyType = propertyMaker.getPropertyType();
DataPropertyMaker dataPropertyMaker = DataPropertyMaker.make(properties, this.blockClass, fieldDataHolder, propertyType);
DataPropertyMaker dataPropertyMaker = DataPropertyMaker.make(properties, this.blockClass, fieldDataHolder, propertyType, apiClass);
FieldSpec field = dataPropertyMaker.getOrCreateField(this.blockData.fieldNames()).build();
typeBuilder.addField(field);

View File

@ -3,11 +3,8 @@ package io.papermc.generator.types.craftblockdata.property.holder;
import com.squareup.javapoet.FieldSpec;
import com.squareup.javapoet.TypeName;
import io.papermc.generator.types.craftblockdata.property.holder.appender.DataAppender;
import io.papermc.generator.types.craftblockdata.property.holder.named.ChiseledBookshelfDataPropertyWriter;
import io.papermc.generator.types.craftblockdata.property.holder.named.MultipleFaceDataPropertyWriter;
import io.papermc.generator.utils.BlockStateMapping;
import io.papermc.generator.utils.NamingManager;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
import net.minecraft.world.level.block.state.properties.Property;
import java.lang.reflect.Field;
@ -27,18 +24,22 @@ public interface DataPropertyMaker extends DataAppender {
NamingManager.AccessKeyword getKeyword();
static <T extends Property<?>> DataPropertyMaker make(Collection<T> properties, Class<?> blockClass, BlockStateMapping.FieldDataHolder fieldDataHolder, TypeName enclosedType) {
Map<String, String> FIELD_TO_BASE_NAME = Map.of(
BlockStateMapping.PIPE_FIELD_NAME, "FACE",
BlockStateMapping.CHISELED_BOOKSHELF_FIELD_NAME, "SLOT_OCCUPIED"
);
static <T extends Property<?>> DataPropertyMaker make(Collection<T> properties, Class<?> blockClass, BlockStateMapping.FieldDataHolder fieldDataHolder, TypeName enclosedType, Class<?> apiClass) {
if (fieldDataHolder.field() == null) {
return new VirtualDataPropertyWriter<>(fieldDataHolder.virtualFieldInfo(), properties, blockClass, enclosedType);
}
Field field = fieldDataHolder.field();
if (field.getName().equals(BlockStateMapping.PIPE_FIELD_NAME)) {
return new MultipleFaceDataPropertyWriter<>(properties, blockClass, field, enclosedType);
DataPropertyWriter<T> writer = new DataPropertyWriter<>(properties, blockClass, field, enclosedType);
if (apiClass == Boolean.TYPE) {
writer.setKeyword(NamingManager.keywordGet("has"));
}
if (field.getName().equals(BlockStateMapping.CHISELED_BOOKSHELF_FIELD_NAME)) {
return new ChiseledBookshelfDataPropertyWriter((Collection<BooleanProperty>) properties, blockClass, field, enclosedType);
}
return new DataPropertyWriter<>(properties, blockClass, field, enclosedType);
writer.setBaseName(FIELD_TO_BASE_NAME.getOrDefault(field.getName(), field.getName()));
return writer;
}
}

View File

@ -11,20 +11,25 @@ import com.squareup.javapoet.ParameterizedTypeName;
import com.squareup.javapoet.TypeName;
import com.squareup.javapoet.TypeSpec;
import io.papermc.generator.types.StructuredGenerator;
import io.papermc.generator.types.craftblockdata.Types;
import io.papermc.generator.types.craftblockdata.property.holder.appender.ArrayAppender;
import io.papermc.generator.types.craftblockdata.property.holder.appender.DataAppender;
import io.papermc.generator.types.craftblockdata.property.holder.appender.ListAppender;
import io.papermc.generator.types.craftblockdata.property.holder.appender.MapAppender;
import io.papermc.generator.types.craftblockdata.property.converter.ConverterBase;
import io.papermc.generator.utils.BlockStateMapping;
import io.papermc.generator.utils.ClassHelper;
import io.papermc.generator.utils.NamingManager;
import net.minecraft.core.Direction;
import net.minecraft.world.level.block.state.properties.Property;
import org.bukkit.block.BlockFace;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.lang.reflect.ParameterizedType;
import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import static javax.lang.model.element.Modifier.FINAL;
import static javax.lang.model.element.Modifier.PRIVATE;
@ -36,10 +41,13 @@ public class DataPropertyWriter<T extends Property<?>> extends DataPropertyWrite
protected DataHolderType type;
protected Class<?> indexClass;
protected TypeName fieldType;
private String baseName;
private NamingManager.AccessKeyword accessKeyword;
protected DataPropertyWriter(Collection<T> properties, Class<?> blockClass, Field field, TypeName enclosedType) {
super(properties, blockClass);
this.field = field;
this.baseName = field.getName();
this.computeTypes(field, enclosedType);
}
@ -54,7 +62,7 @@ public class DataPropertyWriter<T extends Property<?>> extends DataPropertyWrite
this.fieldType = ParameterizedTypeName.get(ClassName.get(field.getType()), enclosedType);
} else if (Map.class.isAssignableFrom(field.getType()) && field.getGenericType() instanceof ParameterizedType complexType) {
this.type = DataHolderType.MAP;
this.indexClass = (Class<?>) complexType.getActualTypeArguments()[0];
this.indexClass = ClassHelper.eraseType(complexType.getActualTypeArguments()[0]);
if (this.indexClass.isEnum()) {
this.indexClass = BlockStateMapping.ENUM_BRIDGE.getOrDefault(this.indexClass, (Class<? extends Enum<?>>) this.indexClass);
}
@ -69,7 +77,14 @@ public class DataPropertyWriter<T extends Property<?>> extends DataPropertyWrite
FieldSpec.Builder fieldBuilder = FieldSpec.builder(this.fieldType, this.field.getName(), PRIVATE, STATIC, FINAL);
if (Modifier.isPublic(this.field.getModifiers())) {
// accessible phew
fieldBuilder.initializer("$T.$N", this.blockClass, this.field.getName());
if (this.type == DataHolderType.MAP && ClassHelper.eraseType(((ParameterizedType) this.field.getGenericType()).getActualTypeArguments()[0]) == Direction.class &&
this.indexClass == BlockFace.class) { // Direction -> BlockFace
// convert the key manually only this one is needed for now
fieldBuilder.initializer("$[$T.$L.entrySet().stream()\n.collect($T.toMap(entry -> $T.notchToBlockFace(entry.getKey()), entry -> entry.getValue()))$]",
this.blockClass, this.field.getName(), Collectors.class, Types.CRAFT_BLOCK);
} else {
fieldBuilder.initializer("$T.$N", this.blockClass, this.field.getName());
}
} else {
if (this.type == DataHolderType.ARRAY || this.type == DataHolderType.LIST) {
CodeBlock.Builder code = CodeBlock.builder();
@ -96,12 +111,20 @@ public class DataPropertyWriter<T extends Property<?>> extends DataPropertyWrite
@Override
public String getBaseName() {
return this.field.getName();
return this.baseName;
}
public void setBaseName(String name) {
this.baseName = name;
}
@Override
public NamingManager.AccessKeyword getKeyword() {
return null;
return this.accessKeyword;
}
public void setKeyword(NamingManager.AccessKeyword keyword) {
this.accessKeyword = keyword;
}
private static final Map<DataHolderType, DataAppender> APPENDERS;

View File

@ -1,32 +1,27 @@
package io.papermc.generator.types.craftblockdata.property.holder;
import com.google.common.base.Preconditions;
import org.jetbrains.annotations.Contract;
public class VirtualFieldInfo {
private final String name;
private final Class<?> valueClass;
private final DataHolderType holderType;
private final String baseName;
private Class<?> keyClass;
private final Class<?> keyClass;
private VirtualFieldInfo(String name, Class<?> valueClass, DataHolderType type, String baseName) {
private VirtualFieldInfo(String name, Class<?> valueClass, DataHolderType type, String baseName, Class<?> keyClass) {
this.name = name;
this.valueClass = valueClass;
this.holderType = type;
this.baseName = baseName;
}
public static VirtualFieldInfo create(String name, Class<?> valueClass, DataHolderType type, String baseName) {
return new VirtualFieldInfo(name, valueClass, type, baseName);
}
@Contract(value = "_ -> this", mutates = "this")
public VirtualFieldInfo keyClass(Class<?> keyClass) {
Preconditions.checkState(this.holderType == DataHolderType.MAP, "Custom key class is only relevant for map structure");
this.keyClass = keyClass;
return this;
}
public static VirtualFieldInfo createCollection(String name, Class<?> valueClass, boolean isArray, String baseName) {
return new VirtualFieldInfo(name, valueClass, isArray ? DataHolderType.ARRAY : DataHolderType.LIST, baseName, null);
}
public static VirtualFieldInfo createMap(String name, Class<?> keyClass, Class<?> valueClass, String baseName) {
return new VirtualFieldInfo(name, valueClass, DataHolderType.MAP, baseName, keyClass);
}
public String getName() {

View File

@ -1,20 +0,0 @@
package io.papermc.generator.types.craftblockdata.property.holder.named;
import com.squareup.javapoet.TypeName;
import java.lang.reflect.Field;
import java.util.Collection;
import io.papermc.generator.types.craftblockdata.property.holder.DataPropertyWriter;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
public class ChiseledBookshelfDataPropertyWriter extends DataPropertyWriter<BooleanProperty> {
public ChiseledBookshelfDataPropertyWriter(final Collection<BooleanProperty> properties, final Class<?> blockClass, final Field field, final TypeName enclosedType) {
super(properties, blockClass, field, enclosedType);
}
@Override
public String getBaseName() {
String name = super.getBaseName();
return name.substring(0, name.length() - "_PROPERTIES".length());
}
}

View File

@ -1,57 +0,0 @@
package io.papermc.generator.types.craftblockdata.property.holder.named;
import com.google.common.base.Preconditions;
import com.squareup.javapoet.CodeBlock;
import com.squareup.javapoet.FieldSpec;
import com.squareup.javapoet.TypeName;
import io.papermc.generator.types.craftblockdata.Types;
import io.papermc.generator.types.craftblockdata.property.holder.DataHolderType;
import io.papermc.generator.types.craftblockdata.property.holder.DataPropertyWriter;
import io.papermc.generator.utils.NamingManager;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.util.Collection;
import java.util.Map;
import java.util.stream.Collectors;
import net.minecraft.world.level.block.RedStoneWireBlock;
import net.minecraft.world.level.block.state.properties.Property;
import static javax.lang.model.element.Modifier.FINAL;
import static javax.lang.model.element.Modifier.PRIVATE;
import static javax.lang.model.element.Modifier.STATIC;
public class MultipleFaceDataPropertyWriter<T extends Property<?>> extends DataPropertyWriter<T> { // pipe + redstone wire connection, the name seems too generic to detect the right property without doing more check there
public MultipleFaceDataPropertyWriter(final Collection<T> properties, final Class<?> blockClass, final Field field, final TypeName enclosedType) {
super(properties, blockClass, field, enclosedType);
}
@Override
public FieldSpec.Builder getOrCreateField(Map<String, String> fieldNames) {
Preconditions.checkState(this.getType() == DataHolderType.MAP, "Cannot hold multiple face in a " + this.getType());
FieldSpec.Builder fieldBuilder = FieldSpec.builder(this.fieldType, this.field.getName(), PRIVATE, STATIC, FINAL);
if (Modifier.isPublic(this.field.getModifiers())) {
// accessible phew
fieldBuilder.initializer("$[$T.$L.entrySet().stream()\n.collect($T.toMap(entry -> $T.notchToBlockFace(entry.getKey()), entry -> entry.getValue()))$]",
this.blockClass, this.field.getName(), Collectors.class, Types.CRAFT_BLOCK);
} else {
CodeBlock.Builder code = CodeBlock.builder();
this.createSyntheticMap(code, this.indexClass, fieldNames);
fieldBuilder.initializer(code.build());
}
return fieldBuilder;
}
@Override
public String getBaseName() {
return "FACE";
}
@Override
public NamingManager.AccessKeyword getKeyword() {
if (this.blockClass == RedStoneWireBlock.class) {
return null;
}
return NamingManager.keywordGet("has");
}
}

View File

@ -9,7 +9,6 @@ import org.bukkit.MinecraftExperimental;
import org.jetbrains.annotations.ApiStatus;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.Range;
public final class Annotations {
@ -55,13 +54,6 @@ public final class Annotations {
return builder.build();
}
public static AnnotationSpec intRange(final long from, final long to) {
final AnnotationSpec.Builder builder = AnnotationSpec.builder(Range.class);
builder.addMember("from", "$L", from);
builder.addMember("to", "$L", to);
return builder.build();
}
@ApiStatus.Experimental
public static final AnnotationSpec EXPERIMENTAL_API_ANNOTATION = AnnotationSpec.builder(ApiStatus.Experimental.class).build();
public static final AnnotationSpec NOT_NULL = AnnotationSpec.builder(NotNull.class).build();

View File

@ -138,7 +138,7 @@ public final class BlockStateMapping {
// virtual data that doesn't exist as constant in the source but still organized this way in the api
public static final ImmutableMultimap<VirtualFieldInfo, Property<?>> VIRTUAL_NODES = ImmutableMultimap.<VirtualFieldInfo, Property<?>>builder()
.putAll(VirtualFieldInfo.create("PROPERTY_BY_FACE", WallBlock.class, DataHolderType.MAP, "HEIGHT").keyClass(BlockFace.class),
.putAll(VirtualFieldInfo.createMap("PROPERTY_BY_FACE", BlockFace.class, WallBlock.class, "HEIGHT"),
WallBlock.EAST_WALL, WallBlock.NORTH_WALL, WallBlock.SOUTH_WALL, WallBlock.WEST_WALL)
.build();

View File

@ -2,7 +2,6 @@ public net/minecraft/server/WorldLoader loadAndReplaceLayer(Lnet/minecraft/serve
public net/minecraft/world/level/material/MapColor MATERIAL_COLORS
public net/minecraft/world/level/block/FireBlock igniteOdds
public net/minecraft/world/level/block/state/properties/IntegerProperty min
public net/minecraft/world/level/block/state/properties/IntegerProperty max
# for auto-marking experimental stuff
public net/minecraft/core/RegistrySetBuilder entries