mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-19 17:05:44 +01:00
Core/Entities: Regenerated updatefields code with latest generator fixes
This commit is contained in:
@@ -23,6 +23,8 @@
|
||||
#include "Player.h"
|
||||
#include "ViewerDependentValues.h"
|
||||
|
||||
// This file is automatically generated, DO NOT EDIT
|
||||
|
||||
#if TRINITY_COMPILER == TRINITY_COMPILER_GNU
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wunused-parameter"
|
||||
@@ -690,7 +692,10 @@ void AzeriteItemData::WriteCreate(ByteBuffer& data, EnumFlag<UpdateFieldFlag> fi
|
||||
data << uint32(UnlockedEssenceMilestones[i]);
|
||||
}
|
||||
data.FlushBits();
|
||||
data.WriteBit(Enabled);
|
||||
if (fieldVisibilityFlags.HasFlag(UpdateFieldFlag::Owner))
|
||||
{
|
||||
data.WriteBit(Enabled);
|
||||
}
|
||||
for (std::size_t i = 0; i < SelectedEssences.size(); ++i)
|
||||
{
|
||||
SelectedEssences[i].WriteCreate(data, owner, receiver);
|
||||
@@ -700,7 +705,7 @@ void AzeriteItemData::WriteCreate(ByteBuffer& data, EnumFlag<UpdateFieldFlag> fi
|
||||
|
||||
void AzeriteItemData::WriteUpdate(ByteBuffer& data, EnumFlag<UpdateFieldFlag> fieldVisibilityFlags, AzeriteItem const* owner, Player const* receiver) const
|
||||
{
|
||||
UpdateMask<10> allowedMaskForTarget({ 0x0000001Fu });
|
||||
UpdateMask<10> allowedMaskForTarget({ 0x0000001Du });
|
||||
AppendAllowedFieldsMaskForFlag(allowedMaskForTarget, fieldVisibilityFlags);
|
||||
WriteUpdate(data, _changesMask & allowedMaskForTarget, false, owner, receiver);
|
||||
}
|
||||
@@ -708,13 +713,13 @@ void AzeriteItemData::WriteUpdate(ByteBuffer& data, EnumFlag<UpdateFieldFlag> fi
|
||||
void AzeriteItemData::AppendAllowedFieldsMaskForFlag(UpdateMask<10>& allowedMaskForTarget, EnumFlag<UpdateFieldFlag> fieldVisibilityFlags) const
|
||||
{
|
||||
if (fieldVisibilityFlags.HasFlag(UpdateFieldFlag::Owner))
|
||||
allowedMaskForTarget |= { 0x000003E0u };
|
||||
allowedMaskForTarget |= { 0x000003E2u };
|
||||
}
|
||||
|
||||
void AzeriteItemData::FilterDisallowedFieldsMaskForFlag(UpdateMask<10>& changesMask, EnumFlag<UpdateFieldFlag> fieldVisibilityFlags) const
|
||||
{
|
||||
if (!fieldVisibilityFlags.HasFlag(UpdateFieldFlag::Owner))
|
||||
changesMask &= { 0xFFFFFC1Fu };
|
||||
changesMask &= { 0xFFFFFC1Du };
|
||||
}
|
||||
|
||||
void AzeriteItemData::WriteUpdate(ByteBuffer& data, UpdateMask<10> const& changesMask, bool ignoreNestedChangesMask, AzeriteItem const* owner, Player const* receiver) const
|
||||
@@ -1055,7 +1060,7 @@ void UnitData::WriteCreate(ByteBuffer& data, EnumFlag<UpdateFieldFlag> fieldVisi
|
||||
for (std::size_t i = 0; i < 7; ++i)
|
||||
{
|
||||
data << int32(BonusResistanceMods[i]);
|
||||
data << int32(PowerCostModifier[i]);
|
||||
data << int32(ManaCostModifier[i]);
|
||||
}
|
||||
}
|
||||
data << int32(BaseMana);
|
||||
@@ -1084,7 +1089,7 @@ void UnitData::WriteCreate(ByteBuffer& data, EnumFlag<UpdateFieldFlag> fieldVisi
|
||||
data << float(Lifesteal);
|
||||
data << float(MinRangedDamage);
|
||||
data << float(MaxRangedDamage);
|
||||
data << float(ManaCostModifierModifier);
|
||||
data << float(ManaCostMultiplier);
|
||||
data << float(MaxHealthModifier);
|
||||
}
|
||||
data << float(HoverHeight);
|
||||
@@ -1606,7 +1611,7 @@ void UnitData::WriteUpdate(ByteBuffer& data, UpdateMask<189> const& changesMask,
|
||||
}
|
||||
if (changesMask[101])
|
||||
{
|
||||
data << float(ManaCostModifierModifier);
|
||||
data << float(ManaCostMultiplier);
|
||||
}
|
||||
if (changesMask[102])
|
||||
{
|
||||
@@ -1761,7 +1766,7 @@ void UnitData::WriteUpdate(ByteBuffer& data, UpdateMask<189> const& changesMask,
|
||||
}
|
||||
if (changesMask[182 + i])
|
||||
{
|
||||
data << int32(PowerCostModifier[i]);
|
||||
data << int32(ManaCostModifier[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1866,7 +1871,7 @@ void UnitData::ClearChangesMask()
|
||||
Base::ClearChangesMask(Lifesteal);
|
||||
Base::ClearChangesMask(MinRangedDamage);
|
||||
Base::ClearChangesMask(MaxRangedDamage);
|
||||
Base::ClearChangesMask(ManaCostModifierModifier);
|
||||
Base::ClearChangesMask(ManaCostMultiplier);
|
||||
Base::ClearChangesMask(MaxHealthModifier);
|
||||
Base::ClearChangesMask(HoverHeight);
|
||||
Base::ClearChangesMask(MinItemLevelCutoff);
|
||||
@@ -1896,7 +1901,7 @@ void UnitData::ClearChangesMask()
|
||||
Base::ClearChangesMask(StatNegBuff);
|
||||
Base::ClearChangesMask(Resistances);
|
||||
Base::ClearChangesMask(BonusResistanceMods);
|
||||
Base::ClearChangesMask(PowerCostModifier);
|
||||
Base::ClearChangesMask(ManaCostModifier);
|
||||
_changesMask.ResetAll();
|
||||
}
|
||||
|
||||
|
||||
@@ -25,6 +25,8 @@
|
||||
#include "UpdateField.h"
|
||||
#include "UpdateMask.h"
|
||||
|
||||
// This file is automatically generated, DO NOT EDIT
|
||||
|
||||
class AreaTrigger;
|
||||
class AzeriteEmpoweredItem;
|
||||
class AzeriteItem;
|
||||
@@ -353,7 +355,7 @@ struct UnitData : public IsUpdateFieldStructureTag, public HasChangesMask<189>
|
||||
UpdateField<float, 96, 98> Lifesteal;
|
||||
UpdateField<float, 96, 99> MinRangedDamage;
|
||||
UpdateField<float, 96, 100> MaxRangedDamage;
|
||||
UpdateField<float, 96, 101> ManaCostModifierModifier;
|
||||
UpdateField<float, 96, 101> ManaCostMultiplier;
|
||||
UpdateField<float, 96, 102> MaxHealthModifier;
|
||||
UpdateField<float, 96, 103> HoverHeight;
|
||||
UpdateField<int32, 96, 104> MinItemLevelCutoff;
|
||||
@@ -384,7 +386,7 @@ struct UnitData : public IsUpdateFieldStructureTag, public HasChangesMask<189>
|
||||
UpdateFieldArray<int32, 4, 154, 163> StatNegBuff;
|
||||
UpdateFieldArray<int32, 7, 167, 168> Resistances;
|
||||
UpdateFieldArray<int32, 7, 167, 175> BonusResistanceMods;
|
||||
UpdateFieldArray<int32, 7, 167, 182> PowerCostModifier;
|
||||
UpdateFieldArray<int32, 7, 167, 182> ManaCostModifier;
|
||||
|
||||
void WriteCreate(ByteBuffer& data, EnumFlag<UpdateFieldFlag> fieldVisibilityFlags, Unit const* owner, Player const* receiver) const;
|
||||
void WriteUpdate(ByteBuffer& data, EnumFlag<UpdateFieldFlag> fieldVisibilityFlags, Unit const* owner, Player const* receiver) const;
|
||||
|
||||
@@ -1087,7 +1087,7 @@ class TC_GAME_API Unit : public WorldObject
|
||||
// returns the change in power
|
||||
int32 ModifyPower(Powers power, int32 val);
|
||||
|
||||
void ApplyModPowerCostModifier(SpellSchools school, int32 mod, bool apply) { ApplyModUpdateFieldValue(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::PowerCostModifier, school), mod, apply); }
|
||||
void ApplyModManaCostModifier(SpellSchools school, int32 mod, bool apply) { ApplyModUpdateFieldValue(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::ManaCostModifier, school), mod, apply); }
|
||||
|
||||
uint32 GetBaseAttackTime(WeaponAttackType att) const;
|
||||
void SetBaseAttackTime(WeaponAttackType att, uint32 val);
|
||||
|
||||
@@ -4424,11 +4424,15 @@ void AuraEffect::HandleModPowerCost(AuraApplication const* aurApp, uint8 mode, b
|
||||
if (!(mode & AURA_EFFECT_HANDLE_CHANGE_AMOUNT_MASK))
|
||||
return;
|
||||
|
||||
// handled in SpellInfo::CalcPowerCost, this is only for client UI
|
||||
if (!(GetMiscValueB() & (1 << POWER_MANA)))
|
||||
return;
|
||||
|
||||
Unit* target = aurApp->GetTarget();
|
||||
|
||||
for (int i = 0; i < MAX_SPELL_SCHOOL; ++i)
|
||||
if (GetMiscValue() & (1 << i))
|
||||
target->ApplyModPowerCostModifier(SpellSchools(i), GetAmount(), apply);
|
||||
target->ApplyModManaCostModifier(SpellSchools(i), GetAmount(), apply);
|
||||
}
|
||||
|
||||
void AuraEffect::HandleArenaPreparation(AuraApplication const* aurApp, uint8 mode, bool apply) const
|
||||
|
||||
@@ -3835,7 +3835,7 @@ std::vector<SpellPowerCost> SpellInfo::CalcPowerCost(Unit const* caster, SpellSc
|
||||
}
|
||||
|
||||
if (power->PowerType == POWER_MANA)
|
||||
flatMod *= 1.0f + caster->m_unitData->ManaCostModifierModifier;
|
||||
flatMod *= 1.0f + caster->m_unitData->ManaCostMultiplier; // this is wrong
|
||||
|
||||
powerCost += flatMod;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user