Reorganize game initialization a bit, providing default answer for skin and gender and generating the character by sending the query to the server
This commit is contained in:
parent
163350d009
commit
59556d8515
1 changed files with 35 additions and 28 deletions
|
@ -78,45 +78,52 @@ function Automaton(async, dom, messaging, screen, session, ui) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function newGame() {
|
function newGame() {
|
||||||
|
var message = { tag: 'Initialize' };
|
||||||
|
var set = function(key) {
|
||||||
|
return function(value) {
|
||||||
|
message[key] = value;
|
||||||
|
return async.wrap(value);
|
||||||
|
};
|
||||||
|
};
|
||||||
ui.frame('GameInit');
|
ui.frame('GameInit');
|
||||||
messaging.send({tag: 'NewGame'});
|
messaging.send({tag: 'NewGame'});
|
||||||
async.run(
|
async.run(
|
||||||
async.bind(setName(), setSkin)
|
session.update(),
|
||||||
|
async.bind(
|
||||||
|
askName(),
|
||||||
|
set('name'),
|
||||||
|
askSkin,
|
||||||
|
set('skin'),
|
||||||
|
askGender,
|
||||||
|
set('gender')
|
||||||
|
),
|
||||||
|
async.apply(messaging.send, message)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
function setName() {
|
function askName() {
|
||||||
return async.sequence(
|
return async.sequence(
|
||||||
async.parallel(
|
|
||||||
async.sequence(
|
async.sequence(
|
||||||
ui.text("Bonjour ! Bienvenue dans le monde merveilleux des pokémons !"),
|
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("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 ?")
|
ui.text("Mais, dis-moi, tu viens d'arriver dans la ville non ? Comment t'appelles-tu ?")
|
||||||
),
|
),
|
||||||
session.update()
|
ui.ask(choices.name)
|
||||||
),
|
);
|
||||||
async.bind(ui.ask(choices.name), function(name) {
|
}
|
||||||
screen.clear('text');
|
|
||||||
messaging.send({
|
function askSkin(name) {
|
||||||
tag: 'Initialize',
|
|
||||||
step: 'Name',
|
|
||||||
value: name
|
|
||||||
});
|
|
||||||
return async.sequence(
|
return async.sequence(
|
||||||
session.update(),
|
async.apply(screen.clear, 'text'),
|
||||||
async.wrap(name)
|
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 ?"),
|
||||||
);
|
async.wrap('/images/characters/0.png')
|
||||||
})
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
function setSkin(name) {
|
function askGender() {
|
||||||
return async.sequence(
|
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 ?")
|
async.apply(screen.clear, 'text'),
|
||||||
|
async.wrap('NB')
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
function setGender() {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue