Core/UpdateFields: Fixed so update fields not being sent to client. Also removed not needed reflection use for UpdateFields
This commit is contained in:
@@ -2037,24 +2037,26 @@ namespace Game.Entities
|
||||
if (counter >= SharedConst.MaxQuestCounts)
|
||||
return;
|
||||
|
||||
SetUpdateFieldValue(ref m_playerData.ModifyValue(m_playerData.QuestLog, slot).ModifyValue((QuestLog questLogField) => questLogField.ObjectiveProgress, counter), count);
|
||||
QuestLog questLog = m_values.ModifyValue(m_playerData).ModifyValue(m_playerData.QuestLog, slot);
|
||||
SetUpdateFieldValue(ref questLog.ModifyValue(questLog.ObjectiveProgress, counter), count);
|
||||
}
|
||||
|
||||
public void SetQuestSlotState(ushort slot, QuestSlotStateMask state)
|
||||
{
|
||||
QuestLog questLogField = m_playerData.ModifyValue(m_playerData.QuestLog, slot);
|
||||
QuestLog questLogField = m_values.ModifyValue(m_playerData).ModifyValue(m_playerData.QuestLog, slot);
|
||||
SetUpdateFieldFlagValue(questLogField.ModifyValue(questLogField.StateFlags), (uint)state);
|
||||
}
|
||||
|
||||
public void RemoveQuestSlotState(ushort slot, QuestSlotStateMask state)
|
||||
{
|
||||
QuestLog questLogField = m_playerData.ModifyValue(m_playerData.QuestLog, slot);
|
||||
QuestLog questLogField = m_values.ModifyValue(m_playerData).ModifyValue(m_playerData.QuestLog, slot);
|
||||
RemoveUpdateFieldFlagValue(questLogField.ModifyValue(questLogField.StateFlags), (uint)state);
|
||||
}
|
||||
|
||||
public void SetQuestSlotTimer(ushort slot, uint timer)
|
||||
{
|
||||
SetUpdateFieldValue(m_values.ModifyValue(m_playerData).ModifyValue(m_playerData.QuestLog, slot).ModifyValue((QuestLog questLog) => questLog.EndTime), timer);
|
||||
QuestLog questLog = m_values.ModifyValue(m_playerData).ModifyValue(m_playerData.QuestLog, slot);
|
||||
SetUpdateFieldValue(questLog.ModifyValue(questLog.EndTime), timer);
|
||||
}
|
||||
|
||||
void SetQuestCompletedBit(uint questBit, bool completed)
|
||||
|
||||
@@ -820,7 +820,8 @@ namespace Game.Entities
|
||||
// visualize enchantment at player and equipped items
|
||||
if (slot == EnchantmentSlot.Perm)
|
||||
{
|
||||
SetUpdateFieldValue(m_playerData.ModifyValue(m_playerData.VisibleItems, item.GetSlot()).ModifyValue((VisibleItem visibleItemField) => visibleItemField.ItemVisual), item.GetVisibleItemVisual(this));
|
||||
VisibleItem visibleItem = m_values.ModifyValue(m_playerData).ModifyValue(m_playerData.VisibleItems, item.GetSlot());
|
||||
SetUpdateFieldValue(visibleItem.ModifyValue(visibleItem.ItemVisual), item.GetVisibleItemVisual(this));
|
||||
}
|
||||
|
||||
if (apply_dur)
|
||||
@@ -3474,13 +3475,41 @@ namespace Game.Entities
|
||||
|
||||
public void SetPetSpellPower(uint spellPower) { SetUpdateFieldValue(m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.PetSpellPower), spellPower); }
|
||||
|
||||
public void SetSkillLineId(uint pos, ushort skillLineId) { SetUpdateFieldValue(ref m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill)._value.ModifyValue((SkillInfo skillInfo) => skillInfo.SkillLineID, (int)pos), skillLineId); }
|
||||
public void SetSkillStep(uint pos, ushort step) { SetUpdateFieldValue(ref m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill)._value.ModifyValue((SkillInfo skillInfo) => skillInfo.SkillStep, (int)pos), step); }
|
||||
public void SetSkillRank(uint pos, ushort rank) { SetUpdateFieldValue(ref m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill)._value.ModifyValue((SkillInfo skillInfo) => skillInfo.SkillRank, (int)pos), rank); }
|
||||
public void SetSkillStartingRank(uint pos, ushort starting) { SetUpdateFieldValue(ref m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill)._value.ModifyValue((SkillInfo skillInfo) => skillInfo.SkillStartingRank, (int)pos), starting); }
|
||||
public void SetSkillMaxRank(uint pos, ushort max) { SetUpdateFieldValue(ref m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill)._value.ModifyValue((SkillInfo skillInfo) => skillInfo.SkillMaxRank, (int)pos), max); }
|
||||
public void SetSkillTempBonus(uint pos, ushort bonus) { SetUpdateFieldValue(ref m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill)._value.ModifyValue((SkillInfo skillInfo) => skillInfo.SkillTempBonus, (int)pos), bonus); }
|
||||
public void SetSkillPermBonus(uint pos, ushort bonus) { SetUpdateFieldValue(ref m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill)._value.ModifyValue((SkillInfo skillInfo) => skillInfo.SkillPermBonus, (int)pos), bonus); }
|
||||
public void SetSkillLineId(uint pos, ushort skillLineId)
|
||||
{
|
||||
SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill);
|
||||
SetUpdateFieldValue(ref skillInfo.ModifyValue(skillInfo.SkillLineID, (int)pos), skillLineId);
|
||||
}
|
||||
public void SetSkillStep(uint pos, ushort step)
|
||||
{
|
||||
SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill);
|
||||
SetUpdateFieldValue(ref skillInfo.ModifyValue(skillInfo.SkillStep, (int)pos), step);
|
||||
}
|
||||
public void SetSkillRank(uint pos, ushort rank)
|
||||
{
|
||||
SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill);
|
||||
SetUpdateFieldValue(ref skillInfo.ModifyValue(skillInfo.SkillRank, (int)pos), rank);
|
||||
}
|
||||
public void SetSkillStartingRank(uint pos, ushort starting)
|
||||
{
|
||||
SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill);
|
||||
SetUpdateFieldValue(ref skillInfo.ModifyValue(skillInfo.SkillStartingRank, (int)pos), starting);
|
||||
}
|
||||
public void SetSkillMaxRank(uint pos, ushort max)
|
||||
{
|
||||
SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill);
|
||||
SetUpdateFieldValue(ref skillInfo.ModifyValue(skillInfo.SkillMaxRank, (int)pos), max);
|
||||
}
|
||||
public void SetSkillTempBonus(uint pos, ushort bonus)
|
||||
{
|
||||
SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill);
|
||||
SetUpdateFieldValue(ref skillInfo.ModifyValue(skillInfo.SkillTempBonus, (int)pos), bonus);
|
||||
}
|
||||
public void SetSkillPermBonus(uint pos, ushort bonus)
|
||||
{
|
||||
SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill);
|
||||
SetUpdateFieldValue(ref skillInfo.ModifyValue(skillInfo.SkillPermBonus, (int)pos), bonus);
|
||||
}
|
||||
}
|
||||
|
||||
public class PlayerSpell
|
||||
|
||||
@@ -3548,8 +3548,8 @@ namespace Game.Entities
|
||||
if (creature == null || (!creature.IsTrigger() && !creature.HasAuraType(AuraType.Transform) && !creature.HasUnitFlag(UnitFlags.NotSelectable)))
|
||||
continue;
|
||||
|
||||
creature.m_unitData.ModifyValue(m_unitData.DisplayID);
|
||||
creature.m_unitData.ModifyValue(m_unitData.Flags);
|
||||
creature.m_values.ModifyValue(m_unitData).ModifyValue(m_unitData.DisplayID);
|
||||
creature.m_values.ModifyValue(m_unitData).ModifyValue(m_unitData.Flags);
|
||||
creature.ForceUpdateFieldChange();
|
||||
creature.BuildValuesUpdateBlockForPlayer(udata, this);
|
||||
}
|
||||
@@ -7271,11 +7271,13 @@ namespace Game.Entities
|
||||
|
||||
public void SetRestState(RestTypes type, PlayerRestState state)
|
||||
{
|
||||
SetUpdateFieldValue(m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.RestInfo, (int)type).ModifyValue((RestInfo restInfo) => restInfo.StateID), (byte)state);
|
||||
RestInfo restInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.RestInfo, (int)type);
|
||||
SetUpdateFieldValue(restInfo.ModifyValue(restInfo.StateID), (byte)state);
|
||||
}
|
||||
public void SetRestThreshold(RestTypes type, uint threshold)
|
||||
{
|
||||
SetUpdateFieldValue(m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.RestInfo, (int)type).ModifyValue((RestInfo restInfo) => restInfo.Threshold), threshold);
|
||||
RestInfo restInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.RestInfo, (int)type);
|
||||
SetUpdateFieldValue(restInfo.ModifyValue(restInfo.Threshold), threshold);
|
||||
}
|
||||
|
||||
public bool HasPlayerFlag(PlayerFlags flags) { return (m_playerData.PlayerFlags & (uint)flags) != 0; }
|
||||
|
||||
Reference in New Issue
Block a user