mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-02-17 09:14:34 +00:00
* refactor(creature_template): closes #1181 * chore: improve code readability
This commit is contained in:
committed by
Viste(Кирилл)
parent
e8d73a553f
commit
7c7c5eb203
@@ -428,9 +428,9 @@ bool Creature::UpdateEntry(uint32 Entry, const CreatureData* data, bool changele
|
||||
|
||||
SetUInt32Value(UNIT_DYNAMIC_FLAGS, dynamicflags);
|
||||
|
||||
SetAttackTime(BASE_ATTACK, cInfo->baseattacktime);
|
||||
SetAttackTime(OFF_ATTACK, cInfo->baseattacktime);
|
||||
SetAttackTime(RANGED_ATTACK, cInfo->rangeattacktime);
|
||||
SetAttackTime(BASE_ATTACK, cInfo->BaseAttackTime);
|
||||
SetAttackTime(OFF_ATTACK, cInfo->BaseAttackTime);
|
||||
SetAttackTime(RANGED_ATTACK, cInfo->RangeAttackTime);
|
||||
|
||||
SelectLevel(changelevel);
|
||||
|
||||
|
||||
@@ -66,8 +66,6 @@ enum CreatureFlagsExtra
|
||||
|
||||
#define MAX_CREATURE_QUEST_ITEMS 6
|
||||
|
||||
#define MAX_EQUIPMENT_ITEMS 3
|
||||
|
||||
// from `creature_template` table
|
||||
struct CreatureTemplate
|
||||
{
|
||||
@@ -95,9 +93,9 @@ struct CreatureTemplate
|
||||
float maxdmg;
|
||||
uint32 dmgschool;
|
||||
uint32 attackpower;
|
||||
float dmg_multiplier;
|
||||
uint32 baseattacktime;
|
||||
uint32 rangeattacktime;
|
||||
float DamageModifier;
|
||||
uint32 BaseAttackTime;
|
||||
uint32 RangeAttackTime;
|
||||
uint32 unit_class; // enum Classes. Note only 4 classes are known for creatures.
|
||||
uint32 unit_flags; // enum UnitFlags mask values
|
||||
uint32 unit_flags2; // enum UnitFlags2 mask values
|
||||
@@ -234,6 +232,8 @@ struct PointOfInterestLocale
|
||||
StringVector IconName;
|
||||
};
|
||||
|
||||
#define MAX_EQUIPMENT_ITEMS 3
|
||||
|
||||
struct EquipmentInfo
|
||||
{
|
||||
uint32 ItemEntry[MAX_EQUIPMENT_ITEMS];
|
||||
|
||||
@@ -694,8 +694,8 @@ bool Guardian::InitStatsForLevel(uint8 petlevel)
|
||||
SetModifierValue(UNIT_MOD_ARMOR, BASE_VALUE, float(petlevel*50));
|
||||
|
||||
uint32 attackTime = BASE_ATTACK_TIME;
|
||||
if (m_owner->getClass() != CLASS_HUNTER && cinfo->baseattacktime >= 1000)
|
||||
attackTime = cinfo->baseattacktime;
|
||||
if (m_owner->getClass() != CLASS_HUNTER && cinfo->BaseAttackTime >= 1000)
|
||||
attackTime = cinfo->BaseAttackTime;
|
||||
|
||||
SetAttackTime(BASE_ATTACK, attackTime);
|
||||
SetAttackTime(OFF_ATTACK, attackTime);
|
||||
|
||||
@@ -1089,7 +1089,7 @@ void Creature::CalculateMinMaxDamage(WeaponAttackType attType, bool normalized,
|
||||
float basePct = GetModifierValue(unitMod, BASE_PCT);
|
||||
float totalValue = GetModifierValue(unitMod, TOTAL_VALUE);
|
||||
float totalPct = addTotalPct ? GetModifierValue(unitMod, TOTAL_PCT) : 1.0f;
|
||||
float dmgMultiplier = GetCreatureTemplate()->dmg_multiplier; // = dmg_multiplier * _GetDamageMod(rank);
|
||||
float dmgMultiplier = GetCreatureTemplate()->DamageModifier; // = DamageModifier * _GetDamageMod(rank);
|
||||
|
||||
minDamage = ((weaponMinDamage + baseValue) * dmgMultiplier * basePct + totalValue) * totalPct;
|
||||
maxDamage = ((weaponMaxDamage + baseValue) * dmgMultiplier * basePct + totalValue) * totalPct;
|
||||
|
||||
Reference in New Issue
Block a user