00001 
#include "players_common.h"
00002 
00003 
#define STATE_CLIMB_L    0x00010000
00004 
#define STATE_CLIMB_R    0x00020000
00005 
00006 
#define STATE_CLIMB      0x00030000
00007 
#define STATE_JUMP_OFF_R 0x00080000
00008 
#define STATE_JUMP_OFF_L 0x00100000
00009 
#define STATE_JUMP_OFF   0x00180000
00010 
00011 
#define V_JUMP        -400
00012 
#define V_JUMPOFF     -600
00013 
#define V_CLIMB        100
00014 
#define T_JUMPOFF      500
00015 
#define DE_JUMP        200
00016 
00017  
00023 class Fang : 
public Player {
00024     
public:
00025         
Fang(Sint16 xpos=0, Sint16 ypos=0, 
const ParameterMap& param=ParameterMap());
00026         
virtual ~
Fang();
00027         
static ParameterMap default_parameters;
00028         
virtual void fall(Uint16);
00029         
virtual void in_left(Uint16);
00030         
virtual void in_right(Uint16);
00032         
virtual void in_sp1();
00034         
virtual void in_sp2();
00035         
virtual void clearStates(
bool reset=
false);
00036     
private:
00037         
virtual void crash(Uint16 dir=DIR_DOWN);
00038         EmptyAnimationPtr anim_fang_claw_left;
00039         EmptyAnimationPtr anim_fang_claw_right;
00040         Mix_Chunk* au_jump;
00041         Mix_Chunk* au_claw;
00042         Sint16 jump;
00043 };