Sion Tower (demo técnica) 0.1
|
Clase que carga y mantiene todos los elementos de un nivel. Más...
#include <level.h>
Métodos públicos | |
Level (const Ogre::String &id) | |
~Level () | |
void | load () |
void | unload () |
bool | isLoaded () const |
const Ogre::String & | getId () const |
const Ogre::String & | getName () const |
const Ogre::String & | getDescription () const |
const Ogre::String & | getSongName () const |
SongPtr | getSong () |
std::vector< GameObject * > & | getSceneObjects () |
const Ogre::Vector3 & | getPlayerPosition () const |
Clase que carga y mantiene todos los elementos de un nivel.
La clase Level es la encargada de cargar desde disco y mantener todos los elementos de un nivel de Sion Tower. Contiene información básica: nombre, descripción, música que debe sonar... También contiene los elementos del escenario, enemigos y personaje.
Tiene dos tipos de estados: información básica y completa. Cuando creamos un objeto de la clase Level sólo contiene la información básica, no ha cargado el nivel. Tenemos que indicarle explícitamente que cargue el nivel completo.
Level::Level | ( | const Ogre::String & | id | ) |
Constructor
id | identificador del nivel. |
El identificador es la base para encontrar los ficheros del nivel. Cada nivel se compone de dos ficheros: id_info.xml e id_scene.xml. El primero contiene la información básica mientras que el segundo representa la escena completa en formato DotScene.
Level::~Level | ( | ) |
Destructor
const Ogre::String & Level::getDescription | ( | ) | const |
const Ogre::String & Level::getId | ( | ) | const |
const Ogre::String & Level::getName | ( | ) | const |
const Ogre::Vector3 & Level::getPlayerPosition | ( | ) | const |
std::vector< GameObject * > & Level::getSceneObjects | ( | ) |
SongPtr Level::getSong | ( | ) |
const Ogre::String & Level::getSongName | ( | ) | const |
bool Level::isLoaded | ( | ) | const |
void Level::load | ( | ) |
Carga el escenario de forma completa. Si ya estaba cargado, llama a unload y después carga.
void Level::unload | ( | ) |
Elimina el escenario, los enemigos, etc. Sólo se mantiene la información básica.