/
InsaneLib.ONE_DECIMAL_FORMATTERMCUtils.computeFoodFormula using EvalExfeature_enabled neoforge condition and loot conditionPlayerUseItemMovSpeedEvent and PlayerSprintEventClientUtils/insanelib command, but, more importantly, added a new subcommand get_data_components
/insanelib get_data_components <item> you can get a list of all the data components that are currently applied to the itemitem_components)
remove_components, a list of components to remove from the itempriority, integer value. When multiple json target the same item, components are merged — higher priority wins per component type.data/<namespace>/item_definitions/strong_diamond_sword.json will make diamond swords have 50 Attack Damage and 2000 durability{
"item": "minecraft:diamond_sword",
"components": {
"minecraft:max_damage": 2000,
"minecraft:attribute_modifiers": {
"modifiers": [
{
"type": "minecraft:generic.attack_damage",
"id": "minecraft:attack_damage",
"amount": 50.0,
"operation": "add_value",
"slot": "mainhand"
}
]
}
}
}
ObjTagValue.LIST_TYPEIdTagValue as ObjTagValueObjTag#asHolderMCUtils.createPotionStackFromEffectInstancesILModConfig to prevent having to create a config class each mod
public static ILModConfig CONFIG;
public YourMod(IEventBus modEventBus, ModContainer modContainer) {
CONFIG = new ILModConfig(MOD_ID, ModConfig.Type.COMMON, modEventBus,
Modules::init, InsaneLib.class.getClassLoader());
modContainer.registerConfig(ModConfig.Type.COMMON, CONFIG.spec, MOD_ID + "/common.toml");
}
ILModConfig constructor
public static ILModConfig CONFIG;
public YourMod(IEventBus modEventBus, ModContainer modContainer) {
CONFIG = new ILModConfig(location("main"), "Main", ModConfig.Type.COMMON, modEventBus,
Modules::init, InsaneLib.class.getClassLoader());
modContainer.registerConfig(ModConfig.Type.COMMON, CONFIG.spec, MOD_ID + "/common.toml");
}
Features in single module mods can now omit the module parameter in @LoadFeaturePort to 1.21.1
This version contains most of the player features (missing Better Falling Blocks) + everything needed to make MPR work.
spawn_type tag, neoforge already does that with neoforge:spawn_type NBT Tag