#ifndef DECOR_H
#define DECOR_H

#include <string>

#include "Point2D.h"
#include "RenderableEntity.h"

namespace RenderSystem{
	/**
	 * classe representant un decor de la carte.
	 */
	class Decor : public RenderableEntity
	{
	private:
		Point2D position;
		float angle;
		std::string texture;
	public:
		Decor(void);
		virtual ~Decor(void);
		Point2D& getRenderableEntityPosition();
		float getRenderableEntityAngle();
		void setPosition(Point2D& p);
		void setAngle(float angle);
		void setTexturePath(std::string& tex);
		std::string& getTexturePath();
		void setupModel(Model* model, RegistredTexture* texture, int anim);

		/**
		 * Permet de savoir si l'entité affichable possède de la vie
		 */
		virtual bool haveLife();
		/**
		 * Permet d'obtenir la vie courante de l'entité
		 *
		 * @return la vie courante
		 */
		virtual float getCurrentLife();
		bool isAlive();
	};

};// namespace
#endif
