
function RunAttackAction(character){
	this.name = "runAttack";
	this.character = character;
	this.animation = character.animations["runAttack"];
	this.relations = new Array();
	this.age = 0;
}

RunAttackAction.prototype.update = function(time){
	this.animation.addTime(time);
	for(var i = 0; i < this.relations.length; i++){
		var rel = this.relations[i];
		var res = rel.condition();
		if(res){
			return rel.targetAction;
		}
	}
	
	for(var i = 0; i < scene.characters.length; i++){
		var enemy = scene.characters[i];
		if(enemy != this.character){
			var ishit = true;
			if(this.character.dirx > 0){
				ishit &= enemy.position.x > this.character.position.x + 10;
				ishit &= enemy.position.x < this.character.position.x + 50;
			}else{
				ishit &= enemy.position.x < this.character.position.x - 10;
				ishit &= enemy.position.x > this.character.position.x - 50;
			}
		
			if(ishit){
				enemy.damage(40*time);
				logDebug("hit: " + enemy.name);
			}
		}
	}
	
	this.age += time;
	return this;
}

RunAttackAction.prototype.setTime = function(time){
	this.age = time;
	this.animation.setTime(time);
}
	
