diff options
Diffstat (limited to 'src/Mobs/Slime.cpp')
-rw-r--r-- | src/Mobs/Slime.cpp | 45 |
1 files changed, 0 insertions, 45 deletions
diff --git a/src/Mobs/Slime.cpp b/src/Mobs/Slime.cpp index b709ec664..c9498b036 100644 --- a/src/Mobs/Slime.cpp +++ b/src/Mobs/Slime.cpp @@ -19,8 +19,6 @@ cSlime::cSlime(int a_Size) : ), m_Size(a_Size) { - SetMaxHealth(a_Size * a_Size); - SetAttackDamage(a_Size); } @@ -46,49 +44,6 @@ void cSlime::GetDrops(cItems & a_Drops, cEntity * a_Killer) -void cSlime::Attack(float a_Dt) -{ - if (m_Size > 1) - { - // Only slimes larger than size 1 attack a player. - super::Attack(a_Dt); - } -} - - - - - -void cSlime::KilledBy(TakeDamageInfo & a_TDI) -{ - if (GetHealth() > 0) - { - return; - } - - if (m_Size != 1) - { - cFastRandom Random; - int SpawnAmount = 2 + Random.NextInt(3); - - for (int i = 0; i < SpawnAmount; ++i) - { - double AddX = (i % 2 - 0.5) * m_Size / 4.0; - double AddZ = (i / 2 - 0.5) * m_Size / 4.0; - - cSlime * NewSlime = new cSlime(m_Size / 2); - NewSlime->SetPosition(GetPosX() + AddX, GetPosY() + 0.5, GetPosZ() + AddZ); - NewSlime->SetYaw(Random.NextFloat(1.0f) * 360.0f); - m_World->SpawnMobFinalize(NewSlime); - } - } - super::KilledBy(a_TDI); -} - - - - - const AString cSlime::GetSizeName(int a_Size) const { if (a_Size > 1) |