diff --git a/src/game/Object/Pet.cpp b/src/game/Object/Pet.cpp index b247fe4d..47e2e462 100644 --- a/src/game/Object/Pet.cpp +++ b/src/game/Object/Pet.cpp @@ -1080,9 +1080,9 @@ bool Pet::InitStatsForLevel(uint32 petlevel, Unit* owner) SetModifierValue(UNIT_MOD_ARMOR, BASE_VALUE, float(petlevel * 50)); - SetAttackTime(BASE_ATTACK, BASE_ATTACK_TIME); - SetAttackTime(OFF_ATTACK, BASE_ATTACK_TIME); - SetAttackTime(RANGED_ATTACK, BASE_ATTACK_TIME); + SetAttackTime(BASE_ATTACK, cinfo->MeleeBaseAttackTime); + SetAttackTime(OFF_ATTACK, cinfo->MeleeBaseAttackTime); + SetAttackTime(RANGED_ATTACK, cinfo->RangedBaseAttackTime); SetFloatValue(UNIT_MOD_CAST_SPEED, 1.0); @@ -1187,9 +1187,9 @@ bool Pet::InitStatsForLevel(uint32 petlevel, Unit* owner) SetUInt32Value(UNIT_FIELD_PETNEXTLEVELEXP, sObjectMgr.GetXPForPetLevel(petlevel)); // these formula may not be correct; however, it is designed to be close to what it should be // this makes dps 0.5 of pets level - SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, float(0.5 * GetAttackTime(BASE_ATTACK) * (petlevel - (petlevel / 4)) / 1000)); - SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, float(0.5 * GetAttackTime(BASE_ATTACK) * (petlevel + (petlevel / 4)) / 1000)); - // damage is increased afterwards as strength and pet scaling modify attack power + SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, float(petlevel - (petlevel / 4))); + SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, float(petlevel + (petlevel / 4))); + // damage is modified afterwards based on creature attack power and attack speed // stored standard pet stats are entry 1 in pet_levelinfo PetLevelInfo const* pInfo = sObjectMgr.GetPetLevelInfo(creature_ID, petlevel); diff --git a/src/game/Object/Unit.cpp b/src/game/Object/Unit.cpp index 0c436be3..00fa70c7 100644 --- a/src/game/Object/Unit.cpp +++ b/src/game/Object/Unit.cpp @@ -1822,8 +1822,6 @@ void Unit::DealMeleeDamage(CalcDamageInfo* damageInfo, bool durabilityLoss) uint32 damage = (*i)->GetModifier()->m_amount; SpellEntry const* i_spellProto = (*i)->GetSpellProto(); - //apply bonus damage from existing auras with id = 14 (SPELL_AURA_MOD_DAMAGE_TAKEN) - damage += SpellBaseDamageBonusTaken(GetSpellSchoolMask(i_spellProto)); pVictim->DealDamageMods(this, damage, NULL); WorldPacket data(SMSG_SPELLDAMAGESHIELD, (8 + 8 + 4 + 4)); @@ -5455,7 +5453,7 @@ int32 Unit::SpellBonusWithCoeffs(Unit* pCaster, SpellEntry const* spellProto, in // Just don't waste time into this function if there's no benefit. if (!benefit) { return total; } - + // Distribute Damage over multiple effects, reduce by AoE float coeff = 1.0f; @@ -5465,7 +5463,6 @@ int32 Unit::SpellBonusWithCoeffs(Unit* pCaster, SpellEntry const* spellProto, in // Check for table values else if (SpellBonusEntry const* bonus = sSpellMgr.GetSpellBonusData(spellProto->Id)) { - switch (damagetype) { case DOT: diff --git a/src/shared/revision.h b/src/shared/revision.h index 5f8911ed..26d83068 100644 --- a/src/shared/revision.h +++ b/src/shared/revision.h @@ -38,6 +38,6 @@ #define WORLD_DB_VERSION_NR 21 #define WORLD_DB_STRUCTURE_NR 11 - #define WORLD_DB_CONTENT_NR 1 - #define WORLD_DB_UPDATE_DESCRIPTION "quest_relations" + #define WORLD_DB_CONTENT_NR 7 + #define WORLD_DB_UPDATE_DESCRIPTION "Fix BG buffs" #endif // __REVISION_H__