为Javascript游戏创建文本对话
Creating text dialogues for Javascript game
我有一个游戏,你和NPC互动,他们会给出多个答案。我搜索了教程和演示,但它们大多与 Unity 相关。
我对Javascript相当陌生,所以我不确定从哪里开始文本对话系统允许我 (1( 在初始"命中"时显示文本(我已经能够做到(,(2( 为该问题给出分支答案,(3( 并在某一行文本上结束,(4(同时能够按"Enter"键继续对话。
我现在能想到的唯一方法是使用大量的 If 语句。但是有没有更清洁的方法呢?
一种方法是创建一个函数,其中输入是用户选择的:
function askNPC(question) {
switch(question){
case 'buy sword':
return 'here you go!';
break;
case 'sell fish':
return 'here you go!';
break;
}
}
var answer = askNPC('buy sword');
var answer = askNPC('sell fish');
另一种方法是将所有问题和答案存储在一个对象中:
var questions = {
'buy sword': 'here you go',
'sell fish': 'thank you'
}
function askNPC(question){
if(typeof questions[question] !== "undefined"){
return questions[question];
} else {
return 'Did not understand you question!';
}
}
var answer = askNPC('buy sword');
var answer = askNPC('sell fish');
是的,
看看这个关于开关的页面:
http://www.w3schools.com/js/js_switch.asp
相关文章:
- 文本框不是从Javascript/Asp.net中的对话框中打印出来的
- 用对话框覆盖文本输入
- 带有带有 jQuery 的文本框的对话框
- 如何通过imacros从弹出/对话框中复制文本并将其粘贴到字段中
- 如何在将 html 加载到对话框中后更改标签的文本
- 动态覆盖jqueryUI对话框按钮(保存,取消等到用户选择)文本
- 无法从自定义对话框中获取文本区域值
- 为Javascript游戏创建文本对话
- 如何计算对话框中文本区域的字符数
- jQuery UI 对话框 - 第二次显示未选择的文本
- 将文本与对话框中标题栏中的图像对齐
- 使用数据表行信息更新文本输入,并从对话框中编辑行
- “Jquery 模式”对话框下的“文本框丢失值”
- 为什么图像和文本在我的对话框中重叠
- 将对话框字段值设置为所选文本
- 突出显示文本的各个部分并显示包含信息的对话框
- 当使用Jquery对话框进行post-bock时,asp.net文本框值为null
- winjs:使用弹出消息对话框进行文本框内容验证和警报
- jQuery在对话框中呈现日期选择器和下面的文本
- “导入文本”对话框中的文本对齐