#pragma once #include "Tile.h" #include <unordered_map> class WoodTile : public Tile { public: WoodTile(int x, int y, int itemType = -1); virtual ~WoodTile(); virtual void Draw() const override; virtual void DrawBorder() const override; virtual void DrawItem() const override; virtual void UpdateBorder(Tile* pTiles[], int xTiles, int yTiles) override; virtual void Init(Tile* pTiles[], int xTiles, int yTiles) override; static Texture* m_pTexture; protected: Rectf m_SrcRect; bool m_AdjacentTiles[4]; const int m_Primes[4]; std::unordered_map<int, Rectf> m_SrcRectsMap; private: static int m_Count; };