Implement name prompt and go on to skin selection

This commit is contained in:
Tissevert 2018-12-02 19:50:23 +01:00
parent aa6fe74a6b
commit 9bd0f127ff
2 changed files with 37 additions and 16 deletions

View file

@ -47,14 +47,9 @@ function Automaton(async, dom, messaging, screen, session, ui) {
{label: 'Continue', action: function() { messaging.send({tag: 'Resume', game: game}); }}
);
}
intro();
return {
run: run
}
function run() {
intro();
}
return {};
function intro() {
var title = dom.make('p', {textContent: "P O K E M O N", class: 'title'});
@ -84,15 +79,44 @@ function Automaton(async, dom, messaging, screen, session, ui) {
function newGame() {
ui.frame('GameInit');
messaging.send({tag: 'NewGame'});
async.run(
ui.text("Bonjour ! Bienvenue dans le monde merveilleux des pokémons !"),
ui.text("Pour certains, les pokemons sont des amis. Pour d'autres, ils sont une ressource. Pour ma part, hé bien l'étude des pokémons est mon métier mais aussi ma passion."),
ui.text("Mais, dis-moi, tu viens d'arriver dans la ville non ? Comment t'appelles-tu ?"),
async.bind(setName(), setSkin)
);
}
function setName() {
return async.sequence(
async.parallel(
async.sequence(
ui.text("Bonjour ! Bienvenue dans le monde merveilleux des pokémons !"),
ui.text("Pour certains, les pokemons sont des amis. Pour d'autres, ils sont une ressource. Pour ma part, hé bien l'étude des pokémons est mon métier mais aussi ma passion."),
ui.text("Mais, dis-moi, tu viens d'arriver dans la ville non ? Comment t'appelles-tu ?")
),
session.update()
),
async.bind(ui.ask(choices.name), function(name) {
screen.clear('text');
console.log('You picked : ' + name);
return async.wrap();
messaging.send({
tag: 'Initialize',
step: 'Name',
value: name
});
return async.sequence(
session.update(),
async.wrap(name)
);
})
);
}
function setSkin(name) {
return async.sequence(
ui.text("Ah ? Tu t'appelles " + name + " ? C'est un joli nom, ma foi. Mais je ne te vois pas très bien avec le jour tombant, dis-moi, à quoi ressembles-tu ?")
);
}
function setGender() {
}
}

View file

@ -3,11 +3,8 @@ window.addEventListener('load', function() {
async = Async();
dom = Dom();
screen = Screen(dom);
session = Session();
session = Session(async);
buttons = Buttons(session);
ui = UI(async, buttons, dom, screen, session);
automaton = Automaton(async, dom, messaging, screen, session, ui);
messaging.start();
automaton.run();
});