summaryrefslogtreecommitdiffstats
path: root/src/Mobs
diff options
context:
space:
mode:
authorNiLSPACE <NiLSPACE@users.noreply.github.com>2015-07-15 09:57:04 +0200
committerNiLSPACE <NiLSPACE@users.noreply.github.com>2015-07-15 09:57:04 +0200
commit0c3a3427cd6ace46f52b80f6815d10b2ea12f4e5 (patch)
treee29fa5cb0cab2d31279a73a80cd307de07ab8356 /src/Mobs
parentUpdated submodules (diff)
parentSupport ageable mobs (diff)
downloadcuberite-0c3a3427cd6ace46f52b80f6815d10b2ea12f4e5.tar
cuberite-0c3a3427cd6ace46f52b80f6815d10b2ea12f4e5.tar.gz
cuberite-0c3a3427cd6ace46f52b80f6815d10b2ea12f4e5.tar.bz2
cuberite-0c3a3427cd6ace46f52b80f6815d10b2ea12f4e5.tar.lz
cuberite-0c3a3427cd6ace46f52b80f6815d10b2ea12f4e5.tar.xz
cuberite-0c3a3427cd6ace46f52b80f6815d10b2ea12f4e5.tar.zst
cuberite-0c3a3427cd6ace46f52b80f6815d10b2ea12f4e5.zip
Diffstat (limited to 'src/Mobs')
-rw-r--r--src/Mobs/Monster.cpp1
-rw-r--r--src/Mobs/Monster.h8
2 files changed, 8 insertions, 1 deletions
diff --git a/src/Mobs/Monster.cpp b/src/Mobs/Monster.cpp
index cb4edb951..4befe307d 100644
--- a/src/Mobs/Monster.cpp
+++ b/src/Mobs/Monster.cpp
@@ -101,6 +101,7 @@ cMonster::cMonster(const AString & a_ConfigName, eMonsterType a_MobType, const A
, m_TicksSinceLastDamaged(100)
, m_BurnsInDaylight(false)
, m_RelativeWalkSpeed(1)
+ , m_Age(1)
{
if (!a_ConfigName.empty())
{
diff --git a/src/Mobs/Monster.h b/src/Mobs/Monster.h
index 1076c9544..2832a1570 100644
--- a/src/Mobs/Monster.h
+++ b/src/Mobs/Monster.h
@@ -112,10 +112,14 @@ public:
void SetRelativeWalkSpeed(double a_WalkSpeed) { m_RelativeWalkSpeed = a_WalkSpeed; } // tolua_export
// Overridables to handle ageable mobs
- virtual bool IsBaby (void) const { return false; }
virtual bool IsTame (void) const { return false; }
virtual bool IsSitting (void) const { return false; }
+ bool IsBaby (void) const { return m_Age < 0; }
+ char GetAge (void) const { return m_Age; }
+ void SetAge(char a_Age) { m_Age = a_Age; }
+
+
// tolua_begin
/** Returns true if the monster has a custom name. */
@@ -270,6 +274,8 @@ protected:
bool m_BurnsInDaylight;
double m_RelativeWalkSpeed;
+ char m_Age;
+
/** Adds a random number of a_Item between a_Min and a_Max to itemdrops a_Drops*/
void AddRandomDropItem(cItems & a_Drops, unsigned int a_Min, unsigned int a_Max, short a_Item, short a_ItemHealth = 0);