Update to 1.21.3

- updated lang files
This commit is contained in:
2025-01-05 21:32:58 -06:00
parent 3f48a686cc
commit a53a6cd654
67 changed files with 1020 additions and 838 deletions

View File

@@ -1,5 +1,8 @@
package xyz.sillyangel.nugget.block;
import net.minecraft.core.registries.Registries;
import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation;
import xyz.sillyangel.nugget.NuggetMod;
import xyz.sillyangel.nugget.item.ModItems;
import net.minecraft.util.valueproviders.UniformInt;
@@ -22,28 +25,33 @@ public class ModBlocks {
public static final RegistryObject<Block> NUGGET_BLOCK = registerBlock("nugget_block",
() -> new Block(BlockBehaviour.Properties.of()
.setId(ResourceKey.create(Registries.BLOCK, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget_block")))
.strength(4f).requiresCorrectToolForDrops().sound(SoundType.AMETHYST)));
public static final RegistryObject<Block> RAW_NUGGET_BLOCK = registerBlock("raw_nugget_block",
() -> new Block(BlockBehaviour.Properties.of()
.setId(ResourceKey.create(Registries.BLOCK, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "raw_nugget_block")))
.strength(3f).requiresCorrectToolForDrops()));
// ores
public static final RegistryObject<Block> NUGGET_ORE = registerBlock("nugget_ore",
() -> new DropExperienceBlock(UniformInt.of(2, 4), BlockBehaviour.Properties.of()
.setId(ResourceKey.create(Registries.BLOCK, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget_ore")))
.strength(4f).requiresCorrectToolForDrops()));
public static final RegistryObject<Block> NUGGET_DEEPSLATE_ORE = registerBlock("nugget_deepslate_ore",
() -> new DropExperienceBlock(UniformInt.of(2, 4), BlockBehaviour.Properties.of()
.setId(ResourceKey.create(Registries.BLOCK, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget_deepslate_ore")))
.strength(5f).requiresCorrectToolForDrops().sound(SoundType.DEEPSLATE)));
private static <T extends Block> RegistryObject<T> registerBlock(String name, Supplier<T> block) {
RegistryObject<T> toReturn = BLOCKS.register(name, block);
registerBlockItem(name, toReturn);
private static <T extends Block> RegistryObject<T> registerBlock(String name, Supplier<T> block) {
RegistryObject<T> toReturn = BLOCKS.register(name, block);
registerBlockItem(name, toReturn);
return toReturn;
}
private static <T extends Block> void registerBlockItem(String name, RegistryObject<T> block) {
ModItems.ITEMS.register(name, () -> new BlockItem(block.get(), new Item.Properties()));
ModItems.ITEMS.register(name, () -> new BlockItem(block.get(), new Item.Properties()
.setId(ResourceKey.create(Registries.ITEM, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, name)))));
}
public static void register(IEventBus eventBus) {

View File

@@ -27,7 +27,7 @@ public class DataGenerators {
generator.addProvider(event.includeServer(), new LootTableProvider(packOutput, Collections.emptySet(),
List.of(new LootTableProvider.SubProviderEntry(ModBlockLootTableProvider::new, LootContextParamSets.BLOCK)), lookupProvider));
generator.addProvider(event.includeServer(), new ModRecipeProvider(packOutput, lookupProvider));
generator.addProvider(event.includeServer(), new ModRecipeProvider.Runner(packOutput, lookupProvider));
BlockTagsProvider blockTagsProvider = new ModBlockTagProvider(packOutput, lookupProvider, existingFileHelper);
generator.addProvider(event.includeServer(), blockTagsProvider);

View File

@@ -1,5 +1,7 @@
package xyz.sillyangel.nugget.datagen;
import net.minecraft.world.item.equipment.trim.TrimMaterial;
import net.minecraft.world.item.equipment.trim.TrimMaterials;
import xyz.sillyangel.nugget.NuggetMod;
import xyz.sillyangel.nugget.item.ModItems;
import net.minecraft.data.PackOutput;
@@ -11,8 +13,6 @@ import net.minecraftforge.client.model.generators.ItemModelProvider;
import net.minecraftforge.common.data.ExistingFileHelper;
import net.minecraftforge.registries.ForgeRegistries;
import net.minecraftforge.registries.RegistryObject;
import net.minecraft.world.item.armortrim.TrimMaterial;
import net.minecraft.world.item.armortrim.TrimMaterials;
import net.minecraft.resources.ResourceKey;
import net.minecraft.server.packs.PackType;
import net.minecraft.world.item.ArmorItem;
@@ -63,13 +63,19 @@ public class ModItemModelProvider extends ItemModelProvider {
if (itemRegistryObject.get() instanceof ArmorItem armorItem) {
trimMaterials.forEach((trimMaterial, value) -> {
float trimValue = value;
String armorType = switch (armorItem.getEquipmentSlot()) {
case HEAD -> "helmet";
case CHEST -> "chestplate";
case LEGS -> "leggings";
case FEET -> "boots";
default -> "";
};
String armorType = "";
if(armorItem.toString().contains("helmet")) {
armorType = "helmet";
} else if(armorItem.toString().contains("chestplate")) {
armorType = "chestplate";
} else if(armorItem.toString().contains("leggings")) {
armorType = "leggings";
} else if(armorItem.toString().contains("boots")) {
armorType = "boots";
}
String armorItemPath = armorItem.toString();
String trimPath = "trims/items/" + armorType + "_trim_" + trimMaterial.location().getPath();
String currentTrimName = armorItemPath + "_" + trimMaterial.location().getPath() + "_trim";

View File

@@ -38,5 +38,7 @@ public class ModItemTagProvider extends ItemTagsProvider {
.add(ModItems.NUGGET.get());
tag(ItemTags.TRIM_TEMPLATES)
.add(ModItems.NUGGET_SMITHING_TEMPLATE.get());
tag(ModTags.Items.NUGGET_REPAIRS)
.add(ModItems.NUGGET.get());
}
}

View File

@@ -1,5 +1,7 @@
package xyz.sillyangel.nugget.datagen;
import net.minecraft.core.registries.Registries;
import net.minecraft.resources.ResourceKey;
import net.minecraft.world.item.Items;
import xyz.sillyangel.nugget.NuggetMod;
import xyz.sillyangel.nugget.block.ModBlocks;
@@ -16,134 +18,152 @@ import java.util.List;
import java.util.concurrent.CompletableFuture;
public class ModRecipeProvider extends RecipeProvider implements IConditionBuilder {
public ModRecipeProvider(PackOutput pOutput, CompletableFuture<HolderLookup.Provider> pRegistries) {
super(pOutput, pRegistries);
public ModRecipeProvider(HolderLookup.Provider lookup, RecipeOutput recipeOutput) {
super(lookup, recipeOutput);
}
public static class Runner extends RecipeProvider.Runner {
public Runner(PackOutput output, CompletableFuture<HolderLookup.Provider> providerCompletableFuture) {
super(output, providerCompletableFuture);
}
@Override
protected RecipeProvider createRecipeProvider(HolderLookup.Provider provider, RecipeOutput recipeOutput) {
return new ModRecipeProvider(provider, recipeOutput);
}
@Override
public String getName() {
return "Recipes";
}
}
@Override
protected void buildRecipes(RecipeOutput pRecipeOutput) {
protected void buildRecipes() {
List<ItemLike> NUGGET_SMELTABLES = List.of(ModItems.RAW_NUGGET.get(),
ModBlocks.NUGGET_ORE.get(), ModBlocks.NUGGET_DEEPSLATE_ORE.get());
ShapedRecipeBuilder.shaped(RecipeCategory.MISC, ModBlocks.NUGGET_BLOCK.get())
shaped(RecipeCategory.MISC, ModBlocks.NUGGET_BLOCK.get())
.pattern("AAA")
.pattern("AAA")
.pattern("AAA")
.define('A', ModItems.NUGGET.get())
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(pRecipeOutput);
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(this.output);
ShapelessRecipeBuilder.shapeless(RecipeCategory.MISC, ModItems.NUGGET.get(), 9)
shapeless(RecipeCategory.MISC, ModItems.NUGGET.get(), 9)
.requires(ModBlocks.NUGGET_BLOCK.get())
.unlockedBy(getHasName(ModBlocks.NUGGET_BLOCK.get()), has(ModBlocks.NUGGET_BLOCK.get())).save(pRecipeOutput);
.unlockedBy(getHasName(ModBlocks.NUGGET_BLOCK.get()), has(ModBlocks.NUGGET_BLOCK.get())).save(this.output);
// RAW NUGGET
ShapedRecipeBuilder.shaped(RecipeCategory.MISC, ModBlocks.RAW_NUGGET_BLOCK.get())
shaped(RecipeCategory.MISC, ModBlocks.RAW_NUGGET_BLOCK.get())
.pattern("AAA")
.pattern("AAA")
.pattern("AAA")
.define('A', ModItems.RAW_NUGGET.get())
.unlockedBy(getHasName(ModItems.RAW_NUGGET.get()), has(ModItems.RAW_NUGGET.get())).save(pRecipeOutput);
.unlockedBy(getHasName(ModItems.RAW_NUGGET.get()), has(ModItems.RAW_NUGGET.get())).save(this.output);
ShapelessRecipeBuilder.shapeless(RecipeCategory.MISC, ModItems.RAW_NUGGET.get(), 9)
shapeless(RecipeCategory.MISC, ModItems.RAW_NUGGET.get(), 9)
.requires(ModBlocks.RAW_NUGGET_BLOCK.get())
.unlockedBy(getHasName(ModBlocks.RAW_NUGGET_BLOCK.get()), has(ModBlocks.RAW_NUGGET_BLOCK.get())).save(pRecipeOutput);
.unlockedBy(getHasName(ModBlocks.RAW_NUGGET_BLOCK.get()), has(ModBlocks.RAW_NUGGET_BLOCK.get())).save(this.output);
// TOOLS
//SWORD
ShapedRecipeBuilder.shaped(RecipeCategory.COMBAT, ModItems.NUGGET_SWORD.get())
shaped(RecipeCategory.COMBAT, ModItems.NUGGET_SWORD.get())
.pattern(" A ")
.pattern(" A ")
.pattern(" B ")
.define('A', ModItems.NUGGET.get())
.define('B', Items.STICK)
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(pRecipeOutput);
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(this.output);
//PICAXE
ShapedRecipeBuilder.shaped(RecipeCategory.TOOLS, ModItems.NUGGET_PICKAXE.get())
shaped(RecipeCategory.TOOLS, ModItems.NUGGET_PICKAXE.get())
.pattern("AAA")
.pattern(" B ")
.pattern(" B ")
.define('A', ModItems.NUGGET.get())
.define('B', Items.STICK)
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(pRecipeOutput);
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(this.output);
//AXE
ShapedRecipeBuilder.shaped(RecipeCategory.TOOLS, ModItems.NUGGET_AXE.get())
shaped(RecipeCategory.TOOLS, ModItems.NUGGET_AXE.get())
.pattern(" AA")
.pattern(" BA")
.pattern(" B ")
.define('A', ModItems.NUGGET.get())
.define('B', Items.STICK)
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(pRecipeOutput);
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(this.output);
//SHOVEL
ShapedRecipeBuilder.shaped(RecipeCategory.TOOLS, ModItems.NUGGET_SHOVEL.get())
shaped(RecipeCategory.TOOLS, ModItems.NUGGET_SHOVEL.get())
.pattern(" A ")
.pattern(" B ")
.pattern(" B ")
.define('A', ModItems.NUGGET.get())
.define('B', Items.STICK)
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(pRecipeOutput);
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(this.output);
//HOE
ShapedRecipeBuilder.shaped(RecipeCategory.TOOLS, ModItems.NUGGET_HOE.get())
shaped(RecipeCategory.TOOLS, ModItems.NUGGET_HOE.get())
.pattern(" AA")
.pattern(" B ")
.pattern(" B ")
.define('A', ModItems.NUGGET.get())
.define('B', Items.STICK)
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(pRecipeOutput);
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(this.output);
// END OF TOOLS
// start of armor
// head!?!
ShapedRecipeBuilder.shaped(RecipeCategory.COMBAT, ModItems.NUGGET_HELMET.get())
shaped(RecipeCategory.COMBAT, ModItems.NUGGET_HELMET.get())
.pattern("AAA")
.pattern("A A")
.pattern(" ")
.define('A', ModItems.NUGGET.get())
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(pRecipeOutput);
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(this.output);
//shirt
ShapedRecipeBuilder.shaped(RecipeCategory.COMBAT, ModItems.NUGGET_CHESTPLATE.get())
shaped(RecipeCategory.COMBAT, ModItems.NUGGET_CHESTPLATE.get())
.pattern("A A")
.pattern("AAA")
.pattern("AAA")
.define('A', ModItems.NUGGET.get())
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(pRecipeOutput);
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(this.output);
//pants?
ShapedRecipeBuilder.shaped(RecipeCategory.COMBAT, ModItems.NUGGET_LEGGINGS.get())
shaped(RecipeCategory.COMBAT, ModItems.NUGGET_LEGGINGS.get())
.pattern("AAA")
.pattern("A A")
.pattern("A A")
.define('A', ModItems.NUGGET.get())
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(pRecipeOutput);
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(this.output);
//socks
ShapedRecipeBuilder.shaped(RecipeCategory.COMBAT, ModItems.NUGGET_BOOTS.get())
shaped(RecipeCategory.COMBAT, ModItems.NUGGET_BOOTS.get())
.pattern(" ")
.pattern("A A")
.pattern("A A")
.define('A', ModItems.NUGGET.get())
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(pRecipeOutput);
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(this.output);
trimSmithing(pRecipeOutput, ModItems.NUGGET_SMITHING_TEMPLATE.get(), ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget_trim_mat"));
trimSmithing(ModItems.NUGGET_SMITHING_TEMPLATE.get(), ResourceKey.create(Registries.RECIPE,
ResourceLocation.parse(getItemName(ModItems.NUGGET_SMITHING_TEMPLATE.get()) + "_smithing_trim")));
oreSmelting(pRecipeOutput, NUGGET_SMELTABLES, RecipeCategory.MISC, ModItems.NUGGET.get(), 0.25f, 200, "nugget");
oreBlasting(pRecipeOutput, NUGGET_SMELTABLES, RecipeCategory.MISC, ModItems.NUGGET.get(), 0.25f, 100, "nugget");
oreSmelting(this.output, NUGGET_SMELTABLES, RecipeCategory.MISC, ModItems.NUGGET.get(), 0.25f, 200, "nugget");
oreBlasting(this.output, NUGGET_SMELTABLES, RecipeCategory.MISC, ModItems.NUGGET.get(), 0.25f, 100, "nugget");
}
protected static void oreSmelting(RecipeOutput recipeOutput, List<ItemLike> pIngredients, RecipeCategory pCategory, ItemLike pResult,
protected void oreSmelting(RecipeOutput recipeOutput, List<ItemLike> pIngredients, RecipeCategory pCategory, ItemLike pResult,
float pExperience, int pCookingTIme, String pGroup) {
oreCooking(recipeOutput, RecipeSerializer.SMELTING_RECIPE, SmeltingRecipe::new, pIngredients, pCategory, pResult,
pExperience, pCookingTIme, pGroup, "_from_smelting");
}
protected static void oreBlasting(RecipeOutput recipeOutput, List<ItemLike> pIngredients, RecipeCategory pCategory, ItemLike pResult,
protected void oreBlasting(RecipeOutput recipeOutput, List<ItemLike> pIngredients, RecipeCategory pCategory, ItemLike pResult,
float pExperience, int pCookingTime, String pGroup) {
oreCooking(recipeOutput, RecipeSerializer.BLASTING_RECIPE, BlastingRecipe::new, pIngredients, pCategory, pResult,
pExperience, pCookingTime, pGroup, "_from_blasting");
}
protected static <T extends AbstractCookingRecipe> void oreCooking(RecipeOutput recipeOutput, RecipeSerializer<T> pCookingSerializer, AbstractCookingRecipe.Factory<T> factory,
protected <T extends AbstractCookingRecipe> void oreCooking(RecipeOutput recipeOutput, RecipeSerializer<T> pCookingSerializer, AbstractCookingRecipe.Factory<T> factory,
List<ItemLike> pIngredients, RecipeCategory pCategory, ItemLike pResult, float pExperience, int pCookingTime, String pGroup, String pRecipeName) {
for(ItemLike itemlike : pIngredients) {
SimpleCookingRecipeBuilder.generic(Ingredient.of(itemlike), pCategory, pResult, pExperience, pCookingTime, pCookingSerializer, factory).group(pGroup).unlockedBy(getHasName(itemlike), has(itemlike))

View File

@@ -1,46 +1,22 @@
package xyz.sillyangel.nugget.item;
import xyz.sillyangel.nugget.NuggetMod;
import xyz.sillyangel.nugget.util.ModTags;
import net.minecraft.Util;
import net.minecraft.core.Holder;
import net.minecraft.core.Registry;
import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.sounds.SoundEvent;
import net.minecraft.sounds.SoundEvents;
import net.minecraft.world.item.ArmorItem;
import net.minecraft.world.item.ArmorMaterial;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.crafting.Ingredient;
import net.minecraft.world.item.equipment.ArmorMaterial;
import net.minecraft.world.item.equipment.ArmorType;
import java.util.EnumMap;
import java.util.List;
import java.util.function.Supplier;
public class ModArmorMaterials {
public static final Holder<ArmorMaterial> NUGGET_ARMOR_MATERIAL = register("nugget", Util.make(new EnumMap<>(ArmorItem.Type.class),
public static final ArmorMaterial NUGGET_ARMOR_MATERIAL = new ArmorMaterial(1200, Util.make(new EnumMap<>(ArmorType.class),
attribute -> {
attribute.put(ArmorItem.Type.BOOTS, 5);
attribute.put(ArmorItem.Type.LEGGINGS, 7);
attribute.put(ArmorItem.Type.CHESTPLATE, 9);
attribute.put(ArmorItem.Type.HELMET, 5);
attribute.put(ArmorItem.Type.BODY, 11);
}), 20, 4.5f, 0.5f, () -> ModItems.NUGGET.get());
private static Holder<ArmorMaterial> register(String name, EnumMap<ArmorItem.Type, Integer> typeProtection,
int enchantability, float toughness, float knockbackResistance,
Supplier<Item> ingredientItem) {
ResourceLocation location = ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, name);
Holder<SoundEvent> equipSound = SoundEvents.ARMOR_EQUIP_NETHERITE;
Supplier<Ingredient> ingredient = () -> Ingredient.of(ingredientItem.get());
List<ArmorMaterial.Layer> layers = List.of(new ArmorMaterial.Layer(location));
EnumMap<ArmorItem.Type, Integer> typeMap = new EnumMap<>(ArmorItem.Type.class);
for (ArmorItem.Type type : ArmorItem.Type.values()) {
typeMap.put(type, typeProtection.get(type));
}
return Registry.registerForHolder(BuiltInRegistries.ARMOR_MATERIAL, location,
new ArmorMaterial(typeProtection, enchantability, equipSound, ingredient, layers, toughness, knockbackResistance));
}
attribute.put(ArmorType.BOOTS, 5);
attribute.put(ArmorType.LEGGINGS, 7);
attribute.put(ArmorType.CHESTPLATE, 9);
attribute.put(ArmorType.HELMET, 5);
attribute.put(ArmorType.BODY, 11);
}), 15, SoundEvents.ARMOR_EQUIP_NETHERITE,
4f, 0.1f, ModTags.Items.NUGGET_REPAIRS, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget"));
}

View File

@@ -1,5 +1,8 @@
package xyz.sillyangel.nugget.item;
import net.minecraft.core.registries.Registries;
import net.minecraft.resources.ResourceKey;
import net.minecraft.world.item.equipment.ArmorType;
import xyz.sillyangel.nugget.NuggetMod;
import net.minecraftforge.eventbus.api.IEventBus;
import net.minecraftforge.registries.DeferredRegister;
@@ -17,7 +20,8 @@ public class ModItems {
DeferredRegister.create(ForgeRegistries.ITEMS, NuggetMod.MOD_ID);
public static final RegistryObject<Item> NUGGET = ITEMS.register("nugget",
() -> new Item(new Item.Properties().food(ModFoodProperties.Nugget)) {
() -> new Item(new Item.Properties().setId(ResourceKey.create(Registries.ITEM, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget")))
.food(ModFoodProperties.Nugget)) {
@Override
public void appendHoverText(ItemStack pStack, TooltipContext pContext, List<Component> pTooltipComponent, TooltipFlag pTooltipFlag) {
pTooltipComponent.add(Component.translatable("item.nuggetmod.nugget.tooltip"));
@@ -26,48 +30,64 @@ public class ModItems {
});
public static final RegistryObject<Item> RAW_NUGGET = ITEMS.register("raw_nugget",
() -> new Item(new Item.Properties()));
() -> new Item(new Item.Properties().setId(ResourceKey.create(Registries.ITEM, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "raw_nugget")))));
public static final RegistryObject<Item> NUGGET_SWORD = ITEMS.register("nugget_sword",
() -> new SwordItem(ModToolTiers.NUGGET, new Item.Properties()
.attributes(SwordItem.createAttributes(ModToolTiers.NUGGET, 3, -2.4f))));
() -> new SwordItem(ModToolTiers.NUGGET, 3, -2.4f, new Item.Properties()
.setId(ResourceKey.create(Registries.ITEM, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget_sword")))));
public static final RegistryObject<Item> NUGGET_PICKAXE = ITEMS.register("nugget_pickaxe",
() -> new PickaxeItem(ModToolTiers.NUGGET, new Item.Properties()
.attributes(PickaxeItem.createAttributes(ModToolTiers.NUGGET, 1, -2.8f))));
() -> new PickaxeItem(ModToolTiers.NUGGET, 1, -2.8f, new Item.Properties()
.setId(ResourceKey.create(Registries.ITEM, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget_pickaxe")))));
public static final RegistryObject<Item> NUGGET_SHOVEL = ITEMS.register("nugget_shovel",
() -> new ShovelItem(ModToolTiers.NUGGET, new Item.Properties()
.attributes(ShovelItem.createAttributes(ModToolTiers.NUGGET, 1.5f, -3.0f))));
() -> new ShovelItem(ModToolTiers.NUGGET, 1.5f, -3.0f, new Item.Properties()
.setId(ResourceKey.create(Registries.ITEM, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget_shovel")))));
public static final RegistryObject<Item> NUGGET_AXE = ITEMS.register("nugget_axe",
() -> new AxeItem(ModToolTiers.NUGGET, new Item.Properties()
.attributes(AxeItem.createAttributes(ModToolTiers.NUGGET, 6, -3.2f))));
() -> new AxeItem(ModToolTiers.NUGGET, 6, -3.2f, new Item.Properties()
.setId(ResourceKey.create(Registries.ITEM, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget_axe")))));
public static final RegistryObject<Item> NUGGET_HOE = ITEMS.register("nugget_hoe",
() -> new HoeItem(ModToolTiers.NUGGET, new Item.Properties()
.attributes(HoeItem.createAttributes(ModToolTiers.NUGGET, 0, -3.0f))));
() -> new HoeItem(ModToolTiers.NUGGET, 0, -3.0f, new Item.Properties()
.setId(ResourceKey.create(Registries.ITEM, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget_hoe")))));
// armor things
public static final RegistryObject<Item> NUGGET_HELMET = ITEMS.register("nugget_helmet",
() -> new ArmorItem(ModArmorMaterials.NUGGET_ARMOR_MATERIAL, ArmorItem.Type.HELMET,
new Item.Properties().durability(ArmorItem.Type.HELMET.getDurability(25))));
() -> new ArmorItem(ModArmorMaterials.NUGGET_ARMOR_MATERIAL, ArmorType.HELMET,
new Item.Properties()
.setId(ResourceKey.create(Registries.ITEM, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget_helmet")))));
public static final RegistryObject<Item> NUGGET_CHESTPLATE = ITEMS.register("nugget_chestplate",
() -> new ArmorItem(ModArmorMaterials.NUGGET_ARMOR_MATERIAL, ArmorItem.Type.CHESTPLATE,
new Item.Properties().durability(ArmorItem.Type.CHESTPLATE.getDurability(25))));
() -> new ArmorItem(ModArmorMaterials.NUGGET_ARMOR_MATERIAL, ArmorType.CHESTPLATE,
new Item.Properties()
.setId(ResourceKey.create(Registries.ITEM, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget_chestplate")))));
public static final RegistryObject<Item> NUGGET_LEGGINGS = ITEMS.register("nugget_leggings",
() -> new ArmorItem(ModArmorMaterials.NUGGET_ARMOR_MATERIAL, ArmorItem.Type.LEGGINGS,
new Item.Properties().durability(ArmorItem.Type.LEGGINGS.getDurability(25))));
() -> new ArmorItem(ModArmorMaterials.NUGGET_ARMOR_MATERIAL, ArmorType.LEGGINGS,
new Item.Properties()
.setId(ResourceKey.create(Registries.ITEM, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget_leggings")))));
public static final RegistryObject<Item> NUGGET_BOOTS = ITEMS.register("nugget_boots",
() -> new ArmorItem(ModArmorMaterials.NUGGET_ARMOR_MATERIAL, ArmorItem.Type.BOOTS,
new Item.Properties().durability(ArmorItem.Type.BOOTS.getDurability(25))));
() -> new ArmorItem(ModArmorMaterials.NUGGET_ARMOR_MATERIAL, ArmorType.BOOTS,
new Item.Properties()
.setId(ResourceKey.create(Registries.ITEM, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget_boots")))));
// horse armor
public static final RegistryObject<Item> NUGGET_HORSE_ARMOR = ITEMS.register("nugget_horse_armor",
() -> new AnimalArmorItem(ModArmorMaterials.NUGGET_ARMOR_MATERIAL, AnimalArmorItem.BodyType.EQUESTRIAN,
false, new Item.Properties().stacksTo(1)));
() -> new AnimalArmorItem(ModArmorMaterials.NUGGET_ARMOR_MATERIAL, AnimalArmorItem.BodyType.EQUESTRIAN, new Item.Properties()
.setId(ResourceKey.create(Registries.ITEM, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget_horse_armor")))
.stacksTo(1)));
// smithing temp
public static final RegistryObject<Item> NUGGET_SMITHING_TEMPLATE = ITEMS.register("nugget_armor_trim_smithing_template",
() -> SmithingTemplateItem.createArmorTrimTemplate(ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget_trim_mat")));
() -> SmithingTemplateItem.createArmorTrimTemplate(new Item.Properties()
.setId(ResourceKey.create(Registries.ITEM, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget_armor_trim_smithing_template")))));
public static final RegistryObject<Item> NUGGET_MUSIC_DISC = ITEMS.register("nugget_music_disc",
() -> new Item(new Item.Properties().jukeboxPlayable(ModSounds.NUGGET_THEME_KEY).stacksTo(1)));
() -> new Item(new Item.Properties()
.setId(ResourceKey.create(Registries.ITEM, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget_music_disc")))
.jukeboxPlayable(ModSounds.NUGGET_THEME_KEY).stacksTo(1)));
public static void register(IEventBus eventBus) {

View File

@@ -1,12 +1,9 @@
package xyz.sillyangel.nugget.item;
import net.minecraft.world.item.Tier;
import net.minecraft.world.item.crafting.Ingredient;
import net.minecraftforge.common.ForgeTier;
import net.minecraft.world.item.ToolMaterial;
import xyz.sillyangel.nugget.util.ModTags;
public class ModToolTiers {
public static final Tier NUGGET = new ForgeTier(1500, 4.5f, 3.5f, 22,
ModTags.Blocks.NEEDS_NUGGET_TOOL, () -> Ingredient.of(ModItems.NUGGET.get()),
ModTags.Blocks.INCORRECT_FOR_NUGGET_TOOL);
public static final ToolMaterial NUGGET = new ToolMaterial(ModTags.Blocks.INCORRECT_FOR_NUGGET_TOOL,
1500, 4.5f, 3.5f, 22, ModTags.Items.NUGGET_REPAIRS);
}

View File

@@ -11,7 +11,7 @@ import net.minecraft.network.chat.TextColor;
import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.armortrim.TrimMaterial;
import net.minecraft.world.item.equipment.trim.TrimMaterial;
import java.util.Map;

View File

@@ -1,5 +1,6 @@
package xyz.sillyangel.nugget.trim;
import net.minecraft.world.item.equipment.trim.TrimPattern;
import xyz.sillyangel.nugget.NuggetMod;
import xyz.sillyangel.nugget.item.ModItems;
import net.minecraft.Util;
@@ -9,7 +10,6 @@ import net.minecraft.network.chat.Component;
import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.armortrim.TrimPattern;
import net.minecraftforge.registries.ForgeRegistries;
public class ModTrimPatterns {

View File

@@ -1,5 +1,5 @@
package xyz.sillyangel.nugget.util;
public class ModItemProperites {
// i dont know what to put here?!
}

View File

@@ -20,6 +20,7 @@ public class ModTags {
public static class Items {
public static final TagKey<Item> TRANSFORMABLE_ITEMS = createTag("transformable_items");
public static final TagKey<Item> NUGGET_REPAIRS = createTag("nugget_repairs");
private static TagKey<Item> createTag(String name) {
return ItemTags.create(ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, name));

View File

@@ -1,63 +1,66 @@
{
"replace": false,
"sources": [
{
"type": "paletted_permutations",
"textures": [
"trims/models/armor/coast",
"trims/models/armor/coast_leggings",
"trims/models/armor/sentry",
"trims/models/armor/sentry_leggings",
"trims/models/armor/dune",
"trims/models/armor/dune_leggings",
"trims/models/armor/wild",
"trims/models/armor/wild_leggings",
"trims/models/armor/ward",
"trims/models/armor/ward_leggings",
"trims/models/armor/eye",
"trims/models/armor/eye_leggings",
"trims/models/armor/vex",
"trims/models/armor/vex_leggings",
"trims/models/armor/tide",
"trims/models/armor/tide_leggings",
"trims/models/armor/snout",
"trims/models/armor/snout_leggings",
"trims/models/armor/rib",
"trims/models/armor/rib_leggings",
"trims/models/armor/spire",
"trims/models/armor/spire_leggings",
"trims/models/armor/wayfinder",
"trims/models/armor/wayfinder_leggings",
"trims/models/armor/shaper",
"trims/models/armor/shaper_leggings",
"trims/models/armor/silence",
"trims/models/armor/silence_leggings",
"trims/models/armor/raiser",
"trims/models/armor/raiser_leggings",
"trims/models/armor/host",
"trims/models/armor/host_leggings",
"nuggetmod:trims/models/armor/nugget",
"nuggetmod:trims/models/armor/nugget_leggings"
],
"palette_key": "trims/color_palettes/trim_palette",
"permutations": {
"quartz": "trims/color_palettes/quartz",
"iron": "trims/color_palettes/iron",
"gold": "trims/color_palettes/gold",
"diamond": "trims/color_palettes/diamond",
"netherite": "trims/color_palettes/netherite",
"redstone": "trims/color_palettes/redstone",
"copper": "trims/color_palettes/copper",
"emerald": "trims/color_palettes/emerald",
"lapis": "trims/color_palettes/lapis",
"amethyst": "trims/color_palettes/amethyst",
"iron_darker": "trims/color_palettes/iron_darker",
"gold_darker": "trims/color_palettes/gold_darker",
"diamond_darker": "trims/color_palettes/diamond_darker",
"netherite_darker": "trims/color_palettes/netherite_darker",
"nugget": "nuggetmod:trims/color_palettes/nugget"
}
"replace": false,
"sources": [
{
"type": "paletted_permutations",
"textures": [
"trims/entity/humanoid/coast",
"trims/entity/humanoid_leggings/coast",
"trims/entity/humanoid/sentry",
"trims/entity/humanoid_leggings/sentry",
"trims/entity/humanoid/dune",
"trims/entity/humanoid_leggings/dune",
"trims/entity/humanoid/wild",
"trims/entity/humanoid_leggings/wild",
"trims/entity/humanoid/ward",
"trims/entity/humanoid_leggings/ward",
"trims/entity/humanoid/eye",
"trims/entity/humanoid_leggings/eye",
"trims/entity/humanoid/vex",
"trims/entity/humanoid_leggings/vex",
"trims/entity/humanoid/tide",
"trims/entity/humanoid_leggings/tide",
"trims/entity/humanoid/snout",
"trims/entity/humanoid_leggings/snout",
"trims/entity/humanoid/rib",
"trims/entity/humanoid_leggings/rib",
"trims/entity/humanoid/spire",
"trims/entity/humanoid_leggings/spire",
"trims/entity/humanoid/wayfinder",
"trims/entity/humanoid_leggings/wayfinder",
"trims/entity/humanoid/shaper",
"trims/entity/humanoid_leggings/shaper",
"trims/entity/humanoid/silence",
"trims/entity/humanoid_leggings/silence",
"trims/entity/humanoid/raiser",
"trims/entity/humanoid_leggings/raiser",
"trims/entity/humanoid/host",
"trims/entity/humanoid_leggings/host",
"trims/entity/humanoid/flow",
"trims/entity/humanoid_leggings/flow",
"trims/entity/humanoid/bolt",
"trims/entity/humanoid_leggings/bolt",
"nuggetmod:trims/entity/humanoid/nugget",
"nuggetmod:trims/entity/humanoid_leggings/nugget"
],
"palette_key": "trims/color_palettes/trim_palette",
"permutations": {
"quartz": "trims/color_palettes/quartz",
"iron": "trims/color_palettes/iron",
"gold": "trims/color_palettes/gold",
"diamond": "trims/color_palettes/diamond",
"netherite": "trims/color_palettes/netherite",
"redstone": "trims/color_palettes/redstone",
"copper": "trims/color_palettes/copper",
"emerald": "trims/color_palettes/emerald",
"lapis": "trims/color_palettes/lapis",
"amethyst": "trims/color_palettes/amethyst",
"iron_darker": "trims/color_palettes/iron_darker",
"gold_darker": "trims/color_palettes/gold_darker",
"diamond_darker": "trims/color_palettes/diamond_darker",
"netherite_darker": "trims/color_palettes/netherite_darker",
"nugget": "nuggetmod:trims/color_palettes/nugget"
}
]
}
}
]
}

View File

@@ -1,11 +1,11 @@
{
"item.nuggetmod.raw_nugget": "Raw Nugget",
"item.nuggetmod.nugget": "nugget",
"item.nuggetmod.nugget": "Nugget",
"block.nuggetmod.nugget_block": "Nugget Block",
"block.nuggetmod.raw_nugget_block": "Raw Nugget Block",
"block.nuggetmod.nugget_ore": "Nugget Ore",
"block.nuggetmod.nugget_deepslate_ore": "Nugget Deepslate Ore",
"item.nuggetmod.nugget_block": "Nugget Block",
"item.nuggetmod.raw_nugget_block": "Raw Nugget Block",
"item.nuggetmod.nugget_ore": "Nugget Ore",
"item.nuggetmod.nugget_deepslate_ore": "Nugget Deepslate Ore",
"item.nuggetmod.nugget_sword": "Nugget Sword",
"item.nuggetmod.nugget_pickaxe": "Nugget Pickaxe",
@@ -18,21 +18,21 @@
"item.nuggetmod.nugget_horse_armor": "Nugget Horse Armor",
"item.nuggetmod.nugget_armor_trim_smithing_template": "Nugget Trim Template",
"item.nuggetmod.nugget_helmet": "Nugget Helmet",
"item.nuggetmod.nugget_chestplate": "Nugget Chestplate",
"item.nuggetmod.nugget_leggings": "Nugget Leggings",
"item.nuggetmod.nugget_boots": "Nugget Boots",
"creativetab.nuggetmod.nugget_items": "Nugget Mod Items",
"creativetab.nuggetmod.nugget_blocks": "Nugget Mod Blocks",
"creativetab.nuggetmod.nugget_items": "Nugget Items",
"creativetab.nuggetmod.nugget_blocks": "Nugget Blocks",
"item.nuggetmod.nugget.tooltip": "THE NUGGET",
"item.nuggetmod.nugget_armor_trim_smithing_template": "Nugget Armor Trim",
"trim_material.nuggetmod.nugget": "Nugget Material",
"trim_pattern.nuggetmod.nugget_trim_material": "Nugget Trim",
"trim_pattern.nuggetmod.nugget": "Nugget Trim",
"painting.nuggetmod.nugget_painting.title": "Nugget Painting",

View File

@@ -1,30 +1,38 @@
{
"item.nuggetmod.raw_nugget": "Nugget Crudo",
"item.nuggetmod.nugget": "Nugget",
"block.nuggetmod.nugget_block": "Bloque de Nuggets",
"block.nuggetmod.raw_nugget_block": "Bloque de Nuggets Crudos",
"block.nuggetmod.nugget_ore": "Mineral de Nuggets",
"block.nuggetmod.nugget_deepslate_ore": "Mineral de Nuggets de Pizca Profunda",
"item.nuggetmod.nugget_block": "Bloque de Nuggets",
"item.nuggetmod.raw_nugget_block": "Bloque de Nuggets Crudos",
"item.nuggetmod.nugget_ore": "Mineral de Nuggets",
"item.nuggetmod.nugget_deepslate_ore": "Mineral de Nuggets de Pizca Profunda",
"item.nuggetmod.nugget_sword": "Espada de Nuggets",
"item.nuggetmod.nugget_pickaxe": "Pico de Nuggets",
"item.nuggetmod.nugget_shovel": "Pala de Nuggets",
"item.nuggetmod.nugget_axe": "Hacha de Nuggets",
"item.nuggetmod.nugget_hoe": "Azada de Nuggets",
"item.nuggetmod.nugget_music_disc": "Tema de Nuggets",
"item.nuggetmod.nugget_music_disc.desc": "Gegagedigedagedago",
"item.nuggetmod.nugget_horse_armor": "Armadura de Caballo de Nuggets",
"item.nuggetmod.nugget_armor_trim_smithing_template": "Plantilla de Adorno de Nuggets",
"item.nuggetmod.nugget_helmet": "Casco de Nuggets",
"item.nuggetmod.nugget_chestplate": "Peto de Nuggets",
"item.nuggetmod.nugget_leggings": "Leotardos de Nuggets",
"item.nuggetmod.nugget_boots": "Botas de Nuggets",
"creativetab.nuggetmod.nugget_items": "Artículos del Mod de Nuggets",
"creativetab.nuggetmod.nugget_blocks": "Bloques del Mod de Nuggets",
"creativetab.nuggetmod.nugget_items": "Artículos de Nuggets",
"creativetab.nuggetmod.nugget_blocks": "Bloques de Nuggets",
"item.nuggetmod.nugget.tooltip": "EL NUGGET",
"trim_pattern.nuggetmod.nugget_armor_trim_smithing_template": "Adorno de Armadura de Nuggets",
"trim_material.nuggetmod.nugget": "Material de Nuggets"
}
"trim_material.nuggetmod.nugget": "Material de Nuggets",
"trim_pattern.nuggetmod.nugget_trim_material": "Adorno de Nuggets",
"trim_pattern.nuggetmod.nugget": "Adorno de Nuggets",
"painting.nuggetmod.nugget_painting.title": "Pintura de Nuggets",
"painting.nuggetmod.nugget_painting.author": "Mod de Nuggets"
}

View File

@@ -0,0 +1,19 @@
{
"layers": {
"horse_body": [
{
"texture": "nuggetmod:nugget"
}
],
"humanoid": [
{
"texture": "nuggetmod:nugget"
}
],
"humanoid_leggings": [
{
"texture": "nuggetmod:nugget"
}
]
}
}