djofox
-
Posts
12 -
Joined
-
Last visited
Posts posted by djofox
-
-
So basically I tried updating my 1.12.2 ore generation to 1.16.5, long story short theres a massive change. I finally got it without eclipse problems through looking at a couple githubs, but it doesnt work. I feel like im overlooking an obvious problem but I cant see it. If someone could help me out that'd be great.
Heres my code for the ore gen.
@Mod.EventBusSubscriber(modid = Main.MODID, bus = Mod.EventBusSubscriber.Bus.MOD) public class ModOreGen { public static void generateOres(final BiomeLoadingEvent event) { if (!(event.getCategory().equals(Biome.Category.NETHER) || event.getCategory().equals(Biome.Category.THEEND))) { buildOreFeature(BlockInit.BERYLORE.get(), Blocks.GRASS, 10, 0, 100, 20); } } private static ConfiguredFeature<?, ?> buildOreFeature(Block ore, Block filler, int maxVeinSize, int minVeinLevel, int maxVeinLevel, int spawnRate) { ConfiguredFeature<?, ?> feature = Feature.ORE.configured(new OreFeatureConfig(new BlockMatchRuleTest(filler), ore.defaultBlockState(), maxVeinSize)); feature = minMaxRange(feature, minVeinLevel, maxVeinLevel).squared(); feature = feature.count(spawnRate); return feature; } private static IDecoratable<ConfiguredFeature<?,?>> minMaxRange(IDecoratable<ConfiguredFeature<?,?>> f, int min, int max) { return f.decorated(Placement.RANGE.configured(new TopSolidRangeConfig(min, min, max))); } }
And heres where I call it
public Main() { IEventBus bus = FMLJavaModLoadingContext.get().getModEventBus(); bus.addListener(this::setup); ItemInit.ITEMS.register(bus); BlockInit.BLOCKS.register(bus); MinecraftForge.EVENT_BUS.register(this); MinecraftForge.EVENT_BUS.register(FuelHandler.instance); PotionList.EFFECTS.register(bus); PotionList.POTIONS.register(bus); MinecraftForge.EVENT_BUS.addListener(EventPriority.HIGH, ModOreGen::generateOres); }
-
Yes thank you it works now! I had noOcclusion before, but it didnt do anything. It was that I had to register the client side render.
I think forge has one of their things broken though, .cutout() doesnt work nor does .cutoutMipped, but .translucent() does
Heres my code to see if I just did something wrong
private void setup(final FMLCommonSetupEvent event) { RenderTypeLookup.setRenderLayer(BlockInit.BERYLGLASS.get(), RenderType.cutout()); RenderTypeLookup.setRenderLayer(BlockInit.BERYLBLOCK.get(), RenderType.cutoutMipped()); RenderTypeLookup.setRenderLayer(BlockInit.TREATEDCARBIDEBLOCK.get(), RenderType.translucent()); }
and when I do this only the treated carbide block will appear translucent. When i have them all translucent and I place them beside eachother they look pretty weird, so if theres a fix for this that'd be great.
-
13 minutes ago, Luis_ST said:
I'm not sure what you mean by connecting the texture, but try to add notSolid to the block properties
and add a RenderTypeLookup to the blockStill nothing
public class ModGlassBlock extends GlassBlock{ public ModGlassBlock(AbstractBlock.Properties p_i48392_1_) { super(p_i48392_1_); } public boolean isOpaqueCube() { return false; } public boolean notSolid() { return true; } }
-
So I made an extension off the default minecraft glass block and it doesnt become transparent. Im updating my mod from 1.12.2 to 1.16.5 so I'm not too sure how I can do the transparencys I have. One block I have it where the textures dont connect, and another block I have it like ice
Heres the code (1.16) that doesnt make my glass block transparent. I'm tackling the easier issue first; the glass with connecting textures
public static final RegistryObject<Block> BERYLGLASS = BLOCKS.register("beryl_glass", () -> new ModGlassBlock(AbstractBlock.Properties.of(Material.LEAVES).strength(0.3F).sound(SoundType.GLASS).noOcclusion().harvestTool(ToolType.PICKAXE).harvestLevel(1)));
And the glass block glass
public class ModGlassBlock extends GlassBlock{ public ModGlassBlock(AbstractBlock.Properties p_i48392_1_) { super(p_i48392_1_); } }
The transparent textures appear solid. If someone could help that'd be great!
-
please post your code
-
12 minutes ago, kiou.23 said:
Exception message: java.lang.IllegalArgumentException: Duplicate registration jade
you're registering "jade" twice, I think that should be the only thing wrong
oh also, your enum constants should be all uppercased (it won't cause any errors of course, but it's the standard)
Yes! thank you, it works great now. One more thing though, I followed default minecraft code for the armor, but even though I have all my layers in assets/gemstones/textures/models/armor it still shows up on my character as the 'no-texture' texture.
-
8 minutes ago, kiou.23 said:
can you show your ToolMaterialList?
Sure, i played around with the code a bit and added a ".get()" to the end of the material, this removed all errors. Except its wrong because now I launch and the game crashes, yet eclipse gives me no errors.
Heres my list:
package djofox.gemstones.materials; import java.util.function.Supplier; import djofox.gemstones.init.ItemInit; import net.minecraft.item.IItemTier; import net.minecraft.item.crafting.Ingredient; import net.minecraft.util.LazyValue; public enum ToolMaterialList implements IItemTier { beryl(0, 131, 15.0f, 2.75f, 30, () -> { return Ingredient.of(ItemInit.beryl.get()); }), jade(2, 500, 7.0f, 2.25f, 23, () -> { return Ingredient.of(ItemInit.jade.get()); }), moissanite(2, 500, 7.0f, 2.25f, 23, () -> { return Ingredient.of(ItemInit.moissanite.get()); }), kunzite(0, 315, 12f, 0.5f, 20, () -> { return Ingredient.of(ItemInit.kunzite.get()); }), orpiment(2, 258, 10f, 0.5f, 20, () -> { return Ingredient.of(ItemInit.orpiment.get()); }), mercurySulfide(2, 1012, 5.5f, 2.0f, 14, () -> { return Ingredient.of(ItemInit.mercurySulfide.get()); }), blackDiamond(3, 2757, 8.0f, 3.0f, 2, () -> { return Ingredient.of(ItemInit.blackDiamond.get()); }), treatedCarbide(4, 2560, 10.0f, 5.0f, 2, () -> { return Ingredient.of(ItemInit.siliconCarbide.get()); }); private final int level; private final int uses; private final float speed; private final float damage; private final int enchantmentValue; private final LazyValue<Ingredient> repairIngredient; private ToolMaterialList(int p_i48458_3_, int p_i48458_4_, float p_i48458_5_, float p_i48458_6_, int p_i48458_7_, Supplier<Ingredient> p_i48458_8_) { this.level = p_i48458_3_; this.uses = p_i48458_4_; this.speed = p_i48458_5_; this.damage = p_i48458_6_; this.enchantmentValue = p_i48458_7_; this.repairIngredient = new LazyValue<>(p_i48458_8_); } public int getUses() { return this.uses; } public float getSpeed() { return this.speed; } public float getAttackDamageBonus() { return this.damage; } public int getLevel() { return this.level; } public int getEnchantmentValue() { return this.enchantmentValue; } public Ingredient getRepairIngredient() { return this.repairIngredient.get(); } }
Heres my init class which causes the crash (from taking other stuff)
Spoilerpackage djofox.gemstones.init; import djofox.gemstones.Main; import djofox.gemstones.items.CustomArmorItem; import djofox.gemstones.items.CustomAxeItem; import djofox.gemstones.items.CustomHoeItem; import djofox.gemstones.items.CustomPickaxeItem; import djofox.gemstones.items.CustomShovelItem; import djofox.gemstones.items.CustomSwordItem; import djofox.gemstones.items.ShadowSteak; import djofox.gemstones.materials.ArmourMaterialList; import djofox.gemstones.materials.ToolMaterialList; import net.minecraft.inventory.EquipmentSlotType; import net.minecraft.item.Item; import net.minecraftforge.fml.RegistryObject; import net.minecraftforge.registries.DeferredRegister; import net.minecraftforge.registries.ForgeRegistries; public class ItemInit { public static final DeferredRegister<Item> ITEMS = DeferredRegister.create(ForgeRegistries.ITEMS, Main.MODID); //Foods public static final RegistryObject<ShadowSteak> shadowSteak = ITEMS.register("shadow_steak", ShadowSteak::new); //Items public static final RegistryObject<Item> beryl = ITEMS.register("beryl", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> kunzite = ITEMS.register("kunzite", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> orpiment = ITEMS.register("orpiment", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> jade = ITEMS.register("jade", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> moissanite = ITEMS.register("moissanite", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> treatedCarbide = ITEMS.register("jade", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> siliconCarbide = ITEMS.register("orpiment", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> blackDiamond = ITEMS.register("black_diamond", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> mercurySulfide = ITEMS.register("mercury_sulfide", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> crystallicFragments = ITEMS.register("crystallic_fragments", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> kunziteMineral = ITEMS.register("kunzite_mineral", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> berylMineral = ITEMS.register("beryl_mineral", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> kunziteDust = ITEMS.register("kunzite_dust", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> jadeDust = ITEMS.register("jade_dust", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> orpimentDust = ITEMS.register("orpiment_dust", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> blackDiamondDust = ITEMS.register("black_diamond_dust", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> mercurySulfideDust = ITEMS.register("mercury_sulfide_dust", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> moissaniteDust = ITEMS.register("moissanite_dust", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> berylDust = ITEMS.register("beryl_dust", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> diamondStick = ITEMS.register("diamond_stick", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP))); //Armor & Tools public static final RegistryObject<Item> berylPickaxe = ITEMS.register("beryl_pickaxe", () -> new CustomPickaxeItem(ToolMaterialList.beryl, 1, -2.8F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> orpimentPickaxe = ITEMS.register("orpiment_pickaxe", () -> new CustomPickaxeItem(ToolMaterialList.orpiment, 1, -2.8F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> kunzitePickaxe = ITEMS.register("kunzite_pickaxe", () -> new CustomPickaxeItem(ToolMaterialList.kunzite, 1, -2.8F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> mercurySulfidePickaxe = ITEMS.register("mercury_sulfide_pickaxe", () -> new CustomPickaxeItem(ToolMaterialList.mercurySulfide, 1, -2.8F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> moissanitePickaxe = ITEMS.register("moissanite_pickaxe", () -> new CustomPickaxeItem(ToolMaterialList.moissanite, 1, -2.8F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> treatedCarbidePickaxe = ITEMS.register("treated_carbide_pickaxe", () -> new CustomPickaxeItem(ToolMaterialList.treatedCarbide, 2, -2.8F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> jadePickaxe = ITEMS.register("jade_pickaxe", () -> new CustomPickaxeItem(ToolMaterialList.jade, 1, -2.8F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> blackDiamondPickaxe = ITEMS.register("black_diamond_pickaxe", () -> new CustomPickaxeItem(ToolMaterialList.blackDiamond, 1, -2.8F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> berylAxe = ITEMS.register("beryl_axe", () -> new CustomAxeItem(ToolMaterialList.beryl, 5, -2.9F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> orpimentAxe = ITEMS.register("orpiment_axe", () -> new CustomAxeItem(ToolMaterialList.orpiment, 7, -3.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> kunziteAxe = ITEMS.register("kunzite_axe", () -> new CustomAxeItem(ToolMaterialList.kunzite, 7, -3.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> mercurySulfideAxe = ITEMS.register("mercury_sulfide_axe", () -> new CustomAxeItem(ToolMaterialList.mercurySulfide, 6, -3.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> moissaniteAxe = ITEMS.register("moissanite_axe", () -> new CustomAxeItem(ToolMaterialList.moissanite, 5.25F, -3.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> treatedCarbideAxe = ITEMS.register("treated_carbide_axe", () -> new CustomAxeItem(ToolMaterialList.treatedCarbide, 6, -3.2F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> jadeAxe = ITEMS.register("jade_axe", () -> new CustomAxeItem(ToolMaterialList.jade, 5.75F, -3.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> blackDiamondAxe = ITEMS.register("black_diamond_axe", () -> new CustomAxeItem(ToolMaterialList.blackDiamond, 5, -3.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> berylShovel = ITEMS.register("beryl_shovel", () -> new CustomShovelItem(ToolMaterialList.beryl, 1.5F, -3.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> orpimentShovel = ITEMS.register("orpiment_shovel", () -> new CustomShovelItem(ToolMaterialList.orpiment, 1.5F, -3.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> kunziteShovel = ITEMS.register("kunzite_shovel", () -> new CustomShovelItem(ToolMaterialList.kunzite, 1.5F, -3.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> mercurySulfideShovel = ITEMS.register("mercury_sulfide_shovel", () -> new CustomShovelItem(ToolMaterialList.mercurySulfide, 1.5F, -3.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> moissaniteShovel = ITEMS.register("moissanite_shovel", () -> new CustomShovelItem(ToolMaterialList.moissanite, 1.5F, -3.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> treatedCarbideShovel = ITEMS.register("treated_carbide_shovel", () -> new CustomShovelItem(ToolMaterialList.treatedCarbide, 7.5F, -3.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> jadeShovel = ITEMS.register("jade_shovel", () -> new CustomShovelItem(ToolMaterialList.jade, 1.5F, -3.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> blackDiamondShovel = ITEMS.register("black_diamond_shovel", () -> new CustomShovelItem(ToolMaterialList.blackDiamond, 1.5F, -3.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> berylHoe = ITEMS.register("beryl_hoe", () -> new CustomHoeItem(ToolMaterialList.beryl, -3, 0.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> orpimentHoe = ITEMS.register("orpiment_hoe", () -> new CustomHoeItem(ToolMaterialList.orpiment, -1, 0.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> kunziteHoe = ITEMS.register("kunzite_hoe", () -> new CustomHoeItem(ToolMaterialList.kunzite, -1, 0.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> mercurySulfideHoe = ITEMS.register("mercury_sulfide_hoe", () -> new CustomHoeItem(ToolMaterialList.mercurySulfide, -2, -1.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> moissaniteHoe = ITEMS.register("moissanite_hoe", () -> new CustomHoeItem(ToolMaterialList.moissanite, -3, 1.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> treatedCarbideHoe = ITEMS.register("treated_carbide_hoe", () -> new CustomHoeItem(ToolMaterialList.treatedCarbide, -3, 1.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> jadeHoe = ITEMS.register("jade_hoe", () -> new CustomHoeItem(ToolMaterialList.jade, -2, -0.25F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> blackDiamondHoe = ITEMS.register("black_diamond_hoe", () -> new CustomHoeItem(ToolMaterialList.blackDiamond, -3, 0.0F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> berylSword = ITEMS.register("beryl_sword", () -> new CustomSwordItem(ToolMaterialList.beryl, 3, -2.4F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> orpimentSword = ITEMS.register("orpiment_sword", () -> new CustomSwordItem(ToolMaterialList.orpiment, 3, -2.4F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> kunziteSword = ITEMS.register("kunzite_sword", () -> new CustomSwordItem(ToolMaterialList.kunzite, 3, -2.4F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> mercurySulfideSword = ITEMS.register("mercury_sulfide_sword", () -> new CustomSwordItem(ToolMaterialList.mercurySulfide, 3, -2.4F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> moissaniteSword = ITEMS.register("moissanite_sword", () -> new CustomSwordItem(ToolMaterialList.moissanite, 3, -2.4F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> treatedCarbideSword = ITEMS.register("treated_carbide_sword", () -> new CustomSwordItem(ToolMaterialList.treatedCarbide, 4, -2.4F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> jadeSword = ITEMS.register("jade_sword", () -> new CustomSwordItem(ToolMaterialList.jade, 3, -2.4F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> blackDiamondSword = ITEMS.register("black_diamond_sword", () -> new CustomSwordItem(ToolMaterialList.blackDiamond, 3, -2.4F, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> berylHelmet = ITEMS.register("beryl_helmet", () -> new CustomArmorItem(ArmourMaterialList.BERYL, EquipmentSlotType.HEAD, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> berylChestplate = ITEMS.register("beryl_chestplate", () -> new CustomArmorItem(ArmourMaterialList.BERYL, EquipmentSlotType.CHEST, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> berylLeggings = ITEMS.register("beryl_leggings", () -> new CustomArmorItem(ArmourMaterialList.BERYL, EquipmentSlotType.LEGS, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> berylBoots = ITEMS.register("beryl_boots", () -> new CustomArmorItem(ArmourMaterialList.BERYL, EquipmentSlotType.FEET, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> berylCrown = ITEMS.register("beryl_crown", () -> new CustomArmorItem(ArmourMaterialList.BERYLC, EquipmentSlotType.HEAD, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> orpimentHelmet = ITEMS.register("orpiment_helmet", () -> new CustomArmorItem(ArmourMaterialList.ORPIMENT, EquipmentSlotType.HEAD, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> orpimentChestplate = ITEMS.register("orpiment_chestplate", () -> new CustomArmorItem(ArmourMaterialList.ORPIMENT, EquipmentSlotType.CHEST, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> orpimentLeggings = ITEMS.register("orpiment_leggings", () -> new CustomArmorItem(ArmourMaterialList.ORPIMENT, EquipmentSlotType.LEGS, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> orpimentBoots = ITEMS.register("orpiment_boots", () -> new CustomArmorItem(ArmourMaterialList.ORPIMENT, EquipmentSlotType.FEET, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> orpimentCrown = ITEMS.register("orpiment_crown", () -> new CustomArmorItem(ArmourMaterialList.ORPIMENTC, EquipmentSlotType.HEAD, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> kunziteHelmet = ITEMS.register("kunzite_helmet", () -> new CustomArmorItem(ArmourMaterialList.KUNZITE, EquipmentSlotType.HEAD, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> kunziteChestplate = ITEMS.register("kunzite_chestplate", () -> new CustomArmorItem(ArmourMaterialList.KUNZITE, EquipmentSlotType.CHEST, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> kunziteLeggings = ITEMS.register("kunzite_leggings", () -> new CustomArmorItem(ArmourMaterialList.KUNZITE, EquipmentSlotType.LEGS, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> kunziteBoots = ITEMS.register("kunzite_boots", () -> new CustomArmorItem(ArmourMaterialList.KUNZITE, EquipmentSlotType.FEET, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> kunziteCrown = ITEMS.register("kunzite_crown", () -> new CustomArmorItem(ArmourMaterialList.KUNZITEC, EquipmentSlotType.HEAD, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> jadeHelmet = ITEMS.register("jade_helmet", () -> new CustomArmorItem(ArmourMaterialList.JADE, EquipmentSlotType.HEAD, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> jadeChestplate = ITEMS.register("jade_chestplate", () -> new CustomArmorItem(ArmourMaterialList.JADE, EquipmentSlotType.CHEST, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> jadeLeggings = ITEMS.register("jade_leggings", () -> new CustomArmorItem(ArmourMaterialList.JADE, EquipmentSlotType.LEGS, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> jadeBoots = ITEMS.register("jade_boots", () -> new CustomArmorItem(ArmourMaterialList.JADE, EquipmentSlotType.FEET, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> jadeCrown = ITEMS.register("jade_crown", () -> new CustomArmorItem(ArmourMaterialList.JADEC, EquipmentSlotType.HEAD, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> mercurySulfideHelmet = ITEMS.register("mercury_sulfide_helmet", () -> new CustomArmorItem(ArmourMaterialList.MERCURYSULFIDE, EquipmentSlotType.HEAD, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> mercurySulfideChestplate = ITEMS.register("mercury_sulfide_chestplate", () -> new CustomArmorItem(ArmourMaterialList.MERCURYSULFIDE, EquipmentSlotType.CHEST, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> mercurySulfideLeggings = ITEMS.register("mercury_sulfide_leggings", () -> new CustomArmorItem(ArmourMaterialList.MERCURYSULFIDE, EquipmentSlotType.LEGS, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> mercurySulfideBoots = ITEMS.register("mercury_sulfide_boots", () -> new CustomArmorItem(ArmourMaterialList.MERCURYSULFIDE, EquipmentSlotType.FEET, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> mercurySulfideCrown = ITEMS.register("mercury_sulfide_crown", () -> new CustomArmorItem(ArmourMaterialList.MERCURYSULFIDEC, EquipmentSlotType.HEAD, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> moissaniteHelmet = ITEMS.register("moissanite_helmet", () -> new CustomArmorItem(ArmourMaterialList.MOISSANITE, EquipmentSlotType.HEAD, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> moissaniteChestplate = ITEMS.register("moissanite_chestplate", () -> new CustomArmorItem(ArmourMaterialList.MOISSANITE, EquipmentSlotType.CHEST, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> moissaniteLeggings = ITEMS.register("moissanite_leggings", () -> new CustomArmorItem(ArmourMaterialList.MOISSANITE, EquipmentSlotType.LEGS, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> moissaniteBoots = ITEMS.register("moissanite_boots", () -> new CustomArmorItem(ArmourMaterialList.MOISSANITE, EquipmentSlotType.FEET, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> moissaniteCrown = ITEMS.register("moissanite_crown", () -> new CustomArmorItem(ArmourMaterialList.MOISSANITEC, EquipmentSlotType.HEAD, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> blackDiamondHelmet = ITEMS.register("black_diamond_helmet", () -> new CustomArmorItem(ArmourMaterialList.BLACKDIAMOND, EquipmentSlotType.HEAD, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> blackDiamondChestplate = ITEMS.register("black_diamond_chestplate", () -> new CustomArmorItem(ArmourMaterialList.BLACKDIAMOND, EquipmentSlotType.CHEST, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> blackDiamondLeggings = ITEMS.register("black_diamond_leggings", () -> new CustomArmorItem(ArmourMaterialList.BLACKDIAMOND, EquipmentSlotType.LEGS, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> blackDiamondBoots = ITEMS.register("black_diamond_boots", () -> new CustomArmorItem(ArmourMaterialList.BLACKDIAMOND, EquipmentSlotType.FEET, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> blackDiamondCrown = ITEMS.register("black_diamond_crown", () -> new CustomArmorItem(ArmourMaterialList.BLACKDIAMONDC, EquipmentSlotType.HEAD, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> treatedCarbideHelmet = ITEMS.register("treated_carbide_helmet", () -> new CustomArmorItem(ArmourMaterialList.TREATEDCARBIDE, EquipmentSlotType.HEAD, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> treatedCarbideChestplate = ITEMS.register("treated_carbide_chestplate", () -> new CustomArmorItem(ArmourMaterialList.TREATEDCARBIDE, EquipmentSlotType.CHEST, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> treatedCarbideLeggings = ITEMS.register("treated_carbide_leggings", () -> new CustomArmorItem(ArmourMaterialList.TREATEDCARBIDE, EquipmentSlotType.LEGS, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> treatedCarbideBoots = ITEMS.register("treated_carbide_boots", () -> new CustomArmorItem(ArmourMaterialList.TREATEDCARBIDE, EquipmentSlotType.FEET, new Item.Properties().tab(Main.GEMSTONES_GROUP))); public static final RegistryObject<Item> treatedCarbideCrown = ITEMS.register("treated_carbide_crown", () -> new CustomArmorItem(ArmourMaterialList.TREATEDCARBIDEC, EquipmentSlotType.HEAD, new Item.Properties().tab(Main.GEMSTONES_GROUP))); }
And heres the error I get when I crash (I dont know if you need it but better safe than sorry)
Spoiler[20:51:56] [Worker-Main-4/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.ModelRegistryEvent to a broken mod state [20:51:58] [Worker-Main-5/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state [20:52:06] [Worker-Main-6/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state [20:52:12] [Worker-Main-4/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state [20:52:12] [Worker-Main-7/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state [20:52:14] [Worker-Main-4/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state [20:52:14] [Worker-Main-4/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state [20:52:15] [Worker-Main-4/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state [20:52:15] [Worker-Main-4/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state [20:52:15] [Worker-Main-4/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state [20:52:15] [Worker-Main-4/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state [20:52:15] [Render thread/DEBUG] [ne.mi.fm.ForgeI18n/CORE]: Loading I18N data entries: 5046 [20:52:17] [Render thread/INFO] [minecraft/SoundSystem]: OpenAL initialized. [20:52:17] [Render thread/INFO] [minecraft/SoundEngine]: Sound engine started [20:52:18] [Render thread/INFO] [minecraft/AtlasTexture]: Created: 1024x512x4 minecraft:textures/atlas/blocks.png-atlas [20:52:18] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state [20:52:18] [Render thread/INFO] [minecraft/AtlasTexture]: Created: 256x128x4 minecraft:textures/atlas/signs.png-atlas [20:52:18] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state [20:52:18] [Render thread/INFO] [minecraft/AtlasTexture]: Created: 512x512x4 minecraft:textures/atlas/banner_patterns.png-atlas [20:52:18] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state [20:52:18] [Render thread/INFO] [minecraft/AtlasTexture]: Created: 512x512x4 minecraft:textures/atlas/shield_patterns.png-atlas [20:52:18] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state [20:52:18] [Render thread/INFO] [minecraft/AtlasTexture]: Created: 256x256x4 minecraft:textures/atlas/chest.png-atlas [20:52:18] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state [20:52:18] [Render thread/INFO] [minecraft/AtlasTexture]: Created: 512x256x4 minecraft:textures/atlas/beds.png-atlas [20:52:18] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state [20:52:18] [Render thread/INFO] [minecraft/AtlasTexture]: Created: 512x256x4 minecraft:textures/atlas/shulker_boxes.png-atlas [20:52:18] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state [20:52:19] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.ModelBakeEvent to a broken mod state [20:52:20] [Render thread/INFO] [minecraft/AtlasTexture]: Created: 256x256x0 minecraft:textures/atlas/particles.png-atlas [20:52:20] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state [20:52:20] [Render thread/INFO] [minecraft/AtlasTexture]: Created: 256x256x0 minecraft:textures/atlas/paintings.png-atlas [20:52:20] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state [20:52:20] [Render thread/INFO] [minecraft/AtlasTexture]: Created: 256x128x0 minecraft:textures/atlas/mob_effects.png-atlas [20:52:20] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state [20:52:21] [Render thread/DEBUG] [ne.mi.fm.ForgeI18n/CORE]: Loading I18N data entries: 4978 [20:52:21] [Render thread/FATAL] [ne.mi.co.ForgeMod/]: Preparing crash report with UUID 3d02fb66-be69-4eb5-8420-a5740538b884 [20:52:21] [Render thread/INFO] [STDOUT/]: [net.minecraft.crash.CrashReport:addCategory:196]: Negative index in crash report handler (21/23) [20:52:21] [Render thread/FATAL] [ne.mi.fm.cl.ClientModLoader/]: Crash report saved to .\crash-reports\crash-2021-04-12_20.52.21-fml.txt ---- Minecraft Crash Report ---- // My bad. Time: 4/12/21 8:52 PM Description: Mod loading error has occurred java.lang.Exception: Mod Loading has failed at net.minecraftforge.fml.CrashReportExtender.dumpModLoadingCrashReport(CrashReportExtender.java:85) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {re:classloading} at net.minecraftforge.fml.client.ClientModLoader.completeModLoading(ClientModLoader.java:188) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.lambda$null$1(Minecraft.java:508) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.util.Util.ifElse(Util.java:320) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {re:classloading} at net.minecraft.client.Minecraft.lambda$new$2(Minecraft.java:504) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.gui.ResourceLoadProgressGui.render(ResourceLoadProgressGui.java:113) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.renderer.GameRenderer.render(GameRenderer.java:481) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.runTick(Minecraft.java:976) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.run(Minecraft.java:607) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.main.Main.main(Main.java:184) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {re:classloading,pl:runtimedistcleaner:A} at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_281] {} at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_281] {} at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_281] {} at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_281] {} at net.minecraftforge.userdev.FMLUserdevClientLaunchProvider.lambda$launchService$0(FMLUserdevClientLaunchProvider.java:52) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {} at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-8.0.9.jar:?] {} at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-8.0.9.jar:?] {} at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-8.0.9.jar:?] {} at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [modlauncher-8.0.9.jar:?] {} at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [modlauncher-8.0.9.jar:?] {} at net.minecraftforge.userdev.LaunchTesting.main(LaunchTesting.java:105) [forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {} A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- Head -- Thread: Render thread Stacktrace: at net.minecraftforge.registries.DeferredRegister.register(DeferredRegister.java:125) ~[forge:?] {re:classloading} -- MOD gemstones -- Details: Caused by 0: java.lang.ExceptionInInitializerError at djofox.gemstones.Main.<init>(Main.java:24) ~[?:?] {re:classloading} at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_281] {} at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[?:1.8.0_281] {} at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:1.8.0_281] {} at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[?:1.8.0_281] {} at java.lang.Class.newInstance(Class.java:442) ~[?:1.8.0_281] {} at net.minecraftforge.fml.javafmlmod.FMLModContainer.constructMod(FMLModContainer.java:81) ~[forge:36.1] {re:classloading} at net.minecraftforge.fml.ModContainer.lambda$buildTransitionHandler$4(ModContainer.java:120) ~[forge:?] {re:classloading} at java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1640) ~[?:1.8.0_281] {} at java.util.concurrent.CompletableFuture$AsyncRun.exec(CompletableFuture.java:1632) ~[?:1.8.0_281] {} at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289) ~[?:1.8.0_281] {} at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1067) ~[?:1.8.0_281] {} at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1703) ~[?:1.8.0_281] {} at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:172) ~[?:1.8.0_281] {} Mod File: main Failure message: Gemstones (gemstones) has failed to load correctly java.lang.ExceptionInInitializerError: null Mod Version: 1.4 Mod Issue URL: NOT PROVIDED Exception message: java.lang.IllegalArgumentException: Duplicate registration jade Stacktrace: at net.minecraftforge.registries.DeferredRegister.register(DeferredRegister.java:125) ~[forge:?] {re:classloading} at djofox.gemstones.init.ItemInit.<clinit>(ItemInit.java:38) ~[?:?] {re:classloading} at djofox.gemstones.Main.<init>(Main.java:24) ~[?:?] {re:classloading} at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_281] {} at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[?:1.8.0_281] {} at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:1.8.0_281] {} at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[?:1.8.0_281] {} at java.lang.Class.newInstance(Class.java:442) ~[?:1.8.0_281] {} at net.minecraftforge.fml.javafmlmod.FMLModContainer.constructMod(FMLModContainer.java:81) ~[forge:36.1] {re:classloading} at net.minecraftforge.fml.ModContainer.lambda$buildTransitionHandler$4(ModContainer.java:120) ~[forge:?] {re:classloading} at java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1640) ~[?:1.8.0_281] {} at java.util.concurrent.CompletableFuture$AsyncRun.exec(CompletableFuture.java:1632) ~[?:1.8.0_281] {} at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289) ~[?:1.8.0_281] {} at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1067) ~[?:1.8.0_281] {} at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1703) ~[?:1.8.0_281] {} at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:172) ~[?:1.8.0_281] {}
-
3 hours ago, eggpasta said:
Please provide the error you are getting
Heres the full error
Spoiler[20:16:46] [modloading-worker-2/ERROR] [ne.mi.fm.ja.FMLModContainer/LOADING]: Failed to create mod instance. ModID: gemstones, class djofox.gemstones.Main
java.lang.ExceptionInInitializerError: null
at djofox.gemstones.Main.<init>(Main.java:25) ~[?:?] {re:classloading}
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_281] {}
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[?:1.8.0_281] {}
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:1.8.0_281] {}
at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[?:1.8.0_281] {}
at java.lang.Class.newInstance(Class.java:442) ~[?:1.8.0_281] {}
at net.minecraftforge.fml.javafmlmod.FMLModContainer.constructMod(FMLModContainer.java:81) ~[forge:36.1] {re:classloading}
at net.minecraftforge.fml.ModContainer.lambda$buildTransitionHandler$4(ModContainer.java:120) ~[forge:?] {re:classloading}
at java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1640) [?:1.8.0_281] {}
at java.util.concurrent.CompletableFuture$AsyncRun.exec(CompletableFuture.java:1632) [?:1.8.0_281] {}
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289) [?:1.8.0_281] {}
at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1067) [?:1.8.0_281] {}
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1703) [?:1.8.0_281] {}
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:172) [?:1.8.0_281] {}
Caused by: java.lang.IllegalArgumentException: Duplicate registration jade
at net.minecraftforge.registries.DeferredRegister.register(DeferredRegister.java:125) ~[forge:?] {re:classloading}
at djofox.gemstones.init.MaterialInit.<clinit>(MaterialInit.java:24) ~[?:?] {re:classloading}
... 14 more
[20:16:46] [modloading-worker-3/DEBUG] [ne.mi.fm.co.ConfigTracker/CONFIG]: Config file forge-client.toml for forge tracking
[20:16:46] [modloading-worker-3/DEBUG] [ne.mi.fm.co.ConfigTracker/CONFIG]: Config file forge-server.toml for forge tracking
[20:16:46] [modloading-worker-3/DEBUG] [ne.mi.fm.co.ConfigTracker/CONFIG]: Config file forge-common.toml for forge tracking
[20:16:46] [modloading-worker-3/DEBUG] [ne.mi.fm.AutomaticEventSubscriber/LOADING]: Attempting to inject @EventBusSubscriber classes into the eventbus for forge
[20:16:46] [modloading-worker-3/DEBUG] [ne.mi.fm.AutomaticEventSubscriber/LOADING]: Auto-subscribing net.minecraftforge.client.model.ModelDataManager to FORGE
[20:16:47] [Render thread/FATAL] [ne.mi.fm.ModLoader/LOADING]: Failed to complete lifecycle event CONSTRUCT, 1 errors found
[20:16:47] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.sound.SoundLoadEvent to a broken mod state
[20:16:48] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.ColorHandlerEvent$Block to a broken mod state
[20:16:48] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.ColorHandlerEvent$Item to a broken mod state
[20:16:48] [Render thread/DEBUG] [ne.mi.co.tr.CoreModBaseTransformer/COREMOD]: Transforming render with desc (Lnet/minecraft/entity/projectile/FishingBobberEntity;FFLcom/mojang/blaze3d/matrix/MatrixStack;Lnet/minecraft/client/renderer/IRenderTypeBuffer;I)V
[20:16:48] [Render thread/DEBUG] [ne.mi.co.tr.CoreModBaseTransformer/COREMOD]: Transforming getArmPose with desc (Lnet/minecraft/client/entity/player/AbstractClientPlayerEntity;Lnet/minecraft/util/Hand;)Lnet/minecraft/client/renderer/entity/model/BipedModel$ArmPose;
[20:16:49] [Render thread/DEBUG] [ne.mi.co.tr.CoreModBaseTransformer/COREMOD]: Transforming prepareMobModel with desc (Lnet/minecraft/entity/MobEntity;FFF)V
[20:16:49] [Render thread/DEBUG] [ne.mi.co.tr.CoreModBaseTransformer/COREMOD]: Transforming setupAnim with desc (Lnet/minecraft/entity/MobEntity;FFFFF)V
[20:16:49] [Render thread/DEBUG] [ne.mi.co.tr.CoreModBaseTransformer/COREMOD]: Transforming renderHandsWithItems with desc (FLcom/mojang/blaze3d/matrix/MatrixStack;Lnet/minecraft/client/renderer/IRenderTypeBuffer$Impl;Lnet/minecraft/client/entity/player/ClientPlayerEntity;I)V
[20:16:49] [Render thread/DEBUG] [ne.mi.co.tr.CoreModBaseTransformer/COREMOD]: Transforming renderHandsWithItems with desc (FLcom/mojang/blaze3d/matrix/MatrixStack;Lnet/minecraft/client/renderer/IRenderTypeBuffer$Impl;Lnet/minecraft/client/entity/player/ClientPlayerEntity;I)V
[20:16:49] [Render thread/DEBUG] [ne.mi.co.tr.CoreModBaseTransformer/COREMOD]: Transforming renderArmWithItem with desc (Lnet/minecraft/client/entity/player/AbstractClientPlayerEntity;FFLnet/minecraft/util/Hand;FLnet/minecraft/item/ItemStack;FLcom/mojang/blaze3d/matrix/MatrixStack;Lnet/minecraft/client/renderer/IRenderTypeBuffer;I)V
[20:16:50] [Render thread/DEBUG] [ne.mi.co.tr.CoreModBaseTransformer/COREMOD]: Transforming renderArmWithItem with desc (Lnet/minecraft/client/entity/player/AbstractClientPlayerEntity;FFLnet/minecraft/util/Hand;FLnet/minecraft/item/ItemStack;FLcom/mojang/blaze3d/matrix/MatrixStack;Lnet/minecraft/client/renderer/IRenderTypeBuffer;I)V
[20:16:51] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.ParticleFactoryRegisterEvent to a broken mod state
[20:16:51] [Render thread/INFO] [mojang/NarratorWindows]: Narrator library for x64 successfully loaded
[20:16:52] [Render thread/INFO] [minecraft/SimpleReloadableResourceManager]: Reloading ResourceManager: Default
[20:16:53] [Worker-Main-6/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.ModelRegistryEvent to a broken mod state
[20:16:54] [Worker-Main-5/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state
[20:16:59] [Worker-Main-4/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state
[20:17:04] [Worker-Main-6/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state
[20:17:04] [Worker-Main-7/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state
[20:17:07] [Worker-Main-6/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state
[20:17:07] [Worker-Main-6/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state
[20:17:07] [Worker-Main-6/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state
[20:17:07] [Worker-Main-6/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state
[20:17:07] [Worker-Main-6/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state
[20:17:07] [Worker-Main-6/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Pre to a broken mod state
[20:17:07] [Render thread/DEBUG] [ne.mi.fm.ForgeI18n/CORE]: Loading I18N data entries: 5046
[20:17:08] [Render thread/INFO] [minecraft/SoundSystem]: OpenAL initialized.
[20:17:08] [Render thread/INFO] [minecraft/SoundEngine]: Sound engine started
[20:17:09] [Render thread/INFO] [minecraft/AtlasTexture]: Created: 1024x512x4 minecraft:textures/atlas/blocks.png-atlas
[20:17:09] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state
[20:17:09] [Render thread/INFO] [minecraft/AtlasTexture]: Created: 256x128x4 minecraft:textures/atlas/signs.png-atlas
[20:17:09] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state
[20:17:09] [Render thread/INFO] [minecraft/AtlasTexture]: Created: 512x512x4 minecraft:textures/atlas/banner_patterns.png-atlas
[20:17:09] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state
[20:17:10] [Render thread/INFO] [minecraft/AtlasTexture]: Created: 512x512x4 minecraft:textures/atlas/shield_patterns.png-atlas
[20:17:10] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state
[20:17:10] [Render thread/INFO] [minecraft/AtlasTexture]: Created: 256x256x4 minecraft:textures/atlas/chest.png-atlas
[20:17:10] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state
[20:17:10] [Render thread/INFO] [minecraft/AtlasTexture]: Created: 512x256x4 minecraft:textures/atlas/beds.png-atlas
[20:17:10] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state
[20:17:10] [Render thread/INFO] [minecraft/AtlasTexture]: Created: 512x256x4 minecraft:textures/atlas/shulker_boxes.png-atlas
[20:17:10] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state
[20:17:11] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.ModelBakeEvent to a broken mod state
[20:17:11] [Render thread/INFO] [minecraft/AtlasTexture]: Created: 256x256x0 minecraft:textures/atlas/particles.png-atlas
[20:17:11] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state
[20:17:11] [Render thread/INFO] [minecraft/AtlasTexture]: Created: 256x256x0 minecraft:textures/atlas/paintings.png-atlas
[20:17:11] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state
[20:17:11] [Render thread/INFO] [minecraft/AtlasTexture]: Created: 256x128x0 minecraft:textures/atlas/mob_effects.png-atlas
[20:17:11] [Render thread/ERROR] [ne.mi.fm.ModLoader/]: Cowardly refusing to send event net.minecraftforge.client.event.TextureStitchEvent$Post to a broken mod state
[20:17:12] [Render thread/DEBUG] [ne.mi.fm.ForgeI18n/CORE]: Loading I18N data entries: 4978
[20:17:12] [Render thread/FATAL] [ne.mi.co.ForgeMod/]: Preparing crash report with UUID 0551e227-ac7d-4d73-973c-e041e9b0c118
[20:17:12] [Render thread/INFO] [STDOUT/]: [net.minecraft.crash.CrashReport:addCategory:196]: Negative index in crash report handler (21/23)
[20:17:12] [Render thread/FATAL] [ne.mi.fm.cl.ClientModLoader/]: Crash report saved to .\crash-reports\crash-2021-04-12_20.17.12-fml.txt
---- Minecraft Crash Report ----
// I bet Cylons wouldn't have this problem.Time: 4/12/21 8:17 PM
Description: Mod loading error has occurredjava.lang.Exception: Mod Loading has failed
at net.minecraftforge.fml.CrashReportExtender.dumpModLoadingCrashReport(CrashReportExtender.java:85) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {re:classloading}
at net.minecraftforge.fml.client.ClientModLoader.completeModLoading(ClientModLoader.java:188) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {re:classloading,pl:runtimedistcleaner:A}
at net.minecraft.client.Minecraft.lambda$null$1(Minecraft.java:508) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A}
at net.minecraft.util.Util.ifElse(Util.java:320) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {re:classloading}
at net.minecraft.client.Minecraft.lambda$new$2(Minecraft.java:504) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A}
at net.minecraft.client.gui.ResourceLoadProgressGui.render(ResourceLoadProgressGui.java:113) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {re:classloading,pl:runtimedistcleaner:A}
at net.minecraft.client.renderer.GameRenderer.render(GameRenderer.java:481) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A}
at net.minecraft.client.Minecraft.runTick(Minecraft.java:976) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A}
at net.minecraft.client.Minecraft.run(Minecraft.java:607) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A}
at net.minecraft.client.main.Main.main(Main.java:184) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {re:classloading,pl:runtimedistcleaner:A}
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_281] {}
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_281] {}
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_281] {}
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_281] {}
at net.minecraftforge.userdev.FMLUserdevClientLaunchProvider.lambda$launchService$0(FMLUserdevClientLaunchProvider.java:52) ~[forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {}
at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-8.0.9.jar:?] {}
at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-8.0.9.jar:?] {}
at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-8.0.9.jar:?] {}
at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [modlauncher-8.0.9.jar:?] {}
at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [modlauncher-8.0.9.jar:?] {}
at net.minecraftforge.userdev.LaunchTesting.main(LaunchTesting.java:105) [forge-1.16.5-36.1.0_mapped_official_1.16.5-recomp.jar:?] {}
A detailed walkthrough of the error, its code path and all known details is as follows:
----------------------------------------------------------------------------------------- Head --
Thread: Render thread
Stacktrace:
at net.minecraftforge.registries.DeferredRegister.register(DeferredRegister.java:125) ~[forge:?] {re:classloading}
-- MOD gemstones --
Details:
Caused by 0: java.lang.ExceptionInInitializerError
at djofox.gemstones.Main.<init>(Main.java:25) ~[?:?] {re:classloading}
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_281] {}
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[?:1.8.0_281] {}
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:1.8.0_281] {}
at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[?:1.8.0_281] {}
at java.lang.Class.newInstance(Class.java:442) ~[?:1.8.0_281] {}
at net.minecraftforge.fml.javafmlmod.FMLModContainer.constructMod(FMLModContainer.java:81) ~[forge:36.1] {re:classloading}
at net.minecraftforge.fml.ModContainer.lambda$buildTransitionHandler$4(ModContainer.java:120) ~[forge:?] {re:classloading}
at java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1640) ~[?:1.8.0_281] {}
at java.util.concurrent.CompletableFuture$AsyncRun.exec(CompletableFuture.java:1632) ~[?:1.8.0_281] {}
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289) ~[?:1.8.0_281] {}
at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1067) ~[?:1.8.0_281] {}
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1703) ~[?:1.8.0_281] {}
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:172) ~[?:1.8.0_281] {}Mod File: main
Failure message: Gemstones (gemstones) has failed to load correctly
java.lang.ExceptionInInitializerError: null
Mod Version: 1.4
Mod Issue URL: NOT PROVIDED
Exception message: java.lang.IllegalArgumentException: Duplicate registration jade
Stacktrace:
at net.minecraftforge.registries.DeferredRegister.register(DeferredRegister.java:125) ~[forge:?] {re:classloading}
at djofox.gemstones.init.MaterialInit.<clinit>(MaterialInit.java:24) ~[?:?] {re:classloading}
at djofox.gemstones.Main.<init>(Main.java:25) ~[?:?] {re:classloading}
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_281] {}
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[?:1.8.0_281] {}
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:1.8.0_281] {}
at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[?:1.8.0_281] {}
at java.lang.Class.newInstance(Class.java:442) ~[?:1.8.0_281] {}
at net.minecraftforge.fml.javafmlmod.FMLModContainer.constructMod(FMLModContainer.java:81) ~[forge:36.1] {re:classloading}
at net.minecraftforge.fml.ModContainer.lambda$buildTransitionHandler$4(ModContainer.java:120) ~[forge:?] {re:classloading}
at java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1640) ~[?:1.8.0_281] {}
at java.util.concurrent.CompletableFuture$AsyncRun.exec(CompletableFuture.java:1632) ~[?:1.8.0_281] {}
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289) ~[?:1.8.0_281] {}
at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1067) ~[?:1.8.0_281] {}
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1703) ~[?:1.8.0_281] {}
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:172) ~[?:1.8.0_281] {} -
23 minutes ago, kiou.23 said:
your "beryl" Item is not an Item, it's a RegistryObject of an Item, think of it like a box which at the starts is empty, and that after registration your item gets put inside of it.
you're passing a RegistryObject to the Ingredient, while it expects an IItemProvider
you can call RegistryObject#get to get the item that's inside it
but note that if you call it before registration happens, the box is going to be empty and there won't be an item yetOhh ok, that makes sense, but even still how could I fix it? I cant initialize my items before I do my ToolMaterialList because my items class uses it.
-
So I already created an Armor class and Item Tier class for my new set of Mod tools and armor, but I can't figure out how to set the repair material as my Mod Item. The Item I would like to use is declared as a Registry Object because that's the new way forge does it, however "fromItems" takes IItemProvider and I'm not sure how to properly declare that, also I found another 'fix' that said use "get" but that doesnt work either
Can someone help me figure this out please?
My repair
BERYLC("berylc", 40, new int[]{1, 2, 3, 1}, 1, SoundEvents.EXPERIENCE_ORB_PICKUP, 1.0F, 0.0F, () -> { return Ingredient.get(ItemInit.beryl); //This line gets the error
My Item
public static final RegistryObject<Item> beryl = ITEMS.register("beryl", () -> new Item(new Item.Properties().tab(Main.GEMSTONES_GROUP)));
Thanks in advance!
-
I keep on getting this error when trying to register tools "The method register(String, Supplier<? extends I>) in the type DeferredRegister<Item> is not applicable for the arguments (String, CustomPickaxeItem)"
I cant find a fix without my game crashing, is there another way I should be trying to register tools/armour?
//Armor & Tools public static final RegistryObject<Item> PICKAXERUBY = ITEMS.register("beryl_pickaxe", new CustomPickaxeItem(ToolMaterialList.berylT, -1, 0.6F, new Item.Properties().tab(Main.GEMSTONES_GROUP)));
And here's my deferred registry code
public static final DeferredRegister<Item> ITEMS = DeferredRegister.create(ForgeRegistries.ITEMS, Main.MODID);
Heres my custom pickaxe code
package djofox.gemstones.items; import net.minecraft.item.IItemTier; import net.minecraft.item.PickaxeItem; public class CustomPickaxeItem extends PickaxeItem { public CustomPickaxeItem(IItemTier tier, int attackDamageIn, float attackSpeedIn, Properties builder) { super(tier, attackDamageIn, attackSpeedIn, builder); } }
Custom regeneration effect / regen on tick? (1.16.5)
in Modder Support
Posted
So basically I want to give the player a regeneration effect when they're wearing an armour piece I made, but the onArmorTick will rapidly give the player regeneration, disabling the delay and maxing out their health almost instantly. I had this problem with the health boost effect so I made a custom potion effect for that, but the regeneration effect is harder to do. I'm wondering if I need to figure out how to create the custom regeneration effect, or if theres another bypass I can do.
Heres the code I have for it (Only the iron crown and shulker crown I have difficulty with):
@Override public void onArmorTick(ItemStack stack, World world, PlayerEntity player) { if (player.getItemStackFromSlot(EquipmentSlotType.HEAD).getItem().equals(ItemInit.LEATHER_CROWN.get()) && player.getItemStackFromSlot(EquipmentSlotType.CHEST).getItem().equals(Items.LEATHER_CHESTPLATE) && player.getItemStackFromSlot(EquipmentSlotType.LEGS).getItem().equals(Items.LEATHER_LEGGINGS) && player.getItemStackFromSlot(EquipmentSlotType.FEET).getItem().equals(Items.LEATHER_BOOTS)) { player.addPotionEffect(new EffectInstance(Effects.HASTE, 15, 1, false, false)); } else if (player.getItemStackFromSlot(EquipmentSlotType.HEAD).getItem().equals(ItemInit.LEATHER_CROWN.get())) { player.addPotionEffect(new EffectInstance(Effects.HASTE, 15, 0, false, false)); } else if (player.getItemStackFromSlot(EquipmentSlotType.HEAD).getItem().equals(ItemInit.CHAINMAIL_CROWN.get()) && player.getItemStackFromSlot(EquipmentSlotType.CHEST).getItem().equals(Items.CHAINMAIL_CHESTPLATE) && player.getItemStackFromSlot(EquipmentSlotType.LEGS).getItem().equals(Items.CHAINMAIL_LEGGINGS) && player.getItemStackFromSlot(EquipmentSlotType.FEET).getItem().equals(Items.CHAINMAIL_BOOTS)) { player.addPotionEffect(new EffectInstance(Effects.RESISTANCE, 15, 1, false, false)); } else if (player.getItemStackFromSlot(EquipmentSlotType.HEAD).getItem().equals(ItemInit.CHAINMAIL_CROWN.get())) { player.addPotionEffect(new EffectInstance(Effects.RESISTANCE, 15, 0, false, false)); } else if (player.getItemStackFromSlot(EquipmentSlotType.HEAD).getItem().equals(ItemInit.GOLD_CROWN.get()) && player.getItemStackFromSlot(EquipmentSlotType.CHEST).getItem().equals(Items.GOLDEN_CHESTPLATE) && player.getItemStackFromSlot(EquipmentSlotType.LEGS).getItem().equals(Items.GOLDEN_LEGGINGS) && player.getItemStackFromSlot(EquipmentSlotType.FEET).getItem().equals(Items.GOLDEN_BOOTS)) { player.addPotionEffect(new EffectInstance(PotionList.MORE_HEALTH_EFFECT.get(), 15, 1, false, false)); player.addPotionEffect(new EffectInstance(Effects.HERO_OF_THE_VILLAGE, 15, 0, false, false)); } else if (player.getItemStackFromSlot(EquipmentSlotType.HEAD).getItem().equals(ItemInit.GOLD_CROWN.get())) { player.addPotionEffect(new EffectInstance(PotionList.MORE_HEALTH_EFFECT.get(), 15, 0, false, false)); } else if (player.getItemStackFromSlot(EquipmentSlotType.HEAD).getItem().equals(ItemInit.IRON_CROWN.get()) && player.getItemStackFromSlot(EquipmentSlotType.CHEST).getItem().equals(Items.IRON_CHESTPLATE) && player.getItemStackFromSlot(EquipmentSlotType.LEGS).getItem().equals(Items.IRON_LEGGINGS) && player.getItemStackFromSlot(EquipmentSlotType.FEET).getItem().equals(Items.IRON_BOOTS)) { player.addPotionEffect(new EffectInstance(Effects.REGENERATION, 15, 0, false, false)); player.addPotionEffect(new EffectInstance(Effects.SPEED, 15, 1, false, false)); } else if (player.getItemStackFromSlot(EquipmentSlotType.HEAD).getItem().equals(ItemInit.IRON_CROWN.get())) { player.addPotionEffect(new EffectInstance(Effects.SPEED, 15, 0, false, false)); } else if (player.getItemStackFromSlot(EquipmentSlotType.CHEST).getItem().equals(Items.DIAMOND_CHESTPLATE) && player.getItemStackFromSlot(EquipmentSlotType.LEGS).getItem().equals(Items.DIAMOND_LEGGINGS) && player.getItemStackFromSlot(EquipmentSlotType.FEET).getItem().equals(Items.DIAMOND_BOOTS) && player.getItemStackFromSlot(EquipmentSlotType.HEAD).getItem().equals(ItemInit.DIAMOND_CROWN.get())) { player.addPotionEffect(new EffectInstance(Effects.CONDUIT_POWER, 15, 0, false, false)); player.addPotionEffect(new EffectInstance(Effects.DOLPHINS_GRACE, 15, 0, false, false)); } else if (player.getItemStackFromSlot(EquipmentSlotType.HEAD).getItem().equals(ItemInit.DIAMOND_CROWN.get())) { player.addPotionEffect(new EffectInstance(Effects.CONDUIT_POWER, 15, 0, false, false)); } else if (player.getItemStackFromSlot(EquipmentSlotType.CHEST).getItem().equals(Items.NETHERITE_CHESTPLATE) && player.getItemStackFromSlot(EquipmentSlotType.LEGS).getItem().equals(Items.NETHERITE_LEGGINGS) && player.getItemStackFromSlot(EquipmentSlotType.FEET).getItem().equals(Items.NETHERITE_BOOTS) && player.getItemStackFromSlot(EquipmentSlotType.HEAD).getItem().equals(ItemInit.NETHERITE_CROWN.get())) { player.addPotionEffect(new EffectInstance(Effects.FIRE_RESISTANCE, 15, 0, false, false)); player.addPotionEffect(new EffectInstance(Effects.STRENGTH, 15, 0, false, false)); player.addPotionEffect(new EffectInstance(Effects.NIGHT_VISION, 15, 0, false, false)); } else if (player.getItemStackFromSlot(EquipmentSlotType.HEAD).getItem().equals(ItemInit.NETHERITE_CROWN.get())) { player.addPotionEffect(new EffectInstance(Effects.FIRE_RESISTANCE, 15, 0, false, false)); } else if (player.getItemStackFromSlot(EquipmentSlotType.HEAD).getItem().equals(ItemInit.SHULKER_CROWN.get())) { player.addPotionEffect(new EffectInstance(Effects.REGENERATION, 15, 1, false, false)); player.addPotionEffect(new EffectInstance(Effects.LEVITATION, 15, 0, false, false)); } } }