X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Fyoink;a=blobdiff_plain;f=src%2FTitleLayer.cc;h=f5e4ef02a423300c928e5cc77c52dd153dfc96af;hp=11c624d07e94e59375141a98681df5a658a7370f;hb=e495074443d9fd7bc16137084cf9de3d031b75c4;hpb=c9e20ac06383b20ceb5404c9237e319c2e90d157 diff --git a/src/TitleLayer.cc b/src/TitleLayer.cc index 11c624d..f5e4ef0 100644 --- a/src/TitleLayer.cc +++ b/src/TitleLayer.cc @@ -36,40 +36,43 @@ void TitleLayer::pushed(Mf::Engine& engine) { - mEngine = &engine; - Mf::Scalar coeff[] = {0.0, 1.0}; mFadeIn.init(coeff, 0.1); mGameLayer = GameLayer::alloc(); } -void TitleLayer::update(Mf::Scalar t, Mf::Scalar dt) +void TitleLayer::update(Mf::Engine& engine, Mf::Scalar t, Mf::Scalar dt) { if (!mFadeIn.isDone()) mFadeIn.update(t, dt); } -void TitleLayer::draw(Mf::Scalar alpha) const +void TitleLayer::draw(Mf::Engine& engine, Mf::Scalar alpha) const { glClearColor(0.0, 0.0, mFadeIn.getState(alpha), 1.0); glClear(GL_COLOR_BUFFER_BIT); } -bool TitleLayer::handleEvent(const Mf::Event& event) +bool TitleLayer::handleEvent(Mf::Engine& engine, const Mf::Event& event) { switch (event.type) { case SDL_KEYUP: - Mf::LayerP titleLayer = mEngine->pop(this); - //mEngine->pushLayer(GameLayer::alloc()); + //if (event.key.keysym.sym == SDLK_ESCAPE) + //{ + //break; + //} + + Mf::LayerP titleLayer = engine.pop(this); + //engine.pushLayer(GameLayer::alloc()); - Mf::Scalar coeff[] = {0.0, 1.0}; - Mf::Lerp interp(coeff, 0.2); + Mf::Scalar coeff[] = {0.0, 0.75, 0.99, 1.0}; + Mf::PolynomialInterpolator<3> interp(coeff, 0.1); //Mf::LayerP mGameLayer = GameLayer::alloc(); - Mf::Transition::Ptr transition = - Mf::Transition::alloc(mGameLayer, titleLayer, interp); - mEngine->push(transition); + Mf::Transition >::Ptr transition = + Mf::Transition >::alloc(mGameLayer, titleLayer, interp); + engine.push(transition); return true; }