ReyMagos
Тег-бомбастер
- 412
- 7
- 121
Захотел я как-то проапгрейдить майновскую похлёбку и сделал свою. Суть в том, что я могу скидать в неё любые ингредиенты и получится уникальный экземпляр. Сытость и восстановление рассчитываются в зависимости от ингредиентов. И естественно столкнулся с проблемой её крафта. Заглянул в цветные предметы и о УЖАС. Оказывается майн делает для каждого вида шерсти, кровати, стекла и т.д. отдельный json... Но я продолжил поиски и нашёл крафт фейерверков. Он записан в коде и наследуется от странного класса
Перехожу в GameData и вижу)
Но тут я увидел, что
Ну, я конечно пошёл в доки форджа и посмотрел, но ничего стоящего я там не нашёл, может кто-нибудь подсказать решение?
P.S. Есть ещё одна сопутствующая проблема, это создание этой самой похлёбки, как предмета. Метадату делать бесмысленно (очень много крафтов). Думал через сеттер, а после как-то обновлять прдемет, но не смог. Единственный вариант это создавать новый ItemStew с новыми параметрами, но это как-то не очень. Тоже нужна помощь!
IForgeRegistryEntry.Impl<IRecipe>
и имплементирует IRecipe
. Там я нашёл всё, что мне нужно (универсальный крафт). Написал я его такой и думаю, как зарегистрировать. Парочку раз натыкался на такие артефакты)
Java:
//Forge: Made private use GameData/Registry events!
private static void register(ResourceLocation name, IRecipe recipe)
{
...
}
Java:
/*
*INTERNAL ONLY
*MODDERS SHOULD HAVE NO REASON TO USE THIS CLASS
*/
public class GameData
{
...
}
public static final RegistryNamespaced<ResourceLocation, IRecipe> REGISTRY = net.minecraftforge.registries.GameData.getWrapper(IRecipe.class);
открытый (public). И я такой в комон прокси в ините запихал регистрацию и вот чем меня порадовал фордж)java.lang.IllegalStateException: Can not register to a locked registry. Modder should use Forge Register methods.
Ну, я конечно пошёл в доки форджа и посмотрел, но ничего стоящего я там не нашёл, может кто-нибудь подсказать решение?
P.S. Есть ещё одна сопутствующая проблема, это создание этой самой похлёбки, как предмета. Метадату делать бесмысленно (очень много крафтов). Думал через сеттер, а после как-то обновлять прдемет, но не смог. Единственный вариант это создавать новый ItemStew с новыми параметрами, но это как-то не очень. Тоже нужна помощь!