Files
prog2/Game/WorldTile.h
Bram Verhulst d6c5cfa47b Collision reworked into a Collision Namespace
Added basic player (Needs work)
2024-03-13 01:09:12 +01:00

41 lines
863 B
C++

#pragma once
#include "Collision.h"
#include "Texture.h"
enum class GroundTileTypes
{
Air,
Dirt,
};
class WorldTile {
public:
WorldTile();
WorldTile(const Point2f& position, GroundTileTypes groundTileType);
~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() const { return Collision::TileCollisionRect{ m_Position, GetSize(), const_cast<WorldTile*>(this)}; }
private:
Point2f m_Position;
GroundTileTypes m_GroundTileType;
Texture* m_pTexture;
Collision::CollisionRect m_CollisionRect;
};