diff options
author | LogicParrot <LogicParrot@users.noreply.github.com> | 2017-08-23 18:08:48 +0200 |
---|---|---|
committer | LogicParrot <LogicParrot@users.noreply.github.com> | 2017-08-23 18:08:48 +0200 |
commit | 978663b725dd2a7b756b4fcecf0453e42ce16b79 (patch) | |
tree | 9d8bdac1a21de5f8bbb9b2142832516d2c04f816 /src/Mobs/Spider.cpp | |
parent | d (diff) | |
download | cuberite-978663b725dd2a7b756b4fcecf0453e42ce16b79.tar cuberite-978663b725dd2a7b756b4fcecf0453e42ce16b79.tar.gz cuberite-978663b725dd2a7b756b4fcecf0453e42ce16b79.tar.bz2 cuberite-978663b725dd2a7b756b4fcecf0453e42ce16b79.tar.lz cuberite-978663b725dd2a7b756b4fcecf0453e42ce16b79.tar.xz cuberite-978663b725dd2a7b756b4fcecf0453e42ce16b79.tar.zst cuberite-978663b725dd2a7b756b4fcecf0453e42ce16b79.zip |
Diffstat (limited to '')
-rw-r--r-- | src/Mobs/Spider.cpp | 83 |
1 files changed, 29 insertions, 54 deletions
diff --git a/src/Mobs/Spider.cpp b/src/Mobs/Spider.cpp index b614fcbde..608bcd853 100644 --- a/src/Mobs/Spider.cpp +++ b/src/Mobs/Spider.cpp @@ -9,7 +9,7 @@ cSpider::cSpider(void) : - super("Spider", mtSpider, "entity.spider.hurt", "entity.spider.death", 1.4, 0.9) + super("Spider", mtSpider, "entity.spider.hurt", "entity.spider.death", 1.4, 0.9) { } @@ -19,42 +19,16 @@ cSpider::cSpider(void) : void cSpider::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_STRING); - if ((a_Killer != nullptr) && (a_Killer->IsPlayer() || a_Killer->IsA("cWolf"))) - { - AddRandomUncommonDropItem(a_Drops, 33.0f, E_ITEM_SPIDER_EYE); - } -} - - - - - -void cSpider::EventSeePlayer(cPlayer * a_Player, cChunk & a_Chunk) -{ - if (!GetWorld()->IsChunkLighted(GetChunkX(), GetChunkZ())) - { - return; - } - - PREPARE_REL_AND_CHUNK(GetPosition(), a_Chunk); - if (!RelSuccess) - { - return; - } - - if ( - a_Player->CanMobsTarget() && - !((Chunk->GetSkyLightAltered(Rel.x, Rel.y, Rel.z) > 11) || (Chunk->GetBlockLight(Rel.x, Rel.y, Rel.z) > 11)) - ) - { - super::EventSeePlayer(a_Player, a_Chunk); - } + 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_STRING); + if ((a_Killer != nullptr) && (a_Killer->IsPlayer() || a_Killer->IsA("cWolf"))) + { + AddRandomUncommonDropItem(a_Drops, 33.0f, E_ITEM_SPIDER_EYE); + } } @@ -63,21 +37,22 @@ void cSpider::EventSeePlayer(cPlayer * a_Player, cChunk & a_Chunk) bool cSpider::DoTakeDamage(TakeDamageInfo & a_TDI) { - if (!super::DoTakeDamage(a_TDI)) - { - return false; - } - - // If the source of the damage is not from an pawn entity, switch to idle - if ((a_TDI.Attacker == nullptr) || !a_TDI.Attacker->IsPawn()) - { - m_EMState = IDLE; - } - else - { - // If the source of the damage is from a pawn entity, chase that entity - m_EMState = CHASING; - } - - return true; + if (!super::DoTakeDamage(a_TDI)) + { + return false; + } + + /* mobTodo + // If the source of the damage is not from an pawn entity, switch to idle + if ((a_TDI.Attacker == nullptr) || !a_TDI.Attacker->IsPawn()) + { + m_EMState = IDLE; + } + else + { + // If the source of the damage is from a pawn entity, chase that entity + m_EMState = CHASING; + }*/ + + return true; } |