blob: b12da903055499dd9eec02846a51017a598a3149 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
#pragma once
#include "Behaviors/BehaviorBreeder.h"
#include "Behaviors/BehaviorItemFollower.h"
#include "Behaviors/BehaviorItemReplacer.h"
#include "Behaviors/BehaviorCoward.h"
#include "Behaviors/BehaviorWanderer.h"
#include "Monster.h"
class cCow : public cMonster
{
public:
cCow();
~cCow() {}
typedef cMonster super;
CLASS_PROTODEF(cCow)
virtual void GetDrops(cItems & a_Drops, cEntity * a_Killer = nullptr) override;
virtual void GetFollowedItems(cItems & a_Items) override
{
a_Items.Add(E_ITEM_WHEAT);
}
virtual cBehaviorBreeder * GetBehaviorBreeder() override;
virtual const cBehaviorBreeder * GetBehaviorBreeder() const override;
private:
// Tick controlling behaviors
cBehaviorBreeder m_BehaviorBreeder;
cBehaviorItemFollower m_BehaviorItemFollower;
cBehaviorCoward m_BehaviorCoward;
cBehaviorItemReplacer m_BehaviorWanderer;
// Non tick controlling behaviors
cBehaviorWanderer m_BehaviorItemReplacer;
} ;
|