[Change] Migrated to new Bonemeal API

This commit is contained in:
Frank 2023-06-17 22:48:06 +02:00
parent 01bed5c80e
commit 4ebd7b50b0
2 changed files with 58 additions and 38 deletions

View file

@ -39,6 +39,16 @@ public class EndTags {
"bonemeal/target/dragon_bone" "bonemeal/target/dragon_bone"
); );
public static final TagKey<Block> BONEMEAL_SOURCE_WATER_GRASS = TagManager.BLOCKS.makeTag(
BetterEnd.MOD_ID,
"bonemeal/source/water_grass"
);
public static final TagKey<Block> BONEMEAL_TARGET_WATER_GRASS = TagManager.BLOCKS.makeTag(
BetterEnd.MOD_ID,
"bonemeal/target/water_grass"
);
public static void register() { public static void register() {
addEndGround(EndBlocks.THALLASIUM.ore); addEndGround(EndBlocks.THALLASIUM.ore);
addEndGround(EndBlocks.ENDSTONE_DUST); addEndGround(EndBlocks.ENDSTONE_DUST);
@ -82,6 +92,8 @@ public class EndTags {
TagManager.ITEMS.add(ALLOYING_COPPER, Items.COPPER_ORE, Items.DEEPSLATE_COPPER_ORE, Items.RAW_COPPER); TagManager.ITEMS.add(ALLOYING_COPPER, Items.COPPER_ORE, Items.DEEPSLATE_COPPER_ORE, Items.RAW_COPPER);
TagManager.ITEMS.add(ItemTags.FISHES, EndItems.END_FISH_RAW, EndItems.END_FISH_COOKED); TagManager.ITEMS.add(ItemTags.FISHES, EndItems.END_FISH_RAW, EndItems.END_FISH_COOKED);
TagManager.BLOCKS.addOtherTags(BONEMEAL_TARGET_WATER_GRASS, CommonBlockTags.END_STONES);
} }
public static void addEndGround(Block bl) { public static void addEndGround(Block bl) {

View file

@ -1,80 +1,77 @@
package org.betterx.betterend.util; package org.betterx.betterend.util;
import org.betterx.bclib.api.v2.BonemealAPI; import org.betterx.bclib.api.v3.bonemeal.BonemealAPI;
import org.betterx.betterend.blocks.basis.EndTerrainBlock; import org.betterx.bclib.api.v3.bonemeal.WaterGrassSpreader;
import org.betterx.betterend.registry.EndBlocks; import org.betterx.betterend.registry.EndBlocks;
import org.betterx.betterend.registry.EndFeatures; import org.betterx.betterend.registry.EndFeatures;
import org.betterx.betterend.registry.EndTags;
import org.betterx.worlds.together.tag.v3.TagManager;
import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.block.Blocks;
import com.google.common.collect.Lists;
import java.util.List;
public class BonemealPlants { public class BonemealPlants {
public static void init() { public static void init() {
org.betterx.bclib.api.v3.bonemeal.BonemealAPI.INSTANCE.addSpreadableFeatures( BonemealAPI.INSTANCE.addSpreadableFeatures(
EndBlocks.END_MOSS, EndBlocks.END_MOSS,
EndFeatures.BONEMEAL_END_MOSS EndFeatures.BONEMEAL_END_MOSS
); );
org.betterx.bclib.api.v3.bonemeal.BonemealAPI.INSTANCE.addSpreadableFeatures( BonemealAPI.INSTANCE.addSpreadableFeatures(
EndBlocks.RUTISCUS, EndBlocks.RUTISCUS,
EndFeatures.BONEMEAL_RUTISCUS EndFeatures.BONEMEAL_RUTISCUS
); );
org.betterx.bclib.api.v3.bonemeal.BonemealAPI.INSTANCE.addSpreadableFeatures( BonemealAPI.INSTANCE.addSpreadableFeatures(
EndBlocks.END_MYCELIUM, EndBlocks.END_MYCELIUM,
EndFeatures.BONEMEAL_END_MYCELIUM EndFeatures.BONEMEAL_END_MYCELIUM
); );
org.betterx.bclib.api.v3.bonemeal.BonemealAPI.INSTANCE.addSpreadableFeatures( BonemealAPI.INSTANCE.addSpreadableFeatures(
EndBlocks.JUNGLE_MOSS, EndBlocks.JUNGLE_MOSS,
EndFeatures.BONEMEAL_JUNGLE_MOSS EndFeatures.BONEMEAL_JUNGLE_MOSS
); );
org.betterx.bclib.api.v3.bonemeal.BonemealAPI.INSTANCE.addSpreadableFeatures( BonemealAPI.INSTANCE.addSpreadableFeatures(
EndBlocks.SANGNUM, EndBlocks.SANGNUM,
EndFeatures.BONEMEAL_SANGNUM EndFeatures.BONEMEAL_SANGNUM
); );
org.betterx.bclib.api.v3.bonemeal.BonemealAPI.INSTANCE.addSpreadableFeatures( BonemealAPI.INSTANCE.addSpreadableFeatures(
EndBlocks.MOSSY_OBSIDIAN, EndBlocks.MOSSY_OBSIDIAN,
EndFeatures.BONEMEAL_MOSSY_OBSIDIAN EndFeatures.BONEMEAL_MOSSY_OBSIDIAN
); );
org.betterx.bclib.api.v3.bonemeal.BonemealAPI.INSTANCE.addSpreadableFeatures( BonemealAPI.INSTANCE.addSpreadableFeatures(
EndBlocks.MOSSY_DRAGON_BONE, EndBlocks.MOSSY_DRAGON_BONE,
EndFeatures.BONEMEAL_MOSSY_DRAGON_BONE EndFeatures.BONEMEAL_MOSSY_DRAGON_BONE
); );
org.betterx.bclib.api.v3.bonemeal.BonemealAPI.INSTANCE.addSpreadableFeatures( BonemealAPI.INSTANCE.addSpreadableFeatures(
EndBlocks.CAVE_MOSS, EndBlocks.CAVE_MOSS,
EndFeatures.BONEMEAL_CAVE_MOSS EndFeatures.BONEMEAL_CAVE_MOSS
); );
org.betterx.bclib.api.v3.bonemeal.BonemealAPI.INSTANCE.addSpreadableFeatures( BonemealAPI.INSTANCE.addSpreadableFeatures(
EndBlocks.CHORUS_NYLIUM, EndBlocks.CHORUS_NYLIUM,
EndFeatures.BONEMEAL_CHORUS_NYLIUM EndFeatures.BONEMEAL_CHORUS_NYLIUM
); );
org.betterx.bclib.api.v3.bonemeal.BonemealAPI.INSTANCE.addSpreadableFeatures( BonemealAPI.INSTANCE.addSpreadableFeatures(
EndBlocks.CRYSTAL_MOSS, EndBlocks.CRYSTAL_MOSS,
EndFeatures.BONEMEAL_CRYSTAL_MOSS EndFeatures.BONEMEAL_CRYSTAL_MOSS
); );
org.betterx.bclib.api.v3.bonemeal.BonemealAPI.INSTANCE.addSpreadableFeatures( BonemealAPI.INSTANCE.addSpreadableFeatures(
EndBlocks.SHADOW_GRASS, EndBlocks.SHADOW_GRASS,
EndFeatures.BONEMEAL_SHADOW_GRASS EndFeatures.BONEMEAL_SHADOW_GRASS
); );
org.betterx.bclib.api.v3.bonemeal.BonemealAPI.INSTANCE.addSpreadableFeatures( BonemealAPI.INSTANCE.addSpreadableFeatures(
EndBlocks.PINK_MOSS, EndBlocks.PINK_MOSS,
EndFeatures.BONEMEAL_PINK_MOSS EndFeatures.BONEMEAL_PINK_MOSS
); );
org.betterx.bclib.api.v3.bonemeal.BonemealAPI.INSTANCE.addSpreadableFeatures( BonemealAPI.INSTANCE.addSpreadableFeatures(
EndBlocks.AMBER_MOSS, EndBlocks.AMBER_MOSS,
EndFeatures.BONEMEAL_AMBER_MOSS EndFeatures.BONEMEAL_AMBER_MOSS
); );
@ -172,25 +169,36 @@ public class BonemealPlants {
EndBlocks.CHARNIA_PURPLE, EndBlocks.CHARNIA_PURPLE,
EndBlocks.CHARNIA_RED EndBlocks.CHARNIA_RED
}; };
List<Block> terrain = Lists.newArrayList(); // List<Block> terrain = Lists.newArrayList();
EndBlocks.getModBlocks().forEach(block -> { // EndBlocks.getModBlocks().forEach(block -> {
if (block instanceof EndTerrainBlock) { // if (block instanceof EndTerrainBlock) {
terrain.add(block); // terrain.add(block);
} // }
}); // });
terrain.add(Blocks.END_STONE); // terrain.add(Blocks.END_STONE);
terrain.add(EndBlocks.ENDSTONE_DUST); // terrain.add(EndBlocks.ENDSTONE_DUST);
terrain.add(EndBlocks.CAVE_MOSS); // terrain.add(EndBlocks.CAVE_MOSS);
terrain.add(EndBlocks.SULPHURIC_ROCK.stone); // terrain.add(EndBlocks.SULPHURIC_ROCK.stone);
terrain.add(EndBlocks.VIOLECITE.stone); // terrain.add(EndBlocks.VIOLECITE.stone);
terrain.add(EndBlocks.FLAVOLITE.stone); // terrain.add(EndBlocks.FLAVOLITE.stone);
terrain.add(EndBlocks.AZURE_JADESTONE.stone); // terrain.add(EndBlocks.AZURE_JADESTONE.stone);
terrain.add(EndBlocks.VIRID_JADESTONE.stone); // terrain.add(EndBlocks.VIRID_JADESTONE.stone);
terrain.add(EndBlocks.SANDY_JADESTONE.stone); // terrain.add(EndBlocks.SANDY_JADESTONE.stone);
terrain.add(EndBlocks.BRIMSTONE); // terrain.add(EndBlocks.BRIMSTONE);
Block[] terrainBlocks = terrain.toArray(new Block[terrain.size()]); // Block[] terrainBlocks = terrain.toArray(new Block[terrain.size()]);
for (Block charnia : charnias) { for (Block charnia : charnias) {
BonemealAPI.addWaterGrass(charnia, terrainBlocks); TagManager.BLOCKS.add(EndTags.BONEMEAL_SOURCE_WATER_GRASS, charnia);
} //BonemealAPI.addWaterGrass(charnia, terrainBlocks);
}
BonemealAPI.INSTANCE.addSpreadableBlocks(
EndTags.BONEMEAL_TARGET_WATER_GRASS,
new WaterGrassSpreader(EndTags.BONEMEAL_SOURCE_WATER_GRASS)
);
BonemealAPI.INSTANCE.addSpreadableBlocks(
EndTags.BONEMEAL_TARGET_DRAGON_BONE,
EndTags.BONEMEAL_SOURCE_DRAGON_BONE
);
} }
} }