#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; };