From 1cca9b13b3d320ff767cfc552413265b2ef6e0d6 Mon Sep 17 00:00:00 2001 From: "madmaxoft@gmail.com" Date: Wed, 6 Jun 2012 20:18:50 +0000 Subject: Item-dropping code rewritten and centralized - now there's only one place to modify if we want to split or merge same-item drops: cWorld:SpawnItemPickups(). Also, mined blocks can now drop more items, and they recognize if they're being mined by the correct tool. git-svn-id: http://mc-server.googlecode.com/svn/trunk@561 0a769ca7-a7f5-676a-18bf-c427514a06d6 --- source/cZombiepigman.cpp | 31 ++++++++++++++++++++++++++++--- 1 file changed, 28 insertions(+), 3 deletions(-) (limited to 'source/cZombiepigman.cpp') diff --git a/source/cZombiepigman.cpp b/source/cZombiepigman.cpp index afe6248b7..024c0bd62 100644 --- a/source/cZombiepigman.cpp +++ b/source/cZombiepigman.cpp @@ -13,16 +13,28 @@ cZombiepigman::cZombiepigman() GetMonsterConfig("Zombiepigman"); } + + + + cZombiepigman::~cZombiepigman() { } + + + + bool cZombiepigman::IsA( const char* a_EntityType ) { if( strcmp( a_EntityType, "cZombiepigman" ) == 0 ) return true; return cMonster::IsA( a_EntityType ); } + + + + void cZombiepigman::Tick(float a_Dt) { cMonster::Tick(a_Dt); @@ -33,10 +45,23 @@ void cZombiepigman::Tick(float a_Dt) } } -void cZombiepigman::KilledBy( cEntity* a_Killer ) + + + + +void cZombiepigman::KilledBy(cEntity * a_Killer) { - cMonster::RandomDropItem(E_ITEM_ROTTEN_FLESH, 0, 1); - cMonster::RandomDropItem(E_ITEM_GOLD_NUGGET, 0, 1); + cItems Drops; + AddRandomDropItem(Drops, 0, 1, E_ITEM_ROTTEN_FLESH); + AddRandomDropItem(Drops, 0, 1, E_ITEM_GOLD_NUGGET); + + // TODO: Rare drops + + m_World->SpawnItemPickups(Drops, m_Pos.x, m_Pos.y, m_Pos.z); cMonster::KilledBy( a_Killer ); } + + + + -- cgit v1.2.3