X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Fyoink.hh;fp=src%2Fyoink.hh;h=cc4446a387875714cb950bb3769aaa5f54e15ed1;hb=af88821a172c4dfd138b91b2a5148ae50b502fa2;hp=0000000000000000000000000000000000000000;hpb=d6990468d297a6cbee98e4d0d33ab37e1b2352c9;p=chaz%2Fyoink diff --git a/src/yoink.hh b/src/yoink.hh new file mode 100644 index 0000000..cc4446a --- /dev/null +++ b/src/yoink.hh @@ -0,0 +1,74 @@ + +/*] Copyright (c) 2009-2010, Charles McGarvey [************************** +**] All rights reserved. +* +* vi:ts=4 sw=4 tw=75 +* +* Distributable under the terms and conditions of the 2-clause BSD license; +* see the file COPYING for a complete text of the license. +* +**************************************************************************/ + +#ifndef _YOINK_HH_ +#define _YOINK_HH_ + +/** + * \file yoink.hh + * This is the big enchilada. + */ + +#include +#include +#include + +#include + +#include +#include + +#include // TODO +#include +#include +#include +#include + +#include "GameState.hh" +#include "Hud.hh" + + +class yoink +{ +public: + + yoink(); + + void update(moof::scalar t, moof::scalar dt); + void draw(moof::scalar alpha) const; + bool handle_event(const moof::event& event); + +private: + + void load_scene_loader(); + void advance_scene(); + + void projection(); + void projection(moof::scalar width, moof::scalar height); + + mutable GameState state_; + + HudP mHud; + + moof::sound punch_sound_; + moof::sound music_; + + moof::ray2 mRay; + moof::line2 mLine; + moof::circle mCircle; + + moof::timer mRayTimer; + void rayTimer(); +}; + + +#endif // _YOINK_HH_ +