]> Dogcows Code - chaz/yoink/blob - src/TitleLayer.cc
arch linux prefers pkgconfig for finding lua
[chaz/yoink] / src / TitleLayer.cc
1
2 /*] Copyright (c) 2009-2010, Charles McGarvey [**************************
3 **] All rights reserved.
4 *
5 * vi:ts=4 sw=4 tw=75
6 *
7 * Distributable under the terms and conditions of the 2-clause BSD license;
8 * see the file COPYING for a complete text of the license.
9 *
10 **************************************************************************/
11
12 #include <Moof/Core.hh>
13 #include <Moof/OpenGL.hh>
14 #include <Moof/Transition.hh>
15
16 #include "GameLayer.hh"
17 #include "TitleLayer.hh"
18
19
20 void TitleLayer::addedToCore()
21 {
22 mFadeIn.init(0.0, 1.0);
23 mFadeIn.reset(0.1);
24
25 mGameLayer = GameLayer::alloc();
26 }
27
28 void TitleLayer::update(Mf::Scalar t, Mf::Scalar dt)
29 {
30 mFadeIn.update(t, dt);
31 }
32
33 void TitleLayer::draw(Mf::Scalar alpha) const
34 {
35 glClearColor(0.0, 0.0, mFadeIn.getState(alpha), 1.0);
36 glClear(GL_COLOR_BUFFER_BIT);
37 }
38
39 bool TitleLayer::handleEvent(const Mf::Event& event)
40 {
41 switch (event.type)
42 {
43 case SDL_KEYUP:
44 if (event.key.keysym.sym == SDLK_ESCAPE)
45 {
46 break;
47 }
48
49 Mf::LayerP titleLayer = Mf::core.pop(this);
50
51 Mf::Lerp interp(0.1);
52 interp.init(0.0, 1.0);
53
54 Mf::Transition<Mf::Lerp>::Ptr transition =
55 Mf::Transition<Mf::Lerp>::alloc(mGameLayer, titleLayer,
56 interp);
57 Mf::core.push(transition);
58
59 return true;
60 }
61
62 return false;
63 }
64
This page took 0.034928 seconds and 4 git commands to generate.