https://github.com/TeamPneumatic/pnc-repressurized/wiki/Recipes-1.14.4-and-1.15.2-1.16.x#fluid-mixer
Making a Schema for this recipe, problem is the input1 and input2, they have a custom type. How do I implement that to a RecipeKey?
https://github.com/FooterMan15/GeneralRecipesJS/blob/master/src/main/java/dev/footer/grjs/kjs/pncr/PneumaticcraftRecipeSchema.java
#How to make a recipekey with a custom type
44 messages · Page 1 of 1 (latest)
Once your ticket has been resolved, please close it with </ticket close:1054771505520717835> command!
Your situation is very similar to what @candid cedar did with TFC FluidIngredient
https://github.com/Notenoughmail/KubeJS-TFC/blob/1.20.1/src/main/java/com/notenoughmail/kubejs_tfc/recipe/component/FluidIngredientComponent.java
Your FluidIngredient that you need to implement a new RecipeComponent
https://github.com/TeamPneumatic/pnc-repressurized/blob/7955c46330cf1ff105472da80d7c85e1dd0d9bfc/src/api/java/me/desht/pneumaticcraft/api/crafting/ingredient/FluidIngredient.java#L329
You will also need to create a typeWrapper/bindings for FluidIngredient
delegating the parsing stuff is better than reinventing the wheel

Please close your ticket (with </ticket close:1054771505520717835> or the button atop this thread) once you resolved your issue! This also helps others that would like to help out, as they don't have to look into this thread to check if it has been resolved by now.
Do you have any other questions regarding your issue? Feel free to ask!
Note: You generally should create a new post for unrelated issues.
Sorry haven’t finished working on it, just haven’t had any problems to report
How do I do the wrapper/binding for the class? I can't figure out how to do that.
This method is protected, I can't use it
@lunar viper hmm, protected prevents from what? isn't it just from extending the class?
anyway, it prob have helper functions inside the class
let me see
Don't I have to do this?
public static final FluidIngredient INGREDIENT = new FluidIngredient();
Yes I know I'm using the wrong class for this
Just focusing on the protection atm
new FluidIngredient() this is wrong arguments of initialization of the class
Ah
but why do you want to initialize it? 🤔
this is from Mail right?
Yeah
yes, you need to create an exclusive component just like he did
show you custom component
public class PNCRComponents implements RecipeComponent<FluidIngredient> {
public static final PNCRComponents INGREDIENT = new FluidIngredient();
@Override
public Class<?> componentClass() {
return FluidIngredient.class;
}
@Override
public JsonElement write(RecipeJS recipe, FluidIngredient value) {
return value.toJson();
}
@Override
public FluidIngredient read(RecipeJS recipe, Object from) {
return null;
}
}
yeah this public static final stuff I don't get, did Mail do something like that?
You're the one who linked Mail's component 
oh
not the ingredient
I'm blind as hell
okay, so is that all I need or do I need to figure out the custom type as well?
type of what?
their custom json type for the fluids
"fluid_input": {
"type": "pneumaticcraft:fluid",
"tag": "pneumaticcraft:diesel",
"amount": 1000
},```
this will do the job for you https://github.com/TeamPneumatic/pnc-repressurized/blob/7955c46330cf1ff105472da80d7c85e1dd0d9bfc/src/api/java/me/desht/pneumaticcraft/api/crafting/ingredient/FluidIngredient.java#L329
BUT you need to make a helper function that you will use to parse this AND to parse what scripters will type when creating recipes, like Mail did here:
oh man this is gonna be a hell of a task
