Projeto IDJ - Towers Of Madness
TowerDefenseLovecraftnianoZombicida
 Todos Classes Arquivos Funções Variáveis Definições de Tipos Enumerações Valores enumerados Definições e Macros Páginas
Métodos Públicos | Atributos Privados | Lista de todos os Membros
Referência da Classe TileSet

Classe responsável por modelar um tileset. Mais...

#include <Tileset.h>

Diagrama de colaboração para TileSet:
[legenda]

Métodos Públicos

 TileSet (int tileWidth, int tileHeight, string file)
 Instancia um tileSet. Mais...
 
void Render (unsigned int index, Vec2 pos, bool highlighted=false)
 Renderiza tile. Mais...
 
int GetTileWidth (void)
 Obtém largura de um tile. Mais...
 
int GetTileHeight (void)
 Obtém altura de um tile. Mais...
 

Atributos Privados

Sprite tileSet
 
int rows
 
int columns
 
int tileWidth
 
int tileHeight
 

Descrição Detalhada

Classe responsável por modelar um tileset.

Um tileSet é uma imagem que contém várias subimagens, que são idexadas por sua posição no arquivo.

Construtores & Destrutores

TileSet::TileSet ( int  tileWidth,
int  tileHeight,
string  file 
)

Instancia um tileSet.

Parâmetros
tileWidthEspessura de uma subimagem do tileSet.
tileHeightAltura de uma subimagem do tileSet.
fileNome do arquivo de imagem com o TileSet.

Instancia o sprite interno com o arquivo informado, inicializa tileWidth e tileHeight com os argumentos dados. Depois, através do quociente da largura do spirte pelo tileWidth obtém-se o valor inicial de columns e similarmente usando a altura do sprite e o tileHeight, o valor inicial para rows.

Métodos

int TileSet::GetTileHeight ( void  )

Obtém altura de um tile.

Retorna
Valor de tileHeight.

Retorna tileHeight.

int TileSet::GetTileWidth ( void  )

Obtém largura de um tile.

Retorna
Valor de tileWidth.

Retorna tileWidth.

void TileSet::Render ( unsigned int  index,
Vec2  pos,
bool  highlighted = false 
)

Renderiza tile.

Parâmetros
indexÍndice do tile no tileSet.
posPosição x,y onde o tile deve ser renderizado.
highlightedVerdadeiro se for para o tile sofrer um Highlight.

Usando aritmética de módulo conseguimos associar o index à uma posição (linha, coluna) na matriz de tiles. Essa informação é usada para entaão obter o x e y do tile no sprite. Após isso calcula-se o rect onde essa imagem será renderizada utilizando o x e y enviados como argumento e atribuindo a w e h tileWidth e tileHeight. Nesse momento, solicita-se para a câmera transformar a posição no mundo para a posição na tela. Após isso, renderiza-se o tile informado na posição calculada da tela.

Atributos

int TileSet::columns
private

Número de colunas de tiles existentes no tileSet.

int TileSet::rows
private

Número de lilhas de tiles existentes no tileSet.

int TileSet::tileHeight
private

Altura de um tile.

Sprite TileSet::tileSet
private

Sprite com o tileSet em si.

int TileSet::tileWidth
private

Espessura de um tile.


A documentação para esta classe foi gerada a partir dos seguintes arquivos: