add nugget horse armor and related assets; update mod version to 1.1.1

This commit is contained in:
2024-12-31 12:35:11 -06:00
parent e658b5372a
commit f271a1b343
17 changed files with 178 additions and 4 deletions

View File

@@ -35,5 +35,7 @@ public class DataGenerators {
generator.addProvider(event.includeClient(), new ModItemModelProvider(packOutput, existingFileHelper));
generator.addProvider(event.includeClient(), new ModBlockStateProvider(packOutput, existingFileHelper));
generator.addProvider(event.includeServer(), new ModDatapackEntries(packOutput, lookupProvider));
}
}

View File

@@ -0,0 +1,24 @@
package xyz.sillyangel.nugget.datagen;
import xyz.sillyangel.nugget.NuggetMod;
import net.minecraftforge.common.data.DatapackBuiltinEntriesProvider;
import xyz.sillyangel.nugget.trim.ModTrimMaterials;
import xyz.sillyangel.nugget.trim.ModTrimPatterns;
import net.minecraft.core.HolderLookup;
import net.minecraft.core.RegistrySetBuilder;
import net.minecraft.core.registries.Registries;
import net.minecraft.data.PackOutput;
import net.minecraftforge.common.data.DatapackBuiltinEntriesProvider;
import java.util.Set;
import java.util.concurrent.CompletableFuture;
public class ModDatapackEntries extends DatapackBuiltinEntriesProvider {
public static final RegistrySetBuilder BUILDER = new RegistrySetBuilder()
.add(Registries.TRIM_MATERIAL, ModTrimMaterials::bootstrap)
.add(Registries.TRIM_PATTERN, ModTrimPatterns::bootstrap);
public ModDatapackEntries(PackOutput output, CompletableFuture<HolderLookup.Provider> registries) {
super(output, registries, BUILDER, Set.of(NuggetMod.MOD_ID));
}
}

View File

@@ -41,6 +41,7 @@ public class ModItemModelProvider extends ItemModelProvider {
@Override
protected void registerModels() {
basicItem(ModItems.NUGGET_HORSE_ARMOR.get());
basicItem(ModItems.NUGGET.get());
basicItem(ModItems.RAW_NUGGET.get());

View File

@@ -34,5 +34,9 @@ public class ModItemTagProvider extends ItemTagsProvider {
.add(ModItems.NUGGET_CHESTPLATE.get())
.add(ModItems.NUGGET_LEGGINGS.get())
.add(ModItems.NUGGET_BOOTS.get());
tag(ItemTags.TRIM_MATERIALS)
.add(ModItems.NUGGET.get());
tag(ItemTags.TRIM_TEMPLATES)
.add(ModItems.NUGGET_SMITHING_TEMPLATE.get());
}
}

View File

@@ -7,6 +7,7 @@ import xyz.sillyangel.nugget.item.ModItems;
import net.minecraft.core.HolderLookup;
import net.minecraft.data.PackOutput;
import net.minecraft.data.recipes.*;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.crafting.*;
import net.minecraft.world.level.ItemLike;
import net.minecraftforge.common.crafting.conditions.IConditionBuilder;
@@ -122,6 +123,8 @@ public class ModRecipeProvider extends RecipeProvider implements IConditionBuild
.define('A', ModItems.NUGGET.get())
.unlockedBy(getHasName(ModItems.NUGGET.get()), has(ModItems.NUGGET.get())).save(pRecipeOutput);
trimSmithing(pRecipeOutput, ModItems.NUGGET_SMITHING_TEMPLATE.get(), ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget"));
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");

View File

@@ -32,6 +32,9 @@ public class ModCreativeModeTabs {
output.accept(ModItems.NUGGET_LEGGINGS.get());
output.accept(ModItems.NUGGET_BOOTS.get());
output.accept(ModItems.NUGGET_HORSE_ARMOR.get());
output.accept(ModItems.NUGGET_SMITHING_TEMPLATE.get());
}).build());
public static final RegistryObject<CreativeModeTab> NUGGET_BLOCKS_TAB = CREATIVE_MODE_TABS.register("nuggetmod_blocks_tab",

View File

@@ -5,6 +5,7 @@ import net.minecraftforge.eventbus.api.IEventBus;
import net.minecraftforge.registries.DeferredRegister;
import net.minecraftforge.registries.ForgeRegistries;
import net.minecraft.network.chat.Component;
import net.minecraft.resources.ResourceLocation;
import net.minecraftforge.registries.RegistryObject;
import net.minecraft.world.item.*;
import java.util.List;
@@ -55,8 +56,13 @@ public class ModItems {
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))));
// 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)));
// 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")));
public static void register(IEventBus eventBus) {
ITEMS.register(eventBus);
}

View File

@@ -0,0 +1,31 @@
package xyz.sillyangel.nugget.trim;
import xyz.sillyangel.nugget.NuggetMod;
import xyz.sillyangel.nugget.item.ModItems;
import net.minecraft.Util;
import net.minecraft.core.registries.Registries;
import net.minecraft.data.worldgen.BootstrapContext;
import net.minecraft.network.chat.Component;
import net.minecraft.network.chat.Style;
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 java.util.Map;
public class ModTrimMaterials {
public static final ResourceKey<TrimMaterial> NUGGET =
ResourceKey.create(Registries.TRIM_MATERIAL, ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget"));
public static void bootstrap(BootstrapContext<TrimMaterial> context) {
register(context, NUGGET, ModItems.NUGGET.get(), Style.EMPTY.withColor(TextColor.parseColor("#f9b042").getOrThrow()), 0.1F);
}
private static void register(BootstrapContext<TrimMaterial> context, ResourceKey<TrimMaterial> trimKey, Item item,
Style style, float itemModelIndex) {
TrimMaterial trimmaterial = TrimMaterial.create(trimKey.location().getPath(), item, itemModelIndex,
Component.translatable(Util.makeDescriptionId("trim_material", trimKey.location())).withStyle(style), Map.of());
context.register(trimKey, trimmaterial);
}
}

View File

@@ -0,0 +1,28 @@
package xyz.sillyangel.nugget.trim;
import xyz.sillyangel.nugget.NuggetMod;
import xyz.sillyangel.nugget.item.ModItems;
import net.minecraft.Util;
import net.minecraft.core.registries.Registries;
import net.minecraft.data.worldgen.BootstrapContext;
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 {
public static final ResourceKey<TrimPattern> NUGGET = ResourceKey.create(Registries.TRIM_PATTERN,
ResourceLocation.fromNamespaceAndPath(NuggetMod.MOD_ID, "nugget"));
public static void bootstrap(BootstrapContext<TrimPattern> context) {
register(context, ModItems.NUGGET_SMITHING_TEMPLATE.get(), NUGGET);
}
private static void register(BootstrapContext<TrimPattern> context, Item item, ResourceKey<TrimPattern> key) {
TrimPattern trimPattern = new TrimPattern(key.location(), ForgeRegistries.ITEMS.getHolder(item).get(),
Component.translatable(Util.makeDescriptionId("trim_pattern", key.location())), false);
context.register(key, trimPattern);
}
}

View File

@@ -0,0 +1,5 @@
package xyz.sillyangel.nugget.util;
public class ModItemProperites {
}