Meteor (Blood Magic: Alchemical Wizardry)
Description
Throwing an input catalyst atop an activated Mark of the Falling Tower Ritual will spawn a meteor made of the given components, size, explosion strength, and Life Essence cost.
Identifier
Refer to this via any of the following:
mods.bm.meteor
mods.bm.Meteor
mods.bloodmagic.meteor/* Used as page default */
mods.bloodmagic.Meteor
Adding Recipes
Adds recipes in the format
catalyst
,componentList
,explosionStrength
,radius
,cost
:groovymods.bloodmagic.meteor.add(ItemStack, List<MeteorComponent>, float, int, int)
Recipe Builder
Just like other recipe types, the Meteor also uses a recipe builder.
Don't know what a builder is? Check the builder info page out.
mods.bloodmagic.meteor.recipeBuilder()
int
. Sets the amount of Life Essence drained from the Blood Network to spawn the meteor. Requires greater than or equal to 0. (Default1000000
).groovycost(int)
int
. Sets the radius of the meteor. Requires greater than 0. (Default0
).groovyradius(int)
ItemStack
. Sets the catalyst that must be thrown atop the Master Ritual Stone to spawn the meteor.groovycatalyst(ItemStack) catalystStack(ItemStack)
List<MeteorComponent>
. Sets the blocks that make up the meteor, and what weight each block has to generate.groovycomponent(int, String) component(String, int) component(int, OreDictIngredient) component(OreDictIngredient, int)
float
. Sets the strength of the explosion caused when the meteor is spawned. Requires greater than or equal to 0. (Default0.0f
).groovyexplosionStrength(float)
First validates the builder, returning
null
and outputting errors to the log file if the validation failed, then registers the builder and returns the registered object. (returnsnull
orWayofTime.bloodmagic.meteor.Meteor
).groovyregister()
Example
mods.bloodmagic.meteor.recipeBuilder()
.catalyst(item('minecraft:gold_ingot'))
.component(ore('oreIron'), 10)
.component(ore('oreDiamond'), 10)
.component(ore('stone'), 70)
.radius(7)
.explosionStrength(10)
.cost(1000)
.register()
mods.bloodmagic.meteor.recipeBuilder()
.catalyst(item('minecraft:clay'))
.component('blockClay', 10)
.radius(20)
.explosionStrength(20)
.register()
Removing Recipes
Removes all recipes that match the given input:
groovymods.bloodmagic.meteor.remove(ItemStack)
Removes all recipes that match the given input:
groovymods.bloodmagic.meteor.removeByCatalyst(ItemStack)
Removes all recipes that match the given input:
groovymods.bloodmagic.meteor.removeByInput(ItemStack)
Removes all registered recipes:
groovymods.bloodmagic.meteor.removeAll()
Example
mods.bloodmagic.meteor.remove(item('minecraft:diamond_block'))
mods.bloodmagic.meteor.removeByCatalyst(item('minecraft:iron_block'))
mods.bloodmagic.meteor.removeByInput(item('minecraft:gold_block'))
mods.bloodmagic.meteor.removeAll()
Getting the value of recipes
Iterates through every entry in the registry, with the ability to call remove on any element to remove it:
groovymods.bloodmagic.meteor.streamRecipes()