Give any item to any entity when it spawns using CraftTweaker.
Support for gamestages and packmode (in the versions they exist)!
Requires CraftTweaker
1.18-1.19 Version Usage:
This mod uses the MultiLoader template! Versions not marked forge or fabric on their name are Forge by default! Enjoy!
Documentation for the 1.18 version can be found here: https://docs.blamejared.com/1.18/en/mods/armoreablemobs/ArmorGroup
Documentation for the 1.19 version can be found here: https://docs.blamejared.com/1.19/en/mods/ArmoreableMobs/ArmorGroup
1.16 Version Usage:
The 1.16 version syntax can be found at the crafttweaker documentation page: https://docs.blamejared.com/1.16/en/mods/ArmoreableMobs/ArmoreableMobs
1.12 Version Usage:
You need craftweaker to use the mod and use it with a script. First of all import:
import mods.armoreablemobs.ArmorHandler;
import mods.armoreablemobs.ArmorEntity;
import mods.armoreablemobs.ArmorSlot;
import mods.armoreablemobs.ArmorGroup;
ArmorGroup
After that create an ArmorGroup with:var group = ArmorHandler.createArmorGroup("draconic", 0.5);
. The group arguments are: (String name, double chanceToGetUsed)
To an ArmorGroup you can add any amount of ArmorEntity you want with group.addEntity(entity);
To an ArmorGroup you can add any amount of ArmorSlot you want with group.addArmor(armorSlot);
ArmorSlot
An ArmorSlot defines an item in a slot and can be created with ArmorHandler.createArmorSlot("head", <draconicevolution:draconic_helm>.withTag({Energy: 16000000}), 1, 0.5)
. The arguments are: (String slotName, IItemStack stack, int itemWeight, double chanceToDropOnDeath)
The possible slots are: ["head", "chest", "legs", "feet", "feet", "mainhand", "offhand"]
. You can add multiple ArmorSlots to each slot and it will randomly be choosen depending on the itemWeight
, the bigger the number the bigger the chance. chanceToDropOnDeath
is a number between 0 and 1 that defines the chance that the item has to drop on death.
ArmorEntity
An ArmorEntity defines information that an Entity needs to have to be given in the items defined with ArmorSlots. It can be created with var entity = ArmorHandler.createArmorEntity("minecraft:zombie");
where the argument is the Entity ID. You can add NBT checks to filter the entity with entity.withNBTCheck("Health", 10.0, "GREATER");
with arguments (String nbtId, Object value, String checkingMode)
, The checking modes can be ["LESS", "EQUAL", "GREATER", "CONTAINS", "TAG_EXISTS", "TAG_MISSING"]
.
GameStages Support
This mod provides GameStages to groups with group.addGameStage("testStage");
. Nearby players need to have all the stages added to the group to be able to get used.
PackMode Support
Adding a pack mode to an ArmorGroup it will allow you to filter groups without the need of restarting the game. group.setPackMode("packMode");
Example and Wiki