Files
itgmania212121/stepmania/src/DancingCharacters.h
T

83 lines
2.0 KiB
C++

#ifndef DancingCharacters_H
#define DancingCharacters_H
/*
-----------------------------------------------------------------------------
Class: DancingCharacters
Desc: A graphic displayed in the DancingCharacters during Dancing.
Copyright (c) 2001-2002 by the person(s) listed below. All rights reserved.
Chris Danford
-----------------------------------------------------------------------------
*/
#include "Model.h"
#include "ActorFrame.h"
#include "PlayerNumber.h"
#include "BGAnimation.h"
#include "ThemeManager.h"
#include "RageTimer.h"
enum ANIM_STATES_2D
{
AS2D_IDLE = 0,
AS2D_MISS,
AS2D_GOOD,
AS2D_GREAT,
AS2D_FEVER,
AS2D_FAIL,
AS2D_WIN,
AS2D_WINFEVER,
AS2D_IGNORE, // special case -- so that we can timer to idle again.
AS2D_MAXSTATES // leave at end
};
class DancingCharacters : public ActorFrame
{
public:
DancingCharacters();
virtual void LoadNextSong();
virtual void Update( float fDelta );
virtual void DrawPrimitives();
bool m_bDrawDangerLight;
void Change2DAnimState(int iPlayerNum, int iState);
protected:
Model m_Character[NUM_PLAYERS];
float m_CameraDistance;
float m_CameraPanYStart;
float m_CameraPanYEnd;
float m_fLookAtHeight;
float m_fCameraHeightStart;
float m_fCameraHeightEnd;
float m_fThisCameraStartBeat;
float m_fThisCameraEndBeat;
bool m_bHas2DElements[NUM_PLAYERS];
bool m_bHasIdleAnim[NUM_PLAYERS];
BGAnimation m_bgIdle[NUM_PLAYERS];
bool m_bHasMissAnim[NUM_PLAYERS];
BGAnimation m_bgMiss[NUM_PLAYERS];
bool m_bHasGoodAnim[NUM_PLAYERS];
BGAnimation m_bgGood[NUM_PLAYERS];
bool m_bHasGreatAnim[NUM_PLAYERS];
BGAnimation m_bgGreat[NUM_PLAYERS];
bool m_bHasFeverAnim[NUM_PLAYERS];
BGAnimation m_bgFever[NUM_PLAYERS];
bool m_bHasFailAnim[NUM_PLAYERS];
BGAnimation m_bgFail[NUM_PLAYERS];
bool m_bHasWinAnim[NUM_PLAYERS];
BGAnimation m_bgWin[NUM_PLAYERS];
bool m_bHasWinFeverAnim[NUM_PLAYERS];
BGAnimation m_bgWinFever[NUM_PLAYERS];
RageTimer m_2DIdleTimer[NUM_PLAYERS];
int m_i2DAnimState[NUM_PLAYERS];
};
#endif