{ actor: logic.player, text: "Haha! I always get it, Saiki!" } ] ));
logic.closeDoor("carlosdoor");
logic.openDoor("saikidoor");
- // FIXME: Abrupt game over.
- if (!logic.carlos.pigsemen) game.time.events.add(Phaser.Timer.SECOND * 15, game.state.start, game.state, 'GameOver', false);
+ logic.openDoor("peterdoor");
break;
case 1:
logic.gameinterface.talk(new Dialogue( [ { actor: this, text: "Now that I think about it, there's still one thing. You could look into why the access control system is acting so funny today." },
actionTake() {
logic.closeDoor("carlosdoor");
logic.openDoor("saikidoor");
+ logic.openDoor("peterdoor");
logic.carlos.kill();
- // FIXME: Abrupt game over.
- game.time.events.add(Phaser.Timer.SECOND * 15, game.state.start, game.state, 'GameOver', false);
return super.actionTake();
}
return (logic.carlos.alive);
}
- makeHappy() {
- // FIXME: Abrupt game over.
- game.time.events.add(Phaser.Timer.SECOND * 15, game.state.start, game.state, 'GameOver', false);
- super.makeHappy();
- }
-
tpDone(value) {
console.log("Woot-woot! Teleport complete:", value);
value.makeHappy();
}
}
+class NPC_Peter extends GameNPC {
+ actionTake() {
+ logic.closeDoor("saikidoor");
+ logic.openDoor("peterdoor");
+ logic.openDoor("biancadoor");
+ return super.actionTake();
+ }
+}
+
+class NPC_Bianca extends GameNPC {
+ actionTake() {
+ // All doors open for you if you have all the cards.
+ logic.openDoor("cutedoor");
+ logic.openDoor("carlosdoor");
+ logic.openDoor("saikidoor");
+ return super.actionTake();
+ }
+}
+
class GameInterface extends Phaser.Group {
constructor(game, parent) {
newChar = new NPC_Saiki(object.x, object.y, 'saiki', "Saiki", "Saiki Ytpme", 150);
this.saiki = newChar;
break;
+ case 'peter':
+ newChar = new NPC_Peter(object.x, object.y, 'peter', "Peter", "Peter Tluaf", 225);
+ this.peter = newChar;
+ break;
+ case 'bianca':
+ newChar = new NPC_Bianca(object.x, object.y, 'bianca', "Bianca", "Bianca Gnihton", 150);
+ this.bianca = newChar;
+ break;
default:
console.error("Unknown character:", object);
}
game.load.image('clara', 'clara.png');
game.load.image('carlos', 'carlos.png');
game.load.image('saiki', 'saiki.png');
+ game.load.image('peter', 'peter.png');
+ game.load.image('bianca', 'bianca.png');
game.load.image('tileset', 'tileset.png');
game.load.image('objects', 'objects.png');
game.load.tilemap('gamemap', 'tilemap.json', null, Phaser.Tilemap.TILED_JSON);