* Add newlines at end of files. This is for better portability. * Fix a direct reference to g++ in the makefile
34 lines
867 B
C++
34 lines
867 B
C++
#ifndef _GAME_STATE_TRANSITIONS_H_
|
|
#define _GAME_STATE_TRANSITIONS_H_
|
|
|
|
#include <JGE.h>
|
|
#include <JGui.h>
|
|
#include "../include/GameState.h"
|
|
|
|
class TransitionBase: public GameState, public JGuiListener{
|
|
public:
|
|
TransitionBase(GameApp* parent, GameState* _from, GameState* _to, float duration);
|
|
virtual void Start();
|
|
virtual void End();
|
|
|
|
virtual bool Finished() {return (mElapsed >= mDuration);};
|
|
virtual void Update(float dt);
|
|
virtual void Render() = 0;
|
|
virtual void ButtonPressed(int controllerId, int controlId);
|
|
|
|
float mElapsed;
|
|
float mDuration;
|
|
GameState* from;
|
|
GameState* to;
|
|
bool bAnimationOnly; //Does not call start or end on subordinates.
|
|
};
|
|
|
|
class TransitionFade: public TransitionBase {
|
|
public:
|
|
TransitionFade(GameApp* p, GameState* f, GameState* t, float dur, bool reversed);
|
|
virtual void Render();
|
|
bool mReversed;
|
|
};
|
|
|
|
#endif
|