Fixes to all-reputation and all-skill custom option handling:

Port From (https://github.com/TrinityCore/TrinityCore/commit/2d191a668019703cf0e32700c586e94679ea04c7)
This commit is contained in:
hondacrx
2020-07-24 16:16:00 -04:00
parent 3c054eb054
commit 13cf935ca7
4 changed files with 76 additions and 60 deletions
+3 -8
View File
@@ -183,14 +183,15 @@ namespace Game
SetFactionStanding setFactionStanding = new SetFactionStanding();
setFactionStanding.ReferAFriendBonus = 0.0f;
setFactionStanding.BonusFromAchievementSystem = 0.0f;
setFactionStanding.Faction.Add(new FactionStandingData((int)faction.ReputationListID, faction.Standing));
if (faction != null)
setFactionStanding.Faction.Add(new FactionStandingData((int)faction.ReputationListID, faction.Standing));
foreach (var state in _factions.Values)
{
if (state.needSend)
{
state.needSend = false;
if (state.ReputationListID != faction.ReputationListID)
if (faction == null || state.ReputationListID != faction.ReputationListID)
setFactionStanding.Faction.Add(new FactionStandingData((int)state.ReputationListID, state.Standing));
}
}
@@ -216,12 +217,6 @@ namespace Game
_player.SendPacket(initFactions);
}
void SendStates()
{
foreach (var faction in _factions)
SendState(faction.Value);
}
public void SendVisible(FactionState faction, bool visible = true)
{
if (_player.GetSession().PlayerLoading())