aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Entities/Unit
diff options
context:
space:
mode:
authorMihapro <miha.penger@outlook.com>2018-01-03 16:39:00 +0100
committerjoschiwald <joschiwald.trinity@gmail.com>2018-01-03 16:39:32 +0100
commit8199eef81cad464bb43f3613ed884a2c8fc3973d (patch)
tree7a17cb8ede0a45814532dd306fcf7f37d2f90ce8 /src/server/game/Entities/Unit
parentc2aead1da5b6cb9a3a69e276b3f12a2c76b9ab86 (diff)
Core/Misc: Added helper function Unit::SetFullPower
* Also renamed Unit::getPowerType and Unit::setPowerType to follow style guidelines Ref #20981
Diffstat (limited to 'src/server/game/Entities/Unit')
-rw-r--r--src/server/game/Entities/Unit/Unit.cpp18
-rw-r--r--src/server/game/Entities/Unit/Unit.h17
2 files changed, 18 insertions, 17 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp
index e3b4958b330..8233d7b2457 100644
--- a/src/server/game/Entities/Unit/Unit.cpp
+++ b/src/server/game/Entities/Unit/Unit.cpp
@@ -780,7 +780,7 @@ uint32 Unit::DealDamage(Unit* victim, uint32 damage, CleanDamage const* cleanDam
}
// Rage from Damage made (only from direct weapon damage)
- if (cleanDamage && (cleanDamage->attackType == BASE_ATTACK || cleanDamage->attackType == OFF_ATTACK) && damagetype == DIRECT_DAMAGE && this != victim && getPowerType() == POWER_RAGE)
+ if (cleanDamage && (cleanDamage->attackType == BASE_ATTACK || cleanDamage->attackType == OFF_ATTACK) && damagetype == DIRECT_DAMAGE && this != victim && GetPowerType() == POWER_RAGE)
{
uint32 rage = uint32(GetBaseAttackTime(cleanDamage->attackType) / 1000.f * 1.75f);
if (cleanDamage->attackType == OFF_ATTACK)
@@ -5159,9 +5159,9 @@ void Unit::SendAttackStateUpdate(uint32 HitInfo, Unit* target, uint8 /*SwingType
SendAttackStateUpdate(&dmgInfo);
}
-void Unit::setPowerType(Powers new_powertype)
+void Unit::SetPowerType(Powers new_powertype)
{
- if (getPowerType() == new_powertype)
+ if (GetPowerType() == new_powertype)
return;
SetUInt32Value(UNIT_FIELD_DISPLAY_POWER, new_powertype);
@@ -5235,7 +5235,7 @@ void Unit::UpdateDisplayPower()
}
}
- setPowerType(displayPower);
+ SetPowerType(displayPower);
}
FactionTemplateEntry const* Unit::GetFactionTemplateEntry() const
@@ -5923,7 +5923,7 @@ void Unit::SetMinion(Minion *minion, bool apply)
// Ghoul pets have energy instead of mana (is anywhere better place for this code?)
if (minion->IsPetGhoul())
- minion->setPowerType(POWER_ENERGY);
+ minion->SetPowerType(POWER_ENERGY);
// Send infinity cooldown - client does that automatically but after relog cooldown needs to be set again
SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(minion->GetUInt32Value(UNIT_CREATED_BY_SPELL));
@@ -8540,7 +8540,7 @@ void Unit::setDeathState(DeathState s)
// without this when removing IncreaseMaxHealth aura player may stuck with 1 hp
// do not why since in IncreaseMaxHealth currenthealth is checked
SetHealth(0);
- SetPower(getPowerType(), 0);
+ SetPower(GetPowerType(), 0);
SetUInt32Value(UNIT_NPC_EMOTESTATE, 0);
// players in instance don't have ZoneScript, but they have InstanceScript
@@ -9265,9 +9265,9 @@ bool Unit::HandleStatModifier(UnitMods unitMod, UnitModifierType modifierType, f
case UNIT_MOD_RUNES:
case UNIT_MOD_RUNIC_POWER:
case UNIT_MOD_SOUL_SHARDS:
- case UNIT_MOD_ECLIPSE:
+ case UNIT_MOD_LUNAR_POWER:
case UNIT_MOD_HOLY_POWER:
- case UNIT_MOD_ALTERNATIVE:
+ case UNIT_MOD_ALTERNATE:
case UNIT_MOD_MAELSTROM:
case UNIT_MOD_CHI:
case UNIT_MOD_INSANITY:
@@ -9508,7 +9508,7 @@ void Unit::SetPower(Powers power, int32 val)
if (powerIndex == MAX_POWERS || powerIndex >= MAX_POWERS_PER_CLASS)
return;
- int32 maxPower = int32(GetMaxPower(power));
+ int32 maxPower = GetMaxPower(power);
if (maxPower < val)
val = maxPower;
diff --git a/src/server/game/Entities/Unit/Unit.h b/src/server/game/Entities/Unit/Unit.h
index f9096940b48..7caa345a89f 100644
--- a/src/server/game/Entities/Unit/Unit.h
+++ b/src/server/game/Entities/Unit/Unit.h
@@ -292,9 +292,9 @@ enum UnitMods
UNIT_MOD_RUNES,
UNIT_MOD_RUNIC_POWER,
UNIT_MOD_SOUL_SHARDS,
- UNIT_MOD_ECLIPSE,
+ UNIT_MOD_LUNAR_POWER,
UNIT_MOD_HOLY_POWER,
- UNIT_MOD_ALTERNATIVE,
+ UNIT_MOD_ALTERNATE,
UNIT_MOD_MAELSTROM,
UNIT_MOD_CHI,
UNIT_MOD_INSANITY,
@@ -1043,8 +1043,8 @@ class TC_GAME_API Unit : public WorldObject
virtual float GetDamageMultiplierForTarget(WorldObject const* /*target*/) const { return 1.0f; }
virtual float GetArmorMultiplierForTarget(WorldObject const* /*target*/) const { return 1.0f; }
- Powers getPowerType() const { return Powers(GetUInt32Value(UNIT_FIELD_DISPLAY_POWER)); }
- void setPowerType(Powers power);
+ Powers GetPowerType() const { return Powers(GetUInt32Value(UNIT_FIELD_DISPLAY_POWER)); }
+ void SetPowerType(Powers power);
void UpdateDisplayPower();
int32 GetPower(Powers power) const;
int32 GetMinPower(Powers power) const { return power == POWER_LUNAR_POWER ? -100 : 0; }
@@ -1053,6 +1053,7 @@ class TC_GAME_API Unit : public WorldObject
int32 CountPctFromMaxPower(Powers power, int32 pct) const { return CalculatePct(GetMaxPower(power), pct); }
void SetPower(Powers power, int32 val);
void SetMaxPower(Powers power, int32 val);
+ inline void SetFullPower(Powers power) { SetPower(power, GetMaxPower(power)); }
// returns the change in power
int32 ModifyPower(Powers power, int32 val);
@@ -2027,15 +2028,15 @@ namespace Trinity
{
Unit const* a = objA->ToUnit();
Unit const* b = objB->ToUnit();
- float rA = (a && a->GetMaxPower(_power)) ? float(a->GetPower(_power)) / float(a->GetMaxPower(_power)) : 0.0f;
- float rB = (b && b->GetMaxPower(_power)) ? float(b->GetPower(_power)) / float(b->GetMaxPower(_power)) : 0.0f;
+ float rA = a ? a->GetPowerPct(_power) : 0.0f;
+ float rB = b ? b->GetPowerPct(_power) : 0.0f;
return _ascending ? rA < rB : rA > rB;
}
bool operator()(Unit const* a, Unit const* b) const
{
- float rA = a->GetMaxPower(_power) ? float(a->GetPower(_power)) / float(a->GetMaxPower(_power)) : 0.0f;
- float rB = b->GetMaxPower(_power) ? float(b->GetPower(_power)) / float(b->GetMaxPower(_power)) : 0.0f;
+ float rA = a->GetPowerPct(_power);
+ float rB = b->GetPowerPct(_power);
return _ascending ? rA < rB : rA > rB;
}