#include #include #include #include #include #include #include extern World *currentWorld; Engine::Engine(void) : gameRunning(true), systems(game::entities, game::events) { } void Engine::init(void) { game::config::read(); game::events.subscribe(*this); systems.add(); systems.add(); systems.add(); systems.add(); systems.add(&player); systems.configure(); } void Engine::render(entityx::TimeDelta dt) { systems.update(dt); } void Engine::update(entityx::TimeDelta dt) { systems.update(dt); systems.update(dt); systems.update(dt); currentWorld->update(player, dt); currentWorld->detect(player); } namespace game { entityx::EventManager events; entityx::EntityManager entities (events); Engine engine; }