跳转至内容

[原创][KubeJS]简单的以tick实现的嘲讽

灵感大王
3 3 86 1
  • 首先,先startup_scripts在注册一个药水效果buff:

    StartupEvents.registry('mob_effect', event => {
        event.create('fast:taunt_effect')
            .beneficial() // 嘲讽
            .effectTick((mob, lvl) => {
            global.TauntEffectEvent(mob, lvl)
            })
    })
    

    并在server_scripts实现对应效果:

    global.TauntEffectEvent = (mob, lvl) => {
                if (!mob || mob.level.isClientSide()) return
                if (mob.age % 20 != 0) return
                let mobAABB = mob.boundingBox.inflate(16)
                mob.level.getEntitiesWithin(mobAABB).forEach(entity => {
                    if (!entity) return
                    if (!entity.isLiving() || !entity.isAlive()) return;
                    if (typeof entity.setTarget === 'function') { 
                        entity.setTarget(mob);
                    }
                })
    }
    

    当你获得buff后就会被追着锤了()

    如何获得buff?

    entity.potionEffects.add('fast:taunt_effect', 100, 0, false, false);
    

    在事件上获得实体并使用这个方法给实体100tick的嘲讽 100可改成自己需要的时间

  • I know, man, 但你必须先攻击那个……

  • 我必须先攻击拥有嘲讽的随从


相关推荐


  • [原创][KubeJS 6] 物品投射实现飞剑

    灵感大王 kubejs entityjs
    2
    3 赞同
    2 帖子
    110 浏览
    不是客服M
    cool
  • [原创][KubeJS]kubejs获取玩家所处坐标的结构

    妙妙工具 kubejs
    1
    1 赞同
    1 帖子
    110 浏览
    忆然
    本文使用:CC-BY-NC-SA 4.0协议 直接上代码 在此推荐下来自ZZZank的ProbeJS Legacy (已经支持1.20.1了(喜)) /** * 获取实体坐标的所有结构 * @param {Internal.Entity} entity * @returns {$StructureStart_[]} */ function getAllStructuresAt(entity) { let structureList = [] /**@type {$ServerLevel_} */ let serverLevel = entity.level let entityPos = entity.block.pos /** @type {Internal.Structure[]} */ let structureArray = serverLevel.structureManager().getAllStructuresAt(entityPos).keySet().toArray() for (let structure of structureArray) { let structureStart = serverLevel.structureManager().getStructureAt(entityPos, structure) if (structureStart.isValid()) { structureList.push(structureStart) } } return structureList }
  • 0 赞同
    11 帖子
    476 浏览
    不是客服M
    Override被爆掉确实很奇怪…