chuck.js/app/Game/Core/Control/PlayerController.js
logsol 3a5af058ef Prevents adding damage after round has ended
Because it created double round endings, which led to crashes.
Also moved inBetweenRound state from PlayerController to GameController.
2016-10-01 19:12:52 +02:00

63 lines
No EOL
1.5 KiB
JavaScript
Executable file

define([
],
function () {
function PlayerController (player) {
this.player = player;
this._shift;
this._isJumping;
this._walkingDirectionStatus = 0;
}
PlayerController.prototype.moveLeft = function () {
if(!this.isPlayerInputAllowed()) return;
this.player.move(-1);
this._walkingDirectionStatus = -1;
}
PlayerController.prototype.moveRight = function () {
if(!this.isPlayerInputAllowed()) return;
this.player.move(1);
this._walkingDirectionStatus = 1;
}
PlayerController.prototype.stop = function () {
this.player.stop();
this._walkingDirectionStatus = 0;
}
PlayerController.prototype.jump = function () {
if(!this.isPlayerInputAllowed()) return;
this._isJumping = true;
this.player.jump();
}
PlayerController.prototype.jumpStop = function () {
this.player.jumpStop();
}
PlayerController.prototype.lookAt = function (options) {
if(!this.isPlayerInputAllowed()) return;
if(options) this.player.lookAt(options.x, options.y);
}
PlayerController.prototype.update = function () {
if(this._walkingDirectionStatus != 0) {
this.player.move(this._walkingDirectionStatus);
}
}
// Default behaviour - may be needed later?
PlayerController.prototype.isPlayerInputAllowed = function() {
return true;
};
PlayerController.prototype.destroy = function() {
// extend if necessary
};
return PlayerController;
});