CataloguedTyped DataAppliers

I’ve got an idea for a series of mini plugins that could make things really configurable for admins.

Create a plugin that provides a new mechanic, optionally, on an DataHolder.

Have a config of different presets that can be applied to DataHolders for your plugin.

Register those presets as CatalogTypes as functions that take a DataHolder, and return a DataHolder with the data applied if applicable.

Suddenly we have a very flexible system for custom flags / mechanics.

ItemStacks:
Soulbound mechanic, when soulbound is applied to an ItemStack / ItemEntity the first player to pick it up is the only player that can equip the item. it stays with them on death.

Entities
NoFallDamage
NoXDamage
DoubleHealth
DoubleDamage
PvP Status

And a lot more.

Basically you can have region plugins that test to see if the flag status should be changing on a moving entity, if so, it applies / unapplies the data.

You could have commands, letting people schedule / script / command block the application of the custom data.

This is interesting, I tried looking into applying custom flags to something such as players, but couldn’t figure it out. It’s not documented enough to where I can do something with it.