我有一个游戏,你可以与NPC互动,他们给出了多个答案。 我已经搜索了教程和演示,但它们都与Unity有关。
我对Javascript很新,所以我不知道从哪里开始进行文本对话 系统允许我(1)在初始“命中”(我已经能够做到)上显示文本,(2)给出该问题的分支答案,(3)并以某一行文本结束,( 4)能够按“Enter”键继续对话。
我现在能想到的唯一方法是使用大量的If语句。但有更清洁的方法吗?
答案 0 :(得分:1)
一种方法是创建一个函数,其中输入是用户选择的:
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');
答案 1 :(得分:0)
是的,请看这个关于开关的页面:
http://www.w3schools.com/js/js_switch.asp