diff options
author | jackpoz <giacomopoz@gmail.com> | 2015-08-12 12:48:33 +0200 |
---|---|---|
committer | Carbenium <carbenium@outlook.com> | 2015-09-24 21:04:46 +0200 |
commit | cacf1848226f69bb4bbd9f5418619b1ed1271305 (patch) | |
tree | a9da9d0214789e02e7e6a540b54ccd2c55fc9ec5 /src | |
parent | 6193b8a28d88428acc46dc591353614ef1f3e160 (diff) |
Core/Misc: Remove unneeded ToCreature() casts
Remove some ToCreature() casts not needed anymore after 1ee90e1022a235859316e55356ea8a3d2f456c9b changes that moved IsPet() from Creature to Unit
(cherry picked from commit d243630acff017f5e50bf0c833a0bbac35ba6c5a)
Conflicts:
src/server/game/Entities/Player/Player.cpp
src/server/game/Spells/Spell.cpp
src/server/game/Spells/SpellEffects.cpp
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Conditions/DisableMgr.cpp | 2 | ||||
-rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 2 | ||||
-rw-r--r-- | src/server/game/Entities/Unit/Unit.cpp | 18 | ||||
-rw-r--r-- | src/server/game/Handlers/PetHandler.cpp | 8 | ||||
-rw-r--r-- | src/server/game/Spells/Auras/SpellAuraEffects.cpp | 20 | ||||
-rw-r--r-- | src/server/game/Spells/Spell.cpp | 4 | ||||
-rw-r--r-- | src/server/game/Spells/SpellEffects.cpp | 2 | ||||
-rw-r--r-- | src/server/scripts/Commands/cs_modify.cpp | 2 |
8 files changed, 29 insertions, 29 deletions
diff --git a/src/server/game/Conditions/DisableMgr.cpp b/src/server/game/Conditions/DisableMgr.cpp index 369d538147c..15eca8aaaaf 100644 --- a/src/server/game/Conditions/DisableMgr.cpp +++ b/src/server/game/Conditions/DisableMgr.cpp @@ -292,7 +292,7 @@ bool IsDisabledFor(DisableType type, uint32 entry, Unit const* unit, uint8 flags if (unit) { if ((spellFlags & SPELL_DISABLE_PLAYER && unit->GetTypeId() == TYPEID_PLAYER) || - (unit->GetTypeId() == TYPEID_UNIT && ((unit->ToCreature()->IsPet() && spellFlags & SPELL_DISABLE_PET) || spellFlags & SPELL_DISABLE_CREATURE))) + (unit->GetTypeId() == TYPEID_UNIT && ((unit->IsPet() && spellFlags & SPELL_DISABLE_PET) || spellFlags & SPELL_DISABLE_CREATURE))) { if (spellFlags & SPELL_DISABLE_MAP) { diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 5d84f587648..e61dfc72a4f 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -22123,7 +22123,7 @@ inline void BeforeVisibilityDestroy(T* /*t*/, Player* /*p*/) { } template<> inline void BeforeVisibilityDestroy<Creature>(Creature* t, Player* p) { - if (p->GetPetGUID() == t->GetGUID() && t->ToCreature()->IsPet()) + if (p->GetPetGUID() == t->GetGUID() && t->IsPet()) ((Pet*)t)->Remove(PET_SAVE_NOT_IN_SLOT, true); } diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 30b0be54b25..8524535f58c 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -368,7 +368,7 @@ void Unit::Update(uint32 p_time) SendThreatListUpdate(); // update combat timer only for players and pets (only pets with PetAI) - if (IsInCombat() && (GetTypeId() == TYPEID_PLAYER || (ToCreature()->IsPet() && IsControlledByPlayer()))) + if (IsInCombat() && (GetTypeId() == TYPEID_PLAYER || (IsPet() && IsControlledByPlayer()))) { // Check UNIT_STATE_MELEE_ATTACKING or UNIT_STATE_CHASE (without UNIT_STATE_FOLLOW in this case) so pets can reach far away // targets without stopping half way there and running off. @@ -2047,8 +2047,8 @@ MeleeHitOutcome Unit::RollMeleeOutcomeAgainst (const Unit* victim, WeaponAttackT // Max 40% chance to score a glancing blow against mobs that are higher level (can do only players and pets and not with ranged weapon) if (attType != RANGED_ATTACK && - (GetTypeId() == TYPEID_PLAYER || ToCreature()->IsPet()) && - victim->GetTypeId() != TYPEID_PLAYER && !victim->ToCreature()->IsPet() && + (GetTypeId() == TYPEID_PLAYER || IsPet()) && + victim->GetTypeId() != TYPEID_PLAYER && !victim->IsPet() && getLevel() < victim->getLevelForTarget(this)) { // cap possible value (with bonuses > max skill) @@ -7276,7 +7276,7 @@ bool Unit::Attack(Unit* victim, bool meleeAttack) //if (GetTypeId() == TYPEID_UNIT) // ToCreature()->SetCombatStartPosition(GetPositionX(), GetPositionY(), GetPositionZ()); - if (GetTypeId() == TYPEID_UNIT && !ToCreature()->IsPet()) + if (GetTypeId() == TYPEID_UNIT && !IsPet()) { // should not let player enter combat by right clicking target - doesn't helps SetInCombatWith(victim); @@ -8018,7 +8018,7 @@ Unit* Unit::GetNextRandomRaidMemberOrPet(float radius) if (GetTypeId() == TYPEID_PLAYER) player = ToPlayer(); // Should we enable this also for charmed units? - else if (GetTypeId() == TYPEID_UNIT && ToCreature()->IsPet()) + else if (GetTypeId() == TYPEID_UNIT && IsPet()) player = GetOwner()->ToPlayer(); if (!player) @@ -8289,7 +8289,7 @@ float Unit::SpellDamagePctDone(Unit* victim, SpellInfo const* spellProto, Damage float DoneTotalMod = 1.0f; // Pet damage? - if (GetTypeId() == TYPEID_UNIT && !ToCreature()->IsPet()) + if (GetTypeId() == TYPEID_UNIT && !IsPet()) DoneTotalMod *= ToCreature()->GetSpellDamageMod(ToCreature()->GetCreatureTemplate()->rank); AuraEffectList const& mModDamagePercentDone = GetAuraEffectsByType(SPELL_AURA_MOD_DAMAGE_PERCENT_DONE); @@ -12657,7 +12657,7 @@ Player* Unit::GetSpellModOwner() const if (Player* player = const_cast<Unit*>(this)->ToPlayer()) return player; - if (ToCreature()->IsPet() || ToCreature()->IsTotem()) + if (IsPet() || ToCreature()->IsTotem()) { if (Unit* owner = GetOwner()) if (Player* player = owner->ToPlayer()) @@ -12942,7 +12942,7 @@ void Unit::ApplyCastTimePercentMod(float val, bool apply) uint32 Unit::GetCastingTimeForBonus(SpellInfo const* spellProto, DamageEffectType damagetype, uint32 CastingTime) const { // Not apply this to creature cast spells with casttime == 0 - if (CastingTime == 0 && GetTypeId() == TYPEID_UNIT && !ToCreature()->IsPet()) + if (CastingTime == 0 && GetTypeId() == TYPEID_UNIT && !IsPet()) return 3500; if (CastingTime > 7000) CastingTime = 7000; @@ -13043,7 +13043,7 @@ void Unit::UpdateAuraForGroup(uint8 slot) if (player->GetGroup()) player->SetGroupUpdateFlag(GROUP_UPDATE_FLAG_AURAS); } - else if (GetTypeId() == TYPEID_UNIT && ToCreature()->IsPet()) + else if (GetTypeId() == TYPEID_UNIT && IsPet()) { Pet* pet = ((Pet*)this); if (pet->isControlled()) diff --git a/src/server/game/Handlers/PetHandler.cpp b/src/server/game/Handlers/PetHandler.cpp index d6d199a7119..5ec58cf934f 100644 --- a/src/server/game/Handlers/PetHandler.cpp +++ b/src/server/game/Handlers/PetHandler.cpp @@ -224,7 +224,7 @@ void WorldSession::HandlePetActionHelper(Unit* pet, ObjectGuid guid1, uint32 spe pet->ToCreature()->AI()->AttackStart(TargetUnit); //10% chance to play special pet attack talk, else growl - if (pet->ToCreature()->IsPet() && ((Pet*)pet)->getPetType() == SUMMON_PET && pet != TargetUnit && urand(0, 100) < 10) + if (pet->IsPet() && ((Pet*)pet)->getPetType() == SUMMON_PET && pet != TargetUnit && urand(0, 100) < 10) pet->SendPetTalk((uint32)PET_TALK_ATTACK); else { @@ -368,7 +368,7 @@ void WorldSession::HandlePetActionHelper(Unit* pet, ObjectGuid guid1, uint32 spe //10% chance to play special pet attack talk, else growl //actually this only seems to happen on special spells, fire shield for imp, torment for voidwalker, but it's stupid to check every spell - if (pet->ToCreature()->IsPet() && (((Pet*)pet)->getPetType() == SUMMON_PET) && (pet != unit_target) && (urand(0, 100) < 10)) + if (pet->IsPet() && (((Pet*)pet)->getPetType() == SUMMON_PET) && (pet != unit_target) && (urand(0, 100) < 10)) pet->SendPetTalk((uint32)PET_TALK_SPECIAL_SPELL); else { @@ -558,7 +558,7 @@ void WorldSession::HandlePetSetAction(WorldPacket& recvData) //sign for autocast if (act_state == ACT_ENABLED) { - if (pet->GetTypeId() == TYPEID_UNIT && pet->ToCreature()->IsPet()) + if (pet->GetTypeId() == TYPEID_UNIT && pet->IsPet()) ((Pet*)pet)->ToggleAutocast(spellInfo, true); else for (Unit::ControlList::iterator itr = GetPlayer()->m_Controlled.begin(); itr != GetPlayer()->m_Controlled.end(); ++itr) @@ -568,7 +568,7 @@ void WorldSession::HandlePetSetAction(WorldPacket& recvData) //sign for no/turn off autocast else if (act_state == ACT_DISABLED) { - if (pet->GetTypeId() == TYPEID_UNIT && pet->ToCreature()->IsPet()) + if (pet->GetTypeId() == TYPEID_UNIT && pet->IsPet()) ((Pet*)pet)->ToggleAutocast(spellInfo, false); else for (Unit::ControlList::iterator itr = GetPlayer()->m_Controlled.begin(); itr != GetPlayer()->m_Controlled.end(); ++itr) diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp index c60397d8ca8..1715b1539e5 100644 --- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp +++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp @@ -2983,7 +2983,7 @@ void AuraEffect::HandleModPossessPet(AuraApplication const* aurApp, uint8 mode, // return; Unit* target = aurApp->GetTarget(); - if (target->GetTypeId() != TYPEID_UNIT || !target->ToCreature()->IsPet()) + if (target->GetTypeId() != TYPEID_UNIT || !target->IsPet()) return; Pet* pet = target->ToPet(); @@ -3648,7 +3648,7 @@ void AuraEffect::HandleAuraModResistance(AuraApplication const* aurApp, uint8 mo if (GetMiscValue() & int32(1<<x)) { target->HandleStatModifier(UnitMods(UNIT_MOD_RESISTANCE_START + x), TOTAL_VALUE, float(GetAmount()), apply); - if (target->GetTypeId() == TYPEID_PLAYER || target->ToCreature()->IsPet()) + if (target->GetTypeId() == TYPEID_PLAYER || target->IsPet()) target->ApplyResistanceBuffModsMod(SpellSchools(x), GetAmount() > 0, (float)GetAmount(), apply); } } @@ -3665,7 +3665,7 @@ void AuraEffect::HandleAuraModBaseResistancePCT(AuraApplication const* aurApp, u if (target->GetTypeId() != TYPEID_PLAYER) { //pets only have base armor - if (target->ToCreature()->IsPet() && (GetMiscValue() & SPELL_SCHOOL_MASK_NORMAL)) + if (target->IsPet() && (GetMiscValue() & SPELL_SCHOOL_MASK_NORMAL)) target->HandleStatModifier(UNIT_MOD_ARMOR, BASE_PCT, float(GetAmount()), apply); } else @@ -3702,7 +3702,7 @@ void AuraEffect::HandleModResistancePercent(AuraApplication const* aurApp, uint8 } } target->HandleStatModifier(UnitMods(UNIT_MOD_RESISTANCE_START + i), TOTAL_PCT, float(GetAmount()), apply); - if (target->GetTypeId() == TYPEID_PLAYER || target->ToCreature()->IsPet()) + if (target->GetTypeId() == TYPEID_PLAYER || target->IsPet()) { target->ApplyResistanceBuffModsPercentMod(SpellSchools(i), true, (float)GetAmount(), apply); target->ApplyResistanceBuffModsPercentMod(SpellSchools(i), false, (float)GetAmount(), apply); @@ -3722,7 +3722,7 @@ void AuraEffect::HandleModBaseResistance(AuraApplication const* aurApp, uint8 mo if (target->GetTypeId() != TYPEID_PLAYER) { //only pets have base stats - if (target->ToCreature()->IsPet() && (GetMiscValue() & SPELL_SCHOOL_MASK_NORMAL)) + if (target->IsPet() && (GetMiscValue() & SPELL_SCHOOL_MASK_NORMAL)) target->HandleStatModifier(UNIT_MOD_ARMOR, TOTAL_VALUE, float(GetAmount()), apply); } else @@ -3779,13 +3779,13 @@ void AuraEffect::HandleAuraModStat(AuraApplication const* aurApp, uint8 mode, bo if (spellGroupVal) { target->HandleStatModifier(UnitMods(UNIT_MOD_STAT_START + i), TOTAL_VALUE, float(spellGroupVal), !apply); - if (target->GetTypeId() == TYPEID_PLAYER || target->ToCreature()->IsPet()) + if (target->GetTypeId() == TYPEID_PLAYER || target->IsPet()) target->ApplyStatBuffMod(Stats(i), float(spellGroupVal), !apply); } //target->ApplyStatMod(Stats(i), m_amount, apply); target->HandleStatModifier(UnitMods(UNIT_MOD_STAT_START + i), TOTAL_VALUE, float(GetAmount()), apply); - if (target->GetTypeId() == TYPEID_PLAYER || target->ToCreature()->IsPet()) + if (target->GetTypeId() == TYPEID_PLAYER || target->IsPet()) target->ApplyStatBuffMod(Stats(i), (float)GetAmount(), apply); } } @@ -3906,7 +3906,7 @@ void AuraEffect::HandleModTotalPercentStat(AuraApplication const* aurApp, uint8 if (GetMiscValue() == i || GetMiscValue() == -1) // affect the same stats { target->HandleStatModifier(UnitMods(UNIT_MOD_STAT_START + i), TOTAL_PCT, float(spellGroupVal), !apply); - if (target->GetTypeId() == TYPEID_PLAYER || target->ToCreature()->IsPet()) + if (target->GetTypeId() == TYPEID_PLAYER || target->IsPet()) target->ApplyStatPercentBuffMod(Stats(i), float(spellGroupVal), !apply); } } @@ -3927,12 +3927,12 @@ void AuraEffect::HandleModTotalPercentStat(AuraApplication const* aurApp, uint8 if (spellGroupVal2) { target->HandleStatModifier(UnitMods(UNIT_MOD_STAT_START + i), TOTAL_PCT, float(spellGroupVal2), !apply); - if (target->GetTypeId() == TYPEID_PLAYER || target->ToCreature()->IsPet()) + if (target->GetTypeId() == TYPEID_PLAYER || target->IsPet()) target->ApplyStatPercentBuffMod(Stats(i), float(spellGroupVal2), !apply); } target->HandleStatModifier(UnitMods(UNIT_MOD_STAT_START + i), TOTAL_PCT, float(GetAmount()), apply); - if (target->GetTypeId() == TYPEID_PLAYER || target->ToCreature()->IsPet()) + if (target->GetTypeId() == TYPEID_PLAYER || target->IsPet()) target->ApplyStatPercentBuffMod(Stats(i), float(GetAmount()), apply); } } diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index fac8a5aa670..3601986fb63 100644 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -3814,7 +3814,7 @@ void Spell::SendSpellStart() castFlags |= CAST_FLAG_PENDING; if ((m_caster->GetTypeId() == TYPEID_PLAYER || - (m_caster->GetTypeId() == TYPEID_UNIT && m_caster->ToCreature()->IsPet())) + (m_caster->GetTypeId() == TYPEID_UNIT && m_caster->IsPet())) && std::find_if(m_powerCost.begin(), m_powerCost.end(), [](SpellInfo::CostData const& cost) { return cost.Power != POWER_HEALTH; }) != m_powerCost.end()) castFlags |= CAST_FLAG_POWER_LEFT_SELF; @@ -3916,7 +3916,7 @@ void Spell::SendSpellGo() castFlags |= CAST_FLAG_PENDING; if ((m_caster->GetTypeId() == TYPEID_PLAYER || - (m_caster->GetTypeId() == TYPEID_UNIT && m_caster->ToCreature()->IsPet())) + (m_caster->GetTypeId() == TYPEID_UNIT && m_caster->IsPet())) && std::find_if(m_powerCost.begin(), m_powerCost.end(), [](SpellInfo::CostData const& cost) { return cost.Power != POWER_HEALTH; }) != m_powerCost.end()) castFlags |= CAST_FLAG_POWER_LEFT_SELF; // should only be sent to self, but the current messaging doesn't make that possible diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index 1cb344da5aa..090c5073839 100644 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -5512,7 +5512,7 @@ void Spell::EffectRenamePet(SpellEffIndex /*effIndex*/) return; if (!unitTarget || unitTarget->GetTypeId() != TYPEID_UNIT || - !unitTarget->ToCreature()->IsPet() || ((Pet*)unitTarget)->getPetType() != HUNTER_PET) + !unitTarget->IsPet() || ((Pet*)unitTarget)->getPetType() != HUNTER_PET) return; unitTarget->SetByteFlag(UNIT_FIELD_BYTES_2, 2, UNIT_CAN_BE_RENAMED); diff --git a/src/server/scripts/Commands/cs_modify.cpp b/src/server/scripts/Commands/cs_modify.cpp index 9b4f78722c3..56f540514d7 100644 --- a/src/server/scripts/Commands/cs_modify.cpp +++ b/src/server/scripts/Commands/cs_modify.cpp @@ -447,7 +447,7 @@ public: target->ToPlayer()->SendTalentsInfoData(false); return true; } - else if (target->ToCreature()->IsPet()) + else if (target->IsPet()) { Unit* owner = target->GetOwner(); if (owner && owner->GetTypeId() == TYPEID_PLAYER && ((Pet*)target)->IsPermanentPetFor(owner->ToPlayer())) |