Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add the Auroral Cypress Forest #166

Draft
wants to merge 32 commits into
base: dev
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
72a8951
Add dusk cypress trees, start the foliage shape
Hugman76 Nov 10, 2023
f4913e4
Implement gradient coloring for dusk cypress leaves
Hugman76 Nov 10, 2023
675649c
Work up the cypress foliage again
Hugman76 Nov 12, 2023
a144b80
Try out a new cypress foliage formula
Hugman76 Nov 13, 2023
48a9cf9
Try a better approach for cypress foliage
Hugman76 Nov 13, 2023
edd1bdd
Finalize cypress foliage shape
Hugman76 Nov 14, 2023
47448cb
Add Dusk Cypress Forest biome
Hugman76 Nov 14, 2023
0bf4cad
Tweak dusk gradient
Hugman76 Nov 14, 2023
3b24bf4
Add dusk cypress sapling texture
Hugman76 Nov 15, 2023
eb5d6c7
Change dusk cypress leaves texture
Hugman76 Nov 15, 2023
6fc22cf
Tweak the dusk gradient
Hugman76 Nov 15, 2023
3e50afb
Add Dusk Crypress translations
Hugman76 Nov 15, 2023
98fc351
Misc dusk stuff
Hugman76 Nov 15, 2023
b28b15d
Add calcite trails in the dusk cypress biome
Hugman76 Nov 16, 2023
faf10fb
Add tags for dusk cypress blocks
Hugman76 Nov 16, 2023
4f1dc11
Re-evaluate dusk cypress tree distribution
Hugman76 Nov 17, 2023
c4f755b
Add several dusk blockstates and star properties to the leaves
Hugman76 Nov 17, 2023
e49b341
Add dusk cypress boat and sign textures
Hugman76 Nov 23, 2023
18989b7
Merge branch 'refs/heads/dev' into dusk
Hugman76 Apr 12, 2024
be76023
Fix dusk
Hugman76 Apr 13, 2024
cccf74d
Rename dusk cypress to auroral cypress
Hugman76 Apr 13, 2024
5a4fbdb
More auroral stuff
Hugman76 Apr 15, 2024
0549296
Add star bits
Hugman76 Apr 21, 2024
e20bf73
Add star bits and star dust items
Hugman76 Apr 27, 2024
f0462cf
Tweak star textures
Hugman76 Apr 28, 2024
de146ee
Add 'Rock Dust Light Star' advancement
Hugman76 Apr 28, 2024
abb9740
Add recipe advancement for crafting star bits
Hugman76 Apr 28, 2024
8797e77
Tweak auroral cypress shape
Hugman76 Apr 28, 2024
3258051
Merge branch 'dev' into dusk
Hugman76 Apr 28, 2024
164218f
Fix starry leaves being persistent and waterlogged by default
Hugman76 May 5, 2024
6947a84
Merge branch 'refs/heads/dev' into dusk
Hugman76 May 9, 2024
d6931cc
Add star fragment
Hugman76 May 11, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions src/main/java/fr/hugman/promenade/Promenade.java
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
import fr.hugman.promenade.world.gen.feature.PromenadeFeatures;
import fr.hugman.promenade.world.gen.feature.PromenadePlacedFeatures;
import fr.hugman.promenade.world.gen.placement_modifier.PromenadePlacementModifierTypes;
import fr.hugman.promenade.world.gen.surface.PromenadeSurfaceBuilders;
import fr.hugman.promenade.world.gen.tree.foliage.PromenadeFoliagePlacerTypes;
import fr.hugman.promenade.world.gen.tree.trunk.PromenadeTrunkPlacerTypes;
import me.shedaniel.autoconfig.AutoConfig;
Expand Down Expand Up @@ -51,6 +52,7 @@ public void onInitialize() {
PromenadeBiomes.appendWorldGen();
PromenadePlacedFeatures.appendWorldGen();
PromenadeEntityTypes.appendWorldGen();
PromenadeSurfaceBuilders.init();

PromenadePaintingVariants.register();
}
Expand Down
16 changes: 16 additions & 0 deletions src/main/java/fr/hugman/promenade/PromenadeClient.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import fr.hugman.dawn.client.ClientRegistrar;
import fr.hugman.promenade.block.PromenadeBlocks;
import fr.hugman.promenade.boat.PromenadeBoatTypes;
import fr.hugman.promenade.client.color.world.GradientColors;
import fr.hugman.promenade.client.render.entity.CapybaraRenderer;
import fr.hugman.promenade.client.render.entity.DuckRenderer;
import fr.hugman.promenade.client.render.entity.LushCreeperRenderer;
Expand Down Expand Up @@ -46,6 +47,7 @@ public void onInitializeClient() {
ClientRegistrar.add(PromenadeBoatTypes.SAKURA);
ClientRegistrar.add(PromenadeBoatTypes.MAPLE);
ClientRegistrar.add(PromenadeBoatTypes.PALM);
ClientRegistrar.add(PromenadeBoatTypes.AURORAL_CYPRESS);
}

