added player movement on user input

This commit is contained in:
logsol 2012-07-01 17:51:36 +02:00
parent 56caf8b1b3
commit 5a7234ade4
5 changed files with 281 additions and 67 deletions

View file

@ -0,0 +1,75 @@
define(["Chuck/Control/KeyboardInput"], function(KeyboardInput){
function InputControlUnit(me) {
this._keyboardInput = new KeyboardInput(this);
this._me = me;
this._shift;
this._isJumping;
this.KEY_LEFT = 65;
this.KEY_RIGHT = 68;
this.KEY_UP = 87;
this.KEY_DOWN = 83;
this.init();
}
InputControlUnit.prototype.init = function() {
this._keyboardInput.registerKey(this.KEY_LEFT, 'moveLeft', 'stop', 'moveLeft');
this._keyboardInput.registerKey(this.KEY_RIGHT, 'moveRight', 'stop', 'moveRight');
this._keyboardInput.registerKey(this.KEY_UP, 'jump', 'jumped', 'jumping');
this._keyboardInput.registerKey(this.KEY_DOWN, 'duck', 'standUp', 'duck');
this._keyboardInput.registerKey(this.KEY_DOWN, 'activateShift', 'activateShift', 'deactivateShift');
}
InputControlUnit.prototype.moveLeft = function() {
this._me.move(-1);
}
InputControlUnit.prototype.moveRight = function() {
this._me.move(1);
}
InputControlUnit.prototype.stop = function() {
this._me.stop();
}
InputControlUnit.prototype.jump = function() {
this._isJumping = true;
this._me.jump();
}
InputControlUnit.prototype.jumped = function() {
this._isJumping = false;
}
InputControlUnit.prototype.jumping = function() {
if (this._isJumping) {
this._me.jumping();
}
}
InputControlUnit.prototype.duck = function() {
this._me.duck();
}
InputControlUnit.prototype.standUp = function() {
this._me.standUp();
}
InputControlUnit.prototype.activateShift = function() {
this._shift = true;
}
InputControlUnit.prototype.deactivateShift = function() {
this._shift = false;
}
InputControlUnit.prototype.update = function() {
this._keyboardInput.update();
}
return InputControlUnit;
});