349283695dac5d8a203391ee61faf58d6e556a10
[interactive-pacbot.git] / game / prefabs / player.js
1 'use strict';
2
3 var Player = function(game, x, y, key, frame) {
4   Phaser.Sprite.call(this, game, x, y, key, frame);
5   this.baseKey = key;
6   this.moving = false;
7   this.scale = {x: 0.01, y: 0.01};
8   this.anchor = {x: 0.5, y: 0.5};
9   
10   this.game.physics.arcade.enableBody(this);
11
12   this.score = 0;
13   this.isMyTurn = false;
14 };
15
16 Player.prototype = Object.create(Phaser.Sprite.prototype);
17 Player.prototype.constructor = Player;
18
19 Player.prototype.update = function() {
20   var newKey = this.baseKey + (this.isMyTurn ? '' : '-dim');
21   if (this.key !== newKey) {
22     console.log('Setting sprite to ' + newKey);
23     this.loadTexture(newKey);
24   }
25 };
26
27 Player.prototype.move = function(newX, newY) {
28   if (this.moving || !this.isMyTurn) {
29     return;
30   }
31
32   this.moving = true;
33   var tween = this.game.add.tween(this).to({x: newX, y: newY}, 500);
34   tween.onComplete.add(this.finishMovement, this);
35   tween.start();
36 };
37
38 Player.prototype.finishMovement = function() {
39   this.moving = false;
40 };
41
42 module.exports = Player;