]> Dogcows Code - chaz/yoink/blobdiff - src/TitleLayer.cc
dispatch class not a singleton, engine is static
[chaz/yoink] / src / TitleLayer.cc
index a12168a9639eeeaf047b28b0317883e1906c184b..ed8f4c1acd340d2ca952c32b90275f704d696f2a 100644 (file)
 #include "TitleLayer.hh"
 
 
-void TitleLayer::pushed(Mf::Engine& e)
+void TitleLayer::pushedOntoEngine()
 {
-       engine = &e;
-
        Mf::Scalar coeff[] = {0.0, 1.0};
-       fadeIn.init(coeff, 0.1);
+       mFadeIn.init(coeff, 0.1);
 
-       gameLayer = GameLayer::alloc();
+       mGameLayer = GameLayer::alloc();
 }
 
 void TitleLayer::update(Mf::Scalar t, Mf::Scalar dt)
 {
-       if (!fadeIn.isDone()) fadeIn.update(t, dt);
+       if (!mFadeIn.isDone()) mFadeIn.update(t, dt);
 }
 
 void TitleLayer::draw(Mf::Scalar alpha) const
 {
-       glClearColor(0.0, 0.0, fadeIn.getState(alpha), 1.0);
+       glClearColor(0.0, 0.0, mFadeIn.getState(alpha), 1.0);
        glClear(GL_COLOR_BUFFER_BIT);
 }
 
@@ -60,16 +58,21 @@ bool TitleLayer::handleEvent(const Mf::Event& event)
        switch (event.type)
        {
                case SDL_KEYUP:
-                       Mf::LayerP titleLayer = engine->pop(this);
-                       //engine->pushLayer(GameLayer::alloc());
+                       //if (event.key.keysym.sym == SDLK_ESCAPE)
+                       //{
+                               //break;
+                       //}
+
+                       Mf::LayerP titleLayer = Mf::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 gameLayer = GameLayer::alloc();
-                       Mf::Transition<Mf::Lerp>::Ptr transition =
-                               Mf::Transition<Mf::Lerp>::alloc(gameLayer, titleLayer, interp);
-                       engine->push(transition);
+                       //Mf::LayerP mGameLayer = GameLayer::alloc();
+                       Mf::Transition<Mf::PolynomialInterpolator<3> >::Ptr transition =
+                               Mf::Transition<Mf::PolynomialInterpolator<3> >::alloc(mGameLayer, titleLayer, interp);
+                       Mf::engine.push(transition);
                        return true;
        }
 
This page took 0.022649 seconds and 4 git commands to generate.