00001
#ifndef DEF_MONSTERS_COMMON_H
00002
#define DEF_MONSTERS_COMMON_H 1
00003
00004
#include "characters_common.h"
00005
00010 class Monster :
public Character {
00011
public:
00012
Monster(Sint16 xpos=0, Sint16 ypos=0,
const ParameterMap& param=ParameterMap());
00013
virtual ~
Monster();
00014
static ParameterMap default_parameters;
00015
virtual void removedObject(
Object*);
00016
virtual void updateAnimState();
00017
virtual void idle(Uint16);
00018
virtual void fall(Uint16);
00019
virtual Uint16
hit(Uint16 direction,
Weapon& weap);
00020
protected:
00023
virtual void addTouch(std::set<Object *>&);
00024
virtual void addEnter(std::set<Object *>&);
00025
virtual void removeTouch(std::set<Object *>&);
00026
virtual void removeEnter(std::set<Object *>&);
00027
virtual void crash(Uint16 dir=DIR_DOWN);
00028
virtual void die();
00029
00031
virtual void runAI(Uint16) { }
00032
virtual void ai_left(Uint16) { }
00033
virtual void ai_right(Uint16) { }
00034
virtual void ai_attack(
Player*, Uint16) { }
00036
00037 std::set<Player *> targets;
00038
virtual Hit move(Uint16 dt,
bool check=
false);
00039
00040 Mix_Chunk* au_hit;
00041 Sint16 Dai,Dattack;
00042 EmptyAnimationPtr anim_left;
00043 EmptyAnimationPtr anim_right;
00044 };
00045
00046
#endif