the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
1#pragma once
2using namespace std;
3
4#include "Monster.h"
5#include "MobGroupData.h"
6
7class Spider : public Monster
8{
9public:
10 eINSTANCEOF GetType() { return eTYPE_SPIDER; }
11 static Entity *create(Level *level) { return new Spider(level); }
12
13private:
14 static const int DATA_FLAGS_ID = 16;
15
16public:
17 Spider(Level *level);
18
19protected:
20 virtual void defineSynchedData();
21
22public:
23 virtual void tick();
24
25protected:
26 virtual void registerAttributes();
27 virtual shared_ptr<Entity> findAttackTarget();
28 virtual int getAmbientSound();
29 virtual int getHurtSound();
30 virtual int getDeathSound();
31 virtual void playStepSound(int xt, int yt, int zt, int t);
32 virtual void checkHurtTarget(shared_ptr<Entity> target, float d);
33 virtual int getDeathLoot();
34 virtual void dropDeathLoot(bool wasKilledByPlayer, int playerBonusLevel);
35
36public:
37 virtual bool onLadder();
38
39 virtual void makeStuckInWeb();
40 virtual MobType getMobType();
41 virtual bool canBeAffected(MobEffectInstance *newEffect);
42 virtual bool isClimbing();
43 virtual void setClimbing(bool value);
44 virtual MobGroupData *finalizeMobSpawn(MobGroupData *groupData, int extraData = 0); // 4J Added extraData param
45
46private:
47 static const float SPIDER_SPECIAL_EFFECT_CHANCE;
48
49public:
50 class SpiderEffectsGroupData : public MobGroupData
51 {
52 public:
53 int effectId;
54
55 SpiderEffectsGroupData();
56 void setRandomEffect(Random *random);
57 };
58};