This commit is contained in:
Paul 2001-01-29 22:35:18 +00:00
parent dd3fb8cbc8
commit 3d6fc4e5e9
12 changed files with 239 additions and 86 deletions

View file

@ -32,21 +32,22 @@
Structure defintions
-------------------- */
typedef struct
{
int m_startFrame; // Or -1 for none
int m_loopFrame; // Must exist
int m_endFrame; // Or -1 for none
int m_loopCount; // Number of times to run m_loopFrame
} IdleAnims;
class CPlayerStateIdle : public CPlayerState
{
public:
void enter(class CPlayer *_player);
void think(class CPlayer *_player);
virtual void enter(class CPlayer *_player);
virtual void think(class CPlayer *_player);
private:
typedef struct
{
int m_startFrame; // Or -1 for none
int m_loopFrame; // Must exist
int m_endFrame; // Or -1 for none
int m_loopCount; // Number of times to run m_loopFrame;
} IdleAnims;
typedef enum
{
ANIMSTATE_START,
@ -56,13 +57,31 @@ private:
void setNextIdleAnim(class CPlayer *_player);
virtual IdleAnims *getIdleAnimsDb(int _animNo)=0;
virtual int getNumIdleAnims()=0;
int m_idleTime; // Number of idle anims that have been started
int m_currentIdleAnim;
ANIMSTATE m_animState;
int m_loopCount; // Number of times to loop middle section of anim
};
class CPlayerStateUnarmedIdle : public CPlayerStateIdle
{
private:
virtual IdleAnims *getIdleAnimsDb(int _animNo);
virtual int getNumIdleAnims();
};
class CPlayerStateCoralBlowerIdle : public CPlayerStateIdle
{
private:
virtual IdleAnims *getIdleAnimsDb(int _animNo);
virtual int getNumIdleAnims();
static IdleAnims s_idleAnims[];
static int s_numIdleAnims;
};