#ifndef CPYLONERM_H_INCLUDED
#define CPYLONERM_H_INCLUDED

#include <irrlicht.h>

using namespace irr;

class CPyloneRM
{
    public:

	CPyloneRM(scene::ISceneManager*,video::IVideoDriver*);

	~CPyloneRM();

	enum
    {
        PYLONE_TKF_MONTEE_DESCENTE = 1,
        PYLONE_TKF_MONTEE = 2,
        PYLONE_TSF_MONTEE_DESCENTE_MOYEN = 3,
        PYLONE_TSF_MONTEE_DESCENTE_BAS = 4,
        PYLONE_TSF_MONTEE_DESCENTE_HAUT = 5,
        PYLONE_TKD_MONTEE_DESCENTE=6,
        PYLONE_TKD_MONTEE=7
    };

	void SetType(u32);
    u32 GetType();
    void DrawPylone(core::vector3df,core::vector3df);
    void DropPylone();
    void ChangeTypePylone(s32,core::vector3df,core::vector3df);

    void setPosition(core::vector3df);
    core::vector3df getPosition();
    void setRotation(core::vector3df);
    core::vector3df getRotation();

    void AnimatePylone(f32);

    scene::ISceneNode* posMonteePylone;
    scene::ISceneNode* posDescentePylone;

    u32 monteeSupportCompression;
    u32 descenteSupportCompression;

	private:

    scene::ISceneManager* smgr;
	video::IVideoDriver* driver;

	u32 type;
	scene::IAnimatedMesh* meshPylone;
	video::SMaterial materialPylone;
	scene::IMeshSceneNode* nodePylone;

	scene::IAnimatedMesh* meshPotenceTSTC;
	video::SMaterial materialPotenceTSTC;
	scene::IMeshSceneNode* nodePotenceTSTC;

	//Pour les poulies
	scene::IAnimatedMesh* meshPoulie1M;
	video::SMaterial materialPoulie1M;
	scene::IMeshSceneNode* nodePoulie1M;

	scene::IAnimatedMesh* meshPoulie2M;
	video::SMaterial materialPoulie2M;
	scene::IMeshSceneNode* nodePoulie2M;

	scene::IAnimatedMesh* meshPoulie3M;
	video::SMaterial materialPoulie3M;
	scene::IMeshSceneNode* nodePoulie3M;

	scene::IAnimatedMesh* meshPoulie4M;
	video::SMaterial materialPoulie4M;
	scene::IMeshSceneNode* nodePoulie4M;

	scene::IAnimatedMesh* meshPoulie1D;
	video::SMaterial materialPoulie1D;
	scene::IMeshSceneNode* nodePoulie1D;

	scene::IAnimatedMesh* meshPoulie2D;
	video::SMaterial materialPoulie2D;
	scene::IMeshSceneNode* nodePoulie2D;

	scene::IAnimatedMesh* meshPoulie3D;
	video::SMaterial materialPoulie3D;
	scene::IMeshSceneNode* nodePoulie3D;

	scene::IAnimatedMesh* meshPoulie4D;
	video::SMaterial materialPoulie4D;
	scene::IMeshSceneNode* nodePoulie4D;

};


#endif // CPYLONERM_H_INCLUDED
