#pragma once
#include "Collision.h"
#include "Texture.h"
#include "TextureManager.h"

enum class GroundTileTypes
{
	Air,
	Dirt,
};

class WorldTile {
public:
	WorldTile();
	WorldTile(const Point2f& position, GroundTileTypes groundTileType, TextureManager* pTextureManager);
	~WorldTile();
	
	void Draw() const;

	Point2f GetPosition() const { return m_Position; }
	void	SetPosition(const Point2f& position) { m_Position = position; }

	Point2f GetSize() const { return Point2f{ 50, 50 }; }

	GroundTileTypes GetTileType() const { return m_GroundTileType; }
	void SetTileType(GroundTileTypes type) { m_GroundTileType = type; }

	Collision::TileCollisionRect GetCollisionRect();
	
	
private:
	Point2f m_Position;
	GroundTileTypes m_GroundTileType;

	Texture* m_pTexture;

	Collision::CollisionRect m_CollisionRect;

	
	
};
