X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fapp%2FWorldState.cpp;h=372b659f8975b4c564bc73a8d91485abb6eafd69;hb=74b5bd523b0312ee71f0443789bb40f1476054a4;hp=12e142ac5a4cfe086f50e084d725162144a464d3;hpb=551573ecb04969696f916aeb5485658e298a7f6b;p=blank.git diff --git a/src/app/WorldState.cpp b/src/app/WorldState.cpp index 12e142a..372b659 100644 --- a/src/app/WorldState.cpp +++ b/src/app/WorldState.cpp @@ -16,11 +16,18 @@ WorldState::WorldState( : env(env) , world(env.assets, wc, save) , spawner(world) -, interface(ic, env, world) { +, interface(ic, env, world) +, preload(env, world.Loader()) +, unload(env, world.Loader()) { } +void WorldState::OnEnter() { + env.state.Push(&preload); +} + + void WorldState::Handle(const SDL_Event &event) { switch (event.type) { case SDL_KEYDOWN: @@ -41,6 +48,9 @@ void WorldState::Handle(const SDL_Event &event) { case SDL_MOUSEWHEEL: interface.Handle(event.wheel); break; + case SDL_QUIT: + env.state.Switch(&unload); + break; default: break; }