= 创作分享 =
你问我答
crt魔改检测成就事件来给予玩家永久药水效果的代码求教 ...
zykzz

crt魔改检测成就事件来给予玩家永久药水效果的代码求教

zykzz 于 2023-10-7 22:25 ( 7月前 ) [复制链接] [只看楼主] [打印]
520 3
5RF
代码如下
import crafttweaker.api.events.CTEventManager;

// 检测玩家是否获得成就事件
CTEventManager.register<crafttweaker.api.event.entity.player.MCAdvancementEvent>(event => {

    val entity = event.getEntityLiving();

    // 判断玩家是否获得了"goety:goety/become_lich"成就
    if event.getId(goety:goety/become_lich){
        // 给予玩家永久的"watersource:water_restoring"药水效果
        player.applyPotionEffect("watersource:water_restoring", 0, 0, 0, true, true);
    }
    }
);

求教有什么问题,以及改进方法。一直报错说 "9:24 expect )"但是找不到哪里缺的。wiki也搞不懂

发表于 2023-10-7 22:25:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

回复 | 举报

该帖共收到 3 条回复!
YoruNina
goety:goety/become_lich 此处应该是字符串吧
  1. "goety:goety/become_lich"
复制代码
发表于 2023-10-17 23:00:02 | 只看该作者

回复 | 举报

zykzz
YoruNina 发表于 2023-10-17 23:00
goety:goety/become_lich 此处应该是字符串吧

这是一个问题,但改了还是报错
发表于 2023-10-24 16:12:47 | 只看该作者

回复 | 举报

YoruNina
zykzz 发表于 2023-10-24 16:12
这是一个问题,但改了还是报错

上文你只赋值了entity,没有赋值player,导致下文引用空指针了。
要么上文那里getPlayer(),要么下面改成entity.apply
发表于 2023-10-24 23:03:42 | 只看该作者

回复 | 举报

百科目前不允许匿名发帖哦~ 请先 [ 登陆 ][ 注册 ] 吧~

本版积分规则

发新帖
  • 回复
  • 点评
  • 评分

[ MC百科(mcmod.cn) 除另有声明,所有开放公共编辑的内容均使用 BY-NC-SA 3.0 协议 ]

Minecraft百科CC协议
快速回复 返回顶部 返回列表