#include <boost/shared_ptr.hpp>
-#include <Moof/Camera.hh>
-#include <Moof/Interpolator.hh>
#include <Moof/Layer.hh>
#include <Moof/Math.hh>
-#include <Moof/Script.hh>
#include <Moof/Sound.hh>
#include <Moof/Line.hh>
#include <Moof/Sphere.hh>
#include <Moof/Timer.hh>
-#include "Character.hh"
-#include "Heroine.hh"
-#include "Scene.hh"
+#include "Hud.hh"
+#include "GameState.hh"
class GameLayer;
return GameLayerP(new GameLayer);
}
- void pushed(Mf::Engine& engine);
+ void pushedOntoEngine();
- void update(Mf::Engine& engine, Mf::Scalar t, Mf::Scalar dt);
- void draw(Mf::Engine& engine, Mf::Scalar alpha) const;
- bool handleEvent(Mf::Engine& engine, const Mf::Event& event);
-
- struct State
- {
- Mf::Script script;
- std::vector<std::string> sceneList;
-
- HeroineP heroine;
- SceneP scene;
-
- Mf::PolynomialInterpolator<5> interp;
-
- Mf::Camera camera;
- };
+ void update(Mf::Scalar t, Mf::Scalar dt);
+ void draw(Mf::Scalar alpha) const;
+ bool handleEvent(const Mf::Event& event);
private:
void setProjection();
void setProjection(Mf::Scalar width, Mf::Scalar height);
- State mState;
+ GameState mState;
Mf::Timer mThinkTimer;
+ HudP mHud;
+
Mf::SoundStream mMusic;
Mf::Sound mPunchSound;