Esempio n. 1
0
//! Loads the level given its path.
void LogicEngine::loadLevel(std::string file)
{
    level = new Level();

    int status = level->parseXML(file);

    qDebug() << "Level loaded with: " << status;

    if(status == 0)
    {
            ready = true;
    }
    else
    {
        unloadLevel();
        return;
    }

    this->start();
}
void LevelManager::shutdown()
{
    // clean up entity manager
    EntityManager::get()->shutdown(); 

    if ( GameState::get()->getMode() != GameState::Server )
    {
        // shutdown all other libs managed by level loader
        SoundManager::get()->shutdown();
        GuiManager::get()->shutdown();
    }

    // set game state
    GameState::get()->setState( GameState::Shutdown );

    // unload level
    unloadLevel( true, true );

    Physics::get()->shutdown();
    // destroy singleton
    destroy();
}
Esempio n. 3
0
//! unloads the level and destroys the object.
LogicEngine::~LogicEngine()
{
    if(ready)
        unloadLevel();
}