#[Resolved]Only activate cooldown after complete use duration of the item

1 messages · Page 1 of 1 (latest)

tulip iron
#

I currently have an item which need to be used for a bit to activate its ability, the cooldown however, starts as soon as the item is interacted with.

#

Item Json:

{
    "format_version": "1.21.30",
    "minecraft:item": {
        "description": {
            "identifier": "vcs:laser_blazer",
            "menu_category": {
                "category": "equipment",
                "group": "itemGroup.name.sword"
            }
        },
        "components": {
            "minecraft:max_stack_size": 1,
            "minecraft:icon": {
                "textures":{
                    "default":"laser_blazer"
            }
            },
            "minecraft:custom_components":[
            "vcs:power_up"
            ],
            "minecraft:damage": {"value": 15},
            "minecraft:can_destroy_in_creative": false,
            "minecraft:enchantable": {
                "slot": "sword",
                "value": 15
            },
            "minecraft:use_modifiers":{
                "use_duration":5.0,
                "movement_modifier": 1.0
            },
            "minecraft:use_animation":{
                "value":"spear"
            },
            "minecraft:cooldown":{
                "category":"vc:power",
                "duration":120
            },
            "minecraft:durability": {
                "max_durability": 2064
            },
            "minecraft:repairable": {
                "repair_items": [
                    {
                        "items": ["vcs:void_steel_ingot"],
                        "repair_amount": 517
                    }
                ]
            },
            "minecraft:hand_equipped":true,
            "minecraft:tags":{
                "tags":["vcs:sword"]
            }

    
        
}
    }
}
#

Script Event:```
onCompleteUse({source,itemStack}) {
if(itemStack.keepOnDeath === false){
const inventory = source.getComponent("inventory").container;
itemStack.keepOnDeath = true
inventory.setItem(source.selectedSlotIndex, itemStack)
}
source.addEffect("resistance",1200,{
amplifier: 2,
showparticles: false
})
source.addEffect("regeneration",1200,{
amplifier: 3,
showparticles: false
})
source.runCommand("playanimation @s animation.power_up a 0 query.is_moving")
source.runCommand("particle vcs:power_up ~ ~ ~")
source.startItemCooldown("vc:power",2400)
}

#

Nevermind I solved my own problem 🤦‍♂️

#

[Resolved]Only activate cooldown after complete use duration of the item