49 lines
965 B
C
49 lines
965 B
C
|
|
#pragma once
|
||
|
|
|
||
|
|
#include "Monster.h"
|
||
|
|
|
||
|
|
class Silverfish : public Monster
|
||
|
|
{
|
||
|
|
public:
|
||
|
|
eINSTANCEOF GetType() { return eTYPE_SILVERFISH; }
|
||
|
|
static Entity *create(Level *level) { return new Silverfish(level); }
|
||
|
|
private:
|
||
|
|
int lookForFriends;
|
||
|
|
|
||
|
|
public:
|
||
|
|
Silverfish(Level *level);
|
||
|
|
|
||
|
|
virtual int getMaxHealth();
|
||
|
|
|
||
|
|
protected:
|
||
|
|
virtual bool makeStepSound();
|
||
|
|
virtual shared_ptr<Entity> findAttackTarget();
|
||
|
|
|
||
|
|
virtual int getAmbientSound();
|
||
|
|
virtual int getHurtSound();
|
||
|
|
virtual int getDeathSound();
|
||
|
|
|
||
|
|
public:
|
||
|
|
virtual bool hurt(DamageSource *source, int dmg);
|
||
|
|
|
||
|
|
protected:
|
||
|
|
virtual void checkHurtTarget(shared_ptr<Entity> target, float d);
|
||
|
|
virtual void playStepSound(int xt, int yt, int zt, int t);
|
||
|
|
virtual int getDeathLoot();
|
||
|
|
|
||
|
|
public:
|
||
|
|
virtual void tick();
|
||
|
|
|
||
|
|
protected:
|
||
|
|
virtual void serverAiStep();
|
||
|
|
|
||
|
|
public:
|
||
|
|
virtual float getWalkTargetValue(int x, int y, int z);
|
||
|
|
|
||
|
|
protected:
|
||
|
|
virtual bool isDarkEnoughToSpawn();
|
||
|
|
|
||
|
|
public:
|
||
|
|
virtual bool canSpawn();
|
||
|
|
virtual MobType getMobType();
|
||
|
|
};
|