SpelunkyRemake / WoodTile.h
WoodTile.h
Raw
#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;
};