[Feature] SmithingTemplates for Armor/Tool/Anvil and Elytra upgrades

This commit is contained in:
Frank 2023-06-07 18:50:51 +02:00
parent ff17a9ad3c
commit 4e2b2737aa
35 changed files with 272 additions and 34 deletions

View file

@ -46,6 +46,7 @@ public class BetterEnd implements ModInitializer {
EndTags.register(); EndTags.register();
EndBlocks.ensureStaticallyLoaded(); EndBlocks.ensureStaticallyLoaded();
EndItems.ensureStaticallyLoaded(); EndItems.ensureStaticallyLoaded();
EndTemplates.ensureStaticallyLoaded();
EndEnchantments.register(); EndEnchantments.register();
EndPotions.register(); EndPotions.register();
InfusionRecipe.register(); InfusionRecipe.register();

View file

@ -17,6 +17,7 @@ import org.betterx.betterend.item.tool.EndHammerItem;
import org.betterx.betterend.item.tool.EndPickaxe; import org.betterx.betterend.item.tool.EndPickaxe;
import org.betterx.betterend.registry.EndBlocks; import org.betterx.betterend.registry.EndBlocks;
import org.betterx.betterend.registry.EndItems; import org.betterx.betterend.registry.EndItems;
import org.betterx.betterend.registry.EndTemplates;
import org.betterx.worlds.together.tag.v3.TagManager; import org.betterx.worlds.together.tag.v3.TagManager;
import net.minecraft.tags.BlockTags; import net.minecraft.tags.BlockTags;
@ -76,13 +77,15 @@ public class MetalMaterial {
public final Item boots; public final Item boots;
public final TagKey<Item> alloyingOre; public final TagKey<Item> alloyingOre;
public final SmithingTemplateItem swordHandleTemplate;
public static MetalMaterial makeNormal( public static MetalMaterial makeNormal(
String name, String name,
MapColor color, MapColor color,
Tier material, Tier material,
ArmorMaterial armor, ArmorMaterial armor,
int anvilAndToolLevel int anvilAndToolLevel,
SmithingTemplateItem swordHandleTemplate
) { ) {
return new MetalMaterial( return new MetalMaterial(
name, name,
@ -91,7 +94,8 @@ public class MetalMaterial {
EndItems.makeEndItemSettings(), EndItems.makeEndItemSettings(),
material, material,
armor, armor,
anvilAndToolLevel anvilAndToolLevel,
swordHandleTemplate
); );
} }
@ -102,7 +106,8 @@ public class MetalMaterial {
float resistance, float resistance,
Tier material, Tier material,
ArmorMaterial armor, ArmorMaterial armor,
int anvilAndToolLevel int anvilAndToolLevel,
SmithingTemplateItem swordHandleTemplate
) { ) {
return new MetalMaterial( return new MetalMaterial(
name, name,
@ -114,7 +119,8 @@ public class MetalMaterial {
EndItems.makeEndItemSettings(), EndItems.makeEndItemSettings(),
material, material,
armor, armor,
anvilAndToolLevel anvilAndToolLevel,
swordHandleTemplate
); );
} }
@ -123,7 +129,8 @@ public class MetalMaterial {
MapColor color, MapColor color,
Tier material, Tier material,
ArmorMaterial armor, ArmorMaterial armor,
int anvilAndToolLevel int anvilAndToolLevel,
SmithingTemplateItem swordHandleTemplate
) { ) {
return new MetalMaterial( return new MetalMaterial(
name, name,
@ -132,7 +139,8 @@ public class MetalMaterial {
EndItems.makeEndItemSettings(), EndItems.makeEndItemSettings(),
material, material,
armor, armor,
anvilAndToolLevel anvilAndToolLevel,
swordHandleTemplate
); );
} }
@ -143,7 +151,8 @@ public class MetalMaterial {
float resistance, float resistance,
Tier material, Tier material,
ArmorMaterial armor, ArmorMaterial armor,
int anvilAndToolLevel int anvilAndToolLevel,
SmithingTemplateItem swordHandleTemplate
) { ) {
return new MetalMaterial( return new MetalMaterial(
name, name,
@ -155,7 +164,8 @@ public class MetalMaterial {
EndItems.makeEndItemSettings(), EndItems.makeEndItemSettings(),
material, material,
armor, armor,
anvilAndToolLevel anvilAndToolLevel,
swordHandleTemplate
); );
} }
@ -166,7 +176,8 @@ public class MetalMaterial {
Properties itemSettings, Properties itemSettings,
Tier material, Tier material,
ArmorMaterial armor, ArmorMaterial armor,
int anvilAndToolLevel int anvilAndToolLevel,
SmithingTemplateItem swordHandleTemplate
) { ) {
BlockBehaviour.Properties lanternProperties = FabricBlockSettings.copyOf(settings) BlockBehaviour.Properties lanternProperties = FabricBlockSettings.copyOf(settings)
.hardness(1) .hardness(1)
@ -174,7 +185,7 @@ public class MetalMaterial {
.lightLevel((bs) -> 15) .lightLevel((bs) -> 15)
.sound(SoundType.LANTERN); .sound(SoundType.LANTERN);
final int level = material.getLevel(); final int level = material.getLevel();
this.swordHandleTemplate = swordHandleTemplate;
rawOre = hasOre ? EndItems.registerEndItem(name + "_raw", new ModelProviderItem(itemSettings)) : null; rawOre = hasOre ? EndItems.registerEndItem(name + "_raw", new ModelProviderItem(itemSettings)) : null;
ore = hasOre ? EndBlocks.registerBlock(name + "_ore", new BaseOreBlock(() -> rawOre, 1, 3, 1)) : null; ore = hasOre ? EndBlocks.registerBlock(name + "_ore", new BaseOreBlock(() -> rawOre, 1, 3, 1)) : null;
alloyingOre = hasOre ? TagManager.ITEMS.makeTag(BetterEnd.MOD_ID, name + "_alloying") : null; alloyingOre = hasOre ? TagManager.ITEMS.makeTag(BetterEnd.MOD_ID, name + "_alloying") : null;
@ -416,30 +427,37 @@ public class MetalMaterial {
// Tools from parts // Tools from parts
BCLRecipeBuilder.smithing(BetterEnd.makeID(name + "_hammer"), hammer) BCLRecipeBuilder.smithing(BetterEnd.makeID(name + "_hammer"), hammer)
.setTemplate(EndTemplates.HANDLE_ATTACHMENT)
.setPrimaryInputAndUnlock(block) .setPrimaryInputAndUnlock(block)
.setAddition(Items.STICK) .setAddition(Items.STICK)
.build(); .build();
BCLRecipeBuilder.smithing(BetterEnd.makeID(name + "_axe"), axe) BCLRecipeBuilder.smithing(BetterEnd.makeID(name + "_axe"), axe)
.setTemplate(EndTemplates.HANDLE_ATTACHMENT)
.setPrimaryInputAndUnlock(axeHead) .setPrimaryInputAndUnlock(axeHead)
.setAddition(Items.STICK) .setAddition(Items.STICK)
.build(); .build();
BCLRecipeBuilder.smithing(BetterEnd.makeID(name + "_pickaxe"), pickaxe) BCLRecipeBuilder.smithing(BetterEnd.makeID(name + "_pickaxe"), pickaxe)
.setTemplate(EndTemplates.HANDLE_ATTACHMENT)
.setPrimaryInputAndUnlock(pickaxeHead) .setPrimaryInputAndUnlock(pickaxeHead)
.setAddition(Items.STICK) .setAddition(Items.STICK)
.build(); .build();
BCLRecipeBuilder.smithing(BetterEnd.makeID(name + "_hoe"), hoe) BCLRecipeBuilder.smithing(BetterEnd.makeID(name + "_hoe"), hoe)
.setTemplate(EndTemplates.HANDLE_ATTACHMENT)
.setPrimaryInputAndUnlock(hoeHead) .setPrimaryInputAndUnlock(hoeHead)
.setAddition(Items.STICK) .setAddition(Items.STICK)
.build(); .build();
BCLRecipeBuilder.smithing(BetterEnd.makeID(name + "_sword_handle"), swordHandle) BCLRecipeBuilder.smithing(BetterEnd.makeID(name + "_sword_handle"), swordHandle)
.setPrimaryInputAndUnlock(ingot) .setTemplate(this.swordHandleTemplate)
.setAddition(Items.STICK) .setPrimaryInputAndUnlock(Items.STICK)
.setAddition(ingot)
.build(); .build();
BCLRecipeBuilder.smithing(BetterEnd.makeID(name + "_sword"), sword) BCLRecipeBuilder.smithing(BetterEnd.makeID(name + "_sword"), sword)
.setTemplate(EndTemplates.TOOL_ASSEMBLY)
.setPrimaryInputAndUnlock(swordBlade) .setPrimaryInputAndUnlock(swordBlade)
.setAddition(swordHandle) .setAddition(swordHandle)
.build(); .build();
BCLRecipeBuilder.smithing(BetterEnd.makeID(name + "_shovel"), shovel) BCLRecipeBuilder.smithing(BetterEnd.makeID(name + "_shovel"), shovel)
.setTemplate(EndTemplates.HANDLE_ATTACHMENT)
.setPrimaryInputAndUnlock(shovelHead) .setPrimaryInputAndUnlock(shovelHead)
.setAddition(Items.STICK) .setAddition(Items.STICK)
.build(); .build();

View file

@ -4,76 +4,96 @@ import org.betterx.bclib.recipes.BCLRecipeBuilder;
import org.betterx.betterend.BetterEnd; import org.betterx.betterend.BetterEnd;
import org.betterx.betterend.registry.EndBlocks; import org.betterx.betterend.registry.EndBlocks;
import org.betterx.betterend.registry.EndItems; import org.betterx.betterend.registry.EndItems;
import org.betterx.betterend.registry.EndTemplates;
import net.minecraft.world.item.Items; import net.minecraft.world.item.Items;
public class SmithingRecipes { public class SmithingRecipes {
public static void register() { public static void register() {
BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_sword_handle"), EndItems.AETERNIUM_SWORD_HANDLE)
.setPrimaryInputAndUnlock(EndBlocks.TERMINITE.ingot)
.setAddition(EndItems.LEATHER_WRAPPED_STICK)
.build();
BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_sword"), EndItems.AETERNIUM_SWORD)
.setPrimaryInputAndUnlock(EndItems.AETERNIUM_SWORD_BLADE)
.setAddition(EndItems.AETERNIUM_SWORD_HANDLE)
.build();
BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_pickaxe"), EndItems.AETERNIUM_PICKAXE) BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_pickaxe"), EndItems.AETERNIUM_PICKAXE)
.setTemplate(EndTemplates.LEATHER_HANDLE_ATTACHMENT)
.setPrimaryInputAndUnlock(EndItems.AETERNIUM_PICKAXE_HEAD) .setPrimaryInputAndUnlock(EndItems.AETERNIUM_PICKAXE_HEAD)
.setAddition(EndItems.LEATHER_WRAPPED_STICK) .setAddition(EndItems.LEATHER_WRAPPED_STICK)
.build(); .build();
BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_axe"), EndItems.AETERNIUM_AXE) BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_axe"), EndItems.AETERNIUM_AXE)
.setTemplate(EndTemplates.LEATHER_HANDLE_ATTACHMENT)
.setPrimaryInputAndUnlock(EndItems.AETERNIUM_AXE_HEAD) .setPrimaryInputAndUnlock(EndItems.AETERNIUM_AXE_HEAD)
.setAddition(EndItems.LEATHER_WRAPPED_STICK) .setAddition(EndItems.LEATHER_WRAPPED_STICK)
.build(); .build();
BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_shovel"), EndItems.AETERNIUM_SHOVEL) BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_shovel"), EndItems.AETERNIUM_SHOVEL)
.setTemplate(EndTemplates.LEATHER_HANDLE_ATTACHMENT)
.setPrimaryInputAndUnlock(EndItems.AETERNIUM_SHOVEL_HEAD) .setPrimaryInputAndUnlock(EndItems.AETERNIUM_SHOVEL_HEAD)
.setAddition(EndItems.LEATHER_WRAPPED_STICK) .setAddition(EndItems.LEATHER_WRAPPED_STICK)
.build(); .build();
BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_hoe"), EndItems.AETERNIUM_HOE) BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_hoe"), EndItems.AETERNIUM_HOE)
.setTemplate(EndTemplates.LEATHER_HANDLE_ATTACHMENT)
.setPrimaryInputAndUnlock(EndItems.AETERNIUM_HOE_HEAD) .setPrimaryInputAndUnlock(EndItems.AETERNIUM_HOE_HEAD)
.setAddition(EndItems.LEATHER_WRAPPED_STICK) .setAddition(EndItems.LEATHER_WRAPPED_STICK)
.build(); .build();
BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_hammer"), EndItems.AETERNIUM_HAMMER) BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_hammer"), EndItems.AETERNIUM_HAMMER)
.setTemplate(EndTemplates.LEATHER_HANDLE_ATTACHMENT)
.setPrimaryInputAndUnlock(EndItems.AETERNIUM_HAMMER_HEAD) .setPrimaryInputAndUnlock(EndItems.AETERNIUM_HAMMER_HEAD)
.setAddition(EndItems.LEATHER_WRAPPED_STICK) .setAddition(EndItems.LEATHER_WRAPPED_STICK)
.build(); .build();
BCLRecipeBuilder.smithing(BetterEnd.makeID("netherite_hammer"), EndItems.NETHERITE_HAMMER) BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_sword"), EndItems.AETERNIUM_SWORD)
.setPrimaryInputAndUnlock(EndItems.DIAMOND_HAMMER) .setTemplate(EndTemplates.TOOL_ASSEMBLY)
.setAddition(Items.NETHERITE_INGOT) .setPrimaryInputAndUnlock(EndItems.AETERNIUM_SWORD_BLADE)
.setAddition(EndItems.AETERNIUM_SWORD_HANDLE)
.build(); .build();
BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_helmet"), EndItems.AETERNIUM_HELMET) BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_helmet"), EndItems.AETERNIUM_HELMET)
.setTemplate(EndTemplates.PLATE_UPGRADE)
.setPrimaryInputAndUnlock(EndBlocks.TERMINITE.helmet) .setPrimaryInputAndUnlock(EndBlocks.TERMINITE.helmet)
.setAddition(EndItems.AETERNIUM_FORGED_PLATE) .setAddition(EndItems.AETERNIUM_FORGED_PLATE)
.build(); .build();
BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_chestplate"), EndItems.AETERNIUM_CHESTPLATE) BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_chestplate"), EndItems.AETERNIUM_CHESTPLATE)
.setTemplate(EndTemplates.PLATE_UPGRADE)
.setPrimaryInputAndUnlock(EndBlocks.TERMINITE.chestplate) .setPrimaryInputAndUnlock(EndBlocks.TERMINITE.chestplate)
.setAddition(EndItems.AETERNIUM_FORGED_PLATE) .setAddition(EndItems.AETERNIUM_FORGED_PLATE)
.build(); .build();
BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_leggings"), EndItems.AETERNIUM_LEGGINGS) BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_leggings"), EndItems.AETERNIUM_LEGGINGS)
.setTemplate(EndTemplates.PLATE_UPGRADE)
.setPrimaryInputAndUnlock(EndBlocks.TERMINITE.leggings) .setPrimaryInputAndUnlock(EndBlocks.TERMINITE.leggings)
.setAddition(EndItems.AETERNIUM_FORGED_PLATE) .setAddition(EndItems.AETERNIUM_FORGED_PLATE)
.build(); .build();
BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_boots"), EndItems.AETERNIUM_BOOTS) BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_boots"), EndItems.AETERNIUM_BOOTS)
.setTemplate(EndTemplates.PLATE_UPGRADE)
.setPrimaryInputAndUnlock(EndBlocks.TERMINITE.boots) .setPrimaryInputAndUnlock(EndBlocks.TERMINITE.boots)
.setAddition(EndItems.AETERNIUM_FORGED_PLATE) .setAddition(EndItems.AETERNIUM_FORGED_PLATE)
.build(); .build();
BCLRecipeBuilder.smithing(BetterEnd.makeID("thallasium_anvil_updrade"), EndBlocks.TERMINITE.anvilBlock.asItem()) BCLRecipeBuilder.smithing(BetterEnd.makeID("aeternium_sword_handle"), EndItems.AETERNIUM_SWORD_HANDLE)
.setPrimaryInputAndUnlock(EndBlocks.THALLASIUM.anvilBlock.asItem()) .setTemplate(EndTemplates.TERMINITE_UPGRADE)
.setAddition(EndBlocks.TERMINITE.block) .setPrimaryInputAndUnlock(EndItems.LEATHER_WRAPPED_STICK)
.setAddition(EndBlocks.TERMINITE.ingot)
.build(); .build();
BCLRecipeBuilder.smithing(BetterEnd.makeID("terminite_anvil_updrade"), EndBlocks.AETERNIUM_ANVIL.asItem())
.setPrimaryInputAndUnlock(EndBlocks.TERMINITE.anvilBlock.asItem()) BCLRecipeBuilder.smithing(BetterEnd.makeID("thallasium_anvil_updrade"), EndBlocks.TERMINITE.anvilBlock)
.setTemplate(EndTemplates.TERMINITE_UPGRADE)
.setPrimaryInputAndUnlock(EndBlocks.THALLASIUM.anvilBlock)
.setAddition(EndBlocks.TERMINITE.ingot)
.build();
BCLRecipeBuilder.smithing(BetterEnd.makeID("terminite_anvil_updrade"), EndBlocks.AETERNIUM_ANVIL)
.setTemplate(EndTemplates.AETERNIUM_UPGRADE)
.setPrimaryInputAndUnlock(EndBlocks.TERMINITE.anvilBlock)
.setAddition(EndItems.AETERNIUM_INGOT) .setAddition(EndItems.AETERNIUM_INGOT)
.build(); .build();
BCLRecipeBuilder.smithing(BetterEnd.makeID("armored_elytra"), EndItems.ARMORED_ELYTRA) BCLRecipeBuilder.smithing(BetterEnd.makeID("armored_elytra"), EndItems.ARMORED_ELYTRA)
.setTemplate(EndTemplates.AETERNIUM_UPGRADE)
.setPrimaryInputAndUnlock(Items.ELYTRA) .setPrimaryInputAndUnlock(Items.ELYTRA)
.setAddition(EndItems.AETERNIUM_INGOT) .setAddition(EndItems.AETERNIUM_INGOT)
.build(); .build();
BCLRecipeBuilder.smithing(BetterEnd.makeID("netherite_hammer"), EndItems.NETHERITE_HAMMER)
.setTemplate(EndTemplates.NETHERITE_UPGRADE)
.setPrimaryInputAndUnlock(EndItems.DIAMOND_HAMMER)
.setAddition(Items.NETHERITE_INGOT)
.build();
} }
} }

View file

@ -611,7 +611,8 @@ public class EndBlocks {
MapColor.COLOR_BLUE, MapColor.COLOR_BLUE,
EndToolMaterial.THALLASIUM, EndToolMaterial.THALLASIUM,
EndArmorMaterial.THALLASIUM, EndArmorMaterial.THALLASIUM,
EndToolMaterial.THALLASIUM.getLevel() EndToolMaterial.THALLASIUM.getLevel(),
EndTemplates.THALLASIUM_UPGRADE
); );
public static final MetalMaterial TERMINITE = MetalMaterial.makeOreless( public static final MetalMaterial TERMINITE = MetalMaterial.makeOreless(
@ -621,7 +622,8 @@ public class EndBlocks {
9F, 9F,
EndToolMaterial.TERMINITE, EndToolMaterial.TERMINITE,
EndArmorMaterial.TERMINITE, EndArmorMaterial.TERMINITE,
EndToolMaterial.TERMINITE.getLevel() EndToolMaterial.TERMINITE.getLevel(),
EndTemplates.TERMINITE_UPGRADE
); );
public static final Block AETERNIUM_BLOCK = registerBlock("aeternium_block", new AeterniumBlock()); public static final Block AETERNIUM_BLOCK = registerBlock("aeternium_block", new AeterniumBlock());
public static final Block CHARCOAL_BLOCK = registerBlock("charcoal_block", new CharcoalBlock()); public static final Block CHARCOAL_BLOCK = registerBlock("charcoal_block", new CharcoalBlock());

View file

@ -0,0 +1,108 @@
package org.betterx.betterend.registry;
import org.betterx.bclib.recipes.SmithingTemplates;
import org.betterx.betterend.BetterEnd;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.SmithingTemplateItem;
import java.util.List;
public class EndTemplates {
static final ResourceLocation EMPTY_SLOT_STICK = BetterEnd.makeID("item/empty_slot_stick");
static final ResourceLocation EMPTY_SLOT_HANDLE = BetterEnd.makeID("item/empty_slot_handle");
static final ResourceLocation EMPTY_SLOT_SWORD_HANDLE = BetterEnd.makeID("item/empty_slot_sword_handle");
static final ResourceLocation EMPTY_SLOT_SWORD_BLADE = BetterEnd.makeID("item/empty_slot_sword_blade");
static final ResourceLocation EMPTY_SLOT_PLATE = BetterEnd.makeID("item/empty_slot_plate");
static final ResourceLocation EMPTY_SLOT_HAMMER = BetterEnd.makeID("item/empty_slot_hammer");
static final ResourceLocation EMPTY_SLOT_HAMMER_HEAD = BetterEnd.makeID("item/empty_slot_hammer_head");
static final ResourceLocation EMPTY_SLOT_PICKAXE_HEAD = BetterEnd.makeID("item/empty_slot_pickaxe_head");
static final ResourceLocation EMPTY_SLOT_AXE_HEAD = BetterEnd.makeID("item/empty_slot_axe_head");
static final ResourceLocation EMPTY_SLOT_HOE_HEAD = BetterEnd.makeID("item/empty_slot_hoe_head");
static final ResourceLocation EMPTY_SLOT_SHOVEL_HEAD = BetterEnd.makeID("item/empty_slot_shovel_head");
static final ResourceLocation EMPTY_SLOT_ANVIL = BetterEnd.makeID("item/empty_slot_anvil");
static final ResourceLocation EMPTY_SLOT_ELYTRA = BetterEnd.makeID("item/empty_slot_elytra");
public static final SmithingTemplateItem HANDLE_ATTACHMENT = EndItems
.getItemRegistry()
.registerSmithingTemplateItem(
BetterEnd.makeID("handle_attachment"),
List.of(
EMPTY_SLOT_HAMMER_HEAD,
EMPTY_SLOT_PICKAXE_HEAD,
EMPTY_SLOT_AXE_HEAD,
EMPTY_SLOT_HOE_HEAD,
EMPTY_SLOT_SHOVEL_HEAD
),
List.of(EMPTY_SLOT_STICK)
);
public static final SmithingTemplateItem LEATHER_HANDLE_ATTACHMENT = EndItems
.getItemRegistry()
.registerSmithingTemplateItem(
BetterEnd.makeID("leather_handle_attachment"),
List.of(
EMPTY_SLOT_HAMMER_HEAD,
EMPTY_SLOT_PICKAXE_HEAD,
EMPTY_SLOT_AXE_HEAD,
EMPTY_SLOT_HOE_HEAD,
EMPTY_SLOT_SHOVEL_HEAD
),
List.of(EMPTY_SLOT_HANDLE)
);
public static final SmithingTemplateItem TOOL_ASSEMBLY = EndItems
.getItemRegistry()
.registerSmithingTemplateItem(
BetterEnd.makeID("tool_assembly"),
List.of(
EMPTY_SLOT_SWORD_BLADE
),
List.of(EMPTY_SLOT_SWORD_HANDLE)
);
public static final SmithingTemplateItem PLATE_UPGRADE = EndItems
.getItemRegistry()
.registerSmithingTemplateItem(
BetterEnd.makeID("plate_upgrade"),
SmithingTemplates.ARMOR,
List.of(EMPTY_SLOT_PLATE)
);
public static final SmithingTemplateItem THALLASIUM_UPGRADE = EndItems
.getItemRegistry()
.registerSmithingTemplateItem(
BetterEnd.makeID("thallasium_upgrade"),
List.of(EMPTY_SLOT_STICK),
List.of(SmithingTemplates.EMPTY_SLOT_INGOT)
);
public static final SmithingTemplateItem TERMINITE_UPGRADE = EndItems
.getItemRegistry()
.registerSmithingTemplateItem(
BetterEnd.makeID("terminite_upgrade"),
List.of(EMPTY_SLOT_ANVIL, EMPTY_SLOT_STICK),
List.of(SmithingTemplates.EMPTY_SLOT_INGOT)
);
public static final SmithingTemplateItem AETERNIUM_UPGRADE = EndItems
.getItemRegistry()
.registerSmithingTemplateItem(
BetterEnd.makeID("aeternium_upgrade"),
List.of(EMPTY_SLOT_ANVIL, EMPTY_SLOT_ELYTRA),
List.of(SmithingTemplates.EMPTY_SLOT_INGOT)
);
public static final SmithingTemplateItem NETHERITE_UPGRADE = EndItems
.getItemRegistry()
.registerSmithingTemplateItem(
BetterEnd.makeID("netherite_upgrade"),
List.of(EMPTY_SLOT_HAMMER),
List.of(SmithingTemplates.EMPTY_SLOT_INGOT)
);
public static void ensureStaticallyLoaded() {
}
}

View file

@ -784,6 +784,38 @@
"item.betterend.shadow_berry_raw": "Shadow Berry", "item.betterend.shadow_berry_raw": "Shadow Berry",
"item.betterend.silk_fiber": "Silk Fiber", "item.betterend.silk_fiber": "Silk Fiber",
"item.betterend.silk_moth_matrix": "Silk Moth Matrix", "item.betterend.silk_moth_matrix": "Silk Moth Matrix",
"item.betterend.smithing_template.aeternium_upgrade.additions_slot_description": "Add Aeternium Ingot",
"item.betterend.smithing_template.aeternium_upgrade.applies_to": "Elytra or Terminite Anvils",
"item.betterend.smithing_template.aeternium_upgrade.base_slot_description": "Add Elytra or Terminite Anvil",
"item.betterend.smithing_template.aeternium_upgrade.ingredients": "Aeternium Ingots",
"item.betterend.smithing_template.handle_attachment.additions_slot_description": "Add a Stick",
"item.betterend.smithing_template.handle_attachment.applies_to": "Thallasium or Terminite Tool Heads",
"item.betterend.smithing_template.handle_attachment.base_slot_description": "Add Thallasium or Terminite Tool Heads",
"item.betterend.smithing_template.handle_attachment.ingredients": "Sticks",
"item.betterend.smithing_template.leather_handle_attachment.additions_slot_description": "Add a Leather Wrapped Stick",
"item.betterend.smithing_template.leather_handle_attachment.applies_to": "Aeternium Tool Heads",
"item.betterend.smithing_template.leather_handle_attachment.base_slot_description": "Add a Aeternium Tool Head",
"item.betterend.smithing_template.leather_handle_attachment.ingredients": "Leather Wrapped Sticks",
"item.betterend.smithing_template.netherite_upgrade.additions_slot_description": "Add a Netehrite Ingot",
"item.betterend.smithing_template.netherite_upgrade.applies_to": "Diamond Hammer",
"item.betterend.smithing_template.netherite_upgrade.base_slot_description": "Add a Diamond Hammer",
"item.betterend.smithing_template.netherite_upgrade.ingredients": "Netherite Ingots",
"item.betterend.smithing_template.plate_upgrade.additions_slot_description": "Add a forged Aeternium Plate",
"item.betterend.smithing_template.plate_upgrade.applies_to": "Terminite Armor",
"item.betterend.smithing_template.plate_upgrade.base_slot_description": "Add a Terminite Piece",
"item.betterend.smithing_template.plate_upgrade.ingredients": "Forged Aeternium Plates",
"item.betterend.smithing_template.terminite_upgrade.additions_slot_description": "Add a Terminite Ingot",
"item.betterend.smithing_template.terminite_upgrade.applies_to": "Stick or Thalasium Anvil",
"item.betterend.smithing_template.terminite_upgrade.base_slot_description": "Add a Stick or a Thalasium Anvil ",
"item.betterend.smithing_template.terminite_upgrade.ingredients": "Terminite Ingots",
"item.betterend.smithing_template.thallasium_upgrade.additions_slot_description": "Add a Thallasium Ingot",
"item.betterend.smithing_template.thallasium_upgrade.applies_to": "Stick",
"item.betterend.smithing_template.thallasium_upgrade.base_slot_description": "Add a Stick",
"item.betterend.smithing_template.thallasium_upgrade.ingredients": "Thallasium Ingots",
"item.betterend.smithing_template.tool_assembly.additions_slot_description": "Add a Sword Handle",
"item.betterend.smithing_template.tool_assembly.applies_to": "Sword Blades",
"item.betterend.smithing_template.tool_assembly.base_slot_description": "Add a Sword Blade",
"item.betterend.smithing_template.tool_assembly.ingredients": "Sword Handles",
"item.betterend.spawn_egg_cubozoa": "Cubozoa Spawn Egg", "item.betterend.spawn_egg_cubozoa": "Cubozoa Spawn Egg",
"item.betterend.spawn_egg_dragonfly": "Dragonfly Spawn Egg", "item.betterend.spawn_egg_dragonfly": "Dragonfly Spawn Egg",
"item.betterend.spawn_egg_end_fish": "End Fish Spawn Egg", "item.betterend.spawn_egg_end_fish": "End Fish Spawn Egg",
@ -839,8 +871,9 @@
"item.minecraft.splash_potion.effect.long_end_veil": "Splash Potion Of End Veil", "item.minecraft.splash_potion.effect.long_end_veil": "Splash Potion Of End Veil",
"item.minecraft.tipped_arrow.effect.end_veil": "Arrow Of End Veil", "item.minecraft.tipped_arrow.effect.end_veil": "Arrow Of End Veil",
"item.minecraft.tipped_arrow.effect.long_end_veil": "Arrow Of End Veil", "item.minecraft.tipped_arrow.effect.long_end_veil": "Arrow Of End Veil",
"itemGroup.betterend.end_blocks": "Better End: Blocks", "itemGroup.betterend.blocks": "BetterEnd: Blocks",
"itemGroup.betterend.end_items": "Better End: Items", "itemGroup.betterend.items": "BetterEnd: Items",
"itemGroup.betterend.plants": "BetterEnd: Plants",
"message.betterend.anvil_damage": "§cDamage", "message.betterend.anvil_damage": "§cDamage",
"message.betterend.fail_spawn": "§c§lYou need to hold 6 Amber Gems to set your spawn point", "message.betterend.fail_spawn": "§c§lYou need to hold 6 Amber Gems to set your spawn point",
"message.betterend.set_spawn": "§b§lYour spawn point is set here", "message.betterend.set_spawn": "§b§lYour spawn point is set here",
@ -860,5 +893,13 @@
"tag.betterend.umbrella_tree_logs": "Umbrella Logs", "tag.betterend.umbrella_tree_logs": "Umbrella Logs",
"tooltip.armor.crystalite_boots": "Effect: Swiftness I", "tooltip.armor.crystalite_boots": "Effect: Swiftness I",
"tooltip.armor.crystalite_chest": "Effect: Dig Speed I", "tooltip.armor.crystalite_chest": "Effect: Dig Speed I",
"tooltip.armor.crystalite_set": "Set bonus: Regeneration I" "tooltip.armor.crystalite_set": "Set bonus: Regeneration I",
"upgrade.betterend.aeternium_upgrade": "Aeternium Upgrade",
"upgrade.betterend.handle_attachment": "Combine with Handle",
"upgrade.betterend.leather_handle_attachment": "Combine with Leather Handle",
"upgrade.betterend.netherite_upgrade": "Netehrite Hammer Upgrade",
"upgrade.betterend.plate_upgrade": "Aeternium Plating",
"upgrade.betterend.terminite_upgrade": "Terminite Upgrade",
"upgrade.betterend.thallasium_upgrade": "Thallasium Sword Handle",
"upgrade.betterend.tool_assembly": "Assemble Sword"
} }

View file

@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "betterend:item/aeternium_upgrade_smithing_template"
}
}

View file

@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "betterend:item/handle_attachment_smithing_template"
}
}

View file

@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "betterend:item/leather_handle_attachment_smithing_template"
}
}

View file

@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "betterend:item/netherite_upgrade_smithing_template"
}
}

View file

@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "betterend:item/plate_upgrade_smithing_template"
}
}

View file

@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "betterend:item/terminite_upgrade_smithing_template"
}
}

View file

@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "betterend:item/thallasium_upgrade_smithing_template"
}
}

View file

@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "betterend:item/tool_assembly_smithing_template"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 399 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 146 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 140 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 153 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 249 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 248 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 195 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 155 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 287 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 167 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 172 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 240 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 294 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 478 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 513 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 455 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 516 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 410 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 394 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 490 B