Tag switching (WIP)
This commit is contained in:
parent
0486d7d89c
commit
41df84404b
72 changed files with 303 additions and 628 deletions
|
@ -18,14 +18,13 @@ import net.minecraft.tags.TagCollection;
|
|||
import net.minecraft.world.food.FoodProperties;
|
||||
import net.minecraft.world.item.BlockItem;
|
||||
import net.minecraft.world.item.Item;
|
||||
import net.minecraft.world.item.Items;
|
||||
import net.minecraft.world.level.biome.Biome;
|
||||
import net.minecraft.world.level.biome.Biome.BiomeCategory;
|
||||
import net.minecraft.world.level.block.Block;
|
||||
import net.minecraft.world.level.block.Blocks;
|
||||
import net.minecraft.world.level.block.LeavesBlock;
|
||||
import net.minecraft.world.level.levelgen.surfacebuilders.SurfaceBuilderConfiguration;
|
||||
import net.minecraft.world.level.material.Material;
|
||||
import ru.bclib.api.TagAPI;
|
||||
import ru.bclib.util.TagHelper;
|
||||
import ru.betterend.BetterEnd;
|
||||
import ru.betterend.blocks.basis.EndTerrainBlock;
|
||||
|
@ -40,18 +39,11 @@ public class EndTags {
|
|||
// https://fabricmc.net/wiki/tutorial:tags
|
||||
|
||||
// Block Tags
|
||||
public static final Tag.Named<Block> BOOKSHELVES = makeCommonBlockTag("bookshelves");
|
||||
public static final Tag.Named<Block> GEN_TERRAIN = makeBlockTag("gen_terrain");
|
||||
public static final Tag.Named<Block> END_GROUND = makeBlockTag("end_ground");
|
||||
public static final Tag.Named<Block> PEDESTALS = makeBlockTag("pedestal");
|
||||
public static final Tag.Named<Block> BLOCK_CHEST = makeCommonBlockTag("chest");
|
||||
public static final Tag.Named<Block> END_STONES = makeCommonBlockTag("end_stones");
|
||||
public static final Tag.Named<Block> DRAGON_IMMUNE = getMCBlockTag("dragon_immune");
|
||||
|
||||
// Item Tags
|
||||
public static final Tag.Named<Item> ITEM_CHEST = makeCommonItemTag("chest");
|
||||
public static final Tag.Named<Item> IRON_INGOTS = makeCommonItemTag("iron_ingots");
|
||||
public static final Tag.Named<Item> FURNACES = makeCommonItemTag("furnaces");
|
||||
public final static Tag.Named<Item> HAMMERS = makeFabricItemTag("hammers");
|
||||
|
||||
public static <T> Tag.Named<T> makeTag(Supplier<TagCollection<T>> containerSupplier, ResourceLocation id) {
|
||||
|
@ -86,15 +78,14 @@ public class EndTags {
|
|||
}
|
||||
|
||||
public static void register() {
|
||||
addSurfaceBlock(Blocks.END_STONE);
|
||||
addSurfaceBlock(EndBlocks.THALLASIUM.ore);
|
||||
addSurfaceBlock(EndBlocks.ENDSTONE_DUST);
|
||||
addSurfaceBlock(EndBlocks.AMBER_ORE);
|
||||
TagAPI.addEndGround(EndBlocks.THALLASIUM.ore);
|
||||
TagAPI.addEndGround(EndBlocks.ENDSTONE_DUST);
|
||||
TagAPI.addEndGround(EndBlocks.AMBER_ORE);
|
||||
|
||||
EndItems.getModBlocks().forEach(blockItem -> {
|
||||
Block block = ((BlockItem) blockItem).getBlock();
|
||||
if (block instanceof EndTerrainBlock) {
|
||||
addSurfaceBlock(block);
|
||||
TagAPI.addEndGround(block);
|
||||
TagHelper.addTag(BlockTags.NYLIUM, block);
|
||||
}
|
||||
else if (block instanceof LeavesBlock || block instanceof SimpleLeavesBlock) {
|
||||
|
@ -130,7 +121,7 @@ public class EndTags {
|
|||
ToolManagerImpl.tag(HAMMERS).register(new ModdedToolsVanillaBlocksToolHandler(hammers));
|
||||
|
||||
TagHelper.addTag(
|
||||
GEN_TERRAIN,
|
||||
TagAPI.GEN_TERRAIN,
|
||||
EndBlocks.ENDER_ORE,
|
||||
EndBlocks.FLAVOLITE.stone,
|
||||
EndBlocks.VIOLECITE.stone,
|
||||
|
@ -140,23 +131,17 @@ public class EndTags {
|
|||
EndBlocks.AZURE_JADESTONE.stone,
|
||||
EndBlocks.SANDY_JADESTONE.stone
|
||||
);
|
||||
TagHelper.addTag(END_GROUND, EndBlocks.SULPHURIC_ROCK.stone, EndBlocks.BRIMSTONE);
|
||||
|
||||
TagHelper.addTag(FURNACES, Blocks.FURNACE);
|
||||
TagHelper.addTag(TagAPI.END_GROUND, EndBlocks.SULPHURIC_ROCK.stone, EndBlocks.BRIMSTONE);
|
||||
TagHelper.addTag(BlockTags.ANVIL, EndBlocks.AETERNIUM_ANVIL);
|
||||
|
||||
TagHelper.addTag(BlockTags.BEACON_BASE_BLOCKS, EndBlocks.AETERNIUM_BLOCK);
|
||||
TagHelper.addTag(ItemTags.BEACON_PAYMENT_ITEMS, EndItems.AETERNIUM_INGOT);
|
||||
|
||||
TagHelper.addTag(EndTags.DRAGON_IMMUNE, EndBlocks.ENDER_ORE, EndBlocks.ETERNAL_PEDESTAL, EndBlocks.FLAVOLITE_RUNED_ETERNAL, EndBlocks.FLAVOLITE_RUNED);
|
||||
|
||||
TagHelper.addTag(EndTags.IRON_INGOTS, Items.IRON_INGOT);
|
||||
TagHelper.addTag(EndTags.IRON_INGOTS, EndBlocks.THALLASIUM.ingot);
|
||||
}
|
||||
|
||||
public static void addSurfaceBlock(Block block) {
|
||||
TagHelper.addTag(END_GROUND, block);
|
||||
TagHelper.addTag(GEN_TERRAIN, block);
|
||||
TagHelper.addTag(EndTags.DRAGON_IMMUNE,
|
||||
EndBlocks.ENDER_ORE,
|
||||
EndBlocks.ETERNAL_PEDESTAL,
|
||||
EndBlocks.FLAVOLITE_RUNED_ETERNAL,
|
||||
EndBlocks.FLAVOLITE_RUNED
|
||||
);
|
||||
TagHelper.addTag(TagAPI.IRON_INGOTS, EndBlocks.THALLASIUM.ingot);
|
||||
}
|
||||
|
||||
public static void addTerrainTags(Registry<Biome> biomeRegistry) {
|
||||
|
@ -165,10 +150,10 @@ public class EndTags {
|
|||
SurfaceBuilderConfiguration config = biome.getGenerationSettings().getSurfaceBuilderConfig();
|
||||
Block under = config.getUnderMaterial().getBlock();
|
||||
Block surface = config.getTopMaterial().getBlock();
|
||||
TagHelper.addTag(GEN_TERRAIN, under, surface);
|
||||
TagHelper.addTag(END_GROUND, surface);
|
||||
TagHelper.addTag(TagAPI.GEN_TERRAIN, under, surface);
|
||||
TagHelper.addTag(TagAPI.END_GROUND, surface);
|
||||
}
|
||||
});
|
||||
END_STONES.getValues().forEach(EndTags::addSurfaceBlock);
|
||||
END_STONES.getValues().forEach(TagAPI::addEndGround);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue