private int executeTurn(Turn turn) {
		TurnAction action = turn.getAction();
		CombatEntity src = turn.getSourceEntity();
		CombatEntity tgt = turn.getTargetEntity();
		
		switch(action) {
		case ATTACK:
			int damage = src.generateDamage(DamageTypes.PHYSICAL, rng);			
			tgt.applyDamage(DamageTypes.PHYSICAL, damage);
			return damage;
			
		case DEFEND:
			src.defend();
			return 0;
			
		case FIRE:
			int fDmg = src.generateDamage(DamageTypes.FIRE, rng);
			tgt.applyDamage(DamageTypes.FIRE, fDmg);
			return fDmg;
			
		case FLEE:
			endBattle(BattleEndCondition.FLEE);
			return 0;
			
		case HEAL:
			int healing = src.generateHealing(rng);
			tgt.applyHealing(healing);
			return healing;
			
		case ICE:
			int iDmg = src.generateDamage(DamageTypes.ICE, rng);
			tgt.applyDamage(DamageTypes.ICE, iDmg);
			return iDmg;
		}	
		
		return 0;
	}