猫史档案馆


怎么编对话和传送的代码?

用户:单纯的乌力力gBbX单纯的乌力力gBbX查看:2 回复:3 评论:2 创建时间:2022-05-22T10:26:05


请教一下各位怎么编对话和传送的代码


回复

上一页1 页 / 共 1下一页
我是昵称哦我是昵称哦

const shop_npc_one = world.querySelector('#传送')
shop_npc_one.enableInteract = true
shop_npc_one.interactRadius = 3
shop_npc_one.onInteract(({ entity }) => {
    entity.player.spawnPoint = new Box3Vector3(0, 0, 0)
    entity.player.forceRespawn()
})

点赞0


评论


我是昵称哦我是昵称哦

world.onPlayerJoin(({entity}) => {  //当玩家进入地图触发
    entity.num = 0  //新建私有变量num
})

// 新建一个文本对话框函数
function textDialog(entity, content, title){
    return entity.player.dialog({ 
        type: Box3DialogType.TEXT,  // 对话框类型
        content,  //对话框内容
        title,  // 对话框标题
    })
}
global.textDialog = textDialog  //将global.textDialog命名为textDialog

for(const npc of world.querySelectorAll('.NPC')){ //搜索全部带有NPC标签的实体
    npc.enableInteract = true //开启交互
    npc.interactRadius = 2 //设置交互距离为3
    npc.interactHint = npc.id  //将npc.interactHint命名为npc.id
    npc.onInteract(async({entity})=>{ 
        if(npc.id == "可以改"){
            if(entity.num == 0){
                textDialog(entity, "可以改", npc.id)
                entity.num = 1
            }else if(entity.num == 2){
                textDialog(entity, "可以改", npc.id)
                entity.num = 4
            }
        }else if(npc.id == "可以改"){
            if(entity.num == 0){
                textDialog(entity, "可以改",npc.id)
            }else if(entity.num == 1){
                textDialog(entity,"可以改", npc.id)
                entity.num = 2
            }
        }
    })
}

点赞0


评论


我是昵称哦我是昵称哦

imgsrc="https://static.codemao.cn/emoji/codemao/%E7%BC%96%E7%A8%8B%E7%8C%AB_%E6%90%93%E5%A4%B4.gif"alt="emotion_编程猫_搓头"

点赞0


评论