walking when carrying a heavy object

This commit is contained in:
Jeena 2014-01-20 16:37:30 +01:00
parent b159bbb1cc
commit 1c4336c7f7

View file

@ -180,14 +180,21 @@ function (Parent, Box2D, Settings, CollisionDetector, Item) {
this.moveDirection = direction; this.moveDirection = direction;
var speed; var speed;
var isHoldingHeavyItem = this.holdingItem && this.holdingItem.options.weight > Settings.MAX_RUNNING_WEIGHT;
switch(true) { switch(true) {
case direction == this.lookDirection && this.isStanding(): case direction == this.lookDirection && this.isStanding() && !isHoldingHeavyItem:
speed = Settings.RUN_SPEED; speed = Settings.RUN_SPEED;
break; break;
case !this.isStanding(): case !this.isStanding():
speed = Settings.FLY_SPEED; speed = Settings.FLY_SPEED;
if(isHoldingHeavyItem) {
if(Settings.FLY_SPEED > Settings.WALK_SPEED) {
speed = Settings.WALK_SPEED;
}
}
break; break;
default: default:
@ -202,7 +209,13 @@ function (Parent, Box2D, Settings, CollisionDetector, Item) {
if(this.isStanding()) { if(this.isStanding()) {
if(this.moveDirection == this.lookDirection) { if(this.moveDirection == this.lookDirection) {
this.setActionState("run");
if(isHoldingHeavyItem) {
this.setActionState("walk");
} else {
this.setActionState("run");
}
} else { } else {
this.setActionState("walkback"); this.setActionState("walkback");
} }