跳转至内容

[原创][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 作物 forge
    2
    0 赞同
    2 帖子
    72 浏览
    忆然
    呜,硬编码名称
  • 1 赞同
    1 帖子
    171 浏览
    忆然
    本文使用:CC-BY-NC-SA 4.0协议 kjs本身提供的物品注册比较有限,在注册某些kjs未提供的item的时候我们就需要用到createCustom 如果有需要的item注册可以在本文下方留言,会考虑更新 createCustom注册model是没有的,也就是你还得去写一份model.json(这部分可以参考原版wiki) 下面是使用createCustom去注册一个弓的例子 let $BowItem = Java.loadClass("net.minecraft.world.item.BowItem") let $Item$Properties = Java.loadClass("net.minecraft.world.item.Item$Properties") StartupEvents.registry("item", event => { event.createCustom("modid:item_name", () => { let properties = new $Item$Properties() //修改耐久 为0则无耐久属性 properties.durability(0) //修改最大堆叠数量 properties.stacksTo(1) //修改稀有度 properties.rarity("epic") //创建新的bowitem let item = new $BowItem(properties) //返回新的bowitem进行注册 return item }) })
  • 美食再就业:用紫颂果慕斯进行定点传送

    灵感大王 kubejs 物品
    1
    3 赞同
    1 帖子
    50 浏览
    草莓呜咩B
    美食们可不止能饱腹而已! 紫颂果慕斯既然是紫颂果做的,就和传送脱不了关系? 现在可以将它在铁砧上改名为坐标,逗号间隔,吃了就可以传送到该坐标,是不是很方便呀。 不过还是要消耗一点点经验呢。 ItemEvents.foodEaten("kitchenkarrot:chorus_mousse", event => { let position = event.player.mainHandItem.displayName.getString().slice(1, -1).split(","); if (event.player.xpLevel < 3) event.player.statusMessage = "经验等级不足, 需要三级经验!"; else if (position.length == 3) { event.player.setPosition(position[0], position[1], position[2]); event.player.addXPLevels(-3); } }); 那么草莓慕斯会是什么效果呢?要是能召唤草莓军团就太帅了!