diff --git a/examples/postInit/custom/in_world_crafting.groovy b/examples/postInit/custom/in_world_crafting.groovy deleted file mode 100644 index 56b9eebc2..000000000 --- a/examples/postInit/custom/in_world_crafting.groovy +++ /dev/null @@ -1,38 +0,0 @@ - -inWorldCrafting.fluidToFluid.recipeBuilder() - .fluidInput(fluid('water')) - .input(item('minecraft:diamond') * 2) - .fluidOutput(fluid('lava')) - .register() - -inWorldCrafting.fluidToItem.recipeBuilder() - .fluidInput(fluid('water'), 0.22f) - .input(item('minecraft:netherrack')) - .input(item('minecraft:gold_ingot'), 0.1f) - .output(item('minecraft:nether_star')) - .register() - -inWorldCrafting.fluidToBlock.recipeBuilder() - .fluidInput(fluid('water')) - .input(item('minecraft:clay_ball')) - .output(block('minecraft:diamond_block')) - .register() - -inWorldCrafting.explosion.recipeBuilder() - .input(item('minecraft:diamond')) - .output(item('minecraft:nether_star')) - .chance(0.4f) - .register() - -inWorldCrafting.burning.recipeBuilder() - .input(item('minecraft:netherrack')) - .output(item('minecraft:nether_star')) - //.ticks(40f) - .register() - -inWorldCrafting.pistonPush.recipeBuilder() - .input(item('minecraft:gold_ingot')) - .output(item('minecraft:diamond')) - .minHarvestLevel(2) - .maxConversionsPerPush(3) - .register() diff --git a/examples/postInit/actuallyadditions.groovy b/examples/postInit/generated/actuallyadditions_generated.groovy similarity index 98% rename from examples/postInit/actuallyadditions.groovy rename to examples/postInit/generated/actuallyadditions_generated.groovy index f3c955cb2..b2aca97a8 100644 --- a/examples/postInit/actuallyadditions.groovy +++ b/examples/postInit/generated/actuallyadditions_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: actuallyadditions -log.info 'mod \'actuallyadditions\' detected, running script' +log 'mod \'actuallyadditions\' detected, running script' // Atomic Reconstructor: // The Atomic Reconstructor is a block which uses energy to convert a block or item in front of it into other items. @@ -120,8 +120,8 @@ mods.actuallyadditions.empowerer.recipeBuilder() // A weighted oredict for the block obtained via firing a Mining Lens at a block of Netherrack. The oredict must have a // block, or the world will hang. -mods.actuallyadditions.nether_mining_lens.removeByOre(ore('oreQuartz')) mods.actuallyadditions.nether_mining_lens.removeByOre('oreQuartz') +mods.actuallyadditions.nether_mining_lens.removeByOre(ore('oreQuartz')) // mods.actuallyadditions.nether_mining_lens.removeAll() mods.actuallyadditions.nether_mining_lens.recipeBuilder() @@ -139,8 +139,8 @@ mods.actuallyadditions.nether_mining_lens.recipeBuilder() // Turns a fluid into power at a rate. mods.actuallyadditions.oil_gen.removeByInput(fluid('canolaoil').getFluid()) -mods.actuallyadditions.oil_gen.removeByInput(fluid('canolaoil')) mods.actuallyadditions.oil_gen.removeByInput('refinedcanolaoil') +mods.actuallyadditions.oil_gen.removeByInput(fluid('canolaoil')) // mods.actuallyadditions.oil_gen.removeAll() mods.actuallyadditions.oil_gen.recipeBuilder() @@ -160,8 +160,8 @@ mods.actuallyadditions.oil_gen.recipeBuilder() // A weighted oredict for the block obtained via firing a Mining Lens at a block of Stone. The oredict must have a block, // or the world will hang. -mods.actuallyadditions.stone_mining_lens.removeByOre(ore('oreCoal')) mods.actuallyadditions.stone_mining_lens.removeByOre('oreLapis') +mods.actuallyadditions.stone_mining_lens.removeByOre(ore('oreCoal')) // mods.actuallyadditions.stone_mining_lens.removeAll() mods.actuallyadditions.stone_mining_lens.recipeBuilder() @@ -188,5 +188,3 @@ mods.actuallyadditions.treasure_chest.recipeBuilder() .min(16) .max(32) .register() - - diff --git a/examples/postInit/advancedmortars.groovy b/examples/postInit/generated/advancedmortars_generated.groovy similarity index 95% rename from examples/postInit/advancedmortars.groovy rename to examples/postInit/generated/advancedmortars_generated.groovy index fc232ba64..f6736da41 100644 --- a/examples/postInit/advancedmortars.groovy +++ b/examples/postInit/generated/advancedmortars_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: advancedmortars -log.info 'mod \'advancedmortars\' detected, running script' +log 'mod \'advancedmortars\' detected, running script' // Mortar: // Uses any number of specific types of Mortars to convert multiple items into a single output with a possible chance @@ -32,7 +32,6 @@ mods.advancedmortars.mortar.recipeBuilder() .register() -mods.advancedmortars.mortar.add(['iron', 'wood'], item('minecraft:tnt') * 5, 4, item('minecraft:tnt'), 0.7, [ore('ingotIron'), ore('ingotIron'), ore('ingotIron'), ore('ingotIron'),ore('ingotIron'), ore('ingotIron'), ore('ingotIron'), ore('ingotIron')]) mods.advancedmortars.mortar.add(['stone'], item('minecraft:tnt'), 4, [ore('ingotGold')]) mods.advancedmortars.mortar.add(['stone'], item('minecraft:diamond') * 4, 4, [ore('ingotGold')]) - +mods.advancedmortars.mortar.add(['iron', 'wood'], item('minecraft:tnt') * 5, 4, item('minecraft:tnt'), 0.7, [ore('ingotIron'), ore('ingotIron'), ore('ingotIron'), ore('ingotIron'),ore('ingotIron'), ore('ingotIron'), ore('ingotIron'), ore('ingotIron')]) diff --git a/examples/postInit/advancedrocketry.groovy b/examples/postInit/generated/advancedrocketry_generated.groovy similarity index 98% rename from examples/postInit/advancedrocketry.groovy rename to examples/postInit/generated/advancedrocketry_generated.groovy index b2c1354d4..fbad73895 100644 --- a/examples/postInit/advancedrocketry.groovy +++ b/examples/postInit/generated/advancedrocketry_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: advancedrocketry -log.info 'mod \'advancedrocketry\' detected, running script' +log 'mod \'advancedrocketry\' detected, running script' // Centrifuge: // Converts an input fluid into up to 12 output items and up to 4 output fluids, consuming RF. @@ -169,5 +169,3 @@ mods.advancedrocketry.small_plate_presser.recipeBuilder() .input(item('minecraft:cobblestone')) .output(item('minecraft:diamond')) .register() - - diff --git a/examples/postInit/aether_legacy.groovy b/examples/postInit/generated/aether_legacy_generated.groovy similarity index 96% rename from examples/postInit/aether_legacy.groovy rename to examples/postInit/generated/aether_legacy_generated.groovy index 84742272a..fe23891a3 100644 --- a/examples/postInit/aether_legacy.groovy +++ b/examples/postInit/generated/aether_legacy_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: aether_legacy -log.info 'mod \'aether_legacy\' detected, running script' +log 'mod \'aether_legacy\' detected, running script' // Accessory: // The Aether Accessory system. @@ -57,4 +57,3 @@ mods.aether_legacy.freezer_fuel.removeByItem(item('aether_legacy:icestone')) // mods.aether_legacy.freezer_fuel.removeAll() mods.aether_legacy.freezer_fuel.add(item('minecraft:packed_ice'), 1000) - diff --git a/examples/postInit/alchemistry.groovy b/examples/postInit/generated/alchemistry_generated.groovy similarity index 98% rename from examples/postInit/alchemistry.groovy rename to examples/postInit/generated/alchemistry_generated.groovy index 52acf4e7c..58fe1240c 100644 --- a/examples/postInit/alchemistry.groovy +++ b/examples/postInit/generated/alchemistry_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: alchemistry -log.info 'mod \'alchemistry\' detected, running script' +log 'mod \'alchemistry\' detected, running script' // Atomizer: // Converts a non-element into its component elements. @@ -125,5 +125,3 @@ mods.alchemistry.liquifier.recipeBuilder() .input(item('minecraft:magma')) .fluidOutput(fluid('lava') * 750) .register() - - diff --git a/examples/postInit/appliedenergistics2.groovy b/examples/postInit/generated/appliedenergistics2_generated.groovy similarity index 97% rename from examples/postInit/appliedenergistics2.groovy rename to examples/postInit/generated/appliedenergistics2_generated.groovy index 91e12c6c0..92ab4180d 100644 --- a/examples/postInit/appliedenergistics2.groovy +++ b/examples/postInit/generated/appliedenergistics2_generated.groovy @@ -4,21 +4,21 @@ import appeng.capabilities.Capabilities -log.info 'mod \'appliedenergistics2\' detected, running script' +log 'mod \'appliedenergistics2\' detected, running script' // P2P Attunement: // Controls using specific items, any items from a mod, or any items with a Capability to convert a P2P into a specific // tunnel type. -mods.appliedenergistics2.attunement.remove(Capabilities.FORGE_ENERGY, tunnel('fe_power')) -mods.appliedenergistics2.attunement.remove(item('minecraft:lever'), tunnel('redstone')) mods.appliedenergistics2.attunement.remove('thermaldynamics', tunnel('fe_power')) +mods.appliedenergistics2.attunement.remove(item('minecraft:lever'), tunnel('redstone')) +mods.appliedenergistics2.attunement.remove(Capabilities.FORGE_ENERGY, tunnel('fe_power')) mods.appliedenergistics2.attunement.removeByTunnel(tunnel('item')) // mods.appliedenergistics2.attunement.removeAll() -mods.appliedenergistics2.attunement.add(Capabilities.FORGE_ENERGY, tunnel('item')) -mods.appliedenergistics2.attunement.add(item('minecraft:clay'), tunnel('item')) mods.appliedenergistics2.attunement.add('thermaldynamics', tunnel('redstone')) +mods.appliedenergistics2.attunement.add(item('minecraft:clay'), tunnel('item')) +mods.appliedenergistics2.attunement.add(Capabilities.FORGE_ENERGY, tunnel('item')) // Cannon Ammo: // Item and weight, where weight is a factor in how much damage is dealt. @@ -78,4 +78,3 @@ mods.appliedenergistics2.spatial.remove('net.minecraft.tileentity.TileEntityChes // mods.appliedenergistics2.spatial.removeAll() mods.appliedenergistics2.spatial.add('net.minecraft.tileentity.TileEntityStructure') - diff --git a/examples/postInit/arcanearchives.groovy b/examples/postInit/generated/arcanearchives_generated.groovy similarity index 93% rename from examples/postInit/arcanearchives.groovy rename to examples/postInit/generated/arcanearchives_generated.groovy index 08c218e4e..260ab92aa 100644 --- a/examples/postInit/arcanearchives.groovy +++ b/examples/postInit/generated/arcanearchives_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: arcanearchives -log.info 'mod \'arcanearchives\' detected, running script' +log 'mod \'arcanearchives\' detected, running script' // Gem Cutting Table: // Converts any number of itemstacks into a single output itemstack via selecting the desired output itemstack in the GUI. @@ -21,5 +21,3 @@ mods.arcanearchives.gem_cutting_table.recipeBuilder() .input(item('minecraft:stone'),item('minecraft:gold_ingot'),item('minecraft:gold_nugget')) .output(item('minecraft:clay') * 4) .register() - - diff --git a/examples/postInit/arcaneworld.groovy b/examples/postInit/generated/arcaneworld_generated.groovy similarity index 98% rename from examples/postInit/arcaneworld.groovy rename to examples/postInit/generated/arcaneworld_generated.groovy index fc901398b..2c2197497 100644 --- a/examples/postInit/arcaneworld.groovy +++ b/examples/postInit/generated/arcaneworld_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: arcaneworld -log.info 'mod \'arcaneworld\' detected, running script' +log 'mod \'arcaneworld\' detected, running script' // Ritual: // Converts up to 5 input itemstacks into a wide number of possible effects, including spawning entities, opening a portal @@ -21,51 +21,40 @@ mods.arcaneworld.ritual.recipeBuilder() .name('groovyscript:custom_name') .register() +mods.arcaneworld.ritual.recipeBuilderTime() + .input(item('minecraft:diamond'), item('minecraft:clay'), item('minecraft:clay'), item('minecraft:clay')) + .translationKey('groovyscript.demo_time') + .time(5000) + .register() + mods.arcaneworld.ritual.recipeBuilderArena() .input(item('minecraft:stone'), item('minecraft:stone'), item('minecraft:clay')) .translationKey('groovyscript.demo_arena') .entity(entity('minecraft:chicken')) .register() -mods.arcaneworld.ritual.recipeBuilderCommand() - .input(item('minecraft:diamond'), item('minecraft:diamond'), item('minecraft:clay')) - .translationKey('groovyscript.demo_command') - .command('say hi', - 'give @p minecraft:coal 5') - .register() - -mods.arcaneworld.ritual.recipeBuilderCreateItem() - .input(item('minecraft:diamond'), item('minecraft:diamond'), item('minecraft:diamond')) - .translationKey('groovyscript.demo_create_item') - .output(item('minecraft:diamond')) - .register() - mods.arcaneworld.ritual.recipeBuilderCustom() .input(item('minecraft:diamond'), item('minecraft:diamond'), item('minecraft:clay'), item('minecraft:clay')) .translationKey('groovyscript.demo_custom') .onActivate({ World world, BlockPos blockPos, EntityPlayer player, ItemStack... itemStacks -> { log.info blockPos } }) .register() -mods.arcaneworld.ritual.recipeBuilderDragonBreath() - .input(item('minecraft:clay'), item('minecraft:clay'), item('minecraft:clay'), item('minecraft:clay'), item('minecraft:clay')) - .translationKey('groovyscript.demo_dragon_breath') - .register() - -mods.arcaneworld.ritual.recipeBuilderDungeon() - .input(item('minecraft:diamond'), item('minecraft:clay'), item('minecraft:clay')) - .translationKey('groovyscript.demo_dungeon') - .register() - mods.arcaneworld.ritual.recipeBuilderSummon() .input(item('minecraft:stone'), item('minecraft:clay'), item('minecraft:clay')) .translationKey('groovyscript.demo_summon') .entity(entity('minecraft:chicken')) .register() -mods.arcaneworld.ritual.recipeBuilderTime() - .input(item('minecraft:diamond'), item('minecraft:clay'), item('minecraft:clay'), item('minecraft:clay')) - .translationKey('groovyscript.demo_time') - .time(5000) +mods.arcaneworld.ritual.recipeBuilderCommand() + .input(item('minecraft:diamond'), item('minecraft:diamond'), item('minecraft:clay')) + .translationKey('groovyscript.demo_command') + .command('say hi', + 'give @p minecraft:coal 5') + .register() + +mods.arcaneworld.ritual.recipeBuilderDungeon() + .input(item('minecraft:diamond'), item('minecraft:clay'), item('minecraft:clay')) + .translationKey('groovyscript.demo_dungeon') .register() mods.arcaneworld.ritual.recipeBuilderWeather() @@ -86,4 +75,13 @@ mods.arcaneworld.ritual.recipeBuilderWeather() .weatherThunder() .register() +mods.arcaneworld.ritual.recipeBuilderCreateItem() + .input(item('minecraft:diamond'), item('minecraft:diamond'), item('minecraft:diamond')) + .translationKey('groovyscript.demo_create_item') + .output(item('minecraft:diamond')) + .register() +mods.arcaneworld.ritual.recipeBuilderDragonBreath() + .input(item('minecraft:clay'), item('minecraft:clay'), item('minecraft:clay'), item('minecraft:clay'), item('minecraft:clay')) + .translationKey('groovyscript.demo_dragon_breath') + .register() diff --git a/examples/postInit/armorplus.groovy b/examples/postInit/generated/armorplus_generated.groovy similarity index 94% rename from examples/postInit/armorplus.groovy rename to examples/postInit/generated/armorplus_generated.groovy index dfda95f60..fba484855 100644 --- a/examples/postInit/armorplus.groovy +++ b/examples/postInit/generated/armorplus_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: armorplus -log.info 'mod \'armorplus\' detected, running script' +log 'mod \'armorplus\' detected, running script' // Champion Bench: // A normal crafting recipe, but with a 9x9 grid and in the Champion Bench. @@ -41,8 +41,8 @@ mods.armorplus.high_tech_bench.removeByOutput(item('armorplus:emerald_helmet')) mods.armorplus.high_tech_bench.shapedBuilder() .output(item('minecraft:diamond') * 32) .matrix([[item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')]]) + [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], + [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')]]) .register() @@ -114,5 +114,3 @@ mods.armorplus.work_bench.shapelessBuilder() .output(item('minecraft:clay') * 8) .input(item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone')) .register() - - diff --git a/examples/postInit/astralsorcery.groovy b/examples/postInit/generated/astralsorcery_generated.groovy similarity index 99% rename from examples/postInit/astralsorcery.groovy rename to examples/postInit/generated/astralsorcery_generated.groovy index a420202c4..0b57f31a2 100644 --- a/examples/postInit/astralsorcery.groovy +++ b/examples/postInit/generated/astralsorcery_generated.groovy @@ -2,10 +2,10 @@ // Auto generated groovyscript example file // MODS_LOADED: astralsorcery -import hellfirepvp.astralsorcery.common.constellation.MoonPhase import net.minecraft.util.math.MathHelper +import hellfirepvp.astralsorcery.common.constellation.MoonPhase -log.info 'mod \'astralsorcery\' detected, running script' +log 'mod \'astralsorcery\' detected, running script' // Chalice Interaction: // When two chalices containing different fluids are placed nearby, fluid may be consumed to produce an output itemstack. @@ -26,11 +26,19 @@ mods.astralsorcery.chalice_interaction.recipeBuilder() // Create a custom Constellation. mods.astralsorcery.constellation.remove(constellation('bootes')) -mods.astralsorcery.constellation.removeConstellationMapEffect(constellation('discidia')) mods.astralsorcery.constellation.removeSignatureItems(constellation('discidia')) +mods.astralsorcery.constellation.removeConstellationMapEffect(constellation('discidia')) // mods.astralsorcery.constellation.removeAll() -// mods.astralsorcery.constellation.removeAllConstellationMapEffect() // mods.astralsorcery.constellation.removeAllSignatureItems() +// mods.astralsorcery.constellation.removeAllConstellationMapEffect() + +mods.astralsorcery.constellation.signatureItems() + .constellation(constellation('square')) + .addItem(ore('gemDiamond')) + .addItem(item('minecraft:water_bucket')) + .addItem(item('minecraft:rabbit_foot')) + .addItem(item('minecraft:fish')) + .register() mods.astralsorcery.constellation.constellationBuilder() .major() @@ -57,14 +65,6 @@ mods.astralsorcery.constellation.constellationMapEffectBuilder() .potionEffect(potion('minecraft:luck'), 1, 2) .register() -mods.astralsorcery.constellation.signatureItems() - .constellation(constellation('square')) - .addItem(ore('gemDiamond')) - .addItem(item('minecraft:water_bucket')) - .addItem(item('minecraft:rabbit_foot')) - .addItem(item('minecraft:fish')) - .register() - // Fountain: // Adds virtual aquifers that can be accessed via the Evershifting Fountain's Necromantic Prime. @@ -129,6 +129,8 @@ mods.astralsorcery.infusion_altar.recipeBuilder() // Converts an input Block or IBlockState into an output IBlockState after being sent a given amount of starlight, with the // ability to require a specific constellation of starlight. +mods.astralsorcery.light_transmutation.setStarmetalReplacementState(blockstate('minecraft:clay')) + mods.astralsorcery.light_transmutation.removeByInput(block('minecraft:netherrack')) mods.astralsorcery.light_transmutation.removeByInput(blockstate('minecraft:sandstone')) mods.astralsorcery.light_transmutation.removeByOutput(block('minecraft:lapis_block')) @@ -151,15 +153,13 @@ mods.astralsorcery.light_transmutation.recipeBuilder() .register() -mods.astralsorcery.light_transmutation.setStarmetalReplacementState(blockstate('minecraft:clay')) - // Lightwell: // Converts an input item into fluid, with a chance at breaking every time fluid is produced. The amount of fluid produced // per interval can be increased via starlight. -mods.astralsorcery.lightwell.removeByCatalyst(item('minecraft:ice')) mods.astralsorcery.lightwell.removeByInput(item('minecraft:packed_ice')) mods.astralsorcery.lightwell.removeByOutput(fluid('lava')) +mods.astralsorcery.lightwell.removeByCatalyst(item('minecraft:ice')) // mods.astralsorcery.lightwell.removeAll() mods.astralsorcery.lightwell.recipeBuilder() @@ -194,8 +194,8 @@ mods.astralsorcery.perk_tree_config.setXpFunction({ int i, long prev -> prev + 1 // Research Pages: // Add custom Research Pages to the Astral Sorcery Book. -mods.astralsorcery.research.disconnectNodes('MY_TEST_RESEARCH', 'ALTAR1') mods.astralsorcery.research.removeNode('CPAPER') +mods.astralsorcery.research.disconnectNodes('MY_TEST_RESEARCH', 'ALTAR1') mods.astralsorcery.research.researchBuilder() .name('MY_TEST_RESEARCH') @@ -217,8 +217,8 @@ mods.astralsorcery.research.researchBuilder() .register() -mods.astralsorcery.research.connectNodes('MY_TEST_RESEARCH2', 'ENHANCED_COLLECTOR') mods.astralsorcery.research.moveNode('SOOTYMARBLE', 5, 6) +mods.astralsorcery.research.connectNodes('MY_TEST_RESEARCH2', 'ENHANCED_COLLECTOR') // Starlight Altar: // Allows creation of shaped recipes in the Astral Sorcery Crafting Altar chain. @@ -298,4 +298,3 @@ mods.astralsorcery.treasure_shrine_registry.remove(ore('oreDiamond')) // mods.astralsorcery.treasure_shrine_registry.removeAll() mods.astralsorcery.treasure_shrine_registry.add(ore('blockDiamond'), 10000) - diff --git a/examples/postInit/atum.groovy b/examples/postInit/generated/atum_generated.groovy similarity index 97% rename from examples/postInit/atum.groovy rename to examples/postInit/generated/atum_generated.groovy index 4661d0c53..a244e08e2 100644 --- a/examples/postInit/atum.groovy +++ b/examples/postInit/generated/atum_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: atum -log.info 'mod \'atum\' detected, running script' +log 'mod \'atum\' detected, running script' // Kiln: // Smelts an input item into an output itemstack and giving experience similar to a Furnace, but can process up to 4 stacks @@ -65,5 +65,3 @@ mods.atum.spinning_wheel.recipeBuilder() .output(item('minecraft:clay') * 4) .rotations(5) .register() - - diff --git a/examples/postInit/avaritia.groovy b/examples/postInit/generated/avaritia_generated.groovy similarity index 61% rename from examples/postInit/avaritia.groovy rename to examples/postInit/generated/avaritia_generated.groovy index 78ff97c12..1f3b495fd 100644 --- a/examples/postInit/avaritia.groovy +++ b/examples/postInit/generated/avaritia_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: avaritia -log.info 'mod \'avaritia\' detected, running script' +log 'mod \'avaritia\' detected, running script' // Compressor: // Converts any number of a single item into an output itemstack. @@ -27,12 +27,12 @@ mods.avaritia.extreme_crafting.removeByOutput(item('avaritia:resource', 6)) mods.avaritia.extreme_crafting.shapedBuilder() .matrix([[item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')]]) + [item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')], + [item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')], + [item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')], + [item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')], + [item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')], + [item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')]]) .output(item('minecraft:gold_block')) .register() @@ -53,5 +53,3 @@ mods.avaritia.extreme_crafting.shapelessBuilder() .output(item('minecraft:stone') * 64) .input(item('minecraft:stone'), item('minecraft:stone'),item('minecraft:stone'),item('minecraft:stone'),item('minecraft:stone'),item('minecraft:stone'), item('minecraft:stone'),item('minecraft:stone'),item('minecraft:stone'),item('minecraft:stone'),item('minecraft:stone'), item('minecraft:stone'),item('minecraft:stone'),item('minecraft:stone'),item('minecraft:stone'),item('minecraft:stone'), item('minecraft:stone'),item('minecraft:stone'),item('minecraft:stone'),item('minecraft:stone'),item('minecraft:stone'), item('minecraft:stone'),item('minecraft:stone'),item('minecraft:stone'),item('minecraft:stone'),item('minecraft:stone')) .register() - - diff --git a/examples/postInit/betterwithaddons.groovy b/examples/postInit/generated/betterwithaddons_generated.groovy similarity index 97% rename from examples/postInit/betterwithaddons.groovy rename to examples/postInit/generated/betterwithaddons_generated.groovy index 76f8849b1..1003b770a 100644 --- a/examples/postInit/betterwithaddons.groovy +++ b/examples/postInit/generated/betterwithaddons_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: betterwithaddons -log.info 'mod \'betterwithaddons\' detected, running script' +log 'mod \'betterwithaddons\' detected, running script' // Drying Unit: // Converts an input item into an output itemstack if placed within the appropriate multiblock. The multiblock is Sandstone @@ -66,8 +66,8 @@ mods.betterwithaddons.infuser.shapedBuilder() mods.betterwithaddons.infuser.shapedBuilder() .output(item('minecraft:diamond') * 32) .matrix([[item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')]]) + [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], + [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')]]) .spirits(6) .register() @@ -281,5 +281,3 @@ mods.betterwithaddons.water_net.recipeBuilder() .input(item('minecraft:gold_ingot')) .output(item('minecraft:clay') * 4, item('minecraft:diamond'), item('minecraft:diamond') * 2) .register() - - diff --git a/examples/postInit/betterwithmods.groovy b/examples/postInit/generated/betterwithmods_generated.groovy similarity index 94% rename from examples/postInit/betterwithmods.groovy rename to examples/postInit/generated/betterwithmods_generated.groovy index 1b529fe68..84157b4d9 100644 --- a/examples/postInit/betterwithmods.groovy +++ b/examples/postInit/generated/betterwithmods_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: betterwithmods -log.info 'mod \'betterwithmods\' detected, running script' +log 'mod \'betterwithmods\' detected, running script' // Anvil Crafting: // Similar to a normal crafting table, but 4x4 instead. @@ -14,9 +14,9 @@ mods.betterwithmods.anvil_crafting.removeByOutput(item('betterwithmods:steel_blo mods.betterwithmods.anvil_crafting.shapedBuilder() .output(item('minecraft:diamond') * 32) .matrix([[item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),null], - [item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),null], - [item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),null], - [null,null,null,item('minecraft:gold_ingot').transform({ _ -> item('minecraft:diamond') })]]) + [item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),null], + [item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),null], + [null,null,null,item('minecraft:gold_ingot').transform({ _ -> item('minecraft:diamond') })]]) .register() mods.betterwithmods.anvil_crafting.shapedBuilder() @@ -77,10 +77,10 @@ mods.betterwithmods.crucible.recipeBuilder() // Heat: // Creates new levels or adds new blocks to old heat levels. -// mods.betterwithmods.heat.removeAll() - -mods.betterwithmods.heat.add(4, item('minecraft:redstone_block'), item('minecraft:redstone_torch')) mods.betterwithmods.heat.add(3, 'torch') +mods.betterwithmods.heat.add(4, item('minecraft:redstone_block'), item('minecraft:redstone_torch')) + +// mods.betterwithmods.heat.removeAll() // Filtered Hopper: // Recipes for the Filtered Hopper to process. The filter targeted must allow the input item in to function. @@ -106,8 +106,8 @@ mods.betterwithmods.hopper.recipeBuilder() // Hopper Filters: // Items placed in the middle slot of the Filtered Hopper to restrict what is capable of passing through. -mods.betterwithmods.hopper_filters.removeByFilter(item('minecraft:trapdoor')) mods.betterwithmods.hopper_filters.removeByName('betterwithmods:ladder') +mods.betterwithmods.hopper_filters.removeByFilter(item('minecraft:trapdoor')) // mods.betterwithmods.hopper_filters.removeAll() mods.betterwithmods.hopper_filters.recipeBuilder() @@ -192,5 +192,3 @@ mods.betterwithmods.turntable.recipeBuilder() .output(item('minecraft:gold_ingot')) .rotations(2) .register() - - diff --git a/examples/postInit/bewitchment.groovy b/examples/postInit/generated/bewitchment_generated.groovy similarity index 99% rename from examples/postInit/bewitchment.groovy rename to examples/postInit/generated/bewitchment_generated.groovy index bf5e34422..08e7bcbbc 100644 --- a/examples/postInit/bewitchment.groovy +++ b/examples/postInit/generated/bewitchment_generated.groovy @@ -2,15 +2,15 @@ // Auto generated groovyscript example file // MODS_LOADED: bewitchment -log.info 'mod \'bewitchment\' detected, running script' +log 'mod \'bewitchment\' detected, running script' // Altar Upgrades: // Controls the valid upgrades placed atop the Witches' Altar, a multiblock that gain Magic Power from nearby plants and // logs based on their uniqueness. The upgrades modify the amount gained per second and the maximum Magic Power the Altar // can hold. -mods.bewitchment.altar_upgrade.remove(blockstate('bewitchment:goblet')) mods.bewitchment.altar_upgrade.remove(item('bewitchment:garnet')) +mods.bewitchment.altar_upgrade.remove(blockstate('bewitchment:goblet')) mods.bewitchment.altar_upgrade.removeByType(com.bewitchment.api.registry.AltarUpgrade.Type.WAND) // mods.bewitchment.altar_upgrade.removeAll() @@ -219,5 +219,3 @@ mods.bewitchment.spinning_wheel.recipeBuilder() .input(item('minecraft:string'), item('minecraft:string'), item('minecraft:string'), item('minecraft:string')) .output(item('minecraft:gold_ingot') * 4, item('minecraft:web')) .register() - - diff --git a/examples/postInit/bloodarsenal.groovy b/examples/postInit/generated/bloodarsenal_generated.groovy similarity index 97% rename from examples/postInit/bloodarsenal.groovy rename to examples/postInit/generated/bloodarsenal_generated.groovy index fd974a264..5d8f9042f 100644 --- a/examples/postInit/bloodarsenal.groovy +++ b/examples/postInit/generated/bloodarsenal_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: bloodarsenal -log.info 'mod \'bloodarsenal\' detected, running script' +log 'mod \'bloodarsenal\' detected, running script' // Sanguine Infusion: // Converts an input infusion itemstack and up to 8 input surrounding itemstacks into an output itemstack, consuming Life @@ -10,11 +10,11 @@ log.info 'mod \'bloodarsenal\' detected, running script' // an infusion item, adds or upgrades a modifier to the given stasis tool, with the ability to increase the quantity of // inputs consumed based on level. -// mods.bloodarsenal.sanguine_infusion.removeBlacklist(WayofTime.bloodmagic.iface.ISigil.class) mods.bloodarsenal.sanguine_infusion.removeByInput(item('minecraft:feather')) mods.bloodarsenal.sanguine_infusion.removeByInput(item('bloodmagic:bound_axe')) -// mods.bloodarsenal.sanguine_infusion.removeByModifierKey('beneficial_potion') mods.bloodarsenal.sanguine_infusion.removeByOutput(item('bloodarsenal:stasis_pickaxe')) +// mods.bloodarsenal.sanguine_infusion.removeBlacklist(WayofTime.bloodmagic.iface.ISigil.class) +// mods.bloodarsenal.sanguine_infusion.removeByModifierKey('beneficial_potion') // mods.bloodarsenal.sanguine_infusion.removeAll() // mods.bloodarsenal.sanguine_infusion.removeAllBlacklist() @@ -47,4 +47,3 @@ mods.bloodarsenal.sanguine_infusion.recipeBuilder() // mods.bloodarsenal.sanguine_infusion.addBlacklist(WayofTime.bloodmagic.iface.ISigil.class) - diff --git a/examples/postInit/bloodmagic.groovy b/examples/postInit/generated/bloodmagic_generated.groovy similarity index 99% rename from examples/postInit/bloodmagic.groovy rename to examples/postInit/generated/bloodmagic_generated.groovy index cb86e01f1..25c540fe0 100644 --- a/examples/postInit/bloodmagic.groovy +++ b/examples/postInit/generated/bloodmagic_generated.groovy @@ -2,16 +2,16 @@ // Auto generated groovyscript example file // MODS_LOADED: bloodmagic -log.info 'mod \'bloodmagic\' detected, running script' +log 'mod \'bloodmagic\' detected, running script' // Alchemy Array: // Converts two items into an output itemstack by using Arcane Ashes in-world. Has a configurable texture for the // animation. -mods.bloodmagic.alchemy_array.removeByCatalyst(item('bloodmagic:slate:2')) mods.bloodmagic.alchemy_array.removeByInput(item('bloodmagic:component:13')) -mods.bloodmagic.alchemy_array.removeByInputAndCatalyst(item('bloodmagic:component:7'), item('bloodmagic:slate:1')) mods.bloodmagic.alchemy_array.removeByOutput(item('bloodmagic:sigil_void')) +mods.bloodmagic.alchemy_array.removeByCatalyst(item('bloodmagic:slate:2')) +mods.bloodmagic.alchemy_array.removeByInputAndCatalyst(item('bloodmagic:component:7'), item('bloodmagic:slate:1')) // mods.bloodmagic.alchemy_array.removeAll() mods.bloodmagic.alchemy_array.recipeBuilder() @@ -85,8 +85,8 @@ mods.bloodmagic.blood_altar.recipeBuilder() // components, size, explosion strength, and Life Essence cost. 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.removeByCatalyst(item('minecraft:iron_block')) // mods.bloodmagic.meteor.removeAll() mods.bloodmagic.meteor.recipeBuilder() @@ -110,9 +110,9 @@ mods.bloodmagic.meteor.recipeBuilder() // Sacrificial: // How much Life Essence is gained when using the Sacrificial Dagger on a mob. +mods.bloodmagic.sacrificial.remove('minecraft:villager') mods.bloodmagic.sacrificial.remove(entity('minecraft:villager')) mods.bloodmagic.sacrificial.remove(resource('minecraft:villager')) -mods.bloodmagic.sacrificial.remove('minecraft:villager') // mods.bloodmagic.sacrificial.removeAll() mods.bloodmagic.sacrificial.recipeBuilder() @@ -170,5 +170,3 @@ mods.bloodmagic.tranquility.recipeBuilder() .tranquility('LAVA') .value(500) .register() - - diff --git a/examples/postInit/botania.groovy b/examples/postInit/generated/botania_generated.groovy similarity index 99% rename from examples/postInit/botania.groovy rename to examples/postInit/generated/botania_generated.groovy index 7f9e61f2c..7303c8f6a 100644 --- a/examples/postInit/botania.groovy +++ b/examples/postInit/generated/botania_generated.groovy @@ -4,7 +4,7 @@ import net.minecraft.util.text.TextFormatting -log.info 'mod \'botania\' detected, running script' +log 'mod \'botania\' detected, running script' // Petal Apothecary: // Converts item inputs into an item output consuming water and a seed. @@ -72,9 +72,9 @@ mods.botania.magnet.addToBlacklist(item('minecraft:diamond')) // Mana Infusion: // Toss an item into a mana pool with an optional catalyst blockstate below the pool. -mods.botania.mana_infusion.removeByCatalyst(blockstate('botania:alchemycatalyst')) mods.botania.mana_infusion.removeByInput(item('minecraft:ender_pearl')) mods.botania.mana_infusion.removeByOutput(item('botania:managlass')) +mods.botania.mana_infusion.removeByCatalyst(blockstate('botania:alchemycatalyst')) // mods.botania.mana_infusion.removeAll() mods.botania.mana_infusion.recipeBuilder() @@ -88,9 +88,9 @@ mods.botania.mana_infusion.recipeBuilder() // Orechid: // Converts stone blocks into one of a few ore blocks at the cost of mana. +mods.botania.orechid.removeByOutput('oreCoal') // mods.botania.orechid.removeByOutput(ore('oreQuartz')) // mods.botania.orechid.removeByOutput(ore('oreEmerald')) -mods.botania.orechid.removeByOutput('oreCoal') // mods.botania.orechid.removeAll() mods.botania.orechid.add(ore('blockGold'), 1800) @@ -99,9 +99,9 @@ mods.botania.orechid.add(ore('oreEmerald'), 1350) // Orechid Ignem: // Converts netherrack blocks into one of a few ore blocks at the cost of mana. +mods.botania.orechid_ignem.removeByOutput('oreQuartz') // mods.botania.orechid_ignem.removeByOutput(ore('oreQuartz')) // mods.botania.orechid_ignem.removeByOutput(ore('oreEmerald')) -mods.botania.orechid_ignem.removeByOutput('oreQuartz') // mods.botania.orechid_ignem.removeAll() mods.botania.orechid_ignem.add(ore('blockGold'), 1800) @@ -159,17 +159,17 @@ mods.botania.category.add('first', resource('minecraft:textures/items/clay_ball. mods.botania.page.removeByEntry('botania.entry.runeAltar') // mods.botania.page.removeAll() +// mods.botania.page.createRunePage('groovy.exampleRunePage', mods.botania.runealtar.recipeBuilder().input(ore('gemEmerald'), item('minecraft:apple')).output(item('minecraft:diamond')).mana(500).register()) +mods.botania.page.createTextPage('groovy.exampleTextPage') +mods.botania.page.createImagePage('groovy.exampleImagePage', 'minecraft:textures/items/apple.png') +// mods.botania.page.createPetalPage('groovy.examplePetalPage', mods.botania.apothecary.recipeBuilder().input(ore('blockGold'), ore('ingotIron'), item('minecraft:apple')).output(item('minecraft:golden_apple')).register()) +mods.botania.page.createEntityPage('groovy.exampleEntityPage', 100, 'minecraft:wither_skeleton') +mods.botania.page.createEntityPage('groovy.exampleEntityPage', 5, entity('minecraft:wither_skeleton')) // mods.botania.page.createBrewingPage('groovy.exampleBrewingPage', 'bottomText', 'bottomText', mods.botania.brewrecipe.recipeBuilder().input(item('minecraft:clay'), ore('ingotGold'), ore('gemDiamond')).brew(brew('absorption')).register()) mods.botania.page.createCraftingPage('groovy.exampleCraftingPage', 'minecraft:clay') -// mods.botania.page.createElvenTradePage('groovy.exampleElvenTradePage', mods.botania.elventrade.recipeBuilder().input(ore('ingotGold'), ore('ingotIron')).output(item('botania:manaresource:7')).register()) -mods.botania.page.createEntityPage('groovy.exampleEntityPage', 5, entity('minecraft:wither_skeleton')) -mods.botania.page.createEntityPage('groovy.exampleEntityPage', 100, 'minecraft:wither_skeleton') -mods.botania.page.createImagePage('groovy.exampleImagePage', 'minecraft:textures/items/apple.png') // mods.botania.page.createInfusionPage('groovy.exampleInfusionPage', mods.botania.manainfusion.recipeBuilder().input(ore('ingotGold')).output(item('botania:manaresource', 1)).mana(500).catalyst(blockstate('minecraft:stone')).register()) mods.botania.page.createLoreTextPage('groovy.exampleLoreTextPage') -// mods.botania.page.createPetalPage('groovy.examplePetalPage', mods.botania.apothecary.recipeBuilder().input(ore('blockGold'), ore('ingotIron'), item('minecraft:apple')).output(item('minecraft:golden_apple')).register()) -// mods.botania.page.createRunePage('groovy.exampleRunePage', mods.botania.runealtar.recipeBuilder().input(ore('gemEmerald'), item('minecraft:apple')).output(item('minecraft:diamond')).mana(500).register()) -mods.botania.page.createTextPage('groovy.exampleTextPage') +// mods.botania.page.createElvenTradePage('groovy.exampleElvenTradePage', mods.botania.elventrade.recipeBuilder().input(ore('ingotGold'), ore('ingotIron')).output(item('botania:manaresource:7')).register()) // Lexicon Entry: // Entry creates a new entry in a given category. @@ -185,5 +185,3 @@ mods.botania.entry.entryBuilder() .knowledgeType(newType) .page(mods.botania.lexicon.page.createTextPage('groovy.exampleTextPage')) .register() - - diff --git a/examples/postInit/botania_tweaks.groovy b/examples/postInit/generated/botania_tweaks_generated.groovy similarity index 97% rename from examples/postInit/botania_tweaks.groovy rename to examples/postInit/generated/botania_tweaks_generated.groovy index 173b2868d..f98cf2517 100644 --- a/examples/postInit/botania_tweaks.groovy +++ b/examples/postInit/generated/botania_tweaks_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: botania_tweaks -log.info 'mod \'botania_tweaks\' detected, running script' +log 'mod \'botania_tweaks\' detected, running script' // Agglomeration Plate: // Converts any number of input itemstacks into an item output, consuming mana to do so. Occurs in-world above a @@ -11,10 +11,10 @@ log.info 'mod \'botania_tweaks\' detected, running script' // is finished. Upon finishing the recipe, the center, sides, and corners can each be converted into a replacement // blockstate, if a replacement blockstate was set. -// mods.botania_tweaks.agglomeration_plate.removeByCenter(blockstate('botania:livingrock')) -// mods.botania_tweaks.agglomeration_plate.removeByCorner(blockstate('botania:livingrock')) // mods.botania_tweaks.agglomeration_plate.removeByEdge(blockstate('minecraft:lapis_block')) // mods.botania_tweaks.agglomeration_plate.removeByInput(item('botania:manaresource:2')) +// mods.botania_tweaks.agglomeration_plate.removeByCenter(blockstate('botania:livingrock')) +// mods.botania_tweaks.agglomeration_plate.removeByCorner(blockstate('botania:livingrock')) mods.botania_tweaks.agglomeration_plate.removeByOutput(item('botania:manaresource:4')) // mods.botania_tweaks.agglomeration_plate.removeAll() @@ -58,5 +58,3 @@ mods.botania_tweaks.agglomeration_plate.recipeBuilder() .edgeReplacement(blockstate('minecraft:lapis_block')) .cornerReplacement(blockstate('botania:livingrock:variant=default')) .register() - - diff --git a/examples/postInit/botanicadds.groovy b/examples/postInit/generated/botanicadds_generated.groovy similarity index 93% rename from examples/postInit/botanicadds.groovy rename to examples/postInit/generated/botanicadds_generated.groovy index 63d504dde..09ba78a6f 100644 --- a/examples/postInit/botanicadds.groovy +++ b/examples/postInit/generated/botanicadds_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: botanicadds -log.info 'mod \'botanicadds\' detected, running script' +log 'mod \'botanicadds\' detected, running script' // Gaia Plate: // Converts an number of input items into an output itemstack, consuming a given amount of mana when dropped in-world atop @@ -23,5 +23,3 @@ mods.botanicadds.gaia_plate.recipeBuilder() .output(item('minecraft:gold_ingot')) .mana(100) .register() - - diff --git a/examples/postInit/calculator.groovy b/examples/postInit/generated/calculator_generated.groovy similarity index 99% rename from examples/postInit/calculator.groovy rename to examples/postInit/generated/calculator_generated.groovy index e2dd81d1f..cbbb8bfab 100644 --- a/examples/postInit/calculator.groovy +++ b/examples/postInit/generated/calculator_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: calculator -log.info 'mod \'calculator\' detected, running script' +log 'mod \'calculator\' detected, running script' // Algorithm Separator: // Converts an input itemstack into two output itemstacks. @@ -260,5 +260,3 @@ mods.calculator.stone_separator.recipeBuilder() .input(item('minecraft:clay')) .output(item('minecraft:diamond'), item('minecraft:diamond')) .register() - - diff --git a/examples/postInit/chisel.groovy b/examples/postInit/generated/chisel_generated.groovy similarity index 93% rename from examples/postInit/chisel.groovy rename to examples/postInit/generated/chisel_generated.groovy index 45de7143c..64c826779 100644 --- a/examples/postInit/chisel.groovy +++ b/examples/postInit/generated/chisel_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: chisel -log.info 'mod \'chisel\' detected, running script' +log 'mod \'chisel\' detected, running script' // Carving: // Sets a group of items any item can be converted between freely, in world and in a GUI. @@ -13,9 +13,7 @@ mods.chisel.carving.removeVariation('antiblock', item('chisel:antiblock:3')) mods.chisel.carving.removeVariation('antiblock', item('chisel:antiblock:15')) mods.chisel.carving.addGroup('demo') +mods.chisel.carving.setSound('demo', sound('minecraft:block.glass.break')) mods.chisel.carving.addVariation('demo', item('chisel:antiblock:3')) mods.chisel.carving.addVariation('demo', item('minecraft:sea_lantern')) mods.chisel.carving.addVariation('demo', item('minecraft:diamond_block')) - -mods.chisel.carving.setSound('demo', sound('minecraft:block.glass.break')) - diff --git a/examples/postInit/compactmachines3.groovy b/examples/postInit/generated/compactmachines3_generated.groovy similarity index 98% rename from examples/postInit/compactmachines3.groovy rename to examples/postInit/generated/compactmachines3_generated.groovy index 3f9797e14..73ad34ab9 100644 --- a/examples/postInit/compactmachines3.groovy +++ b/examples/postInit/generated/compactmachines3_generated.groovy @@ -2,14 +2,14 @@ // Auto generated groovyscript example file // MODS_LOADED: compactmachines3 -log.info 'mod \'compactmachines3\' detected, running script' +log 'mod \'compactmachines3\' detected, running script' // Miniaturization: // Consumes a 3d structure in-world based on keys when an item is thrown into the field. -mods.compactmachines3.miniaturization.removeByCatalyst(item('minecraft:redstone')) mods.compactmachines3.miniaturization.removeByInput(item('minecraft:ender_pearl')) mods.compactmachines3.miniaturization.removeByOutput(item('compactmachines3:machine:3')) +mods.compactmachines3.miniaturization.removeByCatalyst(item('minecraft:redstone')) // mods.compactmachines3.miniaturization.removeAll() mods.compactmachines3.miniaturization.recipeBuilder() @@ -128,5 +128,3 @@ mods.compactmachines3.miniaturization.recipeBuilder() ' ccc ', ' a ') .register() - - diff --git a/examples/postInit/cyclicmagic.groovy b/examples/postInit/generated/cyclicmagic_generated.groovy similarity index 98% rename from examples/postInit/cyclicmagic.groovy rename to examples/postInit/generated/cyclicmagic_generated.groovy index d721b40cd..81380d1a5 100644 --- a/examples/postInit/cyclicmagic.groovy +++ b/examples/postInit/generated/cyclicmagic_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: cyclicmagic -log.info 'mod \'cyclicmagic\' detected, running script' +log 'mod \'cyclicmagic\' detected, running script' // DeHydrator: // Converts an input itemstack into an output itemstack. @@ -98,5 +98,3 @@ mods.cyclicmagic.solidifier.recipeBuilder() .fluidInput(fluid('lava') * 500) .output(item('minecraft:clay') * 2) .register() - - diff --git a/examples/postInit/draconicevolution.groovy b/examples/postInit/generated/draconicevolution_generated.groovy similarity index 95% rename from examples/postInit/draconicevolution.groovy rename to examples/postInit/generated/draconicevolution_generated.groovy index 36c0e832a..fbb448b79 100644 --- a/examples/postInit/draconicevolution.groovy +++ b/examples/postInit/generated/draconicevolution_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: draconicevolution -log.info 'mod \'draconicevolution\' detected, running script' +log 'mod \'draconicevolution\' detected, running script' // Energy Core: // A multiblock with 8 tiers for storing large amounts of energy. @@ -33,5 +33,3 @@ mods.draconicevolution.fusion.recipeBuilder() .energy(100000) .tierChaotic() .register() - - diff --git a/examples/postInit/enderio.groovy b/examples/postInit/generated/enderio_generated.groovy similarity index 99% rename from examples/postInit/enderio.groovy rename to examples/postInit/generated/enderio_generated.groovy index e338ee8d3..166e52e17 100644 --- a/examples/postInit/enderio.groovy +++ b/examples/postInit/generated/enderio_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: enderio -log.info 'mod \'enderio\' detected, running script' +log 'mod \'enderio\' detected, running script' // Alloy Smelter: // Convert up to 3 itemstack inputs into an itemstack output, using energy and giving XP. Can be restricted to require a @@ -173,8 +173,8 @@ mods.enderio.soul_binder.recipeBuilder() // Converts an input itemstack into an output fluidstack with an optional output itemstack in drain mode, or converts an // input itemstack and fluidstack into an output itemstack in fill mode. -mods.enderio.tank.removeDrain(item('minecraft:experience_bottle'), fluid('xpjuice')) mods.enderio.tank.removeFill(item('minecraft:glass_bottle'), fluid('xpjuice')) +mods.enderio.tank.removeDrain(item('minecraft:experience_bottle'), fluid('xpjuice')) // mods.enderio.tank.removeAll() mods.enderio.tank.recipeBuilder() @@ -245,5 +245,3 @@ mods.enderio.vat.recipeBuilder() .energy(1000) .tierAny() .register() - - diff --git a/examples/postInit/erebus.groovy b/examples/postInit/generated/erebus_generated.groovy similarity index 98% rename from examples/postInit/erebus.groovy rename to examples/postInit/generated/erebus_generated.groovy index ce766c6e0..9f2315486 100644 --- a/examples/postInit/erebus.groovy +++ b/examples/postInit/generated/erebus_generated.groovy @@ -2,24 +2,24 @@ // Auto generated groovyscript example file // MODS_LOADED: erebus -log.info 'mod \'erebus\' detected, running script' +log 'mod \'erebus\' detected, running script' // Organic Composter: // Converts valid items into compost. The Blacklist blocks all ItemStacks on it from being used, the Material list allows // any Blocks using the valid Materials to be converted, and the Registry contains any valid ItemStacks. The conversion // takes 10 seconds, and is fueled by erebus wall plants. -// mods.erebus.composter.removeFromBlacklist(item('erebus:wall_plants', 1)) mods.erebus.composter.removeFromMaterial(blockmaterial('sponge')) mods.erebus.composter.removeFromRegistry(item('minecraft:stick')) -// mods.erebus.composter.removeAllFromBlacklist() +// mods.erebus.composter.removeFromBlacklist(item('erebus:wall_plants', 1)) // mods.erebus.composter.removeAllFromMaterial() // mods.erebus.composter.removeAllFromRegistry() +// mods.erebus.composter.removeAllFromBlacklist() -mods.erebus.composter.addBlacklist(item('erebus:wall_plants', 7)) -mods.erebus.composter.addBlacklist(item('erebus:wall_plants_cultivated', 7)) mods.erebus.composter.addMaterial(blockmaterial('tnt')) mods.erebus.composter.addRegistry(item('minecraft:gold_ingot')) +mods.erebus.composter.addBlacklist(item('erebus:wall_plants', 7)) +mods.erebus.composter.addBlacklist(item('erebus:wall_plants_cultivated', 7)) // Offering Altar: // Converts up to 3 input itemstacks into an output itemstack. @@ -42,10 +42,10 @@ mods.erebus.offering_altar.recipeBuilder() // Smoothie-matic: // Converts a container item, up to 4 input items, and up to 4 input fluidstacks into an output itemstack. -mods.erebus.smoothie.removeByContainer(item('minecraft:bucket')) mods.erebus.smoothie.removeByInput(fluid('honey')) mods.erebus.smoothie.removeByInput(item('erebus:materials', 18)) mods.erebus.smoothie.removeByOutput(item('erebus:materials', 21)) +mods.erebus.smoothie.removeByContainer(item('minecraft:bucket')) // mods.erebus.smoothie.removeAll() mods.erebus.smoothie.recipeBuilder() @@ -71,5 +71,3 @@ mods.erebus.smoothie.recipeBuilder() .fluidInput(fluid('lava') * 500, fluid('formic_acid') * 500, fluid('honey') * 500, fluid('milk') * 500) .output(item('minecraft:clay') * 5) .register() - - diff --git a/examples/postInit/essentialcraft.groovy b/examples/postInit/generated/essentialcraft_generated.groovy similarity index 98% rename from examples/postInit/essentialcraft.groovy rename to examples/postInit/generated/essentialcraft_generated.groovy index 0c47a4e35..27797d5b9 100644 --- a/examples/postInit/essentialcraft.groovy +++ b/examples/postInit/generated/essentialcraft_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: essentialcraft -log.info 'mod \'essentialcraft\' detected, running script' +log 'mod \'essentialcraft\' detected, running script' // Demon Trade: // Adds an item that can be sold to Demons to obtain Ackronite. Note that each demon that spawns has a random item that it @@ -32,8 +32,8 @@ mods.essentialcraft.magician_table.recipeBuilder() // A machine used to quadruple ores using MRU and lava. Also adds the same recipes for Magmatic Furnace, which is used to // double ores using MRU. -mods.essentialcraft.magmatic_smeltery.removeByInput(ore('oreIron')) mods.essentialcraft.magmatic_smeltery.removeByInput('oreDiamond') +mods.essentialcraft.magmatic_smeltery.removeByInput(ore('oreIron')) // mods.essentialcraft.magmatic_smeltery.removeAll() mods.essentialcraft.magmatic_smeltery.recipeBuilder() @@ -87,5 +87,3 @@ mods.essentialcraft.wind_rune.recipeBuilder() .output(item('minecraft:diamond_block')) .espe(500) .register() - - diff --git a/examples/postInit/evilcraft.groovy b/examples/postInit/generated/evilcraft_generated.groovy similarity index 97% rename from examples/postInit/evilcraft.groovy rename to examples/postInit/generated/evilcraft_generated.groovy index 944fa1af0..18de3ce56 100644 --- a/examples/postInit/evilcraft.groovy +++ b/examples/postInit/generated/evilcraft_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: evilcraft -log.info 'mod \'evilcraft\' detected, running script' +log 'mod \'evilcraft\' detected, running script' // Blood Infuser: // Consumes an item, some fluid, and requires a given tier of Promise of Tenacity to produce the output and some experience @@ -67,5 +67,3 @@ mods.evilcraft.environmental_accumulator.recipeBuilder() .inputWeather(weather('lightning')) .outputWeather(weather('lightning')) .register() - - diff --git a/examples/postInit/extendedcrafting.groovy b/examples/postInit/generated/extendedcrafting_generated.groovy similarity index 76% rename from examples/postInit/extendedcrafting.groovy rename to examples/postInit/generated/extendedcrafting_generated.groovy index 95ab7fb07..025399304 100644 --- a/examples/postInit/extendedcrafting.groovy +++ b/examples/postInit/generated/extendedcrafting_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: extendedcrafting -log.info 'mod \'extendedcrafting\' detected, running script' +log 'mod \'extendedcrafting\' detected, running script' // Combination Crafting: // Converts one main item and any number of additional items into an output itemstack, with a configurable rf cost and @@ -32,9 +32,9 @@ mods.extendedcrafting.combination_crafting.recipeBuilder() // Converts any number of a single item into an output itemstack, with a configurable rf cost, consumption per tick amount, // catalyst, and if the catalyst is consumed. -mods.extendedcrafting.compression_crafting.removeByCatalyst(item('extendedcrafting:material:11')) mods.extendedcrafting.compression_crafting.removeByInput(item('minecraft:gold_ingot')) mods.extendedcrafting.compression_crafting.removeByOutput(item('extendedcrafting:singularity:6')) +mods.extendedcrafting.compression_crafting.removeByCatalyst(item('extendedcrafting:material:11')) // mods.extendedcrafting.compression_crafting.removeAll() mods.extendedcrafting.compression_crafting.recipeBuilder() @@ -73,8 +73,8 @@ mods.extendedcrafting.ender_crafting.shapedBuilder() mods.extendedcrafting.ender_crafting.shapedBuilder() .output(item('minecraft:diamond') * 32) .matrix([[item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')]]) + [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], + [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')]]) .time(1) .register() @@ -130,20 +130,20 @@ mods.extendedcrafting.table_crafting.shapedBuilder() mods.extendedcrafting.table_crafting.shapedBuilder() .matrix([[item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')]]) + [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], + [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], + [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], + [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], + [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], + [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')]]) .output(item('minecraft:gold_ingot') * 64) .tier(4) .register() mods.extendedcrafting.table_crafting.shapedBuilder() .matrix([[item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')]]) + [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], + [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')]]) .output(item('minecraft:gold_ingot') * 64) .register() @@ -151,5 +151,3 @@ mods.extendedcrafting.table_crafting.shapelessBuilder() .output(item('minecraft:stone') * 64) .input(item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone'), item('minecraft:stone')) .register() - - diff --git a/examples/postInit/extrabotany.groovy b/examples/postInit/generated/extrabotany_generated.groovy similarity index 92% rename from examples/postInit/extrabotany.groovy rename to examples/postInit/generated/extrabotany_generated.groovy index 0e764f377..4d2f574ae 100644 --- a/examples/postInit/extrabotany.groovy +++ b/examples/postInit/generated/extrabotany_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: extrabotany -log.info 'mod \'extrabotany\' detected, running script' +log 'mod \'extrabotany\' detected, running script' // Livingrock Pedestal: // Converts an input item into an output itemstack when placed inside a Livingrock Pedestal and interacted with by an Extra @@ -21,5 +21,3 @@ mods.extrabotany.pedestal.recipeBuilder() .input(item('minecraft:gold_ingot')) .output(item('minecraft:diamond') * 2) .register() - - diff --git a/examples/postInit/extrautils2.groovy b/examples/postInit/generated/extrautils2_generated.groovy similarity index 98% rename from examples/postInit/extrautils2.groovy rename to examples/postInit/generated/extrautils2_generated.groovy index a8d84edcb..422c84271 100644 --- a/examples/postInit/extrautils2.groovy +++ b/examples/postInit/generated/extrautils2_generated.groovy @@ -2,10 +2,10 @@ // Auto generated groovyscript example file // MODS_LOADED: extrautils2 -import com.rwtema.extrautils2.power.IWorldPowerMultiplier import com.rwtema.extrautils2.tile.TilePassiveGenerator +import com.rwtema.extrautils2.power.IWorldPowerMultiplier -log.info 'mod \'extrautils2\' detected, running script' +log 'mod \'extrautils2\' detected, running script' // Crusher: // Converts an input itemstack into an output itemstack with a chance of an additional itemstack output, consuming energy. @@ -61,8 +61,8 @@ mods.extrautils2.furnace.recipeBuilder() // Generators: // Converts up to two input itemstacks and an input fluidstack into energy over time. -mods.extrautils2.generator.remove('extrautils2:generator_lava', fluid('lava')) mods.extrautils2.generator.remove('extrautils2:generator_culinary', item('minecraft:apple')) +mods.extrautils2.generator.remove('extrautils2:generator_lava', fluid('lava')) mods.extrautils2.generator.removeByGenerator('extrautils2:generator_death') // mods.extrautils2.generator.removeAll() @@ -100,11 +100,11 @@ mods.extrautils2.generator.recipeBuilder() // Grid Power Generators: // Passively produces Grid Power into the Owner's GP network. +mods.extrautils2.grid_power_passive_generator.setScaling(resource('generators:creative'), 500.0F, 0.5F, 1000.0F, 0.25F, 1500.0F, 0.05F) mods.extrautils2.grid_power_passive_generator.setBasePower(resource('generators:creative'), 5f) mods.extrautils2.grid_power_passive_generator.setBasePower(resource('generators:player_wind_up'), 100f) mods.extrautils2.grid_power_passive_generator.setPowerLevel(resource('generators:solar'), { TilePassiveGenerator generator, World world -> 100f }) mods.extrautils2.grid_power_passive_generator.setPowerMultiplier(resource('generators:wind'), IWorldPowerMultiplier.CONSTANT) -mods.extrautils2.grid_power_passive_generator.setScaling(resource('generators:creative'), 500.0F, 0.5F, 1000.0F, 0.25F, 1500.0F, 0.05F) // Resonator: // Converts and input itemstack into an output itemstack, consuming Grid Power from the Owner's GP network. Can also @@ -133,5 +133,3 @@ mods.extrautils2.resonator.recipeBuilder() .ownerTag() .energy(5000) .register() - - diff --git a/examples/postInit/factorytech.groovy b/examples/postInit/generated/factorytech_generated.groovy similarity index 99% rename from examples/postInit/factorytech.groovy rename to examples/postInit/generated/factorytech_generated.groovy index 9e26dae09..0b6466343 100644 --- a/examples/postInit/factorytech.groovy +++ b/examples/postInit/generated/factorytech_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: factorytech -log.info 'mod \'factorytech\' detected, running script' +log 'mod \'factorytech\' detected, running script' // Fluid Agitator: // Converts either one or two input fluidstacks and up to one input itemstack into an output itemstack, output fluidstack, @@ -384,5 +384,3 @@ mods.factorytech.temperer.recipeBuilder() .output(item('minecraft:clay')) .time(30) .register() - - diff --git a/examples/postInit/futuremc.groovy b/examples/postInit/generated/futuremc_generated.groovy similarity index 98% rename from examples/postInit/futuremc.groovy rename to examples/postInit/generated/futuremc_generated.groovy index ca93e4f02..26b901d80 100644 --- a/examples/postInit/futuremc.groovy +++ b/examples/postInit/generated/futuremc_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: futuremc -log.info 'mod \'futuremc\' detected, running script' +log 'mod \'futuremc\' detected, running script' // Blast Furnace: // Converts an input itemstack into an output itemstack at the cost of burnable fuel. @@ -112,5 +112,3 @@ mods.futuremc.stonecutter.recipeBuilder() .input(item('minecraft:gold_ingot')) .output(item('minecraft:clay')) .register() - - diff --git a/examples/postInit/horsepower.groovy b/examples/postInit/generated/horsepower_generated.groovy similarity index 98% rename from examples/postInit/horsepower.groovy rename to examples/postInit/generated/horsepower_generated.groovy index 7713bf2ae..7a828547a 100644 --- a/examples/postInit/horsepower.groovy +++ b/examples/postInit/generated/horsepower_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: horsepower -log.info 'mod \'horsepower\' detected, running script' +log 'mod \'horsepower\' detected, running script' // Horse Chopping Block: // Converts an itemstack input into an itemstack output, with the chance of an additional output after a configurable @@ -129,5 +129,3 @@ mods.horsepower.press.recipeBuilder() .input(item('minecraft:diamond')) .fluidOutput(fluid('lava') * 500) .register() - - diff --git a/examples/postInit/iceandfire.groovy b/examples/postInit/generated/iceandfire_generated.groovy similarity index 97% rename from examples/postInit/iceandfire.groovy rename to examples/postInit/generated/iceandfire_generated.groovy index 1870b1761..881aa9ebc 100644 --- a/examples/postInit/iceandfire.groovy +++ b/examples/postInit/generated/iceandfire_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: iceandfire -log.info 'mod \'iceandfire\' detected, running script' +log 'mod \'iceandfire\' detected, running script' // Fire Dragonforge: // Converts two input itemstacks into an output itemstack in a multiblock Dragonforge Fire Multiblock while there is a @@ -62,5 +62,3 @@ mods.iceandfire.ice_forge.recipeBuilder() // .input(item('minecraft:diamond'), item('minecraft:gold_ingot')) // .output(item('minecraft:clay')) // .register() - - diff --git a/examples/postInit/immersiveengineering.groovy b/examples/postInit/generated/immersiveengineering_generated.groovy similarity index 99% rename from examples/postInit/immersiveengineering.groovy rename to examples/postInit/generated/immersiveengineering_generated.groovy index 11e67ff60..3bc102c88 100644 --- a/examples/postInit/immersiveengineering.groovy +++ b/examples/postInit/generated/immersiveengineering_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: immersiveengineering -log.info 'mod \'immersiveengineering\' detected, running script' +log 'mod \'immersiveengineering\' detected, running script' // Alloy Kiln: // Converts two input itemstacks into an output itemstack, consuming fuel (based on burn time). @@ -67,9 +67,9 @@ mods.immersiveengineering.blast_furnace_fuel.recipeBuilder() // Converts any number of input itemstacks into an output itemstack, using a blueprint with the category nbt tag as a // catalyst. -mods.immersiveengineering.blueprint_crafting.removeByCategory('electrode') mods.immersiveengineering.blueprint_crafting.removeByInput('components', item('immersiveengineering:metal:38'), item('immersiveengineering:metal:38'), item('immersiveengineering:metal')) mods.immersiveengineering.blueprint_crafting.removeByOutput('components', item('immersiveengineering:material:8')) +mods.immersiveengineering.blueprint_crafting.removeByCategory('electrode') // mods.immersiveengineering.blueprint_crafting.removeAll() mods.immersiveengineering.blueprint_crafting.recipeBuilder() @@ -136,8 +136,8 @@ mods.immersiveengineering.crusher.recipeBuilder() // Adds a Mineral Mix with the given name, weight, fail chance, ores, and allowed dimensions. A Mineral Mix can be mined by // an Excavator Multiblock and scanned via a Core Sample Drill. -mods.immersiveengineering.excavator.removeByMineral('silt') mods.immersiveengineering.excavator.removeByOres(ore('oreAluminum')) +mods.immersiveengineering.excavator.removeByMineral('silt') // mods.immersiveengineering.excavator.removeAll() mods.immersiveengineering.excavator.recipeBuilder() @@ -177,9 +177,9 @@ mods.immersiveengineering.fermenter.recipeBuilder() // Metal Press: // Converts an input itemstack into an output itemstack, with a mold catalyst, consuming power. +mods.immersiveengineering.metal_press.removeByMold(item('immersiveengineering:mold:4')) mods.immersiveengineering.metal_press.removeByInput(item('minecraft:iron_ingot')) mods.immersiveengineering.metal_press.removeByInput(item('immersiveengineering:mold'), item('immersiveengineering:metal:8')) -mods.immersiveengineering.metal_press.removeByMold(item('immersiveengineering:mold:4')) mods.immersiveengineering.metal_press.removeByOutput(item('immersiveengineering:material:2')) mods.immersiveengineering.metal_press.removeByOutput(item('immersiveengineering:mold'), item('immersiveengineering:metal:31')) // mods.immersiveengineering.metal_press.removeAll() @@ -195,8 +195,8 @@ mods.immersiveengineering.metal_press.recipeBuilder() // Mixer: // Converts any number of input itemstacks and a fluidstack into an output fluidstack, consuming power. -mods.immersiveengineering.mixer.removeByInput(fluid('water'), item('minecraft:speckled_melon')) mods.immersiveengineering.mixer.removeByInput(item('minecraft:sand'), item('minecraft:sand'), item('minecraft:clay_ball'), item('minecraft:gravel')) +mods.immersiveengineering.mixer.removeByInput(fluid('water'), item('minecraft:speckled_melon')) mods.immersiveengineering.mixer.removeByOutput(fluid('potion').withNbt([Potion:'minecraft:night_vision'])) // mods.immersiveengineering.mixer.removeAll() @@ -226,8 +226,8 @@ mods.immersiveengineering.refinery.recipeBuilder() // Converts an input itemstack into either an output itemstack, fluidstack, or both, using energy. mods.immersiveengineering.squeezer.removeByInput(item('minecraft:wheat_seeds')) -mods.immersiveengineering.squeezer.removeByOutput(fluid('plantoil')) mods.immersiveengineering.squeezer.removeByOutput(item('immersiveengineering:material:18')) +mods.immersiveengineering.squeezer.removeByOutput(fluid('plantoil')) // mods.immersiveengineering.squeezer.removeAll() mods.immersiveengineering.squeezer.recipeBuilder() @@ -248,5 +248,3 @@ mods.immersiveengineering.squeezer.recipeBuilder() .fluidOutput(fluid('water')) .energy(100) .register() - - diff --git a/examples/postInit/immersivepetroleum.groovy b/examples/postInit/generated/immersivepetroleum_generated.groovy similarity index 96% rename from examples/postInit/immersivepetroleum.groovy rename to examples/postInit/generated/immersivepetroleum_generated.groovy index f1202856b..f3339f65c 100644 --- a/examples/postInit/immersivepetroleum.groovy +++ b/examples/postInit/generated/immersivepetroleum_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: immersivepetroleum -log.info 'mod \'immersivepetroleum\' detected, running script' +log 'mod \'immersivepetroleum\' detected, running script' // Distillation Tower: // Converts an input fluidstack into any number of output fluidstacks and any number of output itemstacks, with each @@ -62,5 +62,3 @@ mods.immersivepetroleum.reservoir.recipeBuilder() .biome('cold') .biomeBlacklist() .register() - - diff --git a/examples/postInit/immersivetech.groovy b/examples/postInit/generated/immersivetech_generated.groovy similarity index 99% rename from examples/postInit/immersivetech.groovy rename to examples/postInit/generated/immersivetech_generated.groovy index 02c3b2899..1b8d92a37 100644 --- a/examples/postInit/immersivetech.groovy +++ b/examples/postInit/generated/immersivetech_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: immersivetech -log.info 'mod \'immersivetech\' detected, running script' +log 'mod \'immersivetech\' detected, running script' // Boiler: // Converts an input fluidstack into an output fluidstack after a given amount of time in a multiblock structure when the @@ -259,5 +259,3 @@ mods.immersivetech.steam_turbine.recipeBuilder() .fluidOutput(fluid('lava') * 50) .time(50) .register() - - diff --git a/examples/postInit/generated/in_world_crafting_generated.groovy b/examples/postInit/generated/in_world_crafting_generated.groovy new file mode 100644 index 000000000..6c1303cd2 --- /dev/null +++ b/examples/postInit/generated/in_world_crafting_generated.groovy @@ -0,0 +1,165 @@ + +// Auto generated groovyscript example file + +log 'running In-World Crafting example' + +// Burning Conversion: +// Converts an input item into an output itemstack after some number of ticks while burning. This also makes the input item +// effectively fireproof. + +// in_world_crafting.burning.removeAll() + +in_world_crafting.burning.recipeBuilder() + .input(item('minecraft:netherrack')) + .output(item('minecraft:nether_star')) + .register() + +in_world_crafting.burning.recipeBuilder() + .input(item('minecraft:gold_ingot')) + .output(item('minecraft:diamond')) + .ticks(100) + .register() + +in_world_crafting.burning.recipeBuilder() + .input(item('minecraft:diamond')) + .output(item('minecraft:clay')) + .ticks(10) + .startCondition({ stack -> stack.getItem().getCount() > 5 }) + .register() + + +// Explosion Conversion: +// Converts an input itemstack into an output itemstack, with an optional fail rate. + +// in_world_crafting.explosion.removeAll() + +in_world_crafting.explosion.recipeBuilder() + .input(item('minecraft:diamond')) + .output(item('minecraft:nether_star')) + .chance(0.4f) + .register() + +in_world_crafting.explosion.recipeBuilder() + .input(item('minecraft:gold_ingot')) + .output(item('minecraft:clay')) + .startCondition({ entityItem, itemStack -> entityItem.posY <= 60 }) + .register() + +in_world_crafting.explosion.recipeBuilder() + .input(item('minecraft:clay')) + .output(item('minecraft:diamond')) + .register() + + +// Fluid and ItemStack To Block Conversion: +// Converts any number of input itemstacks and a fluid source block into a block in-world, with each input having a chance +// to be consumed. Allows an additional closure check to start the recipe and a closure run after the recipe is finished. + +// in_world_crafting.fluid_to_block.removeByInput(fluid('water')) +// in_world_crafting.fluid_to_block.removeByInput(fluid('water'), item('minecraft:clay')) +// in_world_crafting.fluid_to_block.removeAll() + +in_world_crafting.fluid_to_block.recipeBuilder() + .fluidInput(fluid('water')) + .input(item('minecraft:clay_ball')) + .output(block('minecraft:diamond_block')) + .register() + +in_world_crafting.fluid_to_block.recipeBuilder() + .fluidInput(fluid('water')) + .input(item('minecraft:clay'), 0.5f) + .output(block('minecraft:gold_block')) + .register() + +in_world_crafting.fluid_to_block.recipeBuilder() + .fluidInput(fluid('water')) + .input(item('minecraft:diamond'), item('minecraft:iron_ingot')) + .output(block('minecraft:clay')) + .startCondition({ world, pos -> pos.getY() > 50 }) + .register() + + +// Fluid and ItemStack To Fluid Conversion: +// Converts any number of input itemstacks and a fluid source block into a fluid block in-world, with each input having a +// chance to be consumed. Allows an additional closure check to start the recipe and a closure run after the recipe is +// finished. + +// in_world_crafting.fluid_to_fluid.removeByInput(fluid('water')) +// in_world_crafting.fluid_to_fluid.removeByInput(fluid('water'), item('minecraft:clay')) +// in_world_crafting.fluid_to_fluid.removeAll() + +in_world_crafting.fluid_to_fluid.recipeBuilder() + .fluidInput(fluid('water')) + .input(item('minecraft:diamond'), item('minecraft:dirt')) + .fluidOutput(fluid('lava')) + .register() + +in_world_crafting.fluid_to_fluid.recipeBuilder() + .fluidInput(fluid('water')) + .input(item('minecraft:diamond'), item('minecraft:gold_nugget')) + .fluidOutput(fluid('lava')) + .register() + +in_world_crafting.fluid_to_fluid.recipeBuilder() + .fluidInput(fluid('water')) + .input(item('minecraft:diamond'), item('minecraft:diamond_block')) + .fluidOutput(fluid('lava')) + .startCondition({ world, pos -> pos.getY() < 50 }) + .register() + + +// Fluid and ItemStack To ItemStack Conversion: +// Converts any number of input itemstacks and a fluid source block into an itemstack in-world, with each input having a +// chance to be consumed and a chance to consume the fluid block. Allows an additional closure check to start the recipe +// and a closure run after the recipe is finished. + +// in_world_crafting.fluid_to_item.removeByInput(fluid('water')) +// in_world_crafting.fluid_to_item.removeByInput(fluid('water'), item('minecraft:clay')) +// in_world_crafting.fluid_to_item.removeAll() + +in_world_crafting.fluid_to_item.recipeBuilder() + .fluidInput(fluid('water'), 0.22f) + .input(item('minecraft:netherrack')) + .input(item('minecraft:gold_ingot'), 0.1f) + .output(item('minecraft:nether_star')) + .register() + +in_world_crafting.fluid_to_item.recipeBuilder() + .fluidInput(fluid('water')) + .fluidConsumptionChance(0.9f) + .input(item('minecraft:diamond'), item('minecraft:gold_block')) + .output(item('minecraft:diamond') * 10) + .startCondition({ world, pos -> pos.getY() > 50 }) + .register() + +in_world_crafting.fluid_to_item.recipeBuilder() + .fluidInput(fluid('water')) + .input(item('minecraft:diamond'), item('minecraft:iron_block') * 3) + .output(item('minecraft:gold_ingot')) + .afterRecipe({ world, pos -> world.setBlockState(pos, block('minecraft:dirt')) }) + .register() + + +// Piston Pushing Conversion: +// Converts an input item into an output item when a piston pushes the item into a block, with an optional minimum harvest +// level requirement for the block. Amount converted in each entity item per push is configurable. + +// in_world_crafting.piston_push.removeAll() + +in_world_crafting.piston_push.recipeBuilder() + .input(item('minecraft:gold_ingot')) + .output(item('minecraft:diamond')) + .minHarvestLevel(2) + .maxConversionsPerPush(3) + .register() + +in_world_crafting.piston_push.recipeBuilder() + .input(item('minecraft:clay')) + .output(item('minecraft:gold_ingot')) + .register() + +in_world_crafting.piston_push.recipeBuilder() + .input(item('minecraft:diamond')) + .output(item('minecraft:gold_ingot')) + .startCondition({entityItem, itemStack, pushingAgainst -> pushingAgainst.getBlock() == block('minecraft:clay') }) + .register() diff --git a/examples/postInit/industrialforegoing.groovy b/examples/postInit/generated/industrialforegoing_generated.groovy similarity index 98% rename from examples/postInit/industrialforegoing.groovy rename to examples/postInit/generated/industrialforegoing_generated.groovy index e5d4200eb..391056839 100644 --- a/examples/postInit/industrialforegoing.groovy +++ b/examples/postInit/generated/industrialforegoing_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: industrialforegoing -log.info 'mod \'industrialforegoing\' detected, running script' +log 'mod \'industrialforegoing\' detected, running script' // Bioreactor: // Converts an input item into Biofuel, with the amount of Biofuel generated being based on the number of concurrent @@ -39,10 +39,10 @@ mods.industrialforegoing.fluid_dictionary.add(fluid('latex'), fluid('essence'), // Converts power into ores, with a given weight, between a minimum and maximum Y value, in any whitelisted biome or not in // any blacklisted biome, and with a specific color of laser lens impacting the probability. -mods.industrialforegoing.laser_drill.removeByBlacklist(biome('minecraft:sky')) mods.industrialforegoing.laser_drill.removeByLens(5) // mods.industrialforegoing.laser_drill.removeByLens(item('industrialforegoing:laser_lens:5')) mods.industrialforegoing.laser_drill.removeByOutput(item('minecraft:coal_ore')) +mods.industrialforegoing.laser_drill.removeByBlacklist(biome('minecraft:sky')) mods.industrialforegoing.laser_drill.removeByWhitelist(biome('minecraft:hell')) // mods.industrialforegoing.laser_drill.removeAll() @@ -65,9 +65,9 @@ mods.industrialforegoing.ore_fermenter.add(fluid('if.ore_fluid_raw').withNbt(['O // Washing Factory: // Converts an input itemstack and input fluidstack into an output fluidstack. -// mods.industrialforegoing.ore_raw.removeByInput(fluid('meat')) -mods.industrialforegoing.ore_raw.removeByOre(ore('oreRedstone')) // mods.industrialforegoing.ore_raw.removeByOre('oreRedstone') +mods.industrialforegoing.ore_raw.removeByOre(ore('oreRedstone')) +// mods.industrialforegoing.ore_raw.removeByInput(fluid('meat')) // mods.industrialforegoing.ore_raw.removeByOutput(fluid('if.ore_fluid_raw').withNbt(['Ore': 'oreRedstone']),) // mods.industrialforegoing.ore_raw.removeAll() @@ -111,5 +111,3 @@ mods.industrialforegoing.straw.recipeBuilder() .fluidInput(fluid('if.pink_slime')) .effect(new PotionEffect(potion('minecraft:strength'), 1800, 3)) .register() - - diff --git a/examples/postInit/inspirations.groovy b/examples/postInit/generated/inspirations_generated.groovy similarity index 98% rename from examples/postInit/inspirations.groovy rename to examples/postInit/generated/inspirations_generated.groovy index 3d7641d68..66bee4704 100644 --- a/examples/postInit/inspirations.groovy +++ b/examples/postInit/generated/inspirations_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: inspirations -log.info 'mod \'inspirations\' detected, running script' +log 'mod \'inspirations\' detected, running script' // Anvil Smashing: // Converts a Block or IBlockState into an IBlockState when an anvil falls on top of it (from any height). @@ -26,10 +26,10 @@ mods.inspirations.anvil_smashing.recipeBuilder() // Converts up to 1 itemstack and up to 1 fluid into up to 1 itemstack or up to 1 fluid, with a boiling boolean and // variable amount of fluid consumed or produced. -mods.inspirations.cauldron.removeByFluidInput(fluid('mushroom_stew')) -mods.inspirations.cauldron.removeByFluidOutput(fluid('beetroot_soup')) mods.inspirations.cauldron.removeByInput(item('minecraft:ghast_tear')) mods.inspirations.cauldron.removeByOutput(item('minecraft:piston')) +mods.inspirations.cauldron.removeByFluidInput(fluid('mushroom_stew')) +mods.inspirations.cauldron.removeByFluidOutput(fluid('beetroot_soup')) // mods.inspirations.cauldron.removeAll() mods.inspirations.cauldron.recipeBuilder() @@ -42,12 +42,6 @@ mods.inspirations.cauldron.recipeBuilder() .levels(3) .register() -mods.inspirations.cauldron.recipeBuilderBrewing() - .input(item('minecraft:diamond_block')) - .inputPotion(potionType('minecraft:fire_resistance')) - .outputPotion(potionType('minecraft:strength')) - .register() - mods.inspirations.cauldron.recipeBuilderDye() .input(item('minecraft:gold_block')) .output(item('minecraft:diamond_block')) @@ -55,6 +49,11 @@ mods.inspirations.cauldron.recipeBuilderDye() .levels(2) .register() +mods.inspirations.cauldron.recipeBuilderMix() + .output(item('minecraft:clay')) + .fluidInput(fluid('milk'), fluid('lava')) + .register() + mods.inspirations.cauldron.recipeBuilderFill() .input(item('minecraft:gold_ingot')) .output(item('minecraft:clay')) @@ -62,11 +61,6 @@ mods.inspirations.cauldron.recipeBuilderFill() .sound(sound('minecraft:block.anvil.destroy')) .register() -mods.inspirations.cauldron.recipeBuilderMix() - .output(item('minecraft:clay')) - .fluidInput(fluid('milk'), fluid('lava')) - .register() - mods.inspirations.cauldron.recipeBuilderPotion() .input(item('minecraft:gold_block')) .output(item('minecraft:diamond_block')) @@ -74,6 +68,12 @@ mods.inspirations.cauldron.recipeBuilderPotion() .levels(2) .register() +mods.inspirations.cauldron.recipeBuilderBrewing() + .input(item('minecraft:diamond_block')) + .inputPotion(potionType('minecraft:fire_resistance')) + .outputPotion(potionType('minecraft:strength')) + .register() + mods.inspirations.cauldron.recipeBuilderStandard() .input(item('minecraft:diamond')) .output(item('minecraft:clay')) @@ -88,5 +88,3 @@ mods.inspirations.cauldron.recipeBuilderTransform() .fluidOutput(fluid('milk')) .levels(2) .register() - - diff --git a/examples/postInit/integrateddynamics.groovy b/examples/postInit/generated/integrateddynamics_generated.groovy similarity index 97% rename from examples/postInit/integrateddynamics.groovy rename to examples/postInit/generated/integrateddynamics_generated.groovy index 77d5233f3..7ea071bf7 100644 --- a/examples/postInit/integrateddynamics.groovy +++ b/examples/postInit/generated/integrateddynamics_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: integrateddynamics -log.info 'mod \'integrateddynamics\' detected, running script' +log 'mod \'integrateddynamics\' detected, running script' // Drying Basin: // Takes either an item or fluid input and gives either an item or fluid output after a duration. @@ -72,5 +72,3 @@ mods.integrateddynamics.squeezer.recipeBuilder() .input(item('minecraft:diamond')) .fluidOutput(fluid('lava') * 10) .register() - - diff --git a/examples/postInit/jei.groovy b/examples/postInit/generated/jei_generated.groovy similarity index 98% rename from examples/postInit/jei.groovy rename to examples/postInit/generated/jei_generated.groovy index c17ae6c8b..5f718785d 100644 --- a/examples/postInit/jei.groovy +++ b/examples/postInit/generated/jei_generated.groovy @@ -4,7 +4,7 @@ import mezz.jei.api.ingredients.VanillaTypes -log.info 'mod \'jei\' detected, running script' +log 'mod \'jei\' detected, running script' // Category Catalysts: // Modify the items shown on the left of JEI Categories which indicate where the recipe takes place. @@ -18,6 +18,8 @@ mods.jei.catalyst.add('minecraft.smelting', item('minecraft:clay') * 8, item('mi // Modify the Categories visible in JEI, each of which contain recipes and are associated with specific blocks, typically // machines. Can also set the order of Categories. +mods.jei.category.setOrder('minecraft.crafting', 'jei.information', 'minecraft.smelting', 'groovyscript:burning', 'groovyscript:explosion', 'groovyscript:fluid_recipe', 'groovyscript:piston_push', 'minecraft.anvil') + mods.jei.category.hideCategory('minecraft.fuel') // mods.jei.category.hideAll() @@ -29,23 +31,21 @@ mods.jei.category.hideCategory('minecraft.fuel') // .register() -mods.jei.category.setOrder('minecraft.crafting', 'jei.information', 'minecraft.smelting', 'groovyscript:burning', 'groovyscript:explosion', 'groovyscript:fluid_recipe', 'groovyscript:piston_push', 'minecraft.anvil') - // Description Category: // Modify the description of the input items, where the description is a unique JEI tab containing text. // mods.jei.description.remove(item('thaumcraft:triple_meat_treat')) -mods.jei.description.add(item('minecraft:clay'), ['wow', 'this', 'is', 'neat']) mods.jei.description.add(item('minecraft:gold_ingot'), 'groovyscript.recipe.fluid_recipe') +mods.jei.description.add(item('minecraft:clay'), ['wow', 'this', 'is', 'neat']) // Ingredient Sidebar: // Modify what ingredients show up in the search menu sidebar. mods.jei.ingredient.hide(fluid('water')) mods.jei.ingredient.hide(item('minecraft:stone:1'), item('minecraft:stone:3')) -mods.jei.ingredient.hide(VanillaTypes.ITEM, item('minecraft:bed:*')) // mods.jei.ingredient.hide(mekanism.client.jei.MekanismJEI.TYPE_GAS, gas('tritium')) +mods.jei.ingredient.hide(VanillaTypes.ITEM, item('minecraft:bed:*')) // mods.jei.ingredient.hideByType(VanillaTypes.ITEM) // mods.jei.ingredient.hideByType(VanillaTypes.FLUID) // mods.jei.ingredient.hideByType(VanillaTypes.ENCHANT) @@ -55,4 +55,3 @@ mods.jei.ingredient.hide(VanillaTypes.ITEM, item('minecraft:bed:*')) mods.jei.ingredient.add(item('minecraft:stone:1').withNbt([display:[Name:'Special Granite']])) mods.jei.ingredient.add(VanillaTypes.ITEM, item('minecraft:bed').withNbt([display:[Name:'Beds come in 16 different colors!']])) - diff --git a/examples/postInit/magneticraft.groovy b/examples/postInit/generated/magneticraft_generated.groovy similarity index 99% rename from examples/postInit/magneticraft.groovy rename to examples/postInit/generated/magneticraft_generated.groovy index c1eea6898..852e1c44e 100644 --- a/examples/postInit/magneticraft.groovy +++ b/examples/postInit/generated/magneticraft_generated.groovy @@ -4,7 +4,7 @@ import com.cout970.magneticraft.api.registries.machines.hydraulicpress.HydraulicPressMode -log.info 'mod \'magneticraft\' detected, running script' +log 'mod \'magneticraft\' detected, running script' // Crushing Table: // Converts an input itemstack into an output itemstack when placed on top of the Crushing Table and interacted with by a @@ -69,8 +69,8 @@ mods.magneticraft.grinder.recipeBuilder() // Hydraulic Press: // Converts an input itemstack into an output itemstack when set to a given mode in a Hydraulic Press Multiblock. -mods.magneticraft.hydraulic_press.removeByInput(item('minecraft:iron_ingot')) mods.magneticraft.hydraulic_press.removeByMode(HydraulicPressMode.MEDIUM) +mods.magneticraft.hydraulic_press.removeByInput(item('minecraft:iron_ingot')) mods.magneticraft.hydraulic_press.removeByOutput(item('minecraft:cobblestone')) // mods.magneticraft.hydraulic_press.removeAll() @@ -211,5 +211,3 @@ mods.magneticraft.thermopile.recipeBuilder() .conductivity(70) .temperature(700) .register() - - diff --git a/examples/postInit/mekanism.groovy b/examples/postInit/generated/mekanism_generated.groovy similarity index 98% rename from examples/postInit/mekanism.groovy rename to examples/postInit/generated/mekanism_generated.groovy index b015b82d2..fa01c7d99 100644 --- a/examples/postInit/mekanism.groovy +++ b/examples/postInit/generated/mekanism_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: mekanism -log.info 'mod \'mekanism\' detected, running script' +log 'mod \'mekanism\' detected, running script' // Infusion: // Add new infusion types and itemstacks to those types. @@ -12,11 +12,11 @@ mods.mekanism.infusion.removeByType(infusionType('carbon')) // mods.mekanism.infusion.removeByType(infusionType('diamond')) // mods.mekanism.infusion.removeAll() -mods.mekanism.infusion.addType('groovy_example', resource('placeholdername:blocks/mekanism_infusion_texture')) -mods.mekanism.infusion.add(infusionType('diamond'), 100, item('minecraft:clay')) -mods.mekanism.infusion.add(infusionType('carbon'), 100, item('minecraft:gold_ingot')) +mods.mekanism.infusion.addType('groovy_example', resource('groovyscriptdev:blocks/mekanism_infusion_texture')) mods.mekanism.infusion.add('groovy_example', 10, item('minecraft:ice')) mods.mekanism.infusion.add('groovy_example', 20, item('minecraft:packed_ice')) +mods.mekanism.infusion.add(infusionType('diamond'), 100, item('minecraft:clay')) +mods.mekanism.infusion.add(infusionType('carbon'), 100, item('minecraft:gold_ingot')) // Chemical Infuser: // Combines two input gas stacks into a output gas stack. @@ -279,4 +279,3 @@ mods.mekanism.washer.recipeBuilder() // mods.mekanism.washer.add(gas('water'), gas('hydrogen')) - diff --git a/examples/postInit/generated/minecraft_generated.groovy b/examples/postInit/generated/minecraft_generated.groovy new file mode 100644 index 000000000..e2cdc1918 --- /dev/null +++ b/examples/postInit/generated/minecraft_generated.groovy @@ -0,0 +1,223 @@ + +// Auto generated groovyscript example file + +log 'running Vanilla Minecraft example' + +// Custom Commands: +// Create custom commands, either generally or specifically for the client. + +minecraft.command.registerCommand('groovy_test', { server, sender, args -> sender.sendMessage('Hello from GroovyScript')}) + +// Crafting Table: +// A normal crafting recipe that takes place in the Vanilla Crafting Table, converting up to 9 items in a shapeless or +// specific shaped arrangement into an output itemstack. + +crafting.remove('minecraft:mossy_stonebrick') +crafting.remove(resource('minecraft:stonebrick')) +crafting.removeByOutput(item('minecraft:gold_ingot')) +// crafting.removeAll() + +crafting.shapedBuilder() + .output(item('minecraft:nether_star')) + .row('TXT') + .row('X X') + .row('!X!') + .key('T', item('minecraft:tnt')) + .key('X', item('minecraft:clay').reuse()) + .key('!', item('minecraft:tnt').transform({ _ -> item('minecraft:diamond') })) + .register() + +crafting.shapedBuilder() + .output(item('minecraft:clay_ball') * 3) + .shape('S S', + ' G ', + 'SWS') + .key([S: ore('netherStar').reuse(), G: ore('ingotGold'), W: fluid('water') * 1000]) + .register() + +crafting.shapedBuilder() + .name('nether_star_duplication_with_tnt') + .output(item('minecraft:nether_star')) + .row('!!!') + .row('!S!') + .row('!!!') + .key([S: ore('netherStar').reuse(), '!': item('minecraft:tnt').transform(item('minecraft:diamond'))]) + .register() + +crafting.shapedBuilder() + .output(item('minecraft:clay')) + .row(' B') + .key('B', item('minecraft:glass_bottle')) + .register() + +crafting.shapedBuilder() + .output(item('minecraft:clay')) + .row(' ') + .row(' 0 ') + .row(' ') + .key('0', item('minecraft:diamond_sword').withNbt([display:[Name:'Sword with Specific NBT data']])) + .register() + +crafting.shapedBuilder() + .output(item('minecraft:gold_block')) + .shape([[item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')], + [null, null, null], + [item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')]]) + .register() + +crafting.shapedBuilder() + .name('gold_v_to_clay') + .output(item('minecraft:clay')) + .shape([[item('minecraft:gold_ingot'),null,item('minecraft:gold_ingot')], + [null,item('minecraft:stone_pickaxe').transformDamage(2).whenAnyDamage(),null]]) + .register() + +crafting.shapedBuilder() + .name(resource('example:resource_location')) + .output(item('minecraft:clay')) + .shape([[item('minecraft:cobblestone')], + [item('minecraft:nether_star')], + [item('minecraft:cobblestone')]]) + .register() + +crafting.shapedBuilder() + .output(item('minecraft:chest')) + .shape([[ore('logWood'),ore('logWood'),ore('logWood')], + [ore('logWood'),null,ore('logWood')], + [ore('logWood'),ore('logWood'),ore('logWood')]]) + .replace() + .register() + +crafting.shapedBuilder() + .name('gold_to_diamonds') + .output(item('minecraft:diamond') * 8) + .shape([[item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')], + [item('minecraft:gold_ingot'),null,item('minecraft:gold_ingot')], + [item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')]]) + .replaceByName() + .register() + +crafting.shapedBuilder() + .name(resource('minecraft:sea_lantern')) + .output(item('minecraft:clay')) + .shape([[item('minecraft:glowstone')], + [item('minecraft:glowstone')], + [item('minecraft:glowstone')]]) + .replaceByName() + .register() + +crafting.shapelessBuilder() + .output(item('minecraft:clay')) + .input([item('minecraft:cobblestone'),item('minecraft:nether_star'),item('minecraft:gold_ingot')]) + .register() + +crafting.shapelessBuilder() + .name('precious_to_clay') + .output(item('minecraft:clay')) + .input([item('minecraft:diamond'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')]) + .register() + +crafting.shapelessBuilder() + .name(resource('example:resource_location2')) + .output(item('minecraft:clay')) + .input([item('minecraft:cobblestone'), item('minecraft:gold_ingot')]) + .register() + +crafting.shapelessBuilder() + .output(item('minecraft:ender_eye')) + .input([item('minecraft:ender_pearl'),item('minecraft:nether_star')]) + .replace() + .register() + +crafting.shapelessBuilder() + .name('minecraft:pink_dye_from_pink_tulip') + .output(item('minecraft:clay')) + .input([item('minecraft:nether_star')]) + .replaceByName() + .register() + +crafting.shapelessBuilder() + .name(resource('minecraft:pink_dye_from_peony')) + .output(item('minecraft:clay')) + .input([item('minecraft:cobblestone'), item('minecraft:gold_ingot')]) + .replaceByName() + .register() + + +// crafting.addShaped(item('minecraft:gold_block'), [[item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')],[null, null, null],[item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')]]) +// crafting.addShaped('gold_v_to_clay', item('minecraft:clay'), [[item('minecraft:gold_ingot'),null,item('minecraft:gold_ingot')],[null,item('minecraft:gold_ingot'),null]]) +// crafting.addShaped(resource('example:resource_location'), item('minecraft:clay'), [[item('minecraft:cobblestone')],[item('minecraft:nether_star')],[item('minecraft:cobblestone')]]) +// crafting.addShapeless(item('minecraft:clay'), [item('minecraft:cobblestone'),item('minecraft:nether_star'),item('minecraft:gold_ingot')]) +// crafting.addShapeless('precious_to_clay', item('minecraft:clay'), [item('minecraft:diamond'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')]) +// crafting.addShapeless(resource('example:resource_location2'), item('minecraft:clay'), [item('minecraft:cobblestone'), item('minecraft:gold_ingot')]) +// crafting.replaceShaped(item('minecraft:chest'), [[ore('logWood'),ore('logWood'),ore('logWood')],[ore('logWood'),null,ore('logWood')],[ore('logWood'),ore('logWood'),ore('logWood')]]) +// crafting.replaceShaped('gold_to_diamonds', item('minecraft:diamond') * 8, [[item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')],[item('minecraft:gold_ingot'),null,item('minecraft:gold_ingot')],[item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')]]) +// crafting.replaceShaped(resource('minecraft:sea_lantern'), item('minecraft:clay'), [[item('minecraft:glowstone')],[item('minecraft:glowstone')],[item('minecraft:glowstone')]]) +// crafting.replaceShapeless(item('minecraft:ender_eye'), [item('minecraft:ender_pearl'),item('minecraft:nether_star')]) +// crafting.replaceShapeless('minecraft:pink_dye_from_pink_tulip', item('minecraft:clay'), [item('minecraft:nether_star')]) +// crafting.replaceShapeless(resource('minecraft:pink_dye_from_peony'), item('minecraft:clay'), [item('minecraft:cobblestone'), item('minecraft:gold_ingot')]) + +// Furnace: +// Converts an input item into an output itemstack after a configurable amount of time, with the ability to give experience +// and using fuel to run. Can also convert the item in the fuel slot. + +furnace.removeByInput(item('minecraft:clay:*')) +furnace.removeByOutput(item('minecraft:brick')) +furnace.removeFuelConversionBySmeltedStack(item('minecraft:sponge', 1)) +// furnace.removeAll() +// furnace.removeAllFuelConversions() + +furnace.recipeBuilder() + .input(ore('ingotGold')) + .output(item('minecraft:nether_star')) + .exp(0.5) + .register() + + +// furnace.add(ore('ingotIron'), item('minecraft:diamond')) +furnace.add(item('minecraft:nether_star'), item('minecraft:clay') * 64, 13) +furnace.add(item('minecraft:diamond'), item('minecraft:clay'), 2, 50) +furnace.addFuelConversion(item('minecraft:diamond'), item('minecraft:bucket').transform(item('minecraft:lava_bucket'))) + +// Default GameRules: +// Create or assign a default value to GameRules. + +minecraft.game_rule.setWarnNewGameRule(true) + +minecraft.game_rule.add('doDaylightCycle', 'false') +minecraft.game_rule.add(['mobGriefing': 'false', 'keepInventory': 'true']) + +// Ore Dictionary: +// Manipulate the Ore Dictionary and what itemstacks are part of what oredicts. + +// ore_dict.clear('plankWood') +ore_dict.remove('netherStar', item('minecraft:nether_star')) +// ore_dict.removeAll('ingotIron') +// ore_dict.removeAll() + +ore_dict.add('ingotGold', item('minecraft:nether_star')) +ore_dict.add('netherStar', item('minecraft:gold_ingot')) + +ore_dict.getOres('ingot*') +ore_dict.getOres(~/.*/) +ore_dict.getOres(~/.*Gold/) +ore_dict.getOres(~/.*or.*/) + +// Starting Inventory: +// Sets the starting inventory of the player, including armor slots and offhand. + +// minecraft.player.setTestStartingItems(true) +minecraft.player.setReplaceDefaultInventory(true) + +minecraft.player.addStartingItem(item('minecraft:diamond')) +minecraft.player.addStartingItem(item('minecraft:clay_ball')) +minecraft.player.addStartingItem(item('minecraft:gold_ingot')) +minecraft.player.addStartingItem(item('minecraft:nether_star')) +minecraft.player.addStartingItem(item('minecraft:water_bucket')) +minecraft.player.setStartingItems(true, item('minecraft:clay').withNbt([display:[Name:'Hotbar']]), null, null, null, null, null, null, null, null, item('minecraft:clay').withNbt([display:[Name:'Top row of inventory']]), null, null, null, null, null, null, null, null, item('minecraft:clay').withNbt([display:[Name:'Middle row of inventory']]), null, null, null, null, null, null, null, null, item('minecraft:clay').withNbt([display:[Name:'Bottom row of inventory']]), null, null, null, null, null, null, null, null, item('minecraft:diamond_boots'), item('minecraft:diamond_leggings'), item('minecraft:diamond_chestplate'), item('minecraft:diamond_helmet'), item('minecraft:clay').withNbt([display:[Name:'Offhand']])) + +// Rarity: +// Control the rarity of the item, which typically is the name color, to any standard Rarity or any TextFormatting code. + +minecraft.rarity.set(textformat('AQUA'), item('minecraft:diamond')) +minecraft.rarity.set(textformat('RESET'), item('minecraft:enchanted_book')) diff --git a/examples/postInit/mysticalagriculture.groovy b/examples/postInit/generated/mysticalagriculture_generated.groovy similarity index 92% rename from examples/postInit/mysticalagriculture.groovy rename to examples/postInit/generated/mysticalagriculture_generated.groovy index 2fc7ddb4b..5406f8cdc 100644 --- a/examples/postInit/mysticalagriculture.groovy +++ b/examples/postInit/generated/mysticalagriculture_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: mysticalagriculture -log.info 'mod \'mysticalagriculture\' detected, running script' +log 'mod \'mysticalagriculture\' detected, running script' // Seed Reprocessor: // Converts an input itemstack into an output itemstack, taking a set amount of time based on the machine and consuming @@ -21,5 +21,3 @@ mods.mysticalagriculture.reprocessor.recipeBuilder() .input(item('minecraft:diamond')) .output(item('minecraft:gold_ingot')) .register() - - diff --git a/examples/postInit/naturesaura.groovy b/examples/postInit/generated/naturesaura_generated.groovy similarity index 98% rename from examples/postInit/naturesaura.groovy rename to examples/postInit/generated/naturesaura_generated.groovy index 86c6bd87a..e6e14fcf9 100644 --- a/examples/postInit/naturesaura.groovy +++ b/examples/postInit/generated/naturesaura_generated.groovy @@ -2,16 +2,16 @@ // Auto generated groovyscript example file // MODS_LOADED: naturesaura -log.info 'mod \'naturesaura\' detected, running script' +log 'mod \'naturesaura\' detected, running script' // Natural Altar Infusion: // Converts an input itemstack into an itemstack in a multiblock structure, with an optional catalyst block, costing aura // and taking a configurable duration. -mods.naturesaura.altar.removeByCatalyst(item('naturesaura:crushing_catalyst')) -mods.naturesaura.altar.removeByInput(item('minecraft:rotten_flesh')) mods.naturesaura.altar.removeByName(resource('naturesaura:infused_iron')) +mods.naturesaura.altar.removeByInput(item('minecraft:rotten_flesh')) mods.naturesaura.altar.removeByOutput(item('minecraft:soul_sand')) +mods.naturesaura.altar.removeByCatalyst(item('naturesaura:crushing_catalyst')) // mods.naturesaura.altar.removeAll() mods.naturesaura.altar.recipeBuilder() @@ -44,10 +44,10 @@ mods.naturesaura.altar.recipeBuilder() // Converts up to 16 times the input itemstack into output itemstacks by consuming a catalyst item from the ground in a // multiblock structure. -// mods.naturesaura.offering.removeByCatalyst(item('naturesaura:calling_spirit')) -mods.naturesaura.offering.removeByInput(item('minecraft:nether_star')) mods.naturesaura.offering.removeByName(resource('naturesaura:token_euphoria')) +mods.naturesaura.offering.removeByInput(item('minecraft:nether_star')) mods.naturesaura.offering.removeByOutput(item('naturesaura:sky_ingot')) +// mods.naturesaura.offering.removeByCatalyst(item('naturesaura:calling_spirit')) // mods.naturesaura.offering.removeAll() mods.naturesaura.offering.recipeBuilder() @@ -75,8 +75,8 @@ mods.naturesaura.offering.recipeBuilder() // Converts multiple input items into an output itemstack after a duration when a sapling grows in the middle of a // multiblock structure. -mods.naturesaura.ritual.removeByInput(item('naturesaura:infused_stone')) mods.naturesaura.ritual.removeByName(resource('naturesaura:eye_improved')) +mods.naturesaura.ritual.removeByInput(item('naturesaura:infused_stone')) mods.naturesaura.ritual.removeByOutput(item('naturesaura:eye')) mods.naturesaura.ritual.removeBySapling(item('minecraft:sapling:3')) // mods.naturesaura.ritual.removeAll() @@ -108,10 +108,10 @@ mods.naturesaura.ritual.recipeBuilder() // Altar of Birthing: // Converts multiple input itemstacks into a summoned entity, costing aura and taking time. +mods.naturesaura.spawning.removeByName(resource('naturesaura:cow')) +mods.naturesaura.spawning.removeByInput(item('minecraft:bone')) mods.naturesaura.spawning.removeByEntity(entity('minecraft:polar_bear')) mods.naturesaura.spawning.removeByEntity(resource('minecraft:cave_spider')) -mods.naturesaura.spawning.removeByInput(item('minecraft:bone')) -mods.naturesaura.spawning.removeByName(resource('naturesaura:cow')) // mods.naturesaura.spawning.removeAll() mods.naturesaura.spawning.recipeBuilder() @@ -136,5 +136,3 @@ mods.naturesaura.spawning.recipeBuilder() .aura(10) .time(10) .register() - - diff --git a/examples/postInit/pneumaticcraft.groovy b/examples/postInit/generated/pneumaticcraft_generated.groovy similarity index 99% rename from examples/postInit/pneumaticcraft.groovy rename to examples/postInit/generated/pneumaticcraft_generated.groovy index f5eaac5ec..005e71d84 100644 --- a/examples/postInit/pneumaticcraft.groovy +++ b/examples/postInit/generated/pneumaticcraft_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: pneumaticcraft -log.info 'mod \'pneumaticcraft\' detected, running script' +log 'mod \'pneumaticcraft\' detected, running script' // Amadron: // Uses an Amadron Tablet and linked inventories in world to trade via drones. @@ -10,8 +10,8 @@ log.info 'mod \'pneumaticcraft\' detected, running script' mods.pneumaticcraft.amadron.removeByInput(item('minecraft:rotten_flesh')) mods.pneumaticcraft.amadron.removeByOutput(item('minecraft:emerald')) // mods.pneumaticcraft.amadron.removeAll() -// mods.pneumaticcraft.amadron.removeAllPeriodic() // mods.pneumaticcraft.amadron.removeAllStatic() +// mods.pneumaticcraft.amadron.removeAllPeriodic() mods.pneumaticcraft.amadron.recipeBuilder() .input(item('minecraft:clay') * 3) @@ -113,8 +113,8 @@ mods.pneumaticcraft.liquid_fuel.recipeBuilder() // Converts a fluidstack and an item with a variable damage value into each other, requiring temperature to operate the // process, optionally consuming dye, and allowing either only melting or only solidifying. -// mods.pneumaticcraft.plastic_mixer.removeByFluid(fluid('plastic')) // mods.pneumaticcraft.plastic_mixer.removeByItem(item('pneumaticcraft:plastic')) +// mods.pneumaticcraft.plastic_mixer.removeByFluid(fluid('plastic')) // mods.pneumaticcraft.plastic_mixer.removeAll() mods.pneumaticcraft.plastic_mixer.recipeBuilder() @@ -209,5 +209,3 @@ mods.pneumaticcraft.xp_fluid.recipeBuilder() .fluidInput(fluid('lava')) .ratio(5) .register() - - diff --git a/examples/postInit/primal_tech.groovy b/examples/postInit/generated/primal_tech_generated.groovy similarity index 98% rename from examples/postInit/primal_tech.groovy rename to examples/postInit/generated/primal_tech_generated.groovy index 00cbd9f47..cfc57d2f1 100644 --- a/examples/postInit/primal_tech.groovy +++ b/examples/postInit/generated/primal_tech_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: primal_tech -log.info 'mod \'primal_tech\' detected, running script' +log 'mod \'primal_tech\' detected, running script' // Clay Kiln: // Converts an input item into an output itemstack after a given amount of time. Requires the block below to be Minecraft @@ -83,5 +83,3 @@ mods.primal_tech.wooden_basin.recipeBuilder() .fluidInput(fluid('water')) .output(item('minecraft:diamond') * 4) .register() - - diff --git a/examples/postInit/prodigytech.groovy b/examples/postInit/generated/prodigytech_generated.groovy similarity index 99% rename from examples/postInit/prodigytech.groovy rename to examples/postInit/generated/prodigytech_generated.groovy index 3186174de..482a0d2f2 100644 --- a/examples/postInit/prodigytech.groovy +++ b/examples/postInit/generated/prodigytech_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: prodigytech -log.info 'mod \'prodigytech\' detected, running script' +log 'mod \'prodigytech\' detected, running script' // Atomic Reshaper: // Uses Hot Air and Primordium to convert items. Can have a weighted random based output. @@ -165,9 +165,9 @@ mods.prodigytech.rotary_grinder.recipeBuilder() // Performs recipes using Gold Dust, has a recipe catalyst, and uses up Circuit Boards and an optional extra input for each // recipe. -mods.prodigytech.solderer.removeByAdditive(item('minecraft:iron_ingot')) mods.prodigytech.solderer.removeByOutput(item('prodigytech:circuit_refined')) mods.prodigytech.solderer.removeByPattern(item('prodigytech:pattern_circuit_refined')) +mods.prodigytech.solderer.removeByAdditive(item('minecraft:iron_ingot')) // mods.prodigytech.solderer.removeAll() // mods.prodigytech.solderer.removeWithoutAdditive() @@ -192,4 +192,3 @@ mods.prodigytech.solderer.recipeBuilder() mods.prodigytech.zorra_altar.addEnchantment('sword', enchantment('minecraft:power'), 10) mods.prodigytech.zorra_altar.addEnchantment('stick', enchantment('minecraft:knockback'), 20) mods.prodigytech.zorra_altar.removeEnchantment('sword', enchantment('minecraft:sharpness')) - diff --git a/examples/postInit/projecte.groovy b/examples/postInit/generated/projecte_generated.groovy similarity index 96% rename from examples/postInit/projecte.groovy rename to examples/postInit/generated/projecte_generated.groovy index 77fd74a1f..95b92dd86 100644 --- a/examples/postInit/projecte.groovy +++ b/examples/postInit/generated/projecte_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: projecte -log.info 'mod \'projecte\' detected, running script' +log 'mod \'projecte\' detected, running script' // Entity Randomizer: // Converts an entity on the list into a random other entity on the list when a projectile fired from the Philosopher's @@ -40,5 +40,3 @@ mods.projecte.transmutation.recipeBuilder() .input(blockstate('minecraft:gold_block')) .output(blockstate('minecraft:diamond_block')) .register() - - diff --git a/examples/postInit/pyrotech.groovy b/examples/postInit/generated/pyrotech_generated.groovy similarity index 99% rename from examples/postInit/pyrotech.groovy rename to examples/postInit/generated/pyrotech_generated.groovy index bccda9577..192d26f13 100644 --- a/examples/postInit/pyrotech.groovy +++ b/examples/postInit/generated/pyrotech_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: pyrotech -log.info 'mod \'pyrotech\' detected, running script' +log 'mod \'pyrotech\' detected, running script' // Anvil: // When using hammer or pickaxe it can convert items. @@ -278,4 +278,3 @@ mods.pyrotech.tanning_rack.recipeBuilder() mods.pyrotech.tanning_rack.add('apple_to_dirt', item('minecraft:apple'), item('minecraft:dirt'), 1200, item('minecraft:clay_ball')) - diff --git a/examples/postInit/quarryplus.groovy b/examples/postInit/generated/quarryplus_generated.groovy similarity index 89% rename from examples/postInit/quarryplus.groovy rename to examples/postInit/generated/quarryplus_generated.groovy index 66c8f1d7c..255410280 100644 --- a/examples/postInit/quarryplus.groovy +++ b/examples/postInit/generated/quarryplus_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: quarryplus -log.info 'mod \'quarryplus\' detected, running script' +log 'mod \'quarryplus\' detected, running script' // Workbench Plus: // Converts up to 27 itemstacks into an output itemstack at the cost of power. @@ -15,5 +15,3 @@ mods.quarryplus.workbench_plus.recipeBuilder() .input(item('minecraft:diamond'),item('minecraft:gold_ingot')) .energy(10000) .register() - - diff --git a/examples/postInit/randomthings.groovy b/examples/postInit/generated/randomthings_generated.groovy similarity index 96% rename from examples/postInit/randomthings.groovy rename to examples/postInit/generated/randomthings_generated.groovy index 2702ea6fe..108a9768e 100644 --- a/examples/postInit/randomthings.groovy +++ b/examples/postInit/generated/randomthings_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: randomthings -log.info 'mod \'randomthings\' detected, running script' +log 'mod \'randomthings\' detected, running script' // Anvil Crafting: // Converts two itemstacks into an itemstack in the Vanilla Anvil. @@ -43,5 +43,3 @@ mods.randomthings.imbuing.recipeBuilder() .input(item('minecraft:clay'), item('minecraft:gold_ingot'), item('minecraft:diamond')) .output(item('minecraft:gold_ingot')) .register() - - diff --git a/examples/postInit/roots.groovy b/examples/postInit/generated/roots_generated.groovy similarity index 99% rename from examples/postInit/roots.groovy rename to examples/postInit/generated/roots_generated.groovy index 5236f3a0a..7434f08c6 100644 --- a/examples/postInit/roots.groovy +++ b/examples/postInit/generated/roots_generated.groovy @@ -2,14 +2,14 @@ // Auto generated groovyscript example file // MODS_LOADED: roots -log.info 'mod \'roots\' detected, running script' +log 'mod \'roots\' detected, running script' // Animal Harvest: // Animal Harvest is a ritual that drops items from nearby mob's based on that mobs loottable without harming the mob. Only // applies to allowed mobs. -mods.roots.animal_harvest.removeByEntity(entity('minecraft:pig')) mods.roots.animal_harvest.removeByName(resource('roots:chicken')) +mods.roots.animal_harvest.removeByEntity(entity('minecraft:pig')) // mods.roots.animal_harvest.removeAll() mods.roots.animal_harvest.recipeBuilder() @@ -47,9 +47,9 @@ mods.roots.animal_harvest_fish.recipeBuilder() // Bark Carving is a special set of alternate drops for blocks when broken with an item containing the tool type 'knife'. // Amount dropped is up to 2 + fortune/looting level higher than the set amount. +mods.roots.bark_carving.removeByName(resource('roots:wildwood')) mods.roots.bark_carving.removeByBlock(item('minecraft:log:1')) mods.roots.bark_carving.removeByInput(item('minecraft:log')) -mods.roots.bark_carving.removeByName(resource('roots:wildwood')) mods.roots.bark_carving.removeByOutput(item('roots:bark_dark_oak')) // mods.roots.bark_carving.removeAll() @@ -73,8 +73,8 @@ mods.roots.bark_carving.recipeBuilder() // Chrysopoeia: // Chrysopoeia is a spell that transmutes items held in the main hand. -mods.roots.chrysopoeia.removeByInput(item('minecraft:rotten_flesh')) mods.roots.chrysopoeia.removeByName(resource('roots:gold_from_silver')) +mods.roots.chrysopoeia.removeByInput(item('minecraft:rotten_flesh')) mods.roots.chrysopoeia.removeByOutput(item('minecraft:iron_nugget')) // mods.roots.chrysopoeia.removeAll() @@ -111,11 +111,11 @@ mods.roots.fey_crafter.recipeBuilder() // block. Additionally, using the spell Growth Infusion's Floral Reproduction modifier will duplicate the flower, // regardless of the soil block. +mods.roots.flower_generation.removeByName(resource('roots:dandelion')) mods.roots.flower_generation.removeByFlower(block('minecraft:red_flower')) +mods.roots.flower_generation.removeByFlower(item('minecraft:red_flower:3')) mods.roots.flower_generation.removeByFlower(block('minecraft:red_flower'), 1) mods.roots.flower_generation.removeByFlower(blockstate('minecraft:red_flower:2')) -mods.roots.flower_generation.removeByFlower(item('minecraft:red_flower:3')) -mods.roots.flower_generation.removeByName(resource('roots:dandelion')) // mods.roots.flower_generation.removeAll() mods.roots.flower_generation.recipeBuilder() @@ -144,9 +144,9 @@ mods.roots.life_essence.add(entity('minecraft:wither_skeleton')) mods.roots.modifiers.disable(spell('spell_geas')) // mods.roots.modifiers.disableAll() +mods.roots.modifiers.enable('extended_geas') mods.roots.modifiers.enable(modifier('roots:weakened_response')) mods.roots.modifiers.enable(resource('roots:animal_savior')) -mods.roots.modifiers.enable('extended_geas') // Mortar And Pestle: // When right clicking a mortar containing the input items with a pestle, it will display a few colored sparkles, consume @@ -197,8 +197,8 @@ mods.roots.moss.add(item('minecraft:stained_glass:3'), item('minecraft:stained_g // Pacifist: // Pacifist is a list of entities which killing will give the player the advancement 'Untrue Pacifist'. -mods.roots.pacifist.removeByEntity(entity('minecraft:cow')) mods.roots.pacifist.removeByName(resource('minecraft:chicken')) +mods.roots.pacifist.removeByEntity(entity('minecraft:cow')) // mods.roots.pacifist.removeAll() mods.roots.pacifist.recipeBuilder() @@ -273,8 +273,8 @@ mods.roots.rituals.recipeBuilder() // Right clicking a Runic Shear on a block to convert it into a replacement block and drop items. mods.roots.runic_shear_block.removeByName(resource('roots:wildewheet')) -mods.roots.runic_shear_block.removeByOutput(item('roots:spirit_herb')) mods.roots.runic_shear_block.removeByState(blockstate('minecraft:beetroots:age=3')) +mods.roots.runic_shear_block.removeByOutput(item('roots:spirit_herb')) // mods.roots.runic_shear_block.removeAll() mods.roots.runic_shear_block.recipeBuilder() @@ -295,8 +295,8 @@ mods.roots.runic_shear_block.recipeBuilder() // Runic Shear Entity: // Right clicking a Runic Shear on an entity. The entity will have a cooldown, preventing spamming. -mods.roots.runic_shear_entity.removeByEntity(entity('minecraft:chicken')) mods.roots.runic_shear_entity.removeByName(resource('roots:slime_strange_ooze')) +mods.roots.runic_shear_entity.removeByEntity(entity('minecraft:chicken')) mods.roots.runic_shear_entity.removeByOutput(item('roots:fey_leather')) // mods.roots.runic_shear_entity.removeAll() @@ -344,8 +344,8 @@ mods.roots.spells.recipeBuilder() // Summon Creature: // When running a Summon Creature Ritual, the input items placed on Catalyst Plate will summon the target entity. -mods.roots.summon_creature.removeByEntity(entity('minecraft:chicken')) mods.roots.summon_creature.removeByName(resource('roots:cow')) +mods.roots.summon_creature.removeByEntity(entity('minecraft:chicken')) // mods.roots.summon_creature.removeAll() mods.roots.summon_creature.recipeBuilder() @@ -359,8 +359,8 @@ mods.roots.summon_creature.recipeBuilder() // When running the Transmutation, convert nearby blocks that match a set of conditions into either a block or items. mods.roots.transmutation.removeByName(resource('roots:redstone_block_to_glowstone')) -mods.roots.transmutation.removeByOutput(blockstate('minecraft:log:variant=jungle')) mods.roots.transmutation.removeByOutput(item('minecraft:dye:3')) +mods.roots.transmutation.removeByOutput(blockstate('minecraft:log:variant=jungle')) // mods.roots.transmutation.removeAll() mods.roots.transmutation.recipeBuilder() @@ -380,5 +380,3 @@ mods.roots.transmutation.recipeBuilder() .start(blockstate('minecraft:diamond_block')) .state(blockstate('minecraft:gold_block')) .register() - - diff --git a/examples/postInit/rustic.groovy b/examples/postInit/generated/rustic_generated.groovy similarity index 98% rename from examples/postInit/rustic.groovy rename to examples/postInit/generated/rustic_generated.groovy index 1e65ddc8c..78fd6b411 100644 --- a/examples/postInit/rustic.groovy +++ b/examples/postInit/generated/rustic_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: rustic -log.info 'mod \'rustic\' detected, running script' +log 'mod \'rustic\' detected, running script' // Alchemy Condenser: // Converts some number of input itemstacks and a fluidstack into a single output stack after a time in a small multiblock @@ -96,5 +96,3 @@ mods.rustic.evaporating_basin.recipeBuilder() .fluidInput(fluid('lava') * 50) .output(item('minecraft:iron_ingot')) .register() - - diff --git a/examples/postInit/silentgems.groovy b/examples/postInit/generated/silentgems_generated.groovy similarity index 94% rename from examples/postInit/silentgems.groovy rename to examples/postInit/generated/silentgems_generated.groovy index c4e680ac5..106ea9231 100644 --- a/examples/postInit/silentgems.groovy +++ b/examples/postInit/generated/silentgems_generated.groovy @@ -2,16 +2,16 @@ // Auto generated groovyscript example file // MODS_LOADED: silentgems -log.info 'mod \'silentgems\' detected, running script' +log 'mod \'silentgems\' detected, running script' // Chaos Altar: // Converts an input itemstack into an output itemstack with an optional catalyst, consuming a specified amount of Chaos // from a Chaos Altar. Chaos is consumed at a maximum of 400 per tick, meaning the time taken corresponds to the Chaos // cost. -mods.silentgems.chaos_altar.removeByCatalyst(item('minecraft:slime_ball')) mods.silentgems.chaos_altar.removeByInput(item('silentgems:gem')) mods.silentgems.chaos_altar.removeByOutput(item('silentgems:craftingmaterial')) +mods.silentgems.chaos_altar.removeByCatalyst(item('minecraft:slime_ball')) // mods.silentgems.chaos_altar.removeAll() mods.silentgems.chaos_altar.recipeBuilder() @@ -26,5 +26,3 @@ mods.silentgems.chaos_altar.recipeBuilder() .catalyst(item('minecraft:diamond')) .cost(5000) .register() - - diff --git a/examples/postInit/tconstruct.groovy b/examples/postInit/generated/tconstruct_generated.groovy similarity index 98% rename from examples/postInit/tconstruct.groovy rename to examples/postInit/generated/tconstruct_generated.groovy index 21c49061a..ed1d4be49 100644 --- a/examples/postInit/tconstruct.groovy +++ b/examples/postInit/generated/tconstruct_generated.groovy @@ -2,14 +2,14 @@ // Auto generated groovyscript example file // MODS_LOADED: tconstruct -log.info 'mod \'tconstruct\' detected, running script' +log 'mod \'tconstruct\' detected, running script' // Alloying: // Modifies what fluids can be mixed together in the Smeltery. mods.tconstruct.alloying.removeByInputs(fluid('cobalt')*2,fluid('ardite')*2) -mods.tconstruct.alloying.removeByInputsAndOutput(fluid('knightslime')*72,fluid('iron')*72,fluid('stone')*144,fluid('purpleslime')*125) mods.tconstruct.alloying.removeByOutput(fluid('pigiron')) +mods.tconstruct.alloying.removeByInputsAndOutput(fluid('knightslime')*72,fluid('iron')*72,fluid('stone')*144,fluid('purpleslime')*125) // mods.tconstruct.alloying.removeAll() mods.tconstruct.alloying.recipeBuilder() @@ -94,4 +94,3 @@ mods.tconstruct.melting.recipeBuilder() // mods.tconstruct.smeltery_fuel.removeAll() mods.tconstruct.smeltery_fuel.addFuel(fluid('water'), 250) - diff --git a/examples/postInit/techreborn.groovy b/examples/postInit/generated/techreborn_generated.groovy similarity index 98% rename from examples/postInit/techreborn.groovy rename to examples/postInit/generated/techreborn_generated.groovy index 6f0db5513..f0084e520 100644 --- a/examples/postInit/techreborn.groovy +++ b/examples/postInit/generated/techreborn_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: techreborn -log.info 'mod \'techreborn\' detected, running script' +log 'mod \'techreborn\' detected, running script' // Alloy Smelter: // Converts two itemstack inputs into an itemstack output after a given process time, consuming energy per tick. @@ -448,8 +448,8 @@ mods.techreborn.rolling_machine.shapedBuilder() mods.techreborn.rolling_machine.shapedBuilder() .output(item('minecraft:diamond') * 32) .matrix([[item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')]]) + [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')], + [item('minecraft:gold_ingot'), item('minecraft:gold_ingot'), item('minecraft:gold_ingot')]]) .register() mods.techreborn.rolling_machine.shapelessBuilder() @@ -583,5 +583,3 @@ mods.techreborn.wire_mill.recipeBuilder() .time(5) .perTick(32) .register() - - diff --git a/examples/postInit/thaumcraft.groovy b/examples/postInit/generated/thaumcraft_generated.groovy similarity index 99% rename from examples/postInit/thaumcraft.groovy rename to examples/postInit/generated/thaumcraft_generated.groovy index a5863b13b..0b05b1cf6 100644 --- a/examples/postInit/thaumcraft.groovy +++ b/examples/postInit/generated/thaumcraft_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: thaumcraft -log.info 'mod \'thaumcraft\' detected, running script' +log 'mod \'thaumcraft\' detected, running script' // Arcane Workbench: // A special crafting table, allowing additional requirements in the form of Vis Crystals, Vis, and having a specific @@ -174,8 +174,8 @@ mods.thaumcraft.research.researchCategoryBuilder() .register() -// mods.thaumcraft.research.addResearchLocation(resource('thaumcraft:research/new.json')) mods.thaumcraft.research.addScannable('KNOWLEDGETYPEHUMOR', item('minecraft:pumpkin')) +// mods.thaumcraft.research.addResearchLocation(resource('thaumcraft:research/new.json')) // Smelting Bonus: // Additional item output when smelting a given item in the Infernal Furnace Multiblock. @@ -202,4 +202,3 @@ mods.thaumcraft.warp.removeWarp(item('thaumcraft:void_hoe')) // mods.thaumcraft.warp.removeAll() mods.thaumcraft.warp.addWarp(item('minecraft:pumpkin'), 3) - diff --git a/examples/postInit/theaurorian.groovy b/examples/postInit/generated/theaurorian_generated.groovy similarity index 95% rename from examples/postInit/theaurorian.groovy rename to examples/postInit/generated/theaurorian_generated.groovy index cd3c50e97..574134484 100644 --- a/examples/postInit/theaurorian.groovy +++ b/examples/postInit/generated/theaurorian_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: theaurorian -log.info 'mod \'theaurorian\' detected, running script' +log 'mod \'theaurorian\' detected, running script' // Moonlight Forge: // Combines two items to get a third item. Only works at night, and works faster the higher it is placed in the world. @@ -29,5 +29,3 @@ mods.theaurorian.scrapper.recipeBuilder() .input(item('minecraft:stone_sword')) .output(item('minecraft:cobblestone')) .register() - - diff --git a/examples/postInit/thebetweenlands.groovy b/examples/postInit/generated/thebetweenlands_generated.groovy similarity index 99% rename from examples/postInit/thebetweenlands.groovy rename to examples/postInit/generated/thebetweenlands_generated.groovy index 683d94951..e1a9c9f9c 100644 --- a/examples/postInit/thebetweenlands.groovy +++ b/examples/postInit/generated/thebetweenlands_generated.groovy @@ -2,16 +2,16 @@ // Auto generated groovyscript example file // MODS_LOADED: thebetweenlands -log.info 'mod \'thebetweenlands\' detected, running script' +log 'mod \'thebetweenlands\' detected, running script' // Animator: // Converts an input item, Life amount from Life Crystals, and Fuel from Sulfur into an output itemstack, summoning an // entity, or a random item from a loottable. -mods.thebetweenlands.animator.removeByEntity(entity('thebetweenlands:sporeling')) mods.thebetweenlands.animator.removeByInput(item('thebetweenlands:bone_leggings')) -mods.thebetweenlands.animator.removeByLootTable(resource('thebetweenlands:animator/scroll')) +mods.thebetweenlands.animator.removeByEntity(entity('thebetweenlands:sporeling')) mods.thebetweenlands.animator.removeByOutput(item('thebetweenlands:items_misc:46')) +mods.thebetweenlands.animator.removeByLootTable(resource('thebetweenlands:animator/scroll')) // mods.thebetweenlands.animator.removeAll() mods.thebetweenlands.animator.recipeBuilder() @@ -198,4 +198,3 @@ mods.thebetweenlands.steeping_pot.recipeBuilder() mods.thebetweenlands.steeping_pot.addAcceptedItem(item('minecraft:gold_block')) - diff --git a/examples/postInit/thermalexpansion.groovy b/examples/postInit/generated/thermalexpansion_generated.groovy similarity index 99% rename from examples/postInit/thermalexpansion.groovy rename to examples/postInit/generated/thermalexpansion_generated.groovy index 138401923..231a24113 100644 --- a/examples/postInit/thermalexpansion.groovy +++ b/examples/postInit/generated/thermalexpansion_generated.groovy @@ -4,7 +4,7 @@ import cofh.thermalexpansion.util.managers.machine.InsolatorManager -log.info 'mod \'thermalexpansion\' detected, running script' +log 'mod \'thermalexpansion\' detected, running script' // Alchemical Imbuer: // Converts an input fluidstack and input itemstack into an output fluidstack, costing power and taking time based on the @@ -108,12 +108,12 @@ mods.thermalexpansion.charger.recipeBuilder() // Converts an input itemstack into an output itemstack, with different modes each requiring a different augment to be // installed, costing power and taking time based on the power cost. -mods.thermalexpansion.compactor.removeByInput(compactorMode('coin'), item('thermalfoundation:material:130')) -mods.thermalexpansion.compactor.removeByInput(item('minecraft:iron_ingot')) // mods.thermalexpansion.compactor.removeByMode(compactorMode('plate')) -mods.thermalexpansion.compactor.removeByOutput(compactorMode('coin'), item('thermalfoundation:coin:102')) +mods.thermalexpansion.compactor.removeByInput(item('minecraft:iron_ingot')) +mods.thermalexpansion.compactor.removeByInput(compactorMode('coin'), item('thermalfoundation:material:130')) mods.thermalexpansion.compactor.removeByOutput(item('minecraft:blaze_rod')) mods.thermalexpansion.compactor.removeByOutput(item('thermalfoundation:material:24')) +mods.thermalexpansion.compactor.removeByOutput(compactorMode('coin'), item('thermalfoundation:coin:102')) // mods.thermalexpansion.compactor.removeAll() mods.thermalexpansion.compactor.recipeBuilder() @@ -219,11 +219,11 @@ mods.thermalexpansion.enervation.add(item('minecraft:clay'), 100) // Igneous Extruder: // Converts a variable amount of lava and water into a specific output itemstack. -// mods.thermalexpansion.extruder.removeByInput(false, fluid('lava')) +// mods.thermalexpansion.extruder.removeByType(true) // mods.thermalexpansion.extruder.removeByInput(fluid('water')) -mods.thermalexpansion.extruder.removeByOutput(true, item('minecraft:gravel')) +// mods.thermalexpansion.extruder.removeByInput(false, fluid('lava')) mods.thermalexpansion.extruder.removeByOutput(item('minecraft:obsidian')) -// mods.thermalexpansion.extruder.removeByType(true) +mods.thermalexpansion.extruder.removeByOutput(true, item('minecraft:gravel')) // mods.thermalexpansion.extruder.removeAll() mods.thermalexpansion.extruder.recipeBuilder() @@ -247,11 +247,11 @@ mods.thermalexpansion.extruder.add(1000, item('minecraft:gold_block'), 100, 1000 // Converts an input itemstack into an output itemstack, with the ability to undo the the recipe. Mainly used for // compressing ingots into blocks and splitting blocks into ingots. -mods.thermalexpansion.factorizer.removeByInput(false, item('minecraft:diamond')) +// mods.thermalexpansion.factorizer.removeByType(true) mods.thermalexpansion.factorizer.removeByInput(item('minecraft:coal:1')) -// mods.thermalexpansion.factorizer.removeByOutput(false, item('minecraft:coal:1')) +mods.thermalexpansion.factorizer.removeByInput(false, item('minecraft:diamond')) mods.thermalexpansion.factorizer.removeByOutput(item('minecraft:emerald_block')) -// mods.thermalexpansion.factorizer.removeByType(true) +// mods.thermalexpansion.factorizer.removeByOutput(false, item('minecraft:coal:1')) // mods.thermalexpansion.factorizer.removeAll() mods.thermalexpansion.factorizer.recipeBuilder() @@ -287,9 +287,9 @@ mods.thermalexpansion.fisher_bait.add(item('minecraft:clay'), 100) // Redstone Furnace: // Converts an input itemstack into an output itemstack, costing power and taking time based on the power cost. +mods.thermalexpansion.furnace.removeFood(item('minecraft:rabbit:*')) mods.thermalexpansion.furnace.removeByInput(item('minecraft:cactus:*')) mods.thermalexpansion.furnace.removeByOutput(item('minecraft:cooked_porkchop')) -mods.thermalexpansion.furnace.removeFood(item('minecraft:rabbit:*')) // mods.thermalexpansion.furnace.removeAll() // mods.thermalexpansion.furnace.removeAllFood() @@ -567,14 +567,14 @@ mods.thermalexpansion.steam.add(item('minecraft:clay'), 100) // Arboreal Extractor: // Controls what items and blocks can be turned into what fluids. Output can be boosted via Fertilizer items. -mods.thermalexpansion.tapper.removeBlockByInput(item('minecraft:log')) mods.thermalexpansion.tapper.removeItemByInput(item('minecraft:log:1')) +mods.thermalexpansion.tapper.removeBlockByInput(item('minecraft:log')) // mods.thermalexpansion.tapper.removeAll() -// mods.thermalexpansion.tapper.removeAllBlocks() // mods.thermalexpansion.tapper.removeAllItems() +// mods.thermalexpansion.tapper.removeAllBlocks() -mods.thermalexpansion.tapper.addBlock(item('minecraft:clay'), fluid('lava') * 150) mods.thermalexpansion.tapper.addItem(item('minecraft:clay'), fluid('lava') * 300) +mods.thermalexpansion.tapper.addBlock(item('minecraft:clay'), fluid('lava') * 150) // Arboreal Extractor Fertilizer: // Controls what items can be used in the fertilizer slot of the Arboreal Extractor Fertilizer and how effective they are. @@ -588,8 +588,8 @@ mods.thermalexpansion.tapper_fertilizer.add(item('minecraft:clay'), 1000) // Controls what valid log blocks and leaf blocks are to define a tree structure which the Arboreal Extractor can function // on. The \"tree\" must contain some number of leaves adjacent to the log blocks to be valid. -mods.thermalexpansion.tapper_tree.removeByLeaf(blockstate('minecraft:leaves', 'variant=birch')) mods.thermalexpansion.tapper_tree.removeByLog(blockstate('minecraft:log', 'variant=spruce')) +mods.thermalexpansion.tapper_tree.removeByLeaf(blockstate('minecraft:leaves', 'variant=birch')) // mods.thermalexpansion.tapper_tree.removeAll() mods.thermalexpansion.tapper_tree.add(blockstate('minecraft:clay'), blockstate('minecraft:gold_block')) @@ -649,4 +649,3 @@ mods.thermalexpansion.xp_collector.remove(item('minecraft:soul_sand')) // mods.thermalexpansion.xp_collector.removeAll() mods.thermalexpansion.xp_collector.add(item('minecraft:clay'), 100, 30) - diff --git a/examples/postInit/threng.groovy b/examples/postInit/generated/threng_generated.groovy similarity index 97% rename from examples/postInit/threng.groovy rename to examples/postInit/generated/threng_generated.groovy index abe450547..26b656d3c 100644 --- a/examples/postInit/threng.groovy +++ b/examples/postInit/generated/threng_generated.groovy @@ -2,7 +2,7 @@ // Auto generated groovyscript example file // MODS_LOADED: threng -log.info 'mod \'threng\' detected, running script' +log 'mod \'threng\' detected, running script' // Fluix Aggregation: // Converts up to 3 input itemstacks into an output itemstack. @@ -78,5 +78,3 @@ mods.threng.etcher.recipeBuilder() .input(item('minecraft:gold_ingot')) .output(item('minecraft:diamond')) .register() - - diff --git a/examples/postInit/woot.groovy b/examples/postInit/generated/woot_generated.groovy similarity index 98% rename from examples/postInit/woot.groovy rename to examples/postInit/generated/woot_generated.groovy index 25723fd2d..211f1f35d 100644 --- a/examples/postInit/woot.groovy +++ b/examples/postInit/generated/woot_generated.groovy @@ -4,16 +4,16 @@ import ipsis.woot.util.WootMobName -log.info 'mod \'woot\' detected, running script' +log 'mod \'woot\' detected, running script' // Drops: // Controls extra drops given by mobs. Chance and Size are both arrays 4 long, containing the values for levels 0/1/2/3 // levels of Looting. -mods.woot.drops.removeByEntity(entity('minecraft:ender_dragon')) mods.woot.drops.removeByEntity('minecraft:ender_dragon') -mods.woot.drops.removeByEntity('minecraft:ender_dragon', '') +mods.woot.drops.removeByEntity(entity('minecraft:ender_dragon')) mods.woot.drops.removeByEntity(new WootMobName('minecraft:ender_dragon')) +mods.woot.drops.removeByEntity('minecraft:ender_dragon', '') mods.woot.drops.removeByOutput(item('minecraft:dragon_breath')) // mods.woot.drops.removeAll() @@ -30,8 +30,8 @@ mods.woot.drops.recipeBuilder() // `ipsis.woot.configuration.EnumConfigKey`. A full list can be viewed on // [Github](https://github.com/Ipsis/Woot/blob/55e88f5a15d66cc987e676d665d20f4afbe008b8/src/main/java/ipsis/woot/configuration/EnumConfigKey.java#L14). -mods.woot.mob_config.remove('minecraft:wither_skeleton', 'spawn_units') mods.woot.mob_config.remove('minecraft:wither') +mods.woot.mob_config.remove('minecraft:wither_skeleton', 'spawn_units') // mods.woot.mob_config.removeAll() mods.woot.mob_config.add('spawn_ticks', 100) @@ -41,35 +41,35 @@ mods.woot.mob_config.add('minecraft:zombie', 'spawn_ticks', 1) // Controls what entities can be farmed for what items via an entity blacklist, mod blacklist, item output blacklist, item // output mod blacklist, and a mob whitelist. +// mods.woot.policy.removeFromItemBlacklist(item('minecraft:sugar')) mods.woot.policy.removeFromEntityBlacklist('twilightforest:naga') -mods.woot.policy.removeFromEntityModBlacklist('botania') // mods.woot.policy.removeFromEntityWhitelist('minecraft:wither_skeleton') // mods.woot.policy.removeFromGenerateOnlyList('minecraft:wither_skeleton') -// mods.woot.policy.removeFromItemBlacklist(item('minecraft:sugar')) mods.woot.policy.removeFromItemModBlacklist('minecraft') +mods.woot.policy.removeFromEntityModBlacklist('botania') +// mods.woot.policy.removeAllFromItemBlacklist() // mods.woot.policy.removeAllFromEntityBlacklist() -// mods.woot.policy.removeAllFromEntityModBlacklist() // mods.woot.policy.removeAllFromEntityWhitelist() // mods.woot.policy.removeAllFromGenerateOnlyList() -// mods.woot.policy.removeAllFromItemBlacklist() // mods.woot.policy.removeAllFromItemModBlacklist() +// mods.woot.policy.removeAllFromEntityModBlacklist() // mods.woot.policy.removeAll() +mods.woot.policy.addToItemBlacklist(item('minecraft:gunpowder')) mods.woot.policy.addToEntityBlacklist('minecraft:witch') -// mods.woot.policy.addToEntityModBlacklist('minecraft') // mods.woot.policy.addToEntityWhitelist('minecraft:zombie') mods.woot.policy.addToGenerateOnlyList('minecraft:skeleton') -mods.woot.policy.addToItemBlacklist(item('minecraft:gunpowder')) mods.woot.policy.addToItemModBlacklist('woot') +// mods.woot.policy.addToEntityModBlacklist('minecraft') // Spawning: // Controls item/fluid costs of a given mob or the default cost. mods.woot.spawning.remove(new WootMobName('minecraft:ender_dragon')) -mods.woot.spawning.removeByEntity(entity('minecraft:ender_dragon')) mods.woot.spawning.removeByEntity('minecraft:ender_dragon') -mods.woot.spawning.removeByEntity('minecraft:ender_dragon', '') +mods.woot.spawning.removeByEntity(entity('minecraft:ender_dragon')) mods.woot.spawning.removeByEntity(new WootMobName('minecraft:ender_dragon')) +mods.woot.spawning.removeByEntity('minecraft:ender_dragon', '') // mods.woot.spawning.removeAll() mods.woot.spawning.recipeBuilder() @@ -104,5 +104,3 @@ mods.woot.stygian_iron_anvil.recipeBuilder() .output(item('minecraft:clay')) .preserveBase() .register() - - diff --git a/examples/postInit/minecraft.groovy b/examples/postInit/minecraft.groovy deleted file mode 100644 index c929d7505..000000000 --- a/examples/postInit/minecraft.groovy +++ /dev/null @@ -1,225 +0,0 @@ - -// Auto generated groovyscript example file -// MODS_LOADED: minecraft - -log.info 'mod \'minecraft\' detected, running script' - -// Custom Commands: -// Create custom commands, either generally or specifically for the client. - -mods.minecraft.command.registerCommand('groovy_test', { server, sender, args -> sender.sendMessage('Hello from GroovyScript')}) - -// Crafting Table: -// A normal crafting recipe that takes place in the Vanilla Crafting Table, converting up to 9 items in a shapeless or -// specific shaped arrangement into an output itemstack. - -mods.minecraft.crafting.remove(resource('minecraft:stonebrick')) -mods.minecraft.crafting.remove('minecraft:mossy_stonebrick') -mods.minecraft.crafting.removeByOutput(item('minecraft:gold_ingot')) -// mods.minecraft.crafting.removeAll() - -mods.minecraft.crafting.shapedBuilder() - .output(item('minecraft:nether_star')) - .row('TXT') - .row('X X') - .row('!X!') - .key('T', item('minecraft:tnt')) - .key('X', item('minecraft:clay').reuse()) - .key('!', item('minecraft:tnt').transform({ _ -> item('minecraft:diamond') })) - .register() - -mods.minecraft.crafting.shapedBuilder() - .output(item('minecraft:clay_ball') * 3) - .shape('S S', - ' G ', - 'SWS') - .key([S: ore('netherStar').reuse(), G: ore('ingotGold'), W: fluid('water') * 1000]) - .register() - -mods.minecraft.crafting.shapedBuilder() - .name('nether_star_duplication_with_tnt') - .output(item('minecraft:nether_star')) - .row('!!!') - .row('!S!') - .row('!!!') - .key([S: ore('netherStar').reuse(), '!': item('minecraft:tnt').transform(item('minecraft:diamond'))]) - .register() - -mods.minecraft.crafting.shapedBuilder() - .output(item('minecraft:clay')) - .row(' B') - .key('B', item('minecraft:glass_bottle')) - .register() - -mods.minecraft.crafting.shapedBuilder() - .output(item('minecraft:clay')) - .row(' ') - .row(' 0 ') - .row(' ') - .key('0', item('minecraft:diamond_sword').withNbt([display:[Name:'Sword with Specific NBT data']])) - .register() - -mods.minecraft.crafting.shapedBuilder() - .output(item('minecraft:gold_block')) - .shape([[item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')], - [null, null, null], - [item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')]]) - .register() - -mods.minecraft.crafting.shapedBuilder() - .name('gold_v_to_clay') - .output(item('minecraft:clay')) - .shape([[item('minecraft:gold_ingot'),null,item('minecraft:gold_ingot')], - [null,item('minecraft:stone_pickaxe').transformDamage(2).whenAnyDamage(),null]]) - .register() - -mods.minecraft.crafting.shapedBuilder() - .name(resource('example:resource_location')) - .output(item('minecraft:clay')) - .shape([[item('minecraft:cobblestone')], - [item('minecraft:nether_star')], - [item('minecraft:cobblestone')]]) - .register() - -mods.minecraft.crafting.shapedBuilder() - .output(item('minecraft:chest')) - .shape([[ore('logWood'),ore('logWood'),ore('logWood')], - [ore('logWood'),null,ore('logWood')], - [ore('logWood'),ore('logWood'),ore('logWood')]]) - .replace() - .register() - -mods.minecraft.crafting.shapedBuilder() - .name('gold_to_diamonds') - .output(item('minecraft:diamond') * 8) - .shape([[item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'),null,item('minecraft:gold_ingot')], - [item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')]]) - .replaceByName() - .register() - -mods.minecraft.crafting.shapedBuilder() - .name(resource('minecraft:sea_lantern')) - .output(item('minecraft:clay')) - .shape([[item('minecraft:glowstone')], - [item('minecraft:glowstone')], - [item('minecraft:glowstone')]]) - .replaceByName() - .register() - -mods.minecraft.crafting.shapelessBuilder() - .output(item('minecraft:clay')) - .input([item('minecraft:cobblestone'),item('minecraft:nether_star'),item('minecraft:gold_ingot')]) - .register() - -mods.minecraft.crafting.shapelessBuilder() - .name('precious_to_clay') - .output(item('minecraft:clay')) - .input([item('minecraft:diamond'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')]) - .register() - -mods.minecraft.crafting.shapelessBuilder() - .name(resource('example:resource_location2')) - .output(item('minecraft:clay')) - .input([item('minecraft:cobblestone'), item('minecraft:gold_ingot')]) - .register() - -mods.minecraft.crafting.shapelessBuilder() - .output(item('minecraft:ender_eye')) - .input([item('minecraft:ender_pearl'),item('minecraft:nether_star')]) - .replace() - .register() - -mods.minecraft.crafting.shapelessBuilder() - .name('minecraft:pink_dye_from_pink_tulp') - .output(item('minecraft:clay')) - .input([item('minecraft:nether_star')]) - .replaceByName() - .register() - -mods.minecraft.crafting.shapelessBuilder() - .name(resource('minecraft:pink_dye_from_peony')) - .output(item('minecraft:clay')) - .input([item('minecraft:cobblestone'), item('minecraft:gold_ingot')]) - .replaceByName() - .register() - - -// mods.minecraft.crafting.addShaped(item('minecraft:gold_block'), [[item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')],[null, null, null],[item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')]]) -// mods.minecraft.crafting.addShaped(resource('example:resource_location'), item('minecraft:clay'), [[item('minecraft:cobblestone')],[item('minecraft:nether_star')],[item('minecraft:cobblestone')]]) -// mods.minecraft.crafting.addShaped('gold_v_to_clay', item('minecraft:clay'), [[item('minecraft:gold_ingot'),null,item('minecraft:gold_ingot')],[null,item('minecraft:gold_ingot'),null]]) -// mods.minecraft.crafting.addShapeless(item('minecraft:clay'), [item('minecraft:cobblestone'),item('minecraft:nether_star'),item('minecraft:gold_ingot')]) -// mods.minecraft.crafting.addShapeless(resource('example:resource_location2'), item('minecraft:clay'), [item('minecraft:cobblestone'), item('minecraft:gold_ingot')]) -// mods.minecraft.crafting.addShapeless('precious_to_clay', item('minecraft:clay'), [item('minecraft:diamond'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')]) -// mods.minecraft.crafting.replaceShaped(item('minecraft:chest'), [[ore('logWood'),ore('logWood'),ore('logWood')],[ore('logWood'),null,ore('logWood')],[ore('logWood'),ore('logWood'),ore('logWood')]]) -// mods.minecraft.crafting.replaceShaped(resource('minecraft:sea_lantern'), item('minecraft:clay'), [[item('minecraft:glowstone')],[item('minecraft:glowstone')],[item('minecraft:glowstone')]]) -// mods.minecraft.crafting.replaceShaped('gold_to_diamonds', item('minecraft:diamond') * 8, [[item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')],[item('minecraft:gold_ingot'),null,item('minecraft:gold_ingot')],[item('minecraft:gold_ingot'),item('minecraft:gold_ingot'),item('minecraft:gold_ingot')]]) -// mods.minecraft.crafting.replaceShapeless(item('minecraft:ender_eye'), [item('minecraft:ender_pearl'),item('minecraft:nether_star')]) -// mods.minecraft.crafting.replaceShapeless(resource('minecraft:pink_dye_from_peony'), item('minecraft:clay'), [item('minecraft:cobblestone'), item('minecraft:gold_ingot')]) -// mods.minecraft.crafting.replaceShapeless('minecraft:pink_dye_from_pink_tulp', item('minecraft:clay'), [item('minecraft:nether_star')]) - -// Furnace: -// Converts an input item into an output itemstack after a configurable amount of time, with the ability to give experience -// and using fuel to run. Can also convert the item in the fuel slot. - -mods.minecraft.furnace.removeByInput(item('minecraft:clay:*')) -mods.minecraft.furnace.removeByOutput(item('minecraft:brick')) -mods.minecraft.furnace.removeFuelConversionBySmeltedStack(item('minecraft:sponge', 1)) -// mods.minecraft.furnace.removeAll() -// mods.minecraft.furnace.removeAllFuelConversions() - -mods.minecraft.furnace.recipeBuilder() - .input(ore('ingotGold')) - .output(item('minecraft:nether_star')) - .exp(0.5) - .register() - - -// mods.minecraft.furnace.add(ore('ingotIron'), item('minecraft:diamond')) -mods.minecraft.furnace.add(item('minecraft:nether_star'), item('minecraft:clay') * 64, 13) -mods.minecraft.furnace.add(item('minecraft:diamond'), item('minecraft:clay'), 2, 50) -mods.minecraft.furnace.addFuelConversion(item('minecraft:diamond'), item('minecraft:bucket').transform(item('minecraft:lava_bucket'))) - -// Default GameRules: -// Create or assign a default value to GameRules. - -mods.minecraft.game_rule.add(['mobGriefing': 'false', 'keepInventory': 'true']) -mods.minecraft.game_rule.add('doDaylightCycle', 'false') - -mods.minecraft.game_rule.setWarnNewGameRule(true) - -// Ore Dictionary: -// Manipulate the Ore Dictionary and what itemstacks are part of what oredicts. - -// mods.minecraft.ore_dict.clear('plankWood') -mods.minecraft.ore_dict.remove('netherStar', item('minecraft:nether_star')) -// mods.minecraft.ore_dict.removeAll('ingotIron') -// mods.minecraft.ore_dict.removeAll() - -mods.minecraft.ore_dict.add('ingotGold', item('minecraft:nether_star')) -mods.minecraft.ore_dict.add('netherStar', item('minecraft:gold_ingot')) - -mods.minecraft.ore_dict.getOres(~/.*/) -mods.minecraft.ore_dict.getOres(~/.*Gold/) -mods.minecraft.ore_dict.getOres(~/.*or.*/) -mods.minecraft.ore_dict.getOres('ingot*') - -// Starting Inventory: -// Sets the starting inventory of the player, including armor slots and offhand. - -mods.minecraft.player.addStartingItem(item('minecraft:diamond')) -mods.minecraft.player.addStartingItem(item('minecraft:clay_ball')) -mods.minecraft.player.addStartingItem(item('minecraft:gold_ingot')) -mods.minecraft.player.addStartingItem(item('minecraft:nether_star')) -mods.minecraft.player.addStartingItem(item('minecraft:water_bucket')) -mods.minecraft.player.setStartingItems(true, item('minecraft:clay').withNbt([display:[Name:'Hotbar']]), null, null, null, null, null, null, null, null, item('minecraft:clay').withNbt([display:[Name:'Top row of inventory']]), null, null, null, null, null, null, null, null, item('minecraft:clay').withNbt([display:[Name:'Middle row of inventory']]), null, null, null, null, null, null, null, null, item('minecraft:clay').withNbt([display:[Name:'Bottom row of inventory']]), null, null, null, null, null, null, null, null, item('minecraft:diamond_boots'), item('minecraft:diamond_leggings'), item('minecraft:diamond_chestplate'), item('minecraft:diamond_helmet'), item('minecraft:clay').withNbt([display:[Name:'Offhand']])) - -mods.minecraft.player.setReplaceDefaultInventory(true) -// mods.minecraft.player.setTestStartingItems(true) - -// Rarity: -// Control the rarity of the item, which typically is the name color, to any standard Rarity or any TextFormatting code. - -mods.minecraft.rarity.set(textformat('AQUA'), item('minecraft:diamond')) -mods.minecraft.rarity.set(textformat('RESET'), item('minecraft:enchanted_book')) - diff --git a/examples/preInit/mekanism.groovy b/examples/preInit/generated/mekanism_generated.groovy similarity index 71% rename from examples/preInit/mekanism.groovy rename to examples/preInit/generated/mekanism_generated.groovy index 15c0792a3..66ec0da8e 100644 --- a/examples/preInit/mekanism.groovy +++ b/examples/preInit/generated/mekanism_generated.groovy @@ -1,9 +1,10 @@ +// Auto generated groovyscript example file // MODS_LOADED: mekanism + import net.minecraftforge.client.event.TextureStitchEvent -if (!isLoaded('mekanism')) return -println 'mod \'mekanism\' detected, running script' +log 'mod \'mekanism\' detected, running script' eventManager.listen { TextureStitchEvent.Pre event -> event.getMap().registerSprite(resource('groovyscriptdev:blocks/mekanism_infusion_texture')) diff --git a/examples/preInit/generated/minecraft_generated.groovy b/examples/preInit/generated/minecraft_generated.groovy new file mode 100644 index 000000000..19f1b9fc3 --- /dev/null +++ b/examples/preInit/generated/minecraft_generated.groovy @@ -0,0 +1,75 @@ + +// Auto generated groovyscript example file + +import net.minecraft.item.ItemFood +import net.minecraft.world.IBlockAccess +import net.minecraft.potion.PotionEffect +import net.minecraft.util.math.AxisAlignedBB +import net.minecraft.block.state.BlockFaceShape +import net.minecraft.entity.player.EntityPlayer + +log 'running Vanilla Minecraft example' + +// Vanilla Content Creation: +// Creates custom items, blocks, and fluids for later use. Textures and other assets such as translations will be loaded +// from the `groovy/assets/` folder. + +content.setDefaultCreativeTab(content.createCreativeTab('groovyscript.example_creative_tab', _ -> item('groovyscriptdev:heartofauniverse'))) + +content.createItem('heartofauniverse') + .setRarity(EnumRarity.EPIC) + .setMaxStackSize(1) + .register() + +content.createItem('clay_2') + .setMaxStackSize(5) + .setRarity(EnumRarity.RARE) + .register() + +content.createItem('clay_3') + .setCreativeTab(creativeTab('misc')) + .setEnchantedEffect() + .register() + +content.createBlock('generic_block') + .register() + + +content.createFluid('amongium') + .setMetalTexture() + .setColor(0x00FF00) + .register() + + +content.createCreativeTab('groovyscript.other_tab_clay', _ -> item('minecraft:clay')) +content.registerItem('snack', (new ItemFood(20, 10, false) { + protected void onFoodEaten(ItemStack stack, World worldIn, EntityPlayer player) { + if (!worldIn.isRemote) { + player.addPotionEffect(new PotionEffect(potion('minecraft:regeneration'), 240000, 3, false, false)) + player.addPotionEffect(new PotionEffect(potion('minecraft:resistance'), 240000, 3, false, false)) + } + } +}).setAlwaysEdible()) +content.registerBlock('dragon_egg_lamp', (new Block(blockMaterial('redstone_light')) { + protected static final AxisAlignedBB DRAGON_EGG_AABB = new AxisAlignedBB(0.0625D, 0.0D, 0.0625D, 0.9375D, 1.0D, 0.9375D) + + AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) { + return DRAGON_EGG_AABB + } + + boolean isOpaqueCube(IBlockState state) { + return false + } + + boolean isFullCube(IBlockState state) { + return false + } + + boolean shouldSideBeRendered(IBlockState blockState, IBlockAccess blockAccess, BlockPos pos, EnumFacing side) { + return true + } + + BlockFaceShape getBlockFaceShape(IBlockAccess worldIn, IBlockState state, BlockPos pos, EnumFacing face) { + return BlockFaceShape.UNDEFINED + } +}).setLightLevel(1.0F)) diff --git a/examples/preInit/prodigytech.groovy b/examples/preInit/generated/prodigytech_generated.groovy similarity index 79% rename from examples/preInit/prodigytech.groovy rename to examples/preInit/generated/prodigytech_generated.groovy index c0dddae21..0b1b806e3 100644 --- a/examples/preInit/prodigytech.groovy +++ b/examples/preInit/generated/prodigytech_generated.groovy @@ -1,12 +1,13 @@ + +// Auto generated groovyscript example file // MODS_LOADED: prodigytech import lykrast.prodigytech.common.item.IZorrasteelEquipment import lykrast.prodigytech.common.recipe.ZorraAltarManager -if (!isLoaded('prodigytech')) return -println 'mod \'prodigytech\' detected, running script' +log 'mod \'prodigytech\' detected, running script' -// Create an item at the location 'placeholdername:prodigy_stick' enchantable in the Zorra Altar +// Create an item at the location 'groovyscriptdev:prodigy_stick' enchantable in the Zorra Altar // Note: due to the PT's implementation it is difficult to make other mod's items enchantable // This merely registers the item, the post-init script adds the specific enchantments class ProdigyStick extends Item implements IZorrasteelEquipment { @@ -18,4 +19,3 @@ class ProdigyStick extends Item implements IZorrasteelEquipment { } content.registerItem('prodigy_stick', new ProdigyStick()) - diff --git a/examples/preInit/vanilla.groovy b/examples/preInit/vanilla.groovy deleted file mode 100644 index f5382826e..000000000 --- a/examples/preInit/vanilla.groovy +++ /dev/null @@ -1,96 +0,0 @@ - -import net.minecraft.item.ItemFood -import net.minecraft.potion.PotionEffect -import net.minecraft.entity.player.EntityPlayer -import net.minecraft.block.material.Material -import net.minecraft.block.state.BlockFaceShape -import net.minecraft.block.state.IBlockState -import net.minecraft.util.math.AxisAlignedBB -import net.minecraft.world.IBlockAccess - - -// Localization is done in 'assets/groovyscriptdev/lang/[language].lang' - -// Textures for items are created at 'assets/groovyscriptdev/textures/items/'. -// Add a file called '[itemname].png' to create a static item texture, and a file called -// '[itemname].png.mcmeta' to create an animated file. -// A file will be created in 'assets/groovyscriptdev/models/item/' called '[itemname].json' and point to this location in textures. - -// Create the creative tab, using the not-yet-registered item -def tab = content.createCreativeTab('groovyscript.example_creative_tab', _ -> item('groovyscriptdev:heartofauniverse')) - -// When registering items, this will add them to the given creative tab without having to manually do so. -content.setDefaultCreativeTab(tab) - -// create the creative tab -content.createItem('heartofauniverse') // Set item name at 'item.[itemname].name=[desired name]' - .setRarity(EnumRarity.EPIC) // Optional IRarity, sets the default text formatting (default none) - .setMaxStackSize(1) // Optional int, sets the max stack size (default 64) - .register() - - -// Create an item at the location 'groovyscriptdev:clay_2' -content.createItem('clay_2') - .setMaxStackSize(5) // Optional int, sets the max stack size (default 64) - .setRarity(EnumRarity.RARE) // Optional IRarity, sets the default text formatting (default none) - .register() - -// Create an item at the location 'groovyscriptdev:clay_3'. -content.createItem('clay_3') - .setCreativeTab(creativeTab('misc')) // Optional CreativeTab, sets the creative tab (default set via setDefaultCreativeTab) - .setEnchantedEffect() // Optional boolean, controls if the enchanted effect plays on the item - .register() - -content.createFluid('amongium') - .setMetalTexture() - .setColor(0x00FF00) - .register() - -// You can register any item created, even items created via custom means. -content.registerItem('snack', (new ItemFood(20, 10, false) { - protected void onFoodEaten(ItemStack stack, World worldIn, EntityPlayer player) { - if (!worldIn.isRemote) { - player.addPotionEffect(new PotionEffect(potion('minecraft:regeneration'), 240000, 3, false, false)) - player.addPotionEffect(new PotionEffect(potion('minecraft:resistance'), 240000, 3, false, false)) - } - } -}).setAlwaysEdible()) - - - -// block - -// Textures for blocks are created at 'assets/groovyscriptdev/textures/blocks/'. -// Add a file called '[blockname].png' to create a static item texture, and a file called -// '[blockname].png.mcmeta' to create an animated file. -// A file will be created in 'assets/groovyscriptdev/models/block/' called '[blockname].json' and point to this location in textures. - -// Create a block at the location 'groovyscriptdev:generic_block' -content.createBlock('generic_block')// Set block name at 'tile.[blockname].name=[desired name]' - .register() - -// Create a custom block at the location 'groovyscriptdev:dragon_egg_lamp' -// Also changes the 'parent' setting in 'assets/groovyscriptdev/models/block/[blockname].json' from 'block/cube_all' to 'block/dragon_egg' -content.registerBlock('dragon_egg_lamp', (new Block(Material.REDSTONE_LIGHT) { - protected static final AxisAlignedBB DRAGON_EGG_AABB = new AxisAlignedBB(0.0625D, 0.0D, 0.0625D, 0.9375D, 1.0D, 0.9375D) - - AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) { - return DRAGON_EGG_AABB - } - - boolean isOpaqueCube(IBlockState state) { - return false - } - - boolean isFullCube(IBlockState state) { - return false - } - - boolean shouldSideBeRendered(IBlockState blockState, IBlockAccess blockAccess, BlockPos pos, EnumFacing side) { - return true - } - - BlockFaceShape getBlockFaceShape(IBlockAccess worldIn, IBlockState state, BlockPos pos, EnumFacing face) { - return BlockFaceShape.UNDEFINED - } -}).setLightLevel(1.0F)) diff --git a/src/main/java/com/cleanroommc/groovyscript/api/documentation/IContainerDocumentation.java b/src/main/java/com/cleanroommc/groovyscript/api/documentation/IContainerDocumentation.java new file mode 100644 index 000000000..4bb8cd5ef --- /dev/null +++ b/src/main/java/com/cleanroommc/groovyscript/api/documentation/IContainerDocumentation.java @@ -0,0 +1,37 @@ +package com.cleanroommc.groovyscript.api.documentation; + +import com.cleanroommc.groovyscript.compat.mods.GroovyContainer; +import com.cleanroommc.groovyscript.sandbox.LoadStage; + +import java.io.File; + +/** + * Implementing this interface on something extending {@link GroovyContainer} + * will allow overriding the default documentation generation + * for the container. + */ +public interface IContainerDocumentation { + + /** + * Generate an example file for the given load stage. + * + * @param suggestedFile the default file that the example code is suggested to be generated in. + * @param stage the load stage the examples are being generated for. + * @return if the normal generation method should occur + * @see com.cleanroommc.groovyscript.documentation.Exporter#generateExamples(File, LoadStage, GroovyContainer) + */ + default boolean generateExamples(File suggestedFile, LoadStage stage) { + return true; + } + + /** + * Generate pages for the wiki in this method. + * + * @param suggestedFolder the default folder that the wiki is suggested to be generated in. + * @return if the normal generation method should occur + * @see com.cleanroommc.groovyscript.documentation.Exporter#generateWiki(File, GroovyContainer) + */ + default boolean generateWiki(File suggestedFolder) { + return true; + } +} diff --git a/src/main/java/com/cleanroommc/groovyscript/api/documentation/IRegistryDocumentation.java b/src/main/java/com/cleanroommc/groovyscript/api/documentation/IRegistryDocumentation.java new file mode 100644 index 000000000..18d0c28bf --- /dev/null +++ b/src/main/java/com/cleanroommc/groovyscript/api/documentation/IRegistryDocumentation.java @@ -0,0 +1,98 @@ +package com.cleanroommc.groovyscript.api.documentation; + +import com.cleanroommc.groovyscript.api.INamed; +import com.cleanroommc.groovyscript.documentation.helper.ContainerHolder; +import com.cleanroommc.groovyscript.documentation.helper.Heading; +import com.cleanroommc.groovyscript.documentation.helper.LinkIndex; +import com.cleanroommc.groovyscript.sandbox.LoadStage; +import org.jetbrains.annotations.NotNull; + +import java.io.File; +import java.util.List; + +/** + * Implementing this interface on a registry will allow + * customizing the wiki and example generation that occurs. + * This annotation has no effect unless one of its default methods is implemented. + *
+ * The default registry, {@link com.cleanroommc.groovyscript.documentation.Registry Registry}, + * uses this annotation with the goal of consolidating logic. + * + * @see com.cleanroommc.groovyscript.documentation.Registry Registry + */ +public interface IRegistryDocumentation extends INamed { + + /** + * Generate the various files for the wiki - these are almost always + * markdown files inside the {@code suggestedFolder}, + * and the file linked by adding it to {@code linkIndex}. + *
+ * In most situations simply adding it to the default section via {@link LinkIndex#add(String)}
+ * suffices, but for certain reasons a separate section may be desired.
+ * If so, the section must be created via {@link LinkIndex#register(String, Heading)}
+ * and can then be added to directly {@link LinkIndex#add(String, String)}.
+ *
+ * @param container the container the registry is part of
+ * @param suggestedFolder the suggested folder for the wiki files to be generated within.
+ * This is only a suggestion, and can be ignored
+ * @param linkIndex each category will generate a header, description, and some number of entries for the index page
+ * @see Heading
+ * @see LinkIndex
+ * @see com.cleanroommc.groovyscript.documentation.Exporter#writeNormalWikiFile
+ */
+ default void generateWiki(ContainerHolder container, File suggestedFolder, LinkIndex linkIndex) {}
+
+ /**
+ * Return a String that will be added to the example groovy file
+ * depending on the {@code loadStage}.
+ *
+ * @param container the container the registry is part of
+ * @param loadStage the target load stage, which controls which file the output is printed to
+ * @param imports a list of classes that must be imported. this should only contain the class name,
+ * and entries should not be removed
+ * @return the text of the examples, with an empty string indicating no examples were generated.
+ * If no examples were generated among all the suppliers, the relevant file will not be created.
+ */
+ default @NotNull String generateExamples(ContainerHolder container, LoadStage loadStage, List
+ * Using {@link Category#CUSTOM} it will instead try to read specific lang keys, checking these places for overrides:
+ *
+ * Contains header text to be formatted at the provided headingLevel,
+ * an optional normal text comment below it, and some number of entries.
+ * The comment is a function that can be formatted based on the number of entries.
+ *
+ * It will only be added to the index file if there is
+ * at least one entry to display,
+ * and the order it will be added to the index file is based on its priority.
+ *
+ * @see LinkIndex
+ */
+public class Heading implements Comparable
+ * It has a default {@link Heading} for the normal
+ * categories, and in most cases this is the only section needed.
+ *
+ * Typical use will be multiple calls of {@link #add(String)}.
+ *
+ * @see Heading
+ */
+public class LinkIndex {
+
+ private static final String PRIMARY_SECTION = "primary";
+
+ private final Map
- * If this is not annotated to a method, this should either be the method name
+ * If this is not annotated to a method, this should either be an array of each method name
* (if only a single method has the given name)
- * or needs to be the name and full descriptor of the method.
+ * or each element needs to be the name and full descriptor of the method.
*
* Methods that are bridge, non-public, Object, or methods annotated with {@link com.cleanroommc.groovyscript.api.GroovyBlacklist}
* cannot be targeted.
*
- * @return the target method, if not annotated to a method directly.
+ * @return any number of target methods, if not annotated to a method directly.
* @see MethodOverride
*/
- String method() default "";
+ String[] method() default {};
/**
* The localization key for a description of the compat.
diff --git a/src/main/java/com/cleanroommc/groovyscript/api/documentation/annotations/MethodOverride.java b/src/main/java/com/cleanroommc/groovyscript/api/documentation/annotations/MethodOverride.java
index 3b9b101ae..eec27e189 100644
--- a/src/main/java/com/cleanroommc/groovyscript/api/documentation/annotations/MethodOverride.java
+++ b/src/main/java/com/cleanroommc/groovyscript/api/documentation/annotations/MethodOverride.java
@@ -1,5 +1,6 @@
package com.cleanroommc.groovyscript.api.documentation.annotations;
+import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@@ -16,7 +17,7 @@
* and not overridden in the focused class.
*/
@Retention(RetentionPolicy.RUNTIME)
-@Target({}) // No targets allowed
+@Target(ElementType.TYPE)
public @interface MethodOverride {
/**
diff --git a/src/main/java/com/cleanroommc/groovyscript/api/documentation/annotations/Property.java b/src/main/java/com/cleanroommc/groovyscript/api/documentation/annotations/Property.java
index 3248f561c..d8b5720f6 100644
--- a/src/main/java/com/cleanroommc/groovyscript/api/documentation/annotations/Property.java
+++ b/src/main/java/com/cleanroommc/groovyscript/api/documentation/annotations/Property.java
@@ -12,7 +12,7 @@
*
*
- * If this is not annotated to a method, this should either be the method name
+ * If this is not annotated to a method, this should either be an array of each method name
* (if only a single method has the given name)
- * or needs to be the name and full descriptor of the method.
+ * or each element needs to be the name and full descriptor of the method.
*
* Methods that are bridge, non-public, Object, or methods annotated with {@link com.cleanroommc.groovyscript.api.GroovyBlacklist}
* cannot be targeted.
*
- * @return the target method, if not annotated to a method directly.
+ * @return any number of target methods, if not annotated to a method directly.
* @see RecipeBuilderOverride
*/
- String method() default "";
+ String[] method() default {};
+
+ /**
+ * The localization key for the description of the method.
+ * If present, will generate a comment in-line on the wiki when it appears.
+ * If it is an empty string, will not generate anything.
+ *
+ * @return localization key for the recipe builder method description
+ */
+ String description() default "";
/**
* An array of all fields this method modifies. By default, it checks for a field with the same name as the method.
diff --git a/src/main/java/com/cleanroommc/groovyscript/api/documentation/annotations/RecipeBuilderOverride.java b/src/main/java/com/cleanroommc/groovyscript/api/documentation/annotations/RecipeBuilderOverride.java
index 848944676..d3f4d813b 100644
--- a/src/main/java/com/cleanroommc/groovyscript/api/documentation/annotations/RecipeBuilderOverride.java
+++ b/src/main/java/com/cleanroommc/groovyscript/api/documentation/annotations/RecipeBuilderOverride.java
@@ -1,5 +1,6 @@
package com.cleanroommc.groovyscript.api.documentation.annotations;
+import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@@ -16,7 +17,7 @@
* and not overridden in the focused class.
*/
@Retention(RetentionPolicy.RUNTIME)
-@Target({}) // No targets allowed
+@Target(ElementType.TYPE)
public @interface RecipeBuilderOverride {
/**
diff --git a/src/main/java/com/cleanroommc/groovyscript/api/documentation/annotations/RecipeBuilderRegistrationMethod.java b/src/main/java/com/cleanroommc/groovyscript/api/documentation/annotations/RecipeBuilderRegistrationMethod.java
index ca5eb5e58..12aef26f6 100644
--- a/src/main/java/com/cleanroommc/groovyscript/api/documentation/annotations/RecipeBuilderRegistrationMethod.java
+++ b/src/main/java/com/cleanroommc/groovyscript/api/documentation/annotations/RecipeBuilderRegistrationMethod.java
@@ -32,17 +32,29 @@
* If this {@link RecipeBuilderDescription} annotation is attached to a method, this element is set to the name of the method they are attached to.
* When annotated on a method directly, this should not be set, as it has no functionality.
*
- * If this is not annotated to a method, this should either be the method name
+ * If this is not annotated to a method, this should either be an array of each method name
* (if only a single method has the given name)
- * or needs to be the name and full descriptor of the method.
+ * or each element needs to be the name and full descriptor of the method.
*
* Methods that are bridge, non-public, Object, or methods annotated with {@link com.cleanroommc.groovyscript.api.GroovyBlacklist}
* cannot be targeted.
*
- * @return the target method, if not annotated to a method directly.
+ * @return any number of target methods, if not annotated to a method directly.
* @see MethodOverride
*/
- String method() default "";
+ String[] method() default {};
+
+ /**
+ * The localization key for the description of the return method, will default to generating
+ *
+ *
+ *
groovyscript.wiki.recipe_builder.register
+ *
groovyscript.wiki.recipe_builder.register_return
+ *
depending on if the recipe builder returns a non-void value.
+ *
+ * @return localization key for the recipe builder return method
+ */
+ String description() default "";
/**
* Hierarchy of the property, relative to other properties applying to the same method.
diff --git a/src/main/java/com/cleanroommc/groovyscript/api/documentation/annotations/RegistryDescription.java b/src/main/java/com/cleanroommc/groovyscript/api/documentation/annotations/RegistryDescription.java
index 93aff28e3..133219721 100644
--- a/src/main/java/com/cleanroommc/groovyscript/api/documentation/annotations/RegistryDescription.java
+++ b/src/main/java/com/cleanroommc/groovyscript/api/documentation/annotations/RegistryDescription.java
@@ -1,5 +1,7 @@
package com.cleanroommc.groovyscript.api.documentation.annotations;
+import com.cleanroommc.groovyscript.sandbox.LoadStage;
+
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
@@ -71,10 +73,10 @@
String linkGenerator() default "";
/**
- * @return the name of the stage all the compat with the registry uses. Defaults to {@code "postInit"}
+ * @return the stage all the compat with the registry uses. Defaults to {@link LoadStage#POST_INIT}
* @see com.cleanroommc.groovyscript.sandbox.LoadStage
*/
- String location() default "postInit";
+ LoadStage location() default LoadStage.POST_INIT;
/**
* An override to {@link MethodDescription} or {@link RecipeBuilderDescription} declarations,
@@ -119,6 +121,14 @@
/**
* Controls the localization keys used refer to adding, removing, or querying the registry.
* Primarily used to control if the registry contains specifically "recipes" or more generic "entries".
+ *
+ *
*
* @return the name of the objects within the registry. Defaults to {@code Category.RECIPES}
* @see Category
@@ -165,29 +175,31 @@ public boolean hasFlaws() {
/**
* Controls the name of what the registry contains.
- * Currently, either specifically "recipes" or generically "entries"
+ * Currently, either specifically "recipes", generically "entries", or entirely custom.
*/
enum Category {
RECIPES("recipes"),
- ENTRIES("entries");
-
- private final String category;
-
- Category(String category) {
- this.category = category;
- }
-
- public String adding() {
- return "groovyscript.wiki.adding_" + category;
+ ENTRIES("entries"),
+ CUSTOM;
+
+ public final String query;
+ public final String adding;
+ public final String removing;
+ public final String values;
+
+ Category() {
+ this.query = null;
+ this.adding = null;
+ this.removing = null;
+ this.values = null;
}
- public String removing() {
- return "groovyscript.wiki.removing_" + category;
- }
-
- public String query() {
- return "groovyscript.wiki.query_" + category;
+ Category(String category) {
+ this.query = "groovyscript.wiki.query_" + category;
+ this.adding = "groovyscript.wiki.adding_" + category;
+ this.removing = "groovyscript.wiki.removing_" + category;
+ this.values = "groovyscript.wiki.editing_values";
}
}
}
diff --git a/src/main/java/com/cleanroommc/groovyscript/compat/content/Content.java b/src/main/java/com/cleanroommc/groovyscript/compat/content/Content.java
index ed7074cfa..887c2bcc4 100644
--- a/src/main/java/com/cleanroommc/groovyscript/compat/content/Content.java
+++ b/src/main/java/com/cleanroommc/groovyscript/compat/content/Content.java
@@ -2,7 +2,9 @@
import com.cleanroommc.groovyscript.GroovyScript;
import com.cleanroommc.groovyscript.api.GroovyLog;
+import com.cleanroommc.groovyscript.api.documentation.annotations.*;
import com.cleanroommc.groovyscript.registry.NamedRegistry;
+import com.cleanroommc.groovyscript.sandbox.LoadStage;
import groovy.lang.Closure;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
@@ -17,10 +19,27 @@
import java.util.function.Supplier;
+@RegistryDescription(location = LoadStage.PRE_INIT, category = RegistryDescription.Category.CUSTOM, priority = 500, admonition = {
+ @Admonition(value = "groovyscript.wiki.minecraft.content.note0", type = Admonition.Type.WARNING),
+ @Admonition(value = "groovyscript.wiki.minecraft.content.note1", type = Admonition.Type.DANGER),
+})
public class Content extends NamedRegistry {
public CreativeTabs defaultTab;
+ @MethodDescription(type = MethodDescription.Type.ADDITION, example = @Example(value = """
+ 'snack', (new ItemFood(20, 10, false) {
+ protected void onFoodEaten(ItemStack stack, World worldIn, EntityPlayer player) {
+ if (!worldIn.isRemote) {
+ player.addPotionEffect(new PotionEffect(potion('minecraft:regeneration'), 240000, 3, false, false))
+ player.addPotionEffect(new PotionEffect(potion('minecraft:resistance'), 240000, 3, false, false))
+ }
+ }
+ }).setAlwaysEdible()""", imports = {
+ "net.minecraft.item.ItemFood",
+ "net.minecraft.potion.PotionEffect",
+ "net.minecraft.entity.player.EntityPlayer"
+ }))
public void registerItem(@Nullable String name, Item item) {
if (name != null) {
item.setRegistryName(GroovyScript.getRunConfig().getPackId(), name);
@@ -31,36 +50,75 @@ public void registerItem(@Nullable String name, Item item) {
GroovyItem.registerItem(item);
}
+ @MethodDescription(type = MethodDescription.Type.ADDITION)
public void registerBlock(String name, Block block, ItemBlock item) {
block.setRegistryName(GroovyScript.getRunConfig().getPackId(), name);
item.setRegistryName(GroovyScript.getRunConfig().getPackId(), name);
GroovyBlock.register(block, item);
}
+ @MethodDescription(type = MethodDescription.Type.ADDITION, example = @Example(value = """
+ 'dragon_egg_lamp', (new Block(blockMaterial('redstone_light')) {
+ protected static final AxisAlignedBB DRAGON_EGG_AABB = new AxisAlignedBB(0.0625D, 0.0D, 0.0625D, 0.9375D, 1.0D, 0.9375D)
+
+ AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) {
+ return DRAGON_EGG_AABB
+ }
+
+ boolean isOpaqueCube(IBlockState state) {
+ return false
+ }
+
+ boolean isFullCube(IBlockState state) {
+ return false
+ }
+
+ boolean shouldSideBeRendered(IBlockState blockState, IBlockAccess blockAccess, BlockPos pos, EnumFacing side) {
+ return true
+ }
+
+ BlockFaceShape getBlockFaceShape(IBlockAccess worldIn, IBlockState state, BlockPos pos, EnumFacing face) {
+ return BlockFaceShape.UNDEFINED
+ }
+ }).setLightLevel(1.0F)""", imports = {
+ "net.minecraft.block.state.BlockFaceShape",
+ "net.minecraft.util.math.AxisAlignedBB",
+ "net.minecraft.world.IBlockAccess"
+ }))
public void registerBlock(String name, Block block) {
registerBlock(name, block, new ItemBlock(block));
}
+ @MethodDescription(type = MethodDescription.Type.ADDITION)
public void registerFluid(Fluid fluid) {
FluidRegistry.registerFluid(fluid);
}
+ @RecipeBuilderDescription(example = {
+ @Example("('heartofauniverse').setRarity(EnumRarity.EPIC).setMaxStackSize(1)"),
+ @Example("('clay_2').setMaxStackSize(5).setRarity(EnumRarity.RARE)"),
+ @Example("('clay_3').setCreativeTab(creativeTab('misc')).setEnchantedEffect()")
+ })
public GroovyItem createItem(String name) {
return new GroovyItem(name);
}
+ @RecipeBuilderDescription(description = "groovyscript.wiki.minecraft.content.createBlock.description0")
public GroovyBlock createBlock(String name, Material material) {
return new GroovyBlock(name, material);
}
+ @RecipeBuilderDescription(description = "groovyscript.wiki.minecraft.content.createBlock.description1", example = @Example("('generic_block')"))
public GroovyBlock createBlock(String name) {
return new GroovyBlock(name, Material.ROCK);
}
+ @RecipeBuilderDescription(example = @Example("('amongium').setMetalTexture().setColor(0x00FF00)"))
public GroovyFluid.Builder createFluid(String name) {
return new GroovyFluid.Builder(name);
}
+ @MethodDescription(type = MethodDescription.Type.ADDITION, priority = 500)
public CreativeTabs createCreativeTab(String name, ItemStack icon) {
return new CreativeTabs(name) {
@@ -71,6 +129,7 @@ public CreativeTabs createCreativeTab(String name, ItemStack icon) {
};
}
+ @MethodDescription(type = MethodDescription.Type.ADDITION, priority = 500)
public CreativeTabs createCreativeTab(String name, Supplier
groovyscript.wiki.{@link com.cleanroommc.groovyscript.compat.mods.GroovyContainer#getModId() {modId}}.{@link com.cleanroommc.groovyscript.registry.VirtualizedRegistry#getName() {name}}.operation.query
+ *
groovyscript.wiki.{@link com.cleanroommc.groovyscript.compat.mods.GroovyContainer#getModId() {modId}}.{@link com.cleanroommc.groovyscript.registry.VirtualizedRegistry#getName() {name}}.operation.removing
+ *
groovyscript.wiki.{@link com.cleanroommc.groovyscript.compat.mods.GroovyContainer#getModId() {modId}}.{@link com.cleanroommc.groovyscript.registry.VirtualizedRegistry#getName() {name}}.operation.values
+ *
groovyscript.wiki.{@link com.cleanroommc.groovyscript.compat.mods.GroovyContainer#getModId() {modId}}.{@link com.cleanroommc.groovyscript.registry.VirtualizedRegistry#getName() {name}}.operation.adding
+ *