- Got all hammers back

- Added anvil level and recipe input count
This commit is contained in:
Aleksey 2021-01-31 17:35:11 +03:00
parent 7b40047213
commit 68636e2ecd
18 changed files with 176 additions and 85 deletions

View file

@ -13,18 +13,8 @@ import net.minecraft.entity.SpawnReason;
import net.minecraft.entity.effect.StatusEffectInstance;
import net.minecraft.entity.effect.StatusEffects;
import net.minecraft.fluid.Fluids;
import net.minecraft.item.ArmorItem;
import net.minecraft.item.FishBucketItem;
import net.minecraft.item.FoodComponent;
import net.minecraft.item.FoodComponents;
import net.minecraft.item.Item;
import net.minecraft.item.*;
import net.minecraft.item.Item.Settings;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
import net.minecraft.item.ShovelItem;
import net.minecraft.item.SpawnEggItem;
import net.minecraft.item.SwordItem;
import net.minecraft.item.ToolItem;
import net.minecraft.tag.Tag;
import net.minecraft.util.Identifier;
import net.minecraft.util.Rarity;
@ -100,6 +90,12 @@ public class EndItems {
public final static Item AETERNIUM_HAMMER_HEAD = registerItem("aeternium_hammer_head");
public final static Item AETERNIUM_SWORD_BLADE = registerItem("aeternium_sword_blade");
public final static Item AETERNIUM_SWORD_HANDLE = registerItem("aeternium_sword_handle");
// Hammers //
public static final ToolItem IRON_HAMMER = registerTool("iron_hammer", new EndHammerItem(ToolMaterials.IRON, 5.0F, -3.2F, 0.2D, makeItemSettings()));
public static final ToolItem GOLDEN_HAMMER = registerTool("golden_hammer", new EndHammerItem(ToolMaterials.GOLD, 4.5F, -3.4F, 0.3D, makeItemSettings()));
public static final ToolItem DIAMOND_HAMMER = registerTool("diamond_hammer", new EndHammerItem(ToolMaterials.DIAMOND, 5.5F, -3.1F, 0.2D, makeItemSettings()));
public static final ToolItem NETHERITE_HAMMER = registerTool("netherite_hammer", new EndHammerItem(ToolMaterials.NETHERITE, 5.0F, -3.0F, 0.2D, makeItemSettings().fireproof()));
// Food //
public final static Item SHADOW_BERRY_RAW = registerFood("shadow_berry_raw", 4, 0.5F);

View file

@ -1,14 +1,9 @@
package ru.betterend.registry;
import java.util.List;
import com.google.common.collect.Lists;
import net.fabricmc.fabric.api.tag.TagRegistry;
import net.fabricmc.fabric.impl.tool.attribute.ToolManagerImpl;
import net.fabricmc.fabric.impl.tool.attribute.handlers.ModdedToolsVanillaBlocksToolHandler;
import net.minecraft.block.Block;
import net.minecraft.block.BlockState;
import net.minecraft.block.Blocks;
import net.minecraft.block.LeavesBlock;
import net.minecraft.block.Material;
@ -28,10 +23,11 @@ import ru.betterend.blocks.EndTerrainBlock;
import ru.betterend.blocks.basis.PedestalBlock;
import ru.betterend.blocks.basis.SimpleLeavesBlock;
import ru.betterend.blocks.basis.VineBlock;
import ru.betterend.item.EndHammerItem;
import ru.betterend.mixin.common.ComposterBlockAccessor;
import ru.betterend.util.TagHelper;
import java.util.Arrays;
public class EndTags {
// Block Tags
public static final Tag.Identified<Block> BOOKSHELVES = makeCommonBlockTag("bookshelves");
@ -98,14 +94,18 @@ public class EndTags {
TagHelper.addTag(GEN_TERRAIN, EndBlocks.ENDER_ORE, EndBlocks.FLAVOLITE.stone, EndBlocks.VIOLECITE.stone, EndBlocks.SULPHURIC_ROCK.stone, EndBlocks.BRIMSTONE);
TagHelper.addTag(END_GROUND, EndBlocks.SULPHURIC_ROCK.stone, EndBlocks.BRIMSTONE);
List<Item> hammers = Lists.newArrayList();
EndItems.getModItems().forEach((item) -> {
if (item instanceof EndHammerItem) {
hammers.add(item);
}
});
ToolManagerImpl.tag(HAMMERS).register(new ModdedToolsVanillaBlocksToolHandler(hammers));
ToolManagerImpl.tag(HAMMERS).register(new ModdedToolsVanillaBlocksToolHandler(
Arrays.asList(
EndItems.IRON_HAMMER,
EndItems.GOLDEN_HAMMER,
EndItems.DIAMOND_HAMMER,
EndItems.NETHERITE_HAMMER,
EndItems.AETERNIUM_HAMMER,
EndBlocks.THALLASIUM.hammer,
EndBlocks.TERMINITE.hammer
)
));
}
public static void addSurfaceBlock(Block block) {
@ -123,17 +123,7 @@ public class EndTags {
TagHelper.addTag(END_GROUND, surface);
}
});
END_STONES.values().forEach((block) -> {
addSurfaceBlock(block);
});
}
public static boolean validGenBlock(BlockState block) {
return block.isIn(END_GROUND) || block.isIn(GEN_TERRAIN);
}
public static Tag<Item> registerItemTag(String name) {
return TagRegistry.item(BetterEnd.makeID(name));
END_STONES.values().forEach(EndTags::addSurfaceBlock);
}
public static Tag<Item> registerFabricItemTag(String name) {