summaryrefslogtreecommitdiffstats
path: root/src/Mobs/Zombie.cpp
diff options
context:
space:
mode:
authorLogicParrot <LogicParrot@users.noreply.github.com>2017-08-30 16:13:31 +0200
committerLogicParrot <LogicParrot@users.noreply.github.com>2017-08-30 16:13:31 +0200
commit48dff0f03c5df964a411e310f8905aaa3c84ac27 (patch)
treefe76a724ce321fabd6cb261a41799b741ca0a394 /src/Mobs/Zombie.cpp
parentremoved agressiveMonster (diff)
downloadcuberite-48dff0f03c5df964a411e310f8905aaa3c84ac27.tar
cuberite-48dff0f03c5df964a411e310f8905aaa3c84ac27.tar.gz
cuberite-48dff0f03c5df964a411e310f8905aaa3c84ac27.tar.bz2
cuberite-48dff0f03c5df964a411e310f8905aaa3c84ac27.tar.lz
cuberite-48dff0f03c5df964a411e310f8905aaa3c84ac27.tar.xz
cuberite-48dff0f03c5df964a411e310f8905aaa3c84ac27.tar.zst
cuberite-48dff0f03c5df964a411e310f8905aaa3c84ac27.zip
Diffstat (limited to 'src/Mobs/Zombie.cpp')
-rw-r--r--src/Mobs/Zombie.cpp41
1 files changed, 24 insertions, 17 deletions
diff --git a/src/Mobs/Zombie.cpp b/src/Mobs/Zombie.cpp
index 6f889e182..4f616c609 100644
--- a/src/Mobs/Zombie.cpp
+++ b/src/Mobs/Zombie.cpp
@@ -10,11 +10,18 @@
cZombie::cZombie(bool a_IsVillagerZombie) :
- super("Zombie", mtZombie, "entity.zombie.hurt", "entity.zombie.death", 0.6, 1.8),
- m_IsVillagerZombie(a_IsVillagerZombie),
- m_IsConverting(false)
+ super("Zombie", mtZombie, "entity.zombie.hurt", "entity.zombie.death", 0.6, 1.8),
+ m_IsVillagerZombie(a_IsVillagerZombie),
+ m_IsConverting(false)
{
-
+ m_EMPersonality = AGGRESSIVE;
+
+ m_BehaviorAttackerMelee.AttachToMonster(*this);
+ m_BehaviorWanderer.AttachToMonster(*this);
+ m_BehaviorAggressive.AttachToMonster(*this);
+ m_BehaviourDayLightBurner.AttachToMonster(*this);
+ GetMonsterConfig("Zombie");
+ // Todo I need the config to load after attaching attackerMelee but this is not clean.
}
@@ -23,17 +30,17 @@ cZombie::cZombie(bool a_IsVillagerZombie) :
void cZombie::GetDrops(cItems & a_Drops, cEntity * a_Killer)
{
- unsigned int LootingLevel = 0;
- if (a_Killer != nullptr)
- {
- LootingLevel = a_Killer->GetEquippedWeapon().m_Enchantments.GetLevel(cEnchantments::enchLooting);
- }
- AddRandomDropItem(a_Drops, 0, 2 + LootingLevel, E_ITEM_ROTTEN_FLESH);
- cItems RareDrops;
- RareDrops.Add(cItem(E_ITEM_IRON));
- RareDrops.Add(cItem(E_ITEM_CARROT));
- RareDrops.Add(cItem(E_ITEM_POTATO));
- AddRandomRareDropItem(a_Drops, RareDrops, LootingLevel);
- AddRandomArmorDropItem(a_Drops, LootingLevel);
- AddRandomWeaponDropItem(a_Drops, LootingLevel);
+ unsigned int LootingLevel = 0;
+ if (a_Killer != nullptr)
+ {
+ LootingLevel = a_Killer->GetEquippedWeapon().m_Enchantments.GetLevel(cEnchantments::enchLooting);
+ }
+ AddRandomDropItem(a_Drops, 0, 2 + LootingLevel, E_ITEM_ROTTEN_FLESH);
+ cItems RareDrops;
+ RareDrops.Add(cItem(E_ITEM_IRON));
+ RareDrops.Add(cItem(E_ITEM_CARROT));
+ RareDrops.Add(cItem(E_ITEM_POTATO));
+ AddRandomRareDropItem(a_Drops, RareDrops, LootingLevel);
+ AddRandomArmorDropItem(a_Drops, LootingLevel);
+ AddRandomWeaponDropItem(a_Drops, LootingLevel);
}