public static void registerRenderLayers() {
Expand Down Expand Up @@ -125,6 +127,15 @@ public static void registerRenderLayers() {
BlockRenderLayerMap.INSTANCE.putBlock(PromenadeBlocks.PALM_LEAF_PILE, RenderLayer.getCutout());


BlockRenderLayerMap.INSTANCE.putBlock(PromenadeBlocks.AURORAL_CYPRESS_DOOR, RenderLayer.getCutout());
BlockRenderLayerMap.INSTANCE.putBlock(PromenadeBlocks.AURORAL_CYPRESS_TRAPDOOR, RenderLayer.getCutout());

BlockRenderLayerMap.INSTANCE.putBlock(PromenadeBlocks.AURORAL_CYPRESS_SAPLING, RenderLayer.getCutout());
BlockRenderLayerMap.INSTANCE.putBlock(PromenadeBlocks.POTTED_AURORAL_CYPRESS_SAPLING, RenderLayer.getCutout());
BlockRenderLayerMap.INSTANCE.putBlock(PromenadeBlocks.AURORAL_CYPRESS_LEAVES, RenderLayer.getCutout());
BlockRenderLayerMap.INSTANCE.putBlock(PromenadeBlocks.AURORAL_CYPRESS_LEAF_PILE, RenderLayer.getCutout());


BlockRenderLayerMap.INSTANCE.putBlock(PromenadeBlocks.DARK_AMARANTH_DOOR, RenderLayer.getCutout());
BlockRenderLayerMap.INSTANCE.putBlock(PromenadeBlocks.DARK_AMARANTH_TRAPDOOR, RenderLayer.getCutout());

Expand All @@ -133,6 +144,9 @@ public static void registerRenderLayers() {
BlockRenderLayerMap.INSTANCE.putBlock(PromenadeBlocks.POTTED_DARK_AMARANTH_FUNGUS, RenderLayer.getCutoutMipped());

BlockRenderLayerMap.INSTANCE.putBlock(PromenadeBlocks.BLUEBERRY_BUSH, RenderLayer.getCutout());

BlockRenderLayerMap.INSTANCE.putBlock(PromenadeBlocks.STAR_BITS, RenderLayer.getCutout());
BlockRenderLayerMap.INSTANCE.putBlock(PromenadeBlocks.STAR_FRAGMENT, RenderLayer.getCutout());
}

private static final int SAP_MAPLE_COLOR = 10931465; // 'foliage_color' in 'carnelian_treeway.json'
Expand All @@ -149,6 +163,7 @@ private static void registerBlockColors() {
}
return BiomeColors.getGrassColor(world, pos);
}, PromenadeBlocks.VERMILION_CARPETED_GRASS_BLOCK, PromenadeBlocks.FULVOUS_CARPETED_GRASS_BLOCK, PromenadeBlocks.MIKADO_CARPETED_GRASS_BLOCK);
ColorProviderRegistry.BLOCK.register((state, world, pos, tintIndex) -> GradientColors.getAuroralFoliageColor(world, pos), PromenadeBlocks.AURORAL_CYPRESS_LEAVES, PromenadeBlocks.AURORAL_CYPRESS_LEAF_PILE);
}

private static void registerItemColors() {
Expand All @@ -160,6 +175,7 @@ private static void registerItemColors() {
}, PromenadeBlocks.OAK_LEAF_PILE, PromenadeBlocks.SPRUCE_LEAF_PILE, PromenadeBlocks.BIRCH_LEAF_PILE, PromenadeBlocks.JUNGLE_LEAF_PILE, PromenadeBlocks.ACACIA_LEAF_PILE, PromenadeBlocks.DARK_OAK_LEAF_PILE, PromenadeBlocks.VERMILION_CARPETED_GRASS_BLOCK, PromenadeBlocks.FULVOUS_CARPETED_GRASS_BLOCK, PromenadeBlocks.MIKADO_CARPETED_GRASS_BLOCK, PromenadeBlocks.SNOWY_SPRUCE_LEAVES);
ColorProviderRegistry.ITEM.register((stack, tintIndex) -> FoliageColors.getMangroveColor(), PromenadeBlocks.MANGROVE_LEAF_PILE);
ColorProviderRegistry.ITEM.register((stack, tintIndex) -> SAP_MAPLE_COLOR, PromenadeBlocks.SAP_MAPLE_LEAVES, PromenadeBlocks.SAP_MAPLE_LEAF_PILE);
ColorProviderRegistry.ITEM.register((stack, tintIndex) -> GradientColors.getAuroralFoliageColor(null, null), PromenadeBlocks.AURORAL_CYPRESS_LEAVES, PromenadeBlocks.AURORAL_CYPRESS_LEAF_PILE);
}

public static void registerEntityRenderers() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,10 +26,8 @@ public class ExtendedLeavesBlock extends LeavesBlock {
public ExtendedLeavesBlock(AbstractBlock.Settings settings) {
super(settings);

this.setDefaultState(this.stateManager.getDefaultState()
.with(DISTANCE, MAX_DISTANCE)
.with(PERSISTENT, false)
.with(WATERLOGGED, false));
this.setDefaultState(this.getDefaultState()
.with(DISTANCE, MAX_DISTANCE));
}

@Override
Expand Down
37 changes: 33 additions & 4 deletions src/main/java/fr/hugman/promenade/block/PromenadeBlockKeys.java
Original file line number Diff line number Diff line change
Expand Up @@ -160,10 +160,36 @@ public class PromenadeBlockKeys {
public static final RegistryKey<Block> PALM_HANGING_LEAVES = of("palm_hanging_leaves");
public static final RegistryKey<Block> PALM_LEAF_PILE = of("palm_leaf_pile");


/* ============= */
/* AMARANTH */
/* ============= */
/* =================== */
/* AURORAL CYPRESS */
/* =================== */
public static final RegistryKey<Block> STRIPPED_AURORAL_CYPRESS_LOG = of("stripped_auroral_cypress_log");
public static final RegistryKey<Block> AURORAL_CYPRESS_LOG = of("auroral_cypress_log");
public static final RegistryKey<Block> STRIPPED_AURORAL_CYPRESS_WOOD = of("stripped_auroral_cypress_wood");
public static final RegistryKey<Block> AURORAL_CYPRESS_WOOD = of("auroral_cypress_wood");
public static final RegistryKey<Block> AURORAL_CYPRESS_PLANKS = of("auroral_cypress_planks");
public static final RegistryKey<Block> AURORAL_CYPRESS_STAIRS = of("auroral_cypress_stairs");
public static final RegistryKey<Block> AURORAL_CYPRESS_SLAB = of("auroral_cypress_slab");
public static final RegistryKey<Block> AURORAL_CYPRESS_FENCE = of("auroral_cypress_fence");
public static final RegistryKey<Block> AURORAL_CYPRESS_FENCE_GATE = of("auroral_cypress_fence_gate");
public static final RegistryKey<Block> AURORAL_CYPRESS_DOOR = of("auroral_cypress_door");
public static final RegistryKey<Block> AURORAL_CYPRESS_TRAPDOOR = of("auroral_cypress_trapdoor");
public static final RegistryKey<Block> AURORAL_CYPRESS_BUTTON = of("auroral_cypress_button");
public static final RegistryKey<Block> AURORAL_CYPRESS_PRESSURE_PLATE = of("auroral_cypress_pressure_plate");
public static final RegistryKey<Block> AURORAL_CYPRESS_SIGN = of("auroral_cypress_sign");
public static final RegistryKey<Block> AURORAL_CYPRESS_WALL_SIGN = of("auroral_cypress_wall_sign");
public static final RegistryKey<Block> AURORAL_CYPRESS_HANGING_SIGN = of("auroral_cypress_hanging_sign");
public static final RegistryKey<Block> AURORAL_CYPRESS_WALL_HANGING_SIGN = of("auroral_cypress_wall_hanging_sign");

public static final RegistryKey<Block> AURORAL_CYPRESS_SAPLING = of("auroral_cypress_sapling");
public static final RegistryKey<Block> POTTED_AURORAL_CYPRESS_SAPLING = of("potted_auroral_cypress_sapling");
public static final RegistryKey<Block> AURORAL_CYPRESS_LEAVES = of("auroral_cypress_leaves");
public static final RegistryKey<Block> AURORAL_CYPRESS_LEAF_PILE = of("auroral_cypress_leaf_pile");


/* ============ */
/* AMARANTH */
/* ============ */
public static final RegistryKey<Block> BLACK_DYLIUM = of("black_dylium");
public static final RegistryKey<Block> DARK_AMARANTH_WART_BLOCK = of("dark_amaranth_wart_block");
public static final RegistryKey<Block> DARK_AMARANTH_ROOTS = of("dark_amaranth_roots");
Expand All @@ -190,6 +216,9 @@ public class PromenadeBlockKeys {
public static final RegistryKey<Block> POTTED_DARK_AMARANTH_FUNGUS = of("potted_dark_amaranth_fungus");


public static final RegistryKey<Block> STAR_BITS = of("star_bits");
public static final RegistryKey<Block> STAR_FRAGMENT = of("star_fragment");

public static final RegistryKey<Block> MOAI = of("moai");

public static final RegistryKey<Block> BLUEBERRY_BUSH = of("blueberry_bush");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@
public class PromenadeBlockProperties {
public static final BooleanProperty NATURAL = BooleanProperty.of("natural");
public static final BooleanProperty DRIP = BooleanProperty.of("drip");
public static final EnumProperty<MoaiType> MOAI_TYPE = EnumProperty.of("type", MoaiType.class);
public static final EnumProperty<MoaiType> MOAI_TYPE = EnumProperty.of("type", MoaiType.class); public static final BooleanProperty HAS_STARS = BooleanProperty.of("has_stars");
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,6 @@ public class PromenadeBlockSetTypes {
public static final BlockSetType SAKURA = BlockSetTypeBuilder.copyOf(BlockSetType.CHERRY).register(Promenade.id("sakura"));
public static final BlockSetType MAPLE = BlockSetTypeBuilder.copyOf(BlockSetType.OAK).register(Promenade.id("maple"));
public static final BlockSetType PALM = BlockSetTypeBuilder.copyOf(BlockSetType.OAK).register(Promenade.id("palm"));
public static final BlockSetType AURORAL_CYPRESS = BlockSetTypeBuilder.copyOf(BlockSetType.OAK).register(Promenade.id("auroral_cypress"));
public static final BlockSetType AMARANTH = BlockSetTypeBuilder.copyOf(BlockSetType.CRIMSON).register(Promenade.id("amaranth"));
}
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@ public class PromenadeBlockTags {
public static final TagKey<Block> LEAF_PILES = of("leaf_piles");
public static final TagKey<Block> FLOWER_PILES = of("flower_piles");

public static final TagKey<Block> AURORAL_CYPRESS_SAPLING_PLACEABLE_ON = of("placeable_on/auroral_cypress_sapling");

public static final TagKey<Block> CAN_SPREAD_BLACK_DYLIUM = of("can_spread_black_dylium");
public static final TagKey<Block> DARK_AMARANTH_FUNGUS_PLACEABLE_ON = of("placeable_on/dark_amaranth_fungus");
public static final TagKey<Block> DARK_AMARANTH_FUNGUS_GROWABLE_ON = of("growable_on/dark_amaranth_fungus");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ public class PromenadeBlockTypes {
public static final MapCodec<MapleLogBlock> MAPLE_LOG = of("maple_log", MapleLogBlock.CODEC);
public static final MapCodec<PileBlock> PILE = of("pile", PileBlock.CODEC);
public static final MapCodec<SnowyLeavesBlock> SNOWY_LEAVES = of("snowy_leaves", SnowyLeavesBlock.CODEC);
public static final MapCodec<StarryLeavesBlock> STARRY_LEAVES = of("starry_leaves", StarryLeavesBlock.CODEC);
public static final MapCodec<StrippedMapleLogBlock> STRIPPED_MAPLE_LOG = of("stripped_maple_log", StrippedMapleLogBlock.CODEC);
public static final MapCodec<WitherRosePileBlock> WITHER_ROSE_PILE = of("wither_rose_pile", WitherRosePileBlock.CODEC);

Expand Down
70 changes: 70 additions & 0 deletions src/main/java/fr/hugman/promenade/block/PromenadeBlocks.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
import fr.hugman.promenade.Promenade;
import fr.hugman.promenade.PromenadeFactory;
import fr.hugman.promenade.item.PromenadeItemKeys;
import fr.hugman.promenade.item.PromenadeItems;
import fr.hugman.promenade.particle.PromenadeParticleTypes;
import fr.hugman.promenade.sound.PromenadeSoundEvents;
import fr.hugman.promenade.village.TradeOfferUtils;
Expand Down Expand Up @@ -244,6 +245,40 @@ public class PromenadeBlocks {
public static final Block PALM_LEAF_PILE = of(PromenadeBlockKeys.PALM_LEAF_PILE, PromenadeFactory.leafPile());


/* =========== */
/* AURORAL */
/* =========== */
private static final BlockSoundGroup AURORAL_CYPRESS_WOOD_SOUNDS = BlockSoundGroup.WOOD;
private static final MapColor AURORAL_CYPRESS_BARK_COLOR = MapColor.DEEPSLATE_GRAY;
private static final MapColor AURORAL_CYPRESS_WOOD_COLOR = MapColor.TERRACOTTA_WHITE;
private static final MapColor AURORAL_CYPRESS_LEAVES_COLOR = MapColor.BLUE;


public static final Block STRIPPED_AURORAL_CYPRESS_LOG = of(PromenadeBlockKeys.STRIPPED_AURORAL_CYPRESS_LOG, new StrippedMapleLogBlock(DawnFactory.logSettings(AURORAL_CYPRESS_WOOD_COLOR, AURORAL_CYPRESS_WOOD_SOUNDS, true)));
public static final Block AURORAL_CYPRESS_LOG = of(PromenadeBlockKeys.AURORAL_CYPRESS_LOG, new MapleLogBlock(DawnFactory.logSettings(AURORAL_CYPRESS_WOOD_COLOR, AURORAL_CYPRESS_BARK_COLOR, AURORAL_CYPRESS_WOOD_SOUNDS, true).stripsInto(STRIPPED_AURORAL_CYPRESS_LOG)));
public static final Block STRIPPED_AURORAL_CYPRESS_WOOD = of(PromenadeBlockKeys.STRIPPED_AURORAL_CYPRESS_WOOD, new PillarBlock(DawnFactory.logSettings(AURORAL_CYPRESS_WOOD_COLOR, AURORAL_CYPRESS_WOOD_SOUNDS, true)));
public static final Block AURORAL_CYPRESS_WOOD = of(PromenadeBlockKeys.AURORAL_CYPRESS_WOOD, new PillarBlock(DawnFactory.logSettings(AURORAL_CYPRESS_BARK_COLOR, AURORAL_CYPRESS_WOOD_SOUNDS, true).stripsInto(STRIPPED_AURORAL_CYPRESS_WOOD)));

public static final Block AURORAL_CYPRESS_PLANKS = of(PromenadeBlockKeys.AURORAL_CYPRESS_PLANKS, DawnFactory.planks(AURORAL_CYPRESS_BARK_COLOR, AURORAL_CYPRESS_WOOD_SOUNDS, true));
public static final Block AURORAL_CYPRESS_STAIRS = of(PromenadeBlockKeys.AURORAL_CYPRESS_STAIRS, DawnFactory.stairs(AURORAL_CYPRESS_PLANKS));
public static final Block AURORAL_CYPRESS_SLAB = of(PromenadeBlockKeys.AURORAL_CYPRESS_SLAB, DawnFactory.slab(AURORAL_CYPRESS_PLANKS));
public static final Block AURORAL_CYPRESS_FENCE = of(PromenadeBlockKeys.AURORAL_CYPRESS_FENCE, DawnFactory.fence(AURORAL_CYPRESS_PLANKS));
public static final Block AURORAL_CYPRESS_FENCE_GATE = of(PromenadeBlockKeys.AURORAL_CYPRESS_FENCE_GATE, DawnFactory.fenceGate(AURORAL_CYPRESS_PLANKS, PromenadeWoodTypes.AURORAL_CYPRESS));
public static final Block AURORAL_CYPRESS_DOOR = of(PromenadeBlockKeys.AURORAL_CYPRESS_DOOR, DawnFactory.door(AURORAL_CYPRESS_PLANKS, PromenadeBlockSetTypes.AURORAL_CYPRESS));
public static final Block AURORAL_CYPRESS_TRAPDOOR = of(PromenadeBlockKeys.AURORAL_CYPRESS_TRAPDOOR, DawnFactory.trapdoor(AURORAL_CYPRESS_PLANKS, PromenadeBlockSetTypes.AURORAL_CYPRESS));
public static final Block AURORAL_CYPRESS_BUTTON = of(PromenadeBlockKeys.AURORAL_CYPRESS_BUTTON, DawnFactory.woodenButton(AURORAL_CYPRESS_PLANKS, PromenadeBlockSetTypes.AURORAL_CYPRESS));
public static final Block AURORAL_CYPRESS_PRESSURE_PLATE = of(PromenadeBlockKeys.AURORAL_CYPRESS_PRESSURE_PLATE, DawnFactory.pressurePlate(AURORAL_CYPRESS_PLANKS, PromenadeBlockSetTypes.AURORAL_CYPRESS));
public static final Block AURORAL_CYPRESS_SIGN = of(PromenadeBlockKeys.AURORAL_CYPRESS_SIGN, PromenadeFactory.sign(false, false, Promenade.id("auroral_cypress"), AURORAL_CYPRESS_PLANKS, AURORAL_CYPRESS_WOOD_SOUNDS));
public static final Block AURORAL_CYPRESS_WALL_SIGN = of(PromenadeBlockKeys.AURORAL_CYPRESS_WALL_SIGN, PromenadeFactory.sign(false, true, Promenade.id("auroral_cypress"), AURORAL_CYPRESS_PLANKS, AURORAL_CYPRESS_WOOD_SOUNDS));
public static final Block AURORAL_CYPRESS_HANGING_SIGN = of(PromenadeBlockKeys.AURORAL_CYPRESS_HANGING_SIGN, PromenadeFactory.sign(true, false, Promenade.id("auroral_cypress"), AURORAL_CYPRESS_PLANKS, BlockSoundGroup.HANGING_SIGN));
public static final Block AURORAL_CYPRESS_WALL_HANGING_SIGN = of(PromenadeBlockKeys.AURORAL_CYPRESS_WALL_HANGING_SIGN, PromenadeFactory.sign(true, true, Promenade.id("auroral_cypress"), AURORAL_CYPRESS_PLANKS, BlockSoundGroup.HANGING_SIGN));

public static final Block AURORAL_CYPRESS_SAPLING = of(PromenadeBlockKeys.AURORAL_CYPRESS_SAPLING, DawnFactory.sapling(AURORAL_CYPRESS_LEAVES_COLOR, PromenadeSaplingGenerators.AURORAL_CYPRESS_SAPLING_GENERATOR, state -> state.isIn(PromenadeBlockTags.AURORAL_CYPRESS_SAPLING_PLACEABLE_ON)));
public static final Block POTTED_AURORAL_CYPRESS_SAPLING = of(PromenadeBlockKeys.POTTED_AURORAL_CYPRESS_SAPLING, DawnFactory.potted(AURORAL_CYPRESS_SAPLING));
public static final Block AURORAL_CYPRESS_LEAVES = of(PromenadeBlockKeys.AURORAL_CYPRESS_LEAVES, StarryLeavesBlock.of(AURORAL_CYPRESS_LEAVES_COLOR));
public static final Block AURORAL_CYPRESS_LEAF_PILE = of(PromenadeBlockKeys.AURORAL_CYPRESS_LEAF_PILE, PromenadeFactory.leafPile());


/* ============ */
/* AMARANTH */
/* ============ */
Expand Down Expand Up @@ -302,10 +337,17 @@ public class PromenadeBlocks {

public static final Block BLUEBERRY_BUSH = of(PromenadeBlockKeys.BLUEBERRY_BUSH, BerryBushBlock.of(PromenadeItemKeys.BLUEBERRIES, false));

public static final Block STAR_BITS = of(PromenadeBlockKeys.STAR_BITS, StarBitsBlock.of(MapColor.TERRACOTTA_WHITE));
public static final Block STAR_FRAGMENT = of(PromenadeBlockKeys.STAR_FRAGMENT, StarFragmentBlock.of(MapColor.TERRACOTTA_WHITE));

public static <B extends Block> B of(RegistryKey<Block> key, B block) {
return Registry.register(Registries.BLOCK, key, block);
}

public static Block of(RegistryKey<Block> key, AbstractBlock.Settings settings) {
return Registry.register(Registries.BLOCK, key, new Block(settings));
}

public static void appendItemGroups() {
//TODO: optimize item groups
ItemGroupHelper.append(ItemGroups.NATURAL, e -> e.addAfter(Blocks.ANDESITE, BLUNITE, ASPHALT));
Expand Down Expand Up @@ -421,6 +463,30 @@ public static void appendItemGroups() {
e.addAfter(ACACIA_LEAF_PILE, PALM_LEAF_PILE);
});

// AURORAL CYPRESS
ItemGroupHelper.append(ItemGroups.BUILDING_BLOCKS, e -> {
e.addAfter(Blocks.CHERRY_BUTTON,
AURORAL_CYPRESS_LOG,
AURORAL_CYPRESS_WOOD,
STRIPPED_AURORAL_CYPRESS_LOG,
STRIPPED_AURORAL_CYPRESS_WOOD,
AURORAL_CYPRESS_PLANKS,
AURORAL_CYPRESS_STAIRS,
AURORAL_CYPRESS_SLAB,
AURORAL_CYPRESS_FENCE,
AURORAL_CYPRESS_FENCE_GATE,
AURORAL_CYPRESS_DOOR,
AURORAL_CYPRESS_TRAPDOOR,
AURORAL_CYPRESS_PRESSURE_PLATE,
AURORAL_CYPRESS_BUTTON);
});
ItemGroupHelper.append(ItemGroups.NATURAL, e -> {
e.addAfter(Blocks.CHERRY_LOG, AURORAL_CYPRESS_LOG);
e.addAfter(Blocks.AZALEA_LEAVES, AURORAL_CYPRESS_LEAVES);
e.addAfter(Blocks.FLOWERING_AZALEA, AURORAL_CYPRESS_SAPLING);
e.addAfter(FLOWERING_AZALEA_LEAF_PILE, AURORAL_CYPRESS_LEAF_PILE);
});

// AMARANTH
ItemGroupHelper.append(ItemGroups.BUILDING_BLOCKS, e -> e.addAfter(Blocks.WARPED_BUTTON,
DARK_AMARANTH_STEM,
Expand All @@ -445,6 +511,10 @@ public static void appendItemGroups() {
e.addAfter(Blocks.WARPED_ROOTS, DARK_AMARANTH_ROOTS);
});

// STARS
ItemGroupHelper.append(ItemGroups.NATURAL, e -> e.addAfter(Blocks.HONEY_BLOCK, STAR_BITS, STAR_FRAGMENT));
ItemGroupHelper.append(ItemGroups.INGREDIENTS, e -> e.addAfter(PromenadeItems.STAR_DUST, STAR_BITS));

ItemGroupHelper.append(ItemGroups.BUILDING_BLOCKS, e -> e.addAfter(Blocks.CUT_RED_SANDSTONE_SLAB, MOAI));
}

Expand Down
Loading