用户:
神岛吉吉喵查看:20 回复:24 评论:20 创建时间:2022-04-11T16:18:13
本期优秀代码教程师代表:@(恶.管)tiger666250 同学!

主题(实现效果)
多重对话之术!
地图需包含两个npc模型
与A对话(弹窗)后会接到与B对话的任务
在与B对话完成任务后回来和A互动
将会触发不同的对话内容
https://www.bilibili.com/video/BV1GY411E7La?spm_id_from=333.999.0.0
代码如下:
console.clear()
async function text(entity, title, content) {//将一个text封装成函数,调用时更加的简单
return await entity.player.dialog({
type: Box3DialogType.TEXT,//text
title,//标题
content//内容
})
}
//正片开始
for (const npc of world.querySelectorAll('.npc')) {//在地图中找到所有有npc标签的实体
npc.enableInteract = true;//你可以和npc互动
npc.interactRadius = 5;//互动范围为5
npc.interactHint = npc.id//实体名称为模型的id
if (npc.id == '吉吉喵') {//如果他是吉吉喵
npc.onInteract(async ({ entity }) => {//判断互动
if (entity.jq == 1) {//如果剧情变量为1时,应该让吉吉喵给玩家布置任务
//以下是剧情
text(entity, '吉吉喵', `${entity.player.name},我做好了一碗鸡汤,快去给雷电猴吃吧!`)
text(entity, '吉吉喵', `把鸡汤给了雷电猴后就过来报道哦~`)
text(entity, '吉吉喵', `任务1:把鸡汤给雷电猴`)
entity.player.directMessage('你获得了一碗 鸡汤')
//变量调整,让玩家去找雷电猴
entity.jq = 2;
} else if (entity.jq == 2) {//如果剧情变量为2时,吉吉喵没有需要干的事情,但是为了使情节丰富,我加了一句
text(entity, '吉吉喵', `你任务没有完成,完成后再回来`);
} else if (entity.jq == 3) {//如果剧情变量为3时,吉吉喵的任务完成了~
text(entity, '吉吉喵', `啊哈哈哈哈哈哈哈哈哈哈哈哈我的任务完成啦~`);
}
})
}
if (npc.id == '雷电猴') {//如果他是雷电猴
npc.onInteract(async ({ entity }) => {//判断互动
if (entity.jq == 1) {//如果剧情变量为1时,雷电猴不知道发生了什么,为了使情节丰富,我又加了一句
text(entity, '雷电猴', `hi`)
} else if (entity.jq == 2) {//如果剧情变量为2时,雷电猴应该要把鸡汤喝了
//以下是剧情
text(entity, '雷电猴', `这是吉吉喵给我的鸡汤是吧,我试试,你看喝鸡汤多是一件美事啊~~`);
text(entity, '雷电猴', `雷电猴喝下了鸡汤`);
text(entity, '雷电猴', `任务2:回去找吉吉喵报道吧`)
entity.player.directMessage('你的任务完成了,可以回去报道了')
//变量调整,让玩家回去报道
entity.jq = 3;
} else if (entity.jq == 3) {//如果剧情变量为3时,雷电猴喝完了鸡汤,认为鸡汤味道好极了
text(entity, '雷电猴', `这鸡汤不咸不淡,味道好极了!`);
}
})
}
}
world.onPlayerJoin(async ({ entity }) => {//如果玩家进入地图,将玩家的剧情变量变成1
entity.jq = 1;//剧情,用来判断剧情的变量
})
入选教程师的标准除了能够实现主题功能之外
详细的注释、简洁的代码风格等因素都是非常重要的
加油!

API文档:https://docs.box3.codemao.cn/
该账号已被封禁诶 这喝吉汤多是一件霉逝啊——
又氙又氮 味道真是好极了
诶 大家喝啊 喝啊
诶 tnnd 为什么不喝! 喝! 喝!
nnd,不喝是吧 不喝我就——炸↑死↓倪!
哈——哈!哈哈哈哈——哈 我滴任务——van♂成垃!
点赞1
评论
正片开始!
老吉:啊哈哈哈哈哈哈哈!鸡汤来喽,菜齐了,这怎么还不吃啊?
编大队长:大伙都不敢吃,说是有人在菜里下毒~有人是谁自己领悟~
老吉:雷司令,不会相信编大队长胡说八道吧?
雷司令:我相信,非常信,你要没在鸡汤里下毒~就拿这碗鸡汤下肚~
老吉:这鸡汤啊,十分珍贵,我这催逝员,受之有愧。
雷司令:你要是不喝,心里有鬼。
老吉:害羞羞雷司令就爱开玩笑!喝汤,美逝啊。司令看看我,没逝吧?你得带头,喝了它,快快趁热喝,趁热
老吉:喝!****为什么都不喝!都不喝!喝!都怕喵吧不喝也别h着!别h着!
老吉:不演了,我就是高级特工穿山吉,陛下我的任务完成了!
老吉:*!****给我玩音的是吧?直接来吧!
老吉倒下了,全剧终。
导演:奇异果博士
编剧:奇异果博士
策划:奇异果博士
吉吉喵 饰 老吉 人物原型:老冯
编程猫 饰 编大队长 人物原型:王大队长
雷电猴 饰 雷司令 人物原型:屑司令
感谢观看!
点赞3
评论
卑微OIerwc,我写的比他还短,兼容性比他强,无语
他这个jq我能猜出来我倒立)
之前我帮tiger屑代码,结果喵全是乱起暴躁的中文缩写
技能:jn金币喵
我崩塌屑技能的时候没想到它叫world.jn
然后一看又有一个jn
点赞1
评论
Weeb_ETOimgsrc="https://static.codemao.cn/emoji/codemao/%E7%BC%96%E7%A8%8B%E7%8C%AB_%E5%8A%A0%E6%B2%B9.gif"alt="emotion_编程猫_加油"
点赞0
评论