#ifndef UNITENUMERATION_H
#define UNITENUMERATION_H

/**
 * namespace decrivant les differentes enumeration utilisée par les unités
 */
namespace unitEnumeration{
	/**
	 * enumeration decrivant les different type d'armure des unité
	 */
	enum Armor {
		/**
		 * l'armure legere de l'archer
		 */
		LIGHT,
		/**
		 * l'armure moyenne du piquier
		 */
		MEDIUM,
		/**
		 * l'armure lourde du fantassin
		 */
		HEAVY
	};
	
	/**
	 * enumeration decrivant les differents type d'unité existant dans le jeu.
	 */
	enum UnitType {
		/**
		 * le fantassin
		 */
		INFANTRY,
		/**
		 * l'archer
		 */
		ARCHER,
		/**
		 * le lancier
		 */
		LANCER
	};
	/**
	 * enumeration decrivant les different etats possible de l'unité
	 */
	enum UnitState{
		/**
		 * etat utilisé quand une unité est monté et est en train d'attaquer une unité.
		 */
		CHARGE,
		/**
		 * etat decrivant que l'unité est en train d'effectuer un ordre de deplacement
		 */
		MOVE,
		/**
		 * etat decrivant que l'unité est en train de se battre
		 */
		COMBAT_POSTURE,
		/**
		 * etat decrivant que l'unité est en train de fuire
		 */
		FLEE,
		/**
		 * etat decrivant que l'unité est en train d'attendre
		 */
		WAIT,
		/**
		 * etat decrivant que l'unité est morte
		 */
		DEAD,
		/**
		 * mounting on a horse for example
		 */
		MOUNTING
	};
};



#endif
