#pragma once

//-----------------------------------------------------
// Include Files
//-----------------------------------------------------
#include "Matrix2D.h"

//-----------------------------------------------------
// Class Forward Declarations
//-----------------------------------------------------
class ResourceLoader;
class Painter;
class InputState;
class Image;
class CollisionMesh;
class TextFormat;
class Audio;

//-----------------------------------------------------
// Bar Class									
//-----------------------------------------------------
class Bar
{
public:
	Bar(ResourceLoader* resourceLoaderPtr,const String& imagename,Point2D position, Point2D fillingPosition, int totalPoints, int height, int width, ColorRGBA color);
	virtual ~Bar();

	void Paint(Painter *painterPtr);
	void Tick(InputState *inputStatePtr);
	void setPoints(int points);
	void SetPosition(Point2D pt);
private:
	Point2D m_Position;
	Point2D m_FillingPosition;
	Image *m_ImagePtr;
	int m_TotalPoints;
	int m_Points;
	int m_Height;
	int m_Width;
	double m_Scale;
	Rect2D m_Filling;
	ColorRGBA m_Color;
	Matrix2D m_MatWorld;
};