Projeto IDJ - Towers Of Madness
TowerDefenseLovecraftnianoZombicida
|
Classe virtual que especifica o funcionamento de um GameObject. Mais...
#include <GameObject.h>
Métodos Públicos | |
GameObject (void) | |
Construtor. Mais... | |
void | AddComponent (Component *component) |
Adiciona componente a um gameobjet. Mais... | |
Component & | GetComponent (ComponentType type) |
Obtém componente. Mais... | |
void | RemoveComponent (ComponentType type) |
Remove componente a um gameobjet. Mais... | |
virtual | ~GameObject (void) |
Destrutor. Mais... | |
virtual void | Update (float dt) |
Atualizar estado. Mais... | |
virtual void | Render (void) |
Renderiza o GameObject. Mais... | |
virtual bool | IsDead (void) |
Informa se esse gameObject não precisa mais existir. Mais... | |
virtual void | RequestDelete (void) |
Solicita que o GameObject seja destruído. Mais... | |
virtual void | NotifyCollision (GameObject &other) |
Notifica Colisão. Mais... | |
virtual bool | Is (string type) |
Informa que tipo de GameObject é. Mais... | |
virtual Rect | GetWorldRenderedRect (void) const |
Obtém Rect informando a posição renderizada da animação. Mais... | |
Atributos Públicos | |
Rect | box |
float | rotation |
Atributos Protegidos | |
std::vector< Component * > | components |
bool | dead |
Classe virtual que especifica o funcionamento de um GameObject.
Especifica quais métodos um gameObject deve ter para conseguir ser manipulado corretamente pela engine.
GameObject::GameObject | ( | void | ) |
Construtor.
Não é virtual, sua implementação inicializa a rotação com o valor zero. Pode ser usado pelos herdeiros.
|
virtual |
Destrutor.
Basicamente é para obrigar quem implementar de usar um destrutor.
void GameObject::AddComponent | ( | Component * | component | ) |
Adiciona componente a um gameobjet.
component | componente a ser adicionado. |
Component & GameObject::GetComponent | ( | ComponentType | type | ) |
Obtém componente.
type | tipo do componente a ser buscado. |
Se não existir um componente do tipo informado Error() será chamado
|
virtual |
|
virtual |
Informa que tipo de GameObject é.
type | Tipo com o qual quer se verificar que esse GameObject é. |
É usado no tratamento de colisão para que se identifique com quem colidiu.
Reimplementado por Enemy, Animation, Tower, Bullet e Obstacle.
|
virtual |
Informa se esse gameObject não precisa mais existir.
Deve ser usado no State que o contém para o eliminar da sua estrutura de manipulação de gameObject e destruí-lo.
|
virtual |
void GameObject::RemoveComponent | ( | ComponentType | type | ) |
Remove componente a um gameobjet.
type | Tipo do componente a ser removido. Se a não existir um componente desse tipo no GameObject nada será feito. |
|
virtual |
|
virtual |
Solicita que o GameObject seja destruído.
Uma vez que esse método é chamado, futuras chamadas ao IsDead devem retornar verdadeiro.
|
virtual |
Rect GameObject::box |
Posição do GameObject na tela.
|
protected |
Vetor de componentes, que provêem funcionalidades adicionais.
|
protected |
Booleano informado se o GameObject deve ser destruído. Faz-se necessário para que a mecânia de RequestDelete e IsDead funcione num GameObject.
float GameObject::rotation |
Rotação do GameObject.