版本1.20.1
脚本位置:startup_scripts/
假如一个药水效果在移除的时候有bug,所以必须在获取的时候拦截,但是kubejs没有提供此事件,怎么办?输入这段代码:
const $ForgeRegistries = Java.loadClass('net.minecraftforge.registries.ForgeRegistries')
ForgeEvents.onEvent('net.minecraftforge.event.entity.living.MobEffectEvent',
/**
*
* @param {$EntityEvent_} event
*/
event => {
const effectId = $ForgeRegistries.MOB_EFFECTS.getKey(event.effectInstance.getEffect())
if (effectId == 'meds_and_herbs:adrenaline' && !event.entity.isPlayer()) {
event.setResult("deny")
}
})然后就可以阻止实体获取药水效果啦!(entity是目标实体,演示效果为阻止所有非玩家实体获取原版速度效果)


