SBSPSS/source/player/pstates.h
2001-01-22 22:58:12 +00:00

95 lines
2.2 KiB
C++

/*=========================================================================
pstates.h
Author: PKG
Created:
Project: Spongebob
Purpose:
Copyright (c) 2001 Climax Development Ltd
===========================================================================*/
#ifndef __PLAYER_PSTATES_H__
#define __PLAYER_PSTATES_H__
/*----------------------------------------------------------------------
Includes
-------- */
#ifndef _GLOBAL_HEADER_
#include "system\global.h"
#endif
/* Std Lib
------- */
/*----------------------------------------------------------------------
Tyepdefs && Defines
------------------- */
/*----------------------------------------------------------------------
Structure defintions
-------------------- */
class CPlayerState
{
public:
virtual void enter(class CPlayer *_player)=0;
virtual void think(class CPlayer *_player)=0;
protected:
const struct PlayerMetrics *getPlayerMetrics(class CPlayer *_player);
void setState(class CPlayer *_player,int _state);
int getFacing(class CPlayer *_player);
void setFacing(class CPlayer *_player,int _facing);
int getAnimNo(class CPlayer *_player);
void setAnimNo(class CPlayer *_player,int _animNo);
void setAnimFrame(class CPlayer *_player,int _animFrame);
int advanceAnimFrameAndCheckForEndOfAnim(class CPlayer *_player);
DVECTOR getMoveVelocity(class CPlayer *_player);
void setMoveVelocity(class CPlayer *_player,DVECTOR *_moveVel);
int getPadInput(class CPlayer *_player);
int isOnSolidGround(class CPlayer *_player);
void moveLeft(class CPlayer *_player);
void moveRight(class CPlayer *_player);
void slowdown(class CPlayer *_player);
void jump(class CPlayer *_player);
void fall(class CPlayer *_player);
};
class CPlayerStateIdle : public CPlayerState
{
public:
void enter(class CPlayer *_player);
void think(class CPlayer *_player);
};
/*----------------------------------------------------------------------
Globals
------- */
/*----------------------------------------------------------------------
Functions
--------- */
/*---------------------------------------------------------------------- */
#endif /* __PLAYER_PSTATES_H__ */
/*===========================================================================
end */