猫史档案馆


NPC和玩家互动怎么做?

用户:三宝六三宝六查看:3 回复:10 评论:3 创建时间:2022-12-08T11:58:06


这是我的代码,有错误吗?这还是在用户手册粘贴过来的,编辑器尽然报错!!!!

else if (npc.id == '小卖部老板') { //如果实体名是'小卖部老板'
        npc.onInteract(async ({ entity }) => { //当玩家对这个npc按E触发交互, npc问你想买哪些商品
            const goodsList = ['薯片', '可乐', '糖果'] //货品列表
            const priceList = [7, 5, 4] //价格列表
            const selection = await entity.player.dialog({
                type: Box3DialogType.SELECT, //对话框类型为选择框
                content: `你有${entity.money}元, 想买点什么呢?`,
                title: npc.id, //对话框左上角显示NPC名字
                options: ['薯片 (7元)', '可乐 (5元)', '糖果 (4元)'], //选项
            })
        })
    }

 

 


回复

上一页1 页 / 共 1下一页
植物月光花植物月光花

???写整体

点赞0


评论


无敌版滑稽战神无敌版滑稽战神

后面的缩进好像错了

点赞0


评论


三宝六三宝六

emotion_编程猫_翻白眼

点赞0


评论


37303730

else?

点赞0


评论


_HHHHHHHHHH__HHHHHHHHHH_

我觉得像是前面的else有问题

 

点赞0


评论


萌新大佬萌新大佬

报的啥错

点赞0


评论


七叶寂照秘密主promax七叶寂照秘密主promax

哈哈

和我原来一样

点赞0


评论


七叶寂照秘密主promax七叶寂照秘密主promax

要复制的话给我关注

代码附上

for (const npc of world.querySelectorAll('.NPC')) {
    npc.enableInteract = true 
    npc.interactRadius = 3 //这里是交互范围
    npc.interactHint = npc.id 
    npc.interactColor.set(0, 0, 1) //蓝色
    if (npc.id == '小卖部老板') { //如果实体名是'小卖部老板'
        npc.onInteract(async ({ entity }) => { //当玩家对这个npc按E触发交互, npc问你想买哪些商品
            const goodsList = ['薯片', '可乐', '糖果'] //货品列表
            const priceList = [7, 5, 4] //价格列表
            const selection = await entity.player.dialog({
                type: Box3DialogType.SELECT, 
                content: `你有${entity.money}元, 想买点什么呢?`,
                title: npc.id, 
                options: ['薯片 (7元)', '可乐 (5元)', '糖果 (4元)'], //选项
            })
        })
    }
} 

评论区一堆码渣

点赞0


评论


YudeYude

else先把它删了,但是title我也不知道怎样解决emotion_编程猫_翻白眼

点赞0


评论


SCS_user_rbxaHQh5aOSCS_user_rbxaHQh5aO

前缀

点赞0


评论