16 virtual bool act(
bool enemyInFOV,
bool justAlerted) = 0;
28 virtual void move(
int step);
34 virtual void beckon(
int cell);
35 virtual void damage(
int dmg,
const std::string& src);
36 void yell(
const std::string& str);
42 virtual void die(
const std::string& str);
86 static const std::string
TAG;
87 virtual bool act(
bool enemyInFOV,
bool justAlerted);
88 virtual std::string
status();
93 static const String TXT_DIED;
95 static const std::string STATE;
96 static const std::string TARGET;
98 class Sleeping :
public AiState{
101 static const std::string TAG;
103 virtual bool act(
bool enemyInFOV,
bool justAlerted);
104 virtual std::string status();
106 class Wandering :
public AiState{
108 static const std::string TAG;
111 virtual bool act(
bool enemyInFOV,
bool justAlerted);
112 virtual std::string status();
116 static const std::string TAG;
120 virtual bool act(
bool enemyInFOV,
bool justAlerted);
121 virtual std::string status();
125 static const std::string TAG;
128 virtual bool act(
bool enemyInFOV,
bool justAlerted);
129 virtual std::string status();
135typedef Mob* (*CreateMob)();
154 virtual void damage(
int dmg,
const std::string& src) {
170 virtual boolean act();
187 static const String ATTACK;
188 static const String DAMAGE;
static std::string getText(const std::string &key)
Definition bpt.cpp:26
Char()
Definition char.cpp:34
Buff * buff(const std::string &c)
Definition char.cpp:413
Definition charsprite.h:13
virtual String description()
Definition mob.h:203
int tier
Definition mob.h:180
virtual CharSprite * Sprite()
Definition mob.cpp:642
virtual void interact()
Definition mob.cpp:700
void duplicate(Hero *hero)
Definition mob.cpp:665
MirrorImage()
Definition mob.cpp:634
virtual void storeInBundle(Bundle *bundle)
Definition mob.cpp:649
virtual int attackProc(Char *enemy, int damage)
Definition mob.cpp:672
virtual int attackSkill(Char *target)
Definition mob.h:196
virtual int damageRoll()
Definition mob.h:199
Char * chooseEnemy()
Definition mob.cpp:682
virtual void restoreFromBundle(Bundle *bundle)
Definition mob.cpp:657
virtual std::string status()=0
Mob * owner
Definition mob.h:15
virtual bool act(bool enemyInFOV, bool justAlerted)=0
AiState(Mob *m)
Definition mob.h:14
Fleeing(Mob *m)
Definition mob.h:84
void nowhereToRun()
Definition mob.h:90
virtual std::string status()
Definition mob.cpp:412
static const std::string TAG
Definition mob.h:86
virtual void beckon(int cell)
Definition mob.cpp:165
int target
Definition mob.h:58
void yell(const std::string &str)
Definition mob.cpp:176
virtual bool getFurther(int target)
Definition mob.cpp:341
static const String TXT_EXP
Definition mob.h:56
Char * enemy
Definition mob.h:65
static const String TXT_NOTICE1
Definition mob.h:54
static const String TXT_ECHO
Definition mob.h:53
AiState * HUNTING
Definition mob.h:47
virtual void damage(int dmg, const std::string &src)
Definition mob.cpp:375
bool alerted
Definition mob.h:67
virtual void notice()
Definition mob.cpp:160
virtual void die(const std::string &str)
Definition mob.cpp:218
virtual void destroy()
Definition mob.cpp:181
virtual float attackDelay()
Definition mob.h:79
int EXP
Definition mob.h:62
static const String TXT_RAGE
Definition mob.h:55
bool moveSprite(int from, int to)
Definition mob.cpp:301
bool hostile
Definition mob.h:44
AiState * PASSIVE
Definition mob.h:50
Char * chooseEnemy()
Definition mob.cpp:268
virtual bool canAttack(Char *enemy)
Definition mob.cpp:315
virtual bool doAttack(Char *enemy)
Definition mob.cpp:357
AiState * WANDERING
Definition mob.h:48
AiState * FLEEING
Definition mob.h:49
virtual bool act()
Definition mob.cpp:243
virtual void remove(Buff *buff)
Definition mob.cpp:120
virtual int defenseSkill(Char *enemy)
Definition mob.cpp:145
Mob()
Definition mob.cpp:17
virtual int defenseProc(Char *enemy, int damage)
Definition mob.cpp:150
virtual void move(int step)
Definition mob.cpp:129
AiState * SLEEPEING
Definition mob.h:46
int maxLvl
Definition mob.h:63
float lootChance
Definition mob.h:71
virtual void add(Buff *buff)
Definition mob.cpp:96
AiState * state
Definition mob.h:51
virtual CharSprite * Sprite()=0
virtual void onAttackComplete()
Definition mob.cpp:139
int _defenseSkill
Definition mob.h:60
virtual bool getCloser(int target)
Definition mob.cpp:320
int exp()
Definition mob.cpp:213
virtual std::string description()
Definition mob.h:37
static const float TIME_TO_WAKE_UP
Definition mob.h:69
virtual void restoreFromBundle(Bundle *bundle)
Definition mob.cpp:67
bool enemySeen
Definition mob.h:66
virtual void storeInBundle(Bundle *bundle)
Definition mob.cpp:40
NPC()
Definition mob.cpp:548
void throwItem()
Definition mob.cpp:557
virtual void beckon(int cell)
Definition mob.h:141
virtual void interact()=0
virtual void add(Buff *buff)
Definition mob.h:158
virtual void interact()
Definition mob.h:168
virtual CharSprite * Sprite()
Definition mob.cpp:577
virtual boolean act()
Definition mob.cpp:582
Shopkeeper()
Definition mob.cpp:571
virtual void damage(int dmg, const std::string &src)
Definition mob.h:154
virtual String description()
Definition mob.h:163
virtual boolean reset()
Definition mob.h:160
static WndBag * sell()
Definition mob.cpp:614
void flee()
Definition mob.cpp:591
WndBag::Listener * itemSelector
Definition mob.cpp:632
#define FACTORY(name)
Definition typedefine.h:89
std::string String
Definition typedefine.h:8