diff options
author | madmaxoft@gmail.com <madmaxoft@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6> | 2012-09-23 22:53:08 +0200 |
---|---|---|
committer | madmaxoft@gmail.com <madmaxoft@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6> | 2012-09-23 22:53:08 +0200 |
commit | 16f44ab7de445e153d949a611104f9ca1cac265c (patch) | |
tree | 8abf5a3442a1877855f2c80d9482611a04922683 /source/Mobs/Zombie.cpp | |
parent | Source files cleanup: WorldStorage-related files in a separate subfolder (diff) | |
download | cuberite-16f44ab7de445e153d949a611104f9ca1cac265c.tar cuberite-16f44ab7de445e153d949a611104f9ca1cac265c.tar.gz cuberite-16f44ab7de445e153d949a611104f9ca1cac265c.tar.bz2 cuberite-16f44ab7de445e153d949a611104f9ca1cac265c.tar.lz cuberite-16f44ab7de445e153d949a611104f9ca1cac265c.tar.xz cuberite-16f44ab7de445e153d949a611104f9ca1cac265c.tar.zst cuberite-16f44ab7de445e153d949a611104f9ca1cac265c.zip |
Diffstat (limited to 'source/Mobs/Zombie.cpp')
-rw-r--r-- | source/Mobs/Zombie.cpp | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/source/Mobs/Zombie.cpp b/source/Mobs/Zombie.cpp new file mode 100644 index 000000000..b51931904 --- /dev/null +++ b/source/Mobs/Zombie.cpp @@ -0,0 +1,66 @@ + +#include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules + +#include "Zombie.h" + + + + + +cZombie::cZombie() +{ + m_MobType = 54; + GetMonsterConfig("Zombie"); +} + + + + + +cZombie::~cZombie() +{ +} + + + + + +bool cZombie::IsA( const char* a_EntityType ) +{ + if( strcmp( a_EntityType, "cZombie" ) == 0 ) return true; + return cMonster::IsA( a_EntityType ); +} + + + + + +void cZombie::Tick(float a_Dt) +{ + cMonster::Tick(a_Dt); + + //TODO Same as in cSkeleton :D + if (GetWorld()->GetWorldTime() < (12000 + 1000) && GetMetaData() != BURNING) { //if daylight + SetMetaData(BURNING); // BURN, BABY, BURN! >:D + } +} + + + + + +void cZombie::KilledBy( cEntity* a_Killer ) +{ + cItems Drops; + AddRandomDropItem(Drops, 0, 2, E_ITEM_ROTTEN_FLESH); + + // TODO: Rare drops + + m_World->SpawnItemPickups(Drops, m_Pos.x, m_Pos.y, m_Pos.z); + + cMonster::KilledBy( a_Killer ); +} + + + + |