#include "tile.h" #include "general.h" #include "GFXframework.h" Tile::Tile() { m_Revealed = false; m_Flagged = false; } Tile::~Tile() { } void Tile::SetSpritePosition(int x, int y) { m_PosX = x; m_PosY = y; } void Tile::Render() { if (!m_Flagged) { if (m_Revealed) { GFXframework::GetInstance()->DisplaySpriteAt(m_Type, m_PosX, m_PosY); } else { GFXframework::GetInstance()->DisplaySpriteAt(GROUND, m_PosX, m_PosY); } } else { GFXframework::GetInstance()->DisplaySpriteAt(FLAG, m_PosX, m_PosY); } } bool Tile::TestClick(int x, int y) { if ( x > m_PosX && x <= m_PosX + TILE_SIZE_X && y > m_PosY && y <= m_PosY + TILE_SIZE_Y) { if (!m_Revealed && !m_Flagged) { m_Revealed = true; return true; } } return false; } bool Tile::TestRightClick(int x, int y) { if ( x > m_PosX && x <= m_PosX + TILE_SIZE_X && y > m_PosY && y <= m_PosY + TILE_SIZE_Y) { if (!m_Revealed) { m_Flagged = !m_Flagged; return true; } } return false; } bool Tile::TestPosition(int x, int y) { if ( x > m_PosX && x <= m_PosX + TILE_SIZE_X && y > m_PosY && y <= m_PosY + TILE_SIZE_Y) { return true; } return false; }