Stage is the class you are given when you create a new “Stage” the class contains all the main method you need to stage an entry to that Stage. It’s as simple as that! Once you have added all the entries you need. Don’t forget to build the stage!

Importing the package

import mods.zenstages.Stage;

What to do with it

ZenGetters and parameterless ZenMethods

ZenGetter What does it do Return Type
stage Returns the stage name string

Staging Methods

Note: All these methods will only work with the Stage class given when you create a Stage using ZenStager so save these to a static so you can reference from other classes if need be.

Check to see if a Custom Type has been Staged to this Stage.

// isCustomStaged(String slug, String value);
// isCustomStaged(String slug, String[] values);
// isCustomStaged(String slug, int value);
// isCustomStaged(String slug, int[] values);
// isCustomStaged(String slug, IIngredient value);
// isCustomStaged(String slug, IIngredient[] values);
TestStage.isCustomStaged("blockBreak", <minecraft:stone>);
TestStage.isCustomStaged("container", "com.test");

Add an Ingredient to a stage. Defaulted to true the optional parameter to stage the recipe for said Ingredient.

// addIngredient(IIngredient ingredient, @Optional(valueBoolean = true) boolean recipeStage);
// addIngredients(IIngredient[] ingredients, @Optional(valueBoolean = true) boolean recipeStage);
TestStage.addIngredients([<minecraft:boat>, <minecraft:string>], false);

Add an Ingredient Override. This is used when you’re Staging an entire mod via the ModId but you need to re-stage some items from the mod to another Stage, so this allows you to re-stage items.

// addIngredientOverride(IIngredient ingredient, @Optional(valueBoolean = true) boolean recipeStage);
TestStage.addIngredientOverride(<myawesomemod:generator>, true);

Add a ModId to a stage. This will stage all the items found which are registered by the modId provided to the Stage. You can also provide an array of IIngredients which the provided items won’t be staged.

// addModId(String modId);
// addModId(String[] modIds);
// addModId(String modId, IIngredient[] ignoreStaging);
TestStage.addModId("bloodmagic", [<bloodmagic:someitem>]);

Add an ILiquidStack to a stage.

// addLiquid(ILiquidStack liquidStack);
// addLiquids(ILiquidStack[] liquidStacks);
TestStage.addLiquids([<minecraft:water>, <minecraft:lava>]);

Add a dimension to a stage. Requires DimStages to be installed.

// addDimension(int dimId);

Add a recipe name to a stage. Requires RecipeStages to be installed.

// addRecipeName(string recipeName);

Add a recipe name to a stage. Requires RecipeStages to be installed.

// addRecipeName(string recipeName);

Add a mob to a stage. Requires MobStages to be installed.

// addMob(string mobName);
// addMobs(string[] mobNames);
// addMob(string mobName, int dimId);
// addMobs(string[] mobNames, int dimId);
TestStage.addMobs(["minecraft:skeleton", "minecraft:skeleton_horse"]);
TestStage.addMob("minecraft:skeleton", 0);
TestStage.addMobs(["minecraft:skeleton", "minecraft:skeleton_horse"], 9);

Add a TiC material name to a stage. Requires TinkerStages to be installed.

// addTiCMaterial(string materialName);
// addTiCMaterials(string materialNames);
TestStage.addTiCMaterials(["bronze", "iron"]);

Add a TiC modifier to a stage. Requires TinkerStages to be installed.

// addTiCModifier(string modifierName);

Add a IE Multiblock to a stage. Requires Multi Block Stages to be installed.

// addIEMultiBlock(string multiblock);
// addIEMultiBlocks(string multiblocks);
TestStage.addIEMultiBlocks(["IE:Mixer", "IE:SheetmetalTank"]);

Add an Ore Replacment to a stage. Requires OreStages to be installed.

// addOreReplacement(IIngredient blockToHide, @Optional(valueBoolean = false) boolean isNonDefaulting);
// addOreReplacement(IIngredient blockToHide, IItemStack blockToShow, @Optional(valueBoolean = false) boolean isNonDefaulting);
TestStage.addOreReplacement(<minecraft:iron_bars:*>, true);
TestStage.addOreReplacement(<chisel:redstone>, <chisel:granite>);
TestStage.addOreReplacement(<chisel:redstone>, <chisel:granite>, true);