diff --git a/xplat/src/main/java/gay/pridecraft/joy/registry/JoyBlocks.java b/xplat/src/main/java/gay/pridecraft/joy/registry/JoyBlocks.java index 9e4a86c..b45716f 100644 --- a/xplat/src/main/java/gay/pridecraft/joy/registry/JoyBlocks.java +++ b/xplat/src/main/java/gay/pridecraft/joy/registry/JoyBlocks.java @@ -9,6 +9,7 @@ import net.minecraft.block.CandleBlock; import net.minecraft.block.CandleCakeBlock; import net.minecraft.block.FlowerBlock; import net.minecraft.block.FlowerPotBlock; +import net.minecraft.item.BedItem; import net.minecraft.item.BlockItem; import net.minecraft.item.Item; import net.minecraft.registry.Registries; @@ -17,160 +18,81 @@ import net.minecraft.registry.RegistryKeys; import static net.minecraft.block.AbstractBlock.Settings.copy; public final class JoyBlocks { - // region Beds - public static final Block GAY_BED = registerBlock("gay_bed", - new JoyBedBlock(copy(Blocks.RED_BED))); + // region Beds, + public static final Block + GAY_BED = registerBed("gay_bed", Blocks.RED_BED), + ENBY_BED = registerBed("enby_bed", Blocks.BLACK_BED), + INTERSEX_BED = registerBed("intersex_bed", Blocks.GREEN_BED), + AGENDER_BED = registerBed("agender_bed", Blocks.BROWN_BED), + BIGENDER_BED = registerBed("bigender_bed", Blocks.BLUE_BED), + BISEXUAL_BED = registerBed("bisexual_bed", Blocks.PURPLE_BED), + MLM_BED = registerBed("mlm_bed", Blocks.CYAN_BED), + ACE_BED = registerBed("ace_bed", Blocks.LIGHT_GRAY_BED), + ARO_BED = registerBed("aro_bed", Blocks.GRAY_BED), + APLATONIC_BED = registerBed("aplatonic_bed", Blocks.PINK_BED), + GENDER_FLUID_BED = registerBed("gender_fluid_bed", Blocks.LIME_BED), + PAN_BED = registerBed("pan_bed", Blocks.YELLOW_BED), + TRANS_BED = registerBed("trans_bed", Blocks.LIGHT_BLUE_BED), + AROACE_BED = registerBed("aroace_bed", Blocks.MAGENTA_BED), + LESBIAN_BED = registerBed("lesbian_bed", Blocks.ORANGE_BED), + PROGRESS_BED = registerBed("progress_bed", Blocks.WHITE_BED); - public static final Block ENBY_BED = registerBlock("enby_bed", - new JoyBedBlock(copy(Blocks.BLACK_BED))); - - public static final Block INTERSEX_BED = registerBlock("intersex_bed", - new JoyBedBlock(copy(Blocks.GREEN_BED))); - - public static final Block AGENDER_BED = registerBlock("agender_bed", - new JoyBedBlock(copy(Blocks.BROWN_BED))); - - public static final Block BIGENDER_BED = registerBlock("bigender_bed", - new JoyBedBlock(copy(Blocks.BLUE_BED))); - - public static final Block BISEXUAL_BED = registerBlock("bisexual_bed", - new JoyBedBlock(copy(Blocks.PURPLE_BED))); - - public static final Block MLM_BED = registerBlock("mlm_bed", - new JoyBedBlock(copy(Blocks.CYAN_BED))); - - public static final Block ACE_BED = registerBlock("ace_bed", - new JoyBedBlock(copy(Blocks.LIGHT_GRAY_BED))); - - public static final Block ARO_BED = registerBlock("aro_bed", - new JoyBedBlock(copy(Blocks.GRAY_BED))); - - public static final Block APLATONIC_BED = registerBlock("aplatonic_bed", - new JoyBedBlock(copy(Blocks.PINK_BED))); - - public static final Block GENDER_FLUID_BED = registerBlock("gender_fluid_bed", - new JoyBedBlock(copy(Blocks.LIME_BED))); - - public static final Block PAN_BED = registerBlock("pan_bed", - new JoyBedBlock(copy(Blocks.YELLOW_BED))); - - public static final Block TRANS_BED = registerBlock("trans_bed", - new JoyBedBlock(copy(Blocks.LIGHT_BLUE_BED))); - - public static final Block AROACE_BED = registerBlock("aroace_bed", - new JoyBedBlock(copy(Blocks.MAGENTA_BED))); - - public static final Block LESBIAN_BED = registerBlock("lesbian_bed", - new JoyBedBlock(copy(Blocks.ORANGE_BED))); - - public static final Block PROGRESS_BED = registerBlock("progress_bed", - new JoyBedBlock(copy(Blocks.WHITE_BED))); + private static Block registerBed(String name, Block src) { + final var block = new JoyBedBlock(copy(src)); + Pivot.INSTANCE.register(RegistryKeys.ITEM, name, new BedItem(block, new Item.Settings().maxCount(1))); + return register(name, block); + } // endregion // region Candles - public static final Block QUEER_CANDLE = registerBlock("queer_candle", - new CandleBlock(copy(Blocks.CANDLE))); + public static final Block + QUEER_CANDLE = registerCandle("queer_candle"), + GAY_CANDLE = registerCandle("gay_candle"), + ENBY_CANDLE = registerCandle("enby_candle"), + INTERSEX_CANDLE = registerCandle("intersex_candle"), + AGENDER_CANDLE = registerCandle("agender_candle"), + BIGENDER_CANDLE = registerCandle("bigender_candle"), + BISEXUAL_CANDLE = registerCandle("bisexual_candle"), + MLM_CANDLE = registerCandle("mlm_candle"), + ACE_CANDLE = registerCandle("ace_candle"), + ARO_CANDLE = registerCandle("aro_candle"), + APLATONIC_CANDLE = registerCandle("aplatonic_candle"), + GENDER_FLUID_CANDLE = registerCandle("gender_fluid_candle"), + PAN_CANDLE = registerCandle("pan_candle"), + TRANS_CANDLE = registerCandle("trans_candle"), + AROACE_CANDLE = registerCandle("aroace_candle"), + LESBIAN_CANDLE = registerCandle("lesbian_candle"), + PROGRESS_CANDLE = registerCandle("progress_candle"); - public static final Block GAY_CANDLE = registerBlock("gay_candle", - new CandleBlock(copy(Blocks.CANDLE))); - - public static final Block ENBY_CANDLE = registerBlock("enby_candle", - new CandleBlock(copy(Blocks.CANDLE))); - - public static final Block INTERSEX_CANDLE = registerBlock("intersex_candle", - new CandleBlock(copy(Blocks.CANDLE))); - - public static final Block AGENDER_CANDLE = registerBlock("agender_candle", - new CandleBlock(copy(Blocks.CANDLE))); - - public static final Block BIGENDER_CANDLE = registerBlock("bigender_candle", - new CandleBlock(copy(Blocks.CANDLE))); - - public static final Block BISEXUAL_CANDLE = registerBlock("bisexual_candle", - new CandleBlock(copy(Blocks.CANDLE))); - - public static final Block MLM_CANDLE = registerBlock("mlm_candle", - new CandleBlock(copy(Blocks.CANDLE))); - - public static final Block ACE_CANDLE = registerBlock("ace_candle", - new CandleBlock(copy(Blocks.CANDLE))); - - public static final Block ARO_CANDLE = registerBlock("aro_candle", - new CandleBlock(copy(Blocks.CANDLE))); - - public static final Block APLATONIC_CANDLE = registerBlock("aplatonic_candle", - new CandleBlock(copy(Blocks.CANDLE))); - - public static final Block GENDER_FLUID_CANDLE = registerBlock("gender_fluid_candle", - new CandleBlock(copy(Blocks.CANDLE))); - - public static final Block PAN_CANDLE = registerBlock("pan_candle", - new CandleBlock(copy(Blocks.CANDLE))); - - public static final Block TRANS_CANDLE = registerBlock("trans_candle", - new CandleBlock(copy(Blocks.CANDLE))); - - public static final Block AROACE_CANDLE = registerBlock("aroace_candle", - new CandleBlock(copy(Blocks.CANDLE))); - - public static final Block LESBIAN_CANDLE = registerBlock("lesbian_candle", - new CandleBlock(copy(Blocks.CANDLE))); - - public static final Block PROGRESS_CANDLE = registerBlock("progress_candle", - new CandleBlock(copy(Blocks.CANDLE))); + private static Block registerCandle(String name) { + return registerBlock(name, new CandleBlock(copy(Blocks.CANDLE))); + } // endregion // region Candle Cakes - public static final Block QUEER_CANDLE_CAKE = registerBlock("queer_candle_cake", - new CandleCakeBlock(QUEER_CANDLE, copy(Blocks.CANDLE_CAKE))); + public static final Block + QUEER_CANDLE_CAKE = registerCandleCake(QUEER_CANDLE), + GAY_CANDLE_CAKE = registerCandleCake(GAY_CANDLE), + ENBY_CANDLE_CAKE = registerCandleCake(ENBY_CANDLE), + INTERSEX_CANDLE_CAKE = registerCandleCake(INTERSEX_CANDLE), + AGENDER_CANDLE_CAKE = registerCandleCake(AGENDER_CANDLE), + BIGENDER_CANDLE_CAKE = registerCandleCake(BIGENDER_CANDLE), + BISEXUAL_CANDLE_CAKE = registerCandleCake(BISEXUAL_CANDLE), + MLM_CANDLE_CAKE = registerCandleCake(MLM_CANDLE), + ACE_CANDLE_CAKE = registerCandleCake(ACE_CANDLE), + ARO_CANDLE_CAKE = registerCandleCake(ARO_CANDLE), + APLATONIC_CANDLE_CAKE = registerCandleCake(APLATONIC_CANDLE), + GENDER_FLUID_CANDLE_CAKE = registerCandleCake(GENDER_FLUID_CANDLE), + PAN_CANDLE_CAKE = registerCandleCake(PAN_CANDLE), + TRANS_CANDLE_CAKE = registerCandleCake(TRANS_CANDLE), + AROACE_CANDLE_CAKE = registerCandleCake(AROACE_CANDLE), + LESBIAN_CANDLE_CAKE = registerCandleCake(LESBIAN_CANDLE), + PROGRESS_CANDLE_CAKE = registerCandleCake(PROGRESS_CANDLE); - public static final Block GAY_CANDLE_CAKE = registerBlock("gay_candle_cake", - new CandleCakeBlock(GAY_CANDLE, copy(Blocks.CANDLE_CAKE))); - - public static final Block ENBY_CANDLE_CAKE = registerBlock("enby_candle_cake", - new CandleCakeBlock(ENBY_CANDLE, copy(Blocks.CANDLE_CAKE))); - - public static final Block INTERSEX_CANDLE_CAKE = registerBlock("intersex_candle_cake", - new CandleCakeBlock(INTERSEX_CANDLE, copy(Blocks.CANDLE_CAKE))); - - public static final Block AGENDER_CANDLE_CAKE = registerBlock("agender_candle_cake", - new CandleCakeBlock(AGENDER_CANDLE, copy(Blocks.CANDLE_CAKE))); - - public static final Block BIGENDER_CANDLE_CAKE = registerBlock("bigender_candle_cake", - new CandleCakeBlock(BIGENDER_CANDLE, copy(Blocks.CANDLE_CAKE))); - - public static final Block BISEXUAL_CANDLE_CAKE = registerBlock("bisexual_candle_cake", - new CandleCakeBlock(BISEXUAL_CANDLE, copy(Blocks.CANDLE_CAKE))); - - public static final Block MLM_CANDLE_CAKE = registerBlock("mlm_candle_cake", - new CandleCakeBlock(MLM_CANDLE, copy(Blocks.CANDLE_CAKE))); - - public static final Block ACE_CANDLE_CAKE = registerBlock("ace_candle_cake", - new CandleCakeBlock(ACE_CANDLE, copy(Blocks.CANDLE_CAKE))); - - public static final Block ARO_CANDLE_CAKE = registerBlock("aro_candle_cake", - new CandleCakeBlock(ARO_CANDLE, copy(Blocks.CANDLE_CAKE))); - - public static final Block APLATONIC_CANDLE_CAKE = registerBlock("aplatonic_candle_cake", - new CandleCakeBlock(APLATONIC_CANDLE, copy(Blocks.CANDLE_CAKE))); - - public static final Block GENDER_FLUID_CANDLE_CAKE = registerBlock("gender_fluid_candle_cake", - new CandleCakeBlock(GENDER_FLUID_CANDLE, copy(Blocks.CANDLE_CAKE))); - - public static final Block PAN_CANDLE_CAKE = registerBlock("pan_candle_cake", - new CandleCakeBlock(PAN_CANDLE, copy(Blocks.CANDLE_CAKE))); - - public static final Block TRANS_CANDLE_CAKE = registerBlock("trans_candle_cake", - new CandleCakeBlock(TRANS_CANDLE, copy(Blocks.CANDLE_CAKE))); - - public static final Block AROACE_CANDLE_CAKE = registerBlock("aroace_candle_cake", - new CandleCakeBlock(AROACE_CANDLE, copy(Blocks.CANDLE_CAKE))); - - public static final Block LESBIAN_CANDLE_CAKE = registerBlock("lesbian_candle_cake", - new CandleCakeBlock(LESBIAN_CANDLE, copy(Blocks.CANDLE_CAKE))); - - public static final Block PROGRESS_CANDLE_CAKE = registerBlock("progress_candle_cake", - new CandleCakeBlock(PROGRESS_CANDLE, copy(Blocks.CANDLE_CAKE))); + private static Block registerCandleCake(Block candle) { + final var name = Registries.BLOCK.getId(candle).getPath() + "_cake"; + return registerBlock(name, new CandleCakeBlock(candle, copy(Blocks.CANDLE_CAKE))); + } // endregion public static final Block PRIDE_CAKE = registerBlock("pride_cake", @@ -202,7 +124,7 @@ public final class JoyBlocks { private static Block registerBlock(String name, Block block) { registerBlockItem(name, block); - return Pivot.INSTANCE.register(RegistryKeys.BLOCK, name, block); + return register(name, block); } private static Block register(String name, Block block) {