Adopted new TagAPI
This commit is contained in:
parent
e6ca1220a2
commit
a1c87165ae
74 changed files with 300 additions and 281 deletions
|
@ -6,9 +6,6 @@ import net.fabricmc.fabric.impl.tool.attribute.handlers.ModdedToolsVanillaBlocks
|
|||
import net.fabricmc.fabric.mixin.object.builder.AbstractBlockAccessor;
|
||||
import net.fabricmc.fabric.mixin.object.builder.AbstractBlockSettingsAccessor;
|
||||
import net.minecraft.core.Registry;
|
||||
import net.minecraft.tags.BlockTags;
|
||||
import net.minecraft.tags.ItemTags;
|
||||
import net.minecraft.tags.Tag;
|
||||
import net.minecraft.world.food.FoodProperties;
|
||||
import net.minecraft.world.item.Item;
|
||||
import net.minecraft.world.item.Items;
|
||||
|
@ -20,7 +17,14 @@ import net.minecraft.world.level.block.state.BlockBehaviour.Properties;
|
|||
import net.minecraft.world.level.material.Material;
|
||||
import ru.bclib.api.BonemealAPI;
|
||||
import ru.bclib.api.ComposterAPI;
|
||||
import ru.bclib.api.TagAPI;
|
||||
import ru.bclib.api.tag.CommonItemTags;
|
||||
import ru.bclib.api.tag.NamedBlockTags;
|
||||
import ru.bclib.api.tag.NamedCommonBlockTags;
|
||||
import ru.bclib.api.tag.NamedCommonItemTags;
|
||||
import ru.bclib.api.tag.NamedItemTags;
|
||||
import ru.bclib.api.tag.NamedMineableTags;
|
||||
import ru.bclib.api.tag.TagAPI;
|
||||
import ru.bclib.api.tag.TagAPI.TagNamed;
|
||||
import ru.bclib.blocks.BaseVineBlock;
|
||||
import ru.bclib.blocks.SimpleLeavesBlock;
|
||||
import ru.betterend.BetterEnd;
|
||||
|
@ -35,17 +39,17 @@ public class EndTags {
|
|||
// https://fabricmc.net/wiki/tutorial:tags
|
||||
|
||||
// Block Tags
|
||||
public static final Tag.Named<Block> PEDESTALS = TagAPI.makeBlockTag(BetterEnd.MOD_ID, "pedestal");
|
||||
public static final TagNamed<Block> PEDESTALS = TagAPI.makeBlockTag(BetterEnd.MOD_ID, "pedestal");
|
||||
|
||||
// Item Tags
|
||||
public static final Tag.Named<Item> ALLOYING_IRON = TagAPI.makeItemTag(BetterEnd.MOD_ID, "alloying_iron");
|
||||
public static final Tag.Named<Item> ALLOYING_GOLD = TagAPI.makeItemTag(BetterEnd.MOD_ID, "alloying_gold");
|
||||
public static final Tag.Named<Item> ALLOYING_COPPER = TagAPI.makeItemTag(BetterEnd.MOD_ID, "alloying_copper");
|
||||
public static final TagNamed<Item> ALLOYING_IRON = TagAPI.makeItemTag(BetterEnd.MOD_ID, "alloying_iron");
|
||||
public static final TagNamed<Item> ALLOYING_GOLD = TagAPI.makeItemTag(BetterEnd.MOD_ID, "alloying_gold");
|
||||
public static final TagNamed<Item> ALLOYING_COPPER = TagAPI.makeItemTag(BetterEnd.MOD_ID, "alloying_copper");
|
||||
|
||||
public static void register() {
|
||||
TagAPI.addEndGround(EndBlocks.THALLASIUM.ore);
|
||||
TagAPI.addEndGround(EndBlocks.ENDSTONE_DUST);
|
||||
TagAPI.addEndGround(EndBlocks.AMBER_ORE);
|
||||
addEndGround(EndBlocks.THALLASIUM.ore);
|
||||
addEndGround(EndBlocks.ENDSTONE_DUST);
|
||||
addEndGround(EndBlocks.AMBER_ORE);
|
||||
|
||||
EndBlocks.getModBlocks().forEach(block -> {
|
||||
Properties properties = ((AbstractBlockAccessor) block).getSettings();
|
||||
|
@ -53,32 +57,32 @@ public class EndTags {
|
|||
final Item item = block.asItem();
|
||||
|
||||
if (material.equals(Material.STONE) || material.equals(Material.METAL) || material.equals(Material.HEAVY_METAL)) {
|
||||
TagAPI.addTag(TagAPI.MINEABLE_PICKAXE, block);
|
||||
TagAPI.addBlockTag(NamedMineableTags.PICKAXE, block);
|
||||
}
|
||||
else if (material.equals(Material.WOOD)) {
|
||||
TagAPI.addTag(TagAPI.MINEABLE_AXE, block);
|
||||
TagAPI.addBlockTag(NamedMineableTags.AXE, block);
|
||||
}
|
||||
else if (material.equals(Material.LEAVES) || material.equals(Material.PLANT) || material.equals(Material.WATER_PLANT) || material.equals(Material.SPONGE)) {
|
||||
TagAPI.addTag(TagAPI.MINEABLE_HOE, block);
|
||||
TagAPI.addBlockTag(NamedMineableTags.HOE, block);
|
||||
}
|
||||
else if (material.equals(Material.SAND)) {
|
||||
TagAPI.addTag(TagAPI.MINEABLE_SHOVEL, block);
|
||||
TagAPI.addBlockTag(NamedMineableTags.SHOVEL, block);
|
||||
}
|
||||
|
||||
if (block instanceof EndTerrainBlock) {
|
||||
TagAPI.addEndGround(block);
|
||||
TagAPI.addTag(BlockTags.NYLIUM, block);
|
||||
addEndGround(block);
|
||||
TagAPI.addBlockTag(NamedBlockTags.NYLIUM, block);
|
||||
BonemealAPI.addSpreadableBlock(block, Blocks.END_STONE);
|
||||
}
|
||||
else if (block instanceof LeavesBlock || block instanceof SimpleLeavesBlock) {
|
||||
TagAPI.addTag(BlockTags.LEAVES, block);
|
||||
TagAPI.addBlockTag(NamedBlockTags.LEAVES, block);
|
||||
ComposterAPI.allowCompost(0.3f, item);
|
||||
}
|
||||
else if (block instanceof BaseVineBlock) {
|
||||
TagAPI.addTag(BlockTags.CLIMBABLE, block);
|
||||
TagAPI.addBlockTag(NamedBlockTags.CLIMBABLE, block);
|
||||
}
|
||||
else if (block instanceof PedestalBlock) {
|
||||
TagAPI.addTag(PEDESTALS, block);
|
||||
TagAPI.addBlockTag(PEDESTALS.getName(), block);
|
||||
}
|
||||
|
||||
Material mat = block.defaultBlockState().getMaterial();
|
||||
|
@ -86,8 +90,8 @@ public class EndTags {
|
|||
ComposterAPI.allowCompost(0.1F, item);
|
||||
}
|
||||
});
|
||||
TagAPI.addEndGround(EndBlocks.CAVE_MOSS);
|
||||
TagAPI.addTag(BlockTags.NYLIUM, EndBlocks.CAVE_MOSS);
|
||||
addEndGround(EndBlocks.CAVE_MOSS);
|
||||
TagAPI.addBlockTag(NamedBlockTags.NYLIUM, EndBlocks.CAVE_MOSS);
|
||||
BonemealAPI.addSpreadableBlock(EndBlocks.CAVE_MOSS, Blocks.END_STONE);
|
||||
BonemealAPI.addSpreadableBlock(EndBlocks.MOSSY_OBSIDIAN, Blocks.OBSIDIAN);
|
||||
BonemealAPI.addSpreadableBlock(EndBlocks.MOSSY_DRAGON_BONE, EndBlocks.DRAGON_BONE_BLOCK);
|
||||
|
@ -105,30 +109,34 @@ public class EndTags {
|
|||
ITEM_HAMMERS.add(item);
|
||||
}
|
||||
});
|
||||
ToolManagerImpl.tag(TagAPI.ITEM_HAMMERS).register(new ModdedToolsVanillaBlocksToolHandler(ITEM_HAMMERS));
|
||||
TagAPI.addTag(TagAPI.ITEM_HAMMERS, EndItems.AETERNIUM_HAMMER);
|
||||
ToolManagerImpl.tag(CommonItemTags.HAMMERS).register(new ModdedToolsVanillaBlocksToolHandler(ITEM_HAMMERS));
|
||||
TagAPI.addItemTag(NamedCommonItemTags.HAMMERS, EndItems.AETERNIUM_HAMMER);
|
||||
|
||||
TagAPI.addTag(
|
||||
TagAPI.BLOCK_GEN_TERRAIN,
|
||||
TagAPI.addBlockTag(
|
||||
NamedCommonBlockTags.GEN_END_STONES,
|
||||
EndBlocks.ENDER_ORE,
|
||||
EndBlocks.BRIMSTONE
|
||||
);
|
||||
TagAPI.addTag(TagAPI.BLOCK_END_GROUND, EndBlocks.BRIMSTONE);
|
||||
TagAPI.addTag(BlockTags.ANVIL, EndBlocks.AETERNIUM_ANVIL);
|
||||
TagAPI.addTag(BlockTags.BEACON_BASE_BLOCKS, EndBlocks.AETERNIUM_BLOCK);
|
||||
TagAPI.addTag(ItemTags.BEACON_PAYMENT_ITEMS, EndItems.AETERNIUM_INGOT);
|
||||
TagAPI.addTag(
|
||||
TagAPI.BLOCK_DRAGON_IMMUNE,
|
||||
TagAPI.addBlockTag(NamedCommonBlockTags.END_STONES, EndBlocks.BRIMSTONE);
|
||||
TagAPI.addBlockTag(NamedBlockTags.ANVIL, EndBlocks.AETERNIUM_ANVIL);
|
||||
TagAPI.addBlockTag(NamedBlockTags.BEACON_BASE_BLOCKS, EndBlocks.AETERNIUM_BLOCK);
|
||||
TagAPI.addItemTag(NamedItemTags.BEACON_PAYMENT_ITEMS, EndItems.AETERNIUM_INGOT);
|
||||
TagAPI.addBlockTag(
|
||||
NamedCommonBlockTags.DRAGON_IMMUNE,
|
||||
EndBlocks.ENDER_ORE,
|
||||
EndBlocks.ETERNAL_PEDESTAL,
|
||||
EndBlocks.FLAVOLITE_RUNED_ETERNAL,
|
||||
EndBlocks.FLAVOLITE_RUNED
|
||||
);
|
||||
TagAPI.addTag(TagAPI.ITEM_IRON_INGOTS, EndBlocks.THALLASIUM.ingot);
|
||||
TagAPI.addItemTag(NamedCommonItemTags.IRON_INGOTS, EndBlocks.THALLASIUM.ingot);
|
||||
|
||||
TagAPI.addTag(ALLOYING_IRON, Items.IRON_ORE, Items.DEEPSLATE_IRON_ORE, Items.RAW_IRON);
|
||||
TagAPI.addTag(ALLOYING_GOLD, Items.GOLD_ORE, Items.DEEPSLATE_GOLD_ORE, Items.RAW_GOLD);
|
||||
TagAPI.addTag(ALLOYING_COPPER, Items.COPPER_ORE, Items.DEEPSLATE_COPPER_ORE, Items.RAW_COPPER);
|
||||
TagAPI.addItemTag(ALLOYING_IRON.getName(), Items.IRON_ORE, Items.DEEPSLATE_IRON_ORE, Items.RAW_IRON);
|
||||
TagAPI.addItemTag(ALLOYING_GOLD.getName(), Items.GOLD_ORE, Items.DEEPSLATE_GOLD_ORE, Items.RAW_GOLD);
|
||||
TagAPI.addItemTag(ALLOYING_COPPER.getName(), Items.COPPER_ORE, Items.DEEPSLATE_COPPER_ORE, Items.RAW_COPPER);
|
||||
}
|
||||
|
||||
public static void addEndGround(Block bl){
|
||||
TagAPI.addBlockTag(NamedCommonBlockTags.END_STONES, bl);
|
||||
}
|
||||
|
||||
// TODO make getter for biome top blocks
|
||||
|
@ -138,8 +146,8 @@ public class EndTags {
|
|||
SurfaceBuilderConfiguration config = biome.getGenerationSettings().getSurfaceBuilderConfig();
|
||||
Block under = config.getUnderMaterial().getBlock();
|
||||
Block surface = config.getTopMaterial().getBlock();
|
||||
TagAPI.addTag(TagAPI.BLOCK_GEN_TERRAIN, under, surface);
|
||||
TagAPI.addTag(TagAPI.BLOCK_END_GROUND, surface);
|
||||
TagAPI.addTag(CommonBlockTags.GEN_END_STONES, under, surface);
|
||||
TagAPI.addTag(CommonBlockTags.END_STONES, surface);
|
||||
}
|
||||
});
|
||||
TagAPI.BLOCK_END_STONES.getValues().forEach(TagAPI::addEndGround);*/
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue