HomeJavaMods[Cobblemon] TrainerAttributesLib
[Cobblemon] TrainerAttributesLib
ModsJava

[Cobblemon] TrainerAttributesLib

by the_number_two · on Modrinth

⬇ Download on Modrinth
[Cobblemon] TrainerAttributesLib — screenshot 1

Integrates Minecraft's attribute system with Cobblemon.

Things such as catch chance, shiny chance, and experience earned per battle can be modified.

Mostly intended for use with Accessories or Curios, though the attributes do apply when on pieces of armor. (but not tools)

If I ever truly decide to stop being lazy I'll port it over to forge as well.

Free for use whereva.

Features

Current Attributes Supported:

Example

class MudkipCharm() : AccessoryItem(
    Item.Settings().component(
        DataComponentTypes.ATTRIBUTE_MODIFIERS as ComponentType<AttributeModifiersComponent>,
        AttributeModifiersComponent.builder()
            .add(
                Registries.ATTRIBUTE.getEntry(TrainerAttributes.TYPED_SPAWN_CHANCE_ATTRIBUTE.getAttributeOfType(
                    ElementalTypes.FIRE
                )),
                EntityAttributeModifier(
                    TrainerAttributes.TYPED_SPAWN_CHANCE_ATTRIBUTE.getIdentifierOfTypedAttribute(ElementalTypes.FIRE),
                    5.50,
                    EntityAttributeModifier.Operation.ADD_MULTIPLIED_BASE
                ),
                AttributeModifierSlot.ANY
            )
            .add(
                Registries.ATTRIBUTE.getEntry(TrainerAttributes.TYPED_BONUS_IVS_ATTRIBUTE.getAttributeOfType(
                    ElementalTypes.WATER
                )),
                EntityAttributeModifier(
                    TrainerAttributes.TYPED_BONUS_IVS_ATTRIBUTE.getIdentifierOfTypedAttribute(ElementalTypes.WATER),
                    5.0,
                    EntityAttributeModifier.Operation.ADD_VALUE
                ),
                AttributeModifierSlot.ANY
            )
            .add(
                Registries.ATTRIBUTE.getEntry(TrainerAttributes.STAT_BONUS_IVS_ATTRIBUTE.getAttributeOfStat(Stats.HP)),
                EntityAttributeModifier(
                    TrainerAttributes.STAT_BONUS_IVS_ATTRIBUTE.getIdentifierOfStatAttribute(Stats.HP),
                    5.0,
                    EntityAttributeModifier.Operation.ADD_VALUE
                ),
                AttributeModifierSlot.ANY
            )
            .add(
                Registries.ATTRIBUTE.getEntry(TrainerAttributes.BONUS_IVS_ATTRIBUTE),
                EntityAttributeModifier(
                    TrainerAttributesLib.getIdentifier("bonus_ivs"),
                    5.0,
                    EntityAttributeModifier.Operation.ADD_VALUE
                ),
                AttributeModifierSlot.ANY
            )
            .add(
                Registries.ATTRIBUTE.getEntry(TrainerAttributes.CATCH_CHANCE_BOOST_ATTRIBUTE),
                EntityAttributeModifier(
                    TrainerAttributesLib.getIdentifier("catch_chance_boost"),
                    0.05,
                    EntityAttributeModifier.Operation.ADD_MULTIPLIED_BASE
                ),
                AttributeModifierSlot.ANY
            )
            .add(
                Registries.ATTRIBUTE.getEntry(
                    TrainerAttributes.TYPED_CATCH_CHANCE_BOOST_ATTRIBUTE.getAttributeOfType(ElementalTypes.WATER)
                ),
                EntityAttributeModifier(
                    TrainerAttributes.TYPED_CATCH_CHANCE_BOOST_ATTRIBUTE.getIdentifierOfTypedAttribute(ElementalTypes.WATER),
                    0.10,
                    EntityAttributeModifier.Operation.ADD_MULTIPLIED_BASE
                ),
                AttributeModifierSlot.ANY
            )
            .build()
    )
) {
}
Quick facts

Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.

Verified by MCModsHub

These come from our own check of the pack file, not from the source page.

Explore more