* Update creature damage calculation.
--HG-- branch : trunk
This commit is contained in:
+11
-15
@@ -1390,22 +1390,18 @@ void Creature::SelectLevel(const CreatureInfo *cinfo)
|
|||||||
SetModifierValue(UNIT_MOD_HEALTH, BASE_VALUE, health);
|
SetModifierValue(UNIT_MOD_HEALTH, BASE_VALUE, health);
|
||||||
SetModifierValue(UNIT_MOD_MANA, BASE_VALUE, mana);
|
SetModifierValue(UNIT_MOD_MANA, BASE_VALUE, mana);
|
||||||
|
|
||||||
// damage
|
|
||||||
//uint32 attackpower = cinfo->attackpower * level / 60;
|
|
||||||
//uint32 rangedattackpower = cinfo->rangedattackpower * level / 60;
|
|
||||||
//damagemod *= 0.75f;
|
|
||||||
SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, cinfo->mindmg);
|
|
||||||
SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, cinfo->maxdmg);
|
|
||||||
SetBaseWeaponDamage(OFF_ATTACK, MINDAMAGE, cinfo->mindmg);
|
|
||||||
SetBaseWeaponDamage(OFF_ATTACK, MAXDAMAGE, cinfo->maxdmg);
|
|
||||||
SetBaseWeaponDamage(RANGED_ATTACK, MINDAMAGE, cinfo->minrangedmg);
|
|
||||||
SetBaseWeaponDamage(RANGED_ATTACK, MAXDAMAGE, cinfo->maxrangedmg);
|
|
||||||
|
|
||||||
// this value is not accurate, but should be close to the real value
|
//damage
|
||||||
//SetModifierValue(UNIT_MOD_ATTACK_POWER, BASE_VALUE, level * 5);
|
float damagemod = _GetDamageMod(rank);
|
||||||
//SetModifierValue(UNIT_MOD_ATTACK_POWER_RANGED, BASE_VALUE, level * 5);
|
|
||||||
SetModifierValue(UNIT_MOD_ATTACK_POWER, BASE_VALUE, cinfo->attackpower);
|
SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, cinfo->mindmg * damagemod);
|
||||||
SetModifierValue(UNIT_MOD_ATTACK_POWER_RANGED, BASE_VALUE, cinfo->rangedattackpower);
|
SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, cinfo->maxdmg * damagemod);
|
||||||
|
|
||||||
|
SetFloatValue(UNIT_FIELD_MINRANGEDDAMAGE,cinfo->minrangedmg * damagemod);
|
||||||
|
SetFloatValue(UNIT_FIELD_MAXRANGEDDAMAGE,cinfo->maxrangedmg * damagemod);
|
||||||
|
|
||||||
|
SetModifierValue(UNIT_MOD_ATTACK_POWER, BASE_VALUE, cinfo->attackpower * damagemod);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
float Creature::_GetHealthMod(int32 Rank)
|
float Creature::_GetHealthMod(int32 Rank)
|
||||||
|
|||||||
@@ -786,7 +786,7 @@ void ObjectMgr::LoadCreatureTemplates()
|
|||||||
const_cast<CreatureInfo*>(cInfo)->scale = 1.0f;
|
const_cast<CreatureInfo*>(cInfo)->scale = 1.0f;
|
||||||
}
|
}
|
||||||
|
|
||||||
const_cast<CreatureInfo*>(cInfo)->dmg_multiplier *= Creature::_GetDamageMod(cInfo->rank);
|
//const_cast<CreatureInfo*>(cInfo)->dmg_multiplier *= Creature::_GetDamageMod(cInfo->rank);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user