#questions on PlayerEvent.tick

4 messages · Page 1 of 1 (latest)

fervent frigate
#

I found that e.player.level.time returns undefine in 1.20. How do I solve this problem? Here is my code for reference.

const durationConst = 400;

const set = {
    "name": "minecraft:diamond",
    "requirements": 2,
    "effects": [
        {
            "effect": "regeneration",
            "duration": durationConst,
            "amplifier": 0
        }
    ]
}

const sets = [set];

PlayerEvents.tick(e => {
    const { headArmorItem, chestArmorItem, legsArmorItem, feetArmorItem } = e.player;
    console.log(e.player.level.time);
    if (e.player.level.time % 100 == 0) {
        for (let armorSet in sets) {
            var setCount = 0;
            if (headArmorItem.id === sets[armorSet].name + '_helmet') {
                setCount ++
            };
            if (chestArmorItem.id === sets[armorSet].name + '_chestplate') {
                setCount ++
            };
            if (legsArmorItem.id === sets[armorSet].name + '_leggings') {
                setCount ++
            };
            if (feetArmorItem.id === sets[armorSet].name + '_boots') {
                setCount ++
            };
            console.log(setCount);
            if (setCount >= sets[armorSet].requirements) {
                for (let x in sets[armorSet].effects) {
                    e.player.potionEffects.add(sets[armorSet].effects[x].effect, sets[armorSet].effects[x].duration, sets[armorSet].effects[x].amplifier);
                }
            };
        };
    };
});
teal onyxBOT
#

Once your ticket has been resolved, please close it with </ticket close:1054771505520717835> command!

lavish jewel
#

Probably not integrated yet. There's also a e.level.time

fervent frigate