Skill Slots
Adds player skill slots for item-based skills for mods and modpacks
Quick challenge
How far can you run before the mobs catch you?
Minecraft check
Confirm your run
Complete the quick check to get your code.
Skill Slots
Skill Slots is a mod that adds player skill slots for item-based skills. You can use KubeJS or Java code to create your own skills.
```js // priority: 0 // Server script
// Make your item can be put in skill slots // If the item already has a right-click function, the skill already works now ServerEvents.tags('item', event => { event.add('skillslots:skill', 'minecraft:diamond') })
// Of course, you can use KubeJS to create an item, and add some fancy right-click function to it ItemEvents.rightClicked('minecraft:diamond', event => { event.player.tell('You right clicked a diamond!') // Cooldown, works event.player.addItemCooldown(event.item, 60) })
// This event will also be called when using the skill BlockEvents.rightClicked(event => { // Check the item cooldown by yourself event.player.tell('You right clicked a block!') })
// Here you will know how to get access to the skill slots from a player ItemEvents.rightClicked('minecraft:emerald', event => { let handler = Java.loadClass('snownee.skillslots.SkillSlotsHandler').of(event.player)
let diamond = Item.of('minecraft:diamond') // Here are some NBT options to customize the skill diamond.nbt = {} diamond.nbt.SkillSlots = { UseDuration: 20, IconScale: 1.5, // CanBeToggled: true, // make your skill work as a passive skill. the player can toggle it on/off ChargeCompleteSound: 'minecraft:entity.player.levelup', // leave it empty to mute }
// In config, you can disable the player ability to change skills // Here is an example to change the skill through KubeJS handler.setItem(0, diamond)
// Example of checking if the player has a skill that can be toggled and currently activated let index = handler.findActivatedPassiveSkill(skill => skill.item.id === 'minecraft:diamond') if (index !== -1) { let skill = handler.skills.get(index) event.player.tell(skill.item.id) } }) ``` You can use `handler.setSlots(int)` to set the amount of the unlocked slots, or use the Slot Unlock item provided by this mod.
The colored button border is provided only when JEI is installed.
