Curios API (Forge/NeoForge)

Curios API (Forge/NeoForge)

140M Downloads

Dynamic Slot Type Size - Incrementation.

psilocke opened this issue ยท 1 comments

commented

Please describe the new feature or change.
An additional option when registering a Slot Type.
Increments the Slots Type Size past the set Slot Type Size.

Ex 1:
No mods are installed that set belt slot size. Mod1 adds 1 to belt size.
Prior to incrementation, default belt slot size is 0.
Size increments by 1 due to Mod1.
Final registered belt slot size is 1.

Ex2:
Mod1 sets belt slot size to 2, Mod2 sets belt slot size to 1, Mod3 adds 1 to belt size, Mod4 adds 2 to belt size.
Mod1 wins over Mod2 due to having a higher default size, resulting in a default size of 2.
However, Mod3 and Mod4 increment on top of that by 1 and 2 respectively, resulting in a final registered belt slot size of 5.

Please describe why you want this feature.
I'm attempting to add "spare" slots using a Config file for my mod, Curious Lanterns.
Currently, I am using a custom 'hip' slot type for lantern curios because I wanted the capability of equipping a lantern while also wearing a belt from another mod. This has resulted in a number of balance complaints from users, requesting to merge the slot with the 'belt' slot type.

With the current options, to my knowledge, I am only able to set the default slot type size, which can be overwritten by another mod with a higher default slot type size. This is not ideal, as I cannot guarantee that there is always a spare belt slot for the lantern, and would require the player to manually set the number of belt slots higher within the config, rather than using a toggle boolean.

I understand this is a niche case, but I feel many other mod authors would likely find clever ways of using this feature.

commented

This is a new feature alongside the slot datapack registration in 1.20.x Curios, using an operation field to specify adding or removing slot sizes from the existing specification:
https://docs.illusivesoulworks.com/curios/slot-register#syntax