Jump to content

Black_dog20

Members
  • Posts

    2
  • Joined

  • Last visited

Black_dog20's Achievements

Tree Puncher

Tree Puncher (2/8)

0

Reputation

  1. I just tried a new world and apparently, it was a problem with the world having a different id for the enchantment?? maybe??
  2. I have for the past hour or two tried to get my recipe factory to play nice with an custom enchantment. The problem is that when I read the json file and creats the recipe, the factory can find my enchantment, but upon loading into a world and crafting the recipe, it no longer has the enchantment. The item stil has the enchantment glow. My enchantment registration @EventBusSubscriber(modid = Reference.MOD_ID) public class ModEnchantments { public static final CustomEnchantment myEnchantment = (CustomEnchantment) new CustomEnchantment().setRegistryName(new ResourceLocation(Reference.MOD_ID, "myEnchantment")); @SubscribeEvent public static void registerEnchantments(RegistryEvent.Register<Enchantment> event) { IForgeRegistry<Enchantment> r = event.getRegistry(); r.register(myEnchantment); } } My recipe factory public class Factory implements IRecipeFactory { @Override public IRecipe parse(final JsonContext context, final JsonObject json) { final String group = JsonUtils.getString(json, "group", ""); final CraftingHelper.ShapedPrimer primer = RecipeUtil.parseShaped(context, json); JsonObject resultJson = JsonUtils.getJsonObject(json, "result"); final ItemStack result = CraftingHelper.getItemStack(JsonUtils.getJsonObject(json, "result"), context); String enchantName = JsonUtils.getString(resultJson, "enchantment"); int enchantLvl = JsonUtils.getInt(resultJson, "enchantment_lvl"); Enchantment enchantment = Enchantment.getEnchantmentByLocation(enchantName); if (enchantment == null) throw new JsonSyntaxException("Unknown enchantment '" + enchantName + "'"); Map<Enchantment, Integer> enchMap = Collections.singletonMap(enchantment, enchantLvl); EnchantmentHelper.setEnchantments(enchMap, result); return new ShapedEnchantedItemRecipe(group.isEmpty() ? null : new ResourceLocation(group), result, primer); } }
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.