2013-10-12 1 views
0

У меня есть игра, в которой вы взаимодействуете с NPC, и они дают несколько ответов. Я искал учебники и демонстрации, но все они в основном связаны с Единством.Создание текстовых диалогов для Javascript игры

Я довольно новичок в Javascript, поэтому не знаю, с чего начать с текстового диалога , который позволяет мне (1) показывать текст на начальном «ударе» (который я уже смог do), (2) дать ответ ветвления на этот вопрос, (3) и закончить на определенной строке текста, (4), имея возможность нажать клавишу «Ввод», чтобы продолжить разговор.

Единственный способ, о котором я могу думать сейчас, - использовать множество утверждений If. Но есть ли более чистый способ сделать это?

ответ

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');