Misc cleanup

This commit is contained in:
Hondacrx
2025-12-08 15:25:55 -05:00
parent 6da69c8263
commit d4677ae863
5 changed files with 49 additions and 65 deletions
-3
View File
@@ -222,9 +222,6 @@ namespace Game.Chat
return player.GetGUID().GetCounter(); return player.GetGUID().GetCounter();
ObjectGuid guid = Global.CharacterCacheStorage.GetCharacterGuidByName(idS); ObjectGuid guid = Global.CharacterCacheStorage.GetCharacterGuidByName(idS);
if (guid.IsEmpty())
return 0;
return guid.GetCounter(); return guid.GetCounter();
} }
case 1: case 1:
+3 -5
View File
@@ -1886,17 +1886,15 @@ namespace Game.Entities
} }
void _SaveSkills(SQLTransaction trans) void _SaveSkills(SQLTransaction trans)
{ {
PreparedStatement stmt;// = null; PreparedStatement stmt;
SkillInfo skillInfoField = m_activePlayerData.Skill;
foreach (var pair in mSkillStatus.ToList()) foreach (var pair in mSkillStatus.ToList())
{ {
if (pair.Value.State == SkillState.Unchanged) if (pair.Value.State == SkillState.Unchanged)
continue; continue;
ushort value = skillInfoField.SkillRank[pair.Value.Pos]; ushort value = GetSkillRankByPos(pair.Value.Pos);
ushort max = skillInfoField.SkillMaxRank[pair.Value.Pos]; ushort max = GetSkillMaxRankByPos(pair.Value.Pos);
sbyte professionSlot = (sbyte)GetProfessionSlotFor(pair.Key); sbyte professionSlot = (sbyte)GetProfessionSlotFor(pair.Key);
switch (pair.Value.State) switch (pair.Value.State)
+44 -55
View File
@@ -19,11 +19,10 @@ namespace Game.Entities
{ {
Race race = GetRace(); Race race = GetRace();
ushort maxSkill = GetMaxSkillValueForLevel(); ushort maxSkill = GetMaxSkillValueForLevel();
SkillInfo skillInfoField = m_activePlayerData.Skill;
foreach (var pair in mSkillStatus) foreach (var pair in mSkillStatus)
{ {
if (pair.Value.State == SkillState.Deleted || skillInfoField.SkillRank[pair.Value.Pos] == 0) if (pair.Value.State == SkillState.Deleted || GetSkillRankByPos(pair.Value.Pos) == 0)
continue; continue;
uint pskill = pair.Key; uint pskill = pair.Key;
@@ -42,7 +41,7 @@ namespace Game.Entities
} }
// Update level dependent skillline spells // Update level dependent skillline spells
LearnSkillRewardedSpells(rcEntry.SkillID, skillInfoField.SkillRank[pair.Value.Pos], race); LearnSkillRewardedSpells(rcEntry.SkillID, GetSkillRankByPos(pair.Value.Pos), race);
} }
} }
@@ -56,15 +55,13 @@ namespace Game.Entities
if (skill == 0) if (skill == 0)
return 0; return 0;
SkillInfo skillInfo = m_activePlayerData.Skill;
var skillStatusData = mSkillStatus.LookupByKey(skill); var skillStatusData = mSkillStatus.LookupByKey(skill);
if (skillStatusData == null || skillStatusData.State == SkillState.Deleted || skillInfo.SkillRank[skillStatusData.Pos] == 0) if (skillStatusData == null || skillStatusData.State == SkillState.Deleted || GetSkillRankByPos(skillStatusData.Pos) == 0)
return 0; return 0;
int result = skillInfo.SkillRank[skillStatusData.Pos]; int result = GetSkillRankByPos(skillStatusData.Pos);
result += skillInfo.SkillTempBonus[skillStatusData.Pos]; result += GetSkillTempBonusByPos(skillStatusData.Pos);
result += skillInfo.SkillPermBonus[skillStatusData.Pos]; result += GetSkillPermBonusByPos(skillStatusData.Pos);
return (ushort)(result < 0 ? 0 : result); return (ushort)(result < 0 ? 0 : result);
} }
@@ -78,15 +75,13 @@ namespace Game.Entities
if (skill == 0) if (skill == 0)
return 0; return 0;
SkillInfo skillInfo = m_activePlayerData.Skill;
var skillStatusData = mSkillStatus.LookupByKey(skill); var skillStatusData = mSkillStatus.LookupByKey(skill);
if (skillStatusData == null || skillStatusData.State == SkillState.Deleted || skillInfo.SkillRank[skillStatusData.Pos] == 0) if (skillStatusData == null || skillStatusData.State == SkillState.Deleted || GetSkillRankByPos(skillStatusData.Pos) == 0)
return 0; return 0;
int result = skillInfo.SkillMaxRank[skillStatusData.Pos]; int result = GetSkillMaxRankByPos(skillStatusData.Pos);
result += skillInfo.SkillTempBonus[skillStatusData.Pos]; result += GetSkillTempBonusByPos(skillStatusData.Pos);
result += skillInfo.SkillPermBonus[skillStatusData.Pos]; result += GetSkillPermBonusByPos(skillStatusData.Pos);
return (ushort)(result < 0 ? 0 : result); return (ushort)(result < 0 ? 0 : result);
} }
@@ -100,13 +95,11 @@ namespace Game.Entities
if (skill == 0) if (skill == 0)
return 0; return 0;
SkillInfo skillInfo = m_activePlayerData.Skill;
var skillStatusData = mSkillStatus.LookupByKey(skill); var skillStatusData = mSkillStatus.LookupByKey(skill);
if (skillStatusData == null || skillStatusData.State == SkillState.Deleted || skillInfo.SkillRank[skillStatusData.Pos] == 0) if (skillStatusData == null || skillStatusData.State == SkillState.Deleted || GetSkillRankByPos(skillStatusData.Pos) == 0)
return 0; return 0;
return skillInfo.SkillRank[skillStatusData.Pos]; return GetSkillRankByPos(skillStatusData.Pos);
} }
public ushort GetSkillStep(SkillType skill) public ushort GetSkillStep(SkillType skill)
@@ -119,13 +112,11 @@ namespace Game.Entities
if (skill == 0) if (skill == 0)
return 0; return 0;
SkillInfo skillInfo = m_activePlayerData.Skill;
var skillStatusData = mSkillStatus.LookupByKey(skill); var skillStatusData = mSkillStatus.LookupByKey(skill);
if (skillStatusData == null || skillStatusData.State == SkillState.Deleted || skillInfo.SkillRank[skillStatusData.Pos] == 0) if (skillStatusData == null || skillStatusData.State == SkillState.Deleted || GetSkillRankByPos(skillStatusData.Pos) == 0)
return 0; return 0;
return skillInfo.SkillStep[skillStatusData.Pos]; return GetSkillStepByPos(skillStatusData.Pos);
} }
public ushort GetPureMaxSkillValue(SkillType skill) public ushort GetPureMaxSkillValue(SkillType skill)
@@ -133,13 +124,11 @@ namespace Game.Entities
if (skill == 0) if (skill == 0)
return 0; return 0;
SkillInfo skillInfo = m_activePlayerData.Skill;
var skillStatusData = mSkillStatus.LookupByKey(skill); var skillStatusData = mSkillStatus.LookupByKey(skill);
if (skillStatusData == null || skillStatusData.State == SkillState.Deleted || skillInfo.SkillRank[skillStatusData.Pos] == 0) if (skillStatusData == null || skillStatusData.State == SkillState.Deleted || GetSkillRankByPos(skillStatusData.Pos) == 0)
return 0; return 0;
return skillInfo.SkillMaxRank[skillStatusData.Pos]; return GetSkillMaxRankByPos(skillStatusData.Pos);
} }
public ushort GetBaseSkillValue(SkillType skill) public ushort GetBaseSkillValue(SkillType skill)
@@ -147,14 +136,12 @@ namespace Game.Entities
if (skill == 0) if (skill == 0)
return 0; return 0;
SkillInfo skillInfo = m_activePlayerData.Skill;
var skillStatusData = mSkillStatus.LookupByKey(skill); var skillStatusData = mSkillStatus.LookupByKey(skill);
if (skillStatusData == null || skillStatusData.State == SkillState.Deleted || skillInfo.SkillRank[skillStatusData.Pos] == 0) if (skillStatusData == null || skillStatusData.State == SkillState.Deleted || GetSkillRankByPos(skillStatusData.Pos) == 0)
return 0; return 0;
int result = skillInfo.SkillRank[skillStatusData.Pos]; int result = GetSkillRankByPos(skillStatusData.Pos);
result += skillInfo.SkillPermBonus[skillStatusData.Pos]; result += GetSkillPermBonusByPos(skillStatusData.Pos);
return (ushort)(result < 0 ? 0 : result); return (ushort)(result < 0 ? 0 : result);
} }
@@ -163,13 +150,11 @@ namespace Game.Entities
if (skill == 0) if (skill == 0)
return 0; return 0;
SkillInfo skillInfo = m_activePlayerData.Skill;
var skillStatusData = mSkillStatus.LookupByKey(skill); var skillStatusData = mSkillStatus.LookupByKey(skill);
if (skillStatusData == null || skillStatusData.State == SkillState.Deleted || skillInfo.SkillRank[skillStatusData.Pos] == 0) if (skillStatusData == null || skillStatusData.State == SkillState.Deleted || GetSkillRankByPos(skillStatusData.Pos) == 0)
return 0; return 0;
return skillInfo.SkillPermBonus[skillStatusData.Pos]; return GetSkillPermBonusByPos(skillStatusData.Pos);
} }
public ushort GetSkillTempBonusValue(uint skill) public ushort GetSkillTempBonusValue(uint skill)
@@ -177,13 +162,11 @@ namespace Game.Entities
if (skill == 0) if (skill == 0)
return 0; return 0;
SkillInfo skillInfo = m_activePlayerData.Skill;
var skillStatusData = mSkillStatus.LookupByKey(skill); var skillStatusData = mSkillStatus.LookupByKey(skill);
if (skillStatusData == null || skillStatusData.State == SkillState.Deleted || skillInfo.SkillRank[skillStatusData.Pos] == 0) if (skillStatusData == null || skillStatusData.State == SkillState.Deleted || GetSkillRankByPos(skillStatusData.Pos) == 0)
return 0; return 0;
return skillInfo.SkillTempBonus[skillStatusData.Pos]; return GetSkillTempBonusByPos(skillStatusData.Pos);
} }
void InitializeSelfResurrectionSpells() void InitializeSelfResurrectionSpells()
@@ -414,10 +397,8 @@ namespace Game.Entities
if (skillStatusData == null || skillStatusData.State == SkillState.Deleted) if (skillStatusData == null || skillStatusData.State == SkillState.Deleted)
return false; return false;
SkillInfo skillInfoField = m_activePlayerData.Skill; ushort value = GetSkillRankByPos(skillStatusData.Pos);
ushort max = GetSkillMaxRankByPos(skillStatusData.Pos);
ushort value = skillInfoField.SkillRank[skillStatusData.Pos];
ushort max = skillInfoField.SkillMaxRank[skillStatusData.Pos];
if (max == 0 || value == 0 || value >= max) if (max == 0 || value == 0 || value >= max)
return false; return false;
@@ -859,16 +840,14 @@ namespace Game.Entities
public void ModifySkillBonus(uint skillid, int val, bool talent) public void ModifySkillBonus(uint skillid, int val, bool talent)
{ {
SkillInfo skillInfoField = m_activePlayerData.Skill;
var skillStatusData = mSkillStatus.LookupByKey(skillid); var skillStatusData = mSkillStatus.LookupByKey(skillid);
if (skillStatusData == null || skillStatusData.State == SkillState.Deleted || skillInfoField.SkillRank[skillStatusData.Pos] == 0) if (skillStatusData == null || skillStatusData.State == SkillState.Deleted || GetSkillRankByPos(skillStatusData.Pos) == 0)
return; return;
if (talent) if (talent)
SetSkillPermBonus(skillStatusData.Pos, (ushort)(skillInfoField.SkillPermBonus[skillStatusData.Pos] + val)); SetSkillPermBonus(skillStatusData.Pos, (ushort)(GetSkillPermBonusByPos(skillStatusData.Pos) + val));
else else
SetSkillTempBonus(skillStatusData.Pos, (ushort)(skillInfoField.SkillTempBonus[skillStatusData.Pos] + val)); SetSkillTempBonus(skillStatusData.Pos, (ushort)(GetSkillTempBonusByPos(skillStatusData.Pos) + val));
// Apply/Remove bonus to child skill lines // Apply/Remove bonus to child skill lines
var childSkillLines = Global.DB2Mgr.GetSkillLinesForParentSkill(skillid); var childSkillLines = Global.DB2Mgr.GetSkillLinesForParentSkill(skillid);
@@ -1051,10 +1030,8 @@ namespace Game.Entities
if (skill == 0) if (skill == 0)
return false; return false;
SkillInfo skillInfoField = m_activePlayerData.Skill;
var skillStatusData = mSkillStatus.LookupByKey(skill); var skillStatusData = mSkillStatus.LookupByKey(skill);
return skillStatusData != null && skillStatusData.State != SkillState.Deleted && skillInfoField.SkillRank[skillStatusData.Pos] != 0; return skillStatusData != null && skillStatusData.State != SkillState.Deleted && GetSkillRankByPos(skillStatusData.Pos) != 0;
} }
public void SetSkill(SkillType skill, uint step, uint newVal, uint maxVal) public void SetSkill(SkillType skill, uint step, uint newVal, uint maxVal)
{ {
@@ -1071,7 +1048,6 @@ namespace Game.Entities
ushort currVal; ushort currVal;
var skillStatusData = mSkillStatus.LookupByKey(id); var skillStatusData = mSkillStatus.LookupByKey(id);
SkillInfo skillInfoField = m_activePlayerData.Skill;
void refreshSkillBonusAuras() void refreshSkillBonusAuras()
{ {
@@ -1093,7 +1069,7 @@ namespace Game.Entities
// Handle already stored skills // Handle already stored skills
if (skillStatusData != null) if (skillStatusData != null)
{ {
currVal = skillInfoField.SkillRank[skillStatusData.Pos]; currVal = GetSkillRankByPos(skillStatusData.Pos);
// Activate and update skill line // Activate and update skill line
if (newVal != 0) if (newVal != 0)
@@ -1220,7 +1196,7 @@ namespace Game.Entities
// Find a free skill slot // Find a free skill slot
for (int i = 0; i < SkillConst.MaxPlayerSkills; ++i) for (int i = 0; i < SkillConst.MaxPlayerSkills; ++i)
{ {
if (((SkillInfo)m_activePlayerData.Skill).SkillLineID[i] == 0) if (GetSkillLineIdByPos(i) == 0)
{ {
skillSlot = (byte)i; skillSlot = (byte)i;
break; break;
@@ -3697,36 +3673,49 @@ namespace Game.Entities
public void SetPetSpellPower(uint spellPower) { SetUpdateFieldValue(m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.PetSpellPower), spellPower); } public void SetPetSpellPower(uint spellPower) { SetUpdateFieldValue(m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.PetSpellPower), spellPower); }
public ushort GetSkillLineIdByPos(uint pos) { return m_activePlayerData.Skill.GetValue().SkillLineID[(int)pos]; }
public void SetSkillLineId(uint pos, ushort skillLineId) public void SetSkillLineId(uint pos, ushort skillLineId)
{ {
SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill); SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill);
SetUpdateFieldValue(ref skillInfo.ModifyValue(skillInfo.SkillLineID, (int)pos), skillLineId); SetUpdateFieldValue(ref skillInfo.ModifyValue(skillInfo.SkillLineID, (int)pos), skillLineId);
} }
public ushort GetSkillStepByPos(uint pos) { return m_activePlayerData.Skill.GetValue().SkillStep[(int)pos]; }
public void SetSkillStep(uint pos, ushort step) public void SetSkillStep(uint pos, ushort step)
{ {
SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill); SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill);
SetUpdateFieldValue(ref skillInfo.ModifyValue(skillInfo.SkillStep, (int)pos), step); SetUpdateFieldValue(ref skillInfo.ModifyValue(skillInfo.SkillStep, (int)pos), step);
} }
public ushort GetSkillRankByPos(uint pos) { return m_activePlayerData.Skill.GetValue().SkillRank[(int)pos]; }
public void SetSkillRank(uint pos, ushort rank) public void SetSkillRank(uint pos, ushort rank)
{ {
SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill); SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill);
SetUpdateFieldValue(ref skillInfo.ModifyValue(skillInfo.SkillRank, (int)pos), rank); SetUpdateFieldValue(ref skillInfo.ModifyValue(skillInfo.SkillRank, (int)pos), rank);
} }
public ushort GetSkillStartingRankByPos(uint pos) { return m_activePlayerData.Skill.GetValue().SkillStartingRank[(int)pos]; }
public void SetSkillStartingRank(uint pos, ushort starting) public void SetSkillStartingRank(uint pos, ushort starting)
{ {
SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill); SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill);
SetUpdateFieldValue(ref skillInfo.ModifyValue(skillInfo.SkillStartingRank, (int)pos), starting); SetUpdateFieldValue(ref skillInfo.ModifyValue(skillInfo.SkillStartingRank, (int)pos), starting);
} }
public ushort GetSkillMaxRankByPos(uint pos) { return m_activePlayerData.Skill.GetValue().SkillMaxRank[(int)pos]; }
public void SetSkillMaxRank(uint pos, ushort max) public void SetSkillMaxRank(uint pos, ushort max)
{ {
SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill); SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill);
SetUpdateFieldValue(ref skillInfo.ModifyValue(skillInfo.SkillMaxRank, (int)pos), max); SetUpdateFieldValue(ref skillInfo.ModifyValue(skillInfo.SkillMaxRank, (int)pos), max);
} }
public ushort GetSkillTempBonusByPos(uint pos) { return m_activePlayerData.Skill.GetValue().SkillTempBonus[(int)pos]; }
public void SetSkillTempBonus(uint pos, ushort bonus) public void SetSkillTempBonus(uint pos, ushort bonus)
{ {
SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill); SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill);
SetUpdateFieldValue(ref skillInfo.ModifyValue(skillInfo.SkillTempBonus, (int)pos), bonus); SetUpdateFieldValue(ref skillInfo.ModifyValue(skillInfo.SkillTempBonus, (int)pos), bonus);
} }
public ushort GetSkillPermBonusByPos(uint pos) { return m_activePlayerData.Skill.GetValue().SkillPermBonus[(int)pos]; }
public void SetSkillPermBonus(uint pos, ushort bonus) public void SetSkillPermBonus(uint pos, ushort bonus)
{ {
SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill); SkillInfo skillInfo = m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Skill);
+1 -1
View File
@@ -190,7 +190,7 @@ namespace Game.Groups
m_raidDifficulty = Player.CheckLoadedRaidDifficultyID((Difficulty)field.Read<byte>(14)); m_raidDifficulty = Player.CheckLoadedRaidDifficultyID((Difficulty)field.Read<byte>(14));
m_legacyRaidDifficulty = Player.CheckLoadedLegacyRaidDifficultyID((Difficulty)field.Read<byte>(15)); m_legacyRaidDifficulty = Player.CheckLoadedLegacyRaidDifficultyID((Difficulty)field.Read<byte>(15));
m_masterLooterGuid = ObjectGuid.Create(HighGuid.Player, field.Read<ulong>(16)); m_masterLooterGuid = field.Read<ulong>(16) != 0 ? ObjectGuid.Create(HighGuid.Player, field.Read<ulong>(16)) : ObjectGuid.Empty;
m_pingRestriction = (RestrictPingsTo)field.Read<sbyte>(18); m_pingRestriction = (RestrictPingsTo)field.Read<sbyte>(18);
+1 -1
View File
@@ -4199,7 +4199,7 @@ namespace Game.Maps
{ {
switch (step.sourceGUID.GetHigh()) switch (step.sourceGUID.GetHigh())
{ {
case HighGuid.Item: // as well as HIGHGUID_CONTAINER case HighGuid.Item:
Player player = GetPlayer(step.ownerGUID); Player player = GetPlayer(step.ownerGUID);
if (player != null) if (player != null)
source = player.GetItemByGuid(step.sourceGUID); source = player.GetItemByGuid(step.sourceGUID);