Posted January 31, 20214 yr So in the recipe interface 1.15.2 code I had this method: @Nonnull @Override default IRecipeType<?> getType() { return Registry.RECIPE_TYPE.getValue(RECIPE_TYPE_ID).get(); } Now in 1.16.4 it says that .getValue() is undefined. So, what should I put there?
January 31, 20214 yr I'd say "look at the available methods, one probably makes sense." Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
January 31, 20214 yr Author 30 minutes ago, Draco18s said: I'd say "look at the available methods, one probably makes sense." There are only a few methods which take in a ResourceLocation and they are "onOptional, getOrDefault and containsKey". Probably not these one...
January 31, 20214 yr Author 3 minutes ago, diesieben07 said: Store your IRecipeType in a static field and use it from there. So like vanilla?
January 31, 20214 yr Author 2 minutes ago, diesieben07 said: Yes. But then another error comes up, since I'm doing this: public static final IRecipeType<ISculptorRecipe> SCULPTOR_TYPE = registerType(ISculptorRecipe.SCULPTOR); @SuppressWarnings({ "unchecked", "rawtypes" }) private static <T extends IRecipeType> T registerType(ResourceLocation recipeTypeId) { return (T) Registry.register(Registry.RECIPE_TYPE, recipeTypeId, new RecipeType<>()); } The registerType method takes in a ResourceLocation, not an IRecipeType.
January 31, 20214 yr Author 1 minute ago, diesieben07 said: What is this? IRecipeType<SculptorRecipe> SCULPTOR = register("sculptor");
January 31, 20214 yr Author 2 minutes ago, Dr.Nickenstein said: IRecipeType<SculptorRecipe> SCULPTOR = register("sculptor"); static <T extends IRecipe<?>> IRecipeType<T> register(final String key) { return Registry.register(Registry.RECIPE_TYPE, new ResourceLocation(key), new IRecipeType<T>() { public String toString() { return key; } }); } and this is the register(String) method.
January 31, 20214 yr Author 51 minutes ago, diesieben07 said: So... with that you already have a recipe type. Just use that SCULPTOR field. So I can remove both registerType and the SCULPTOR_TYPE field and instead put ISculptorRecipe.SCULPTOR? Edited January 31, 20214 yr by Dr.Nickenstein why not
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.