Core/Battlegrounds: Strand of the Ancients Rework
Port From (https://github.com/TrinityCore/TrinityCore/commit/3d56cdc08413a0682299136a763e13e67d38818b)
This commit is contained in:
@@ -1265,8 +1265,8 @@ namespace Game
|
||||
|
||||
public void SetForcedWarModeFactionBalanceState(int team, int reward = 0)
|
||||
{
|
||||
Global.WorldStateMgr.SetValueAndSaveInDb(WorldStates.WarModeHordeBuffValue, 10 + (team == BatttleGroundTeamId.Alliance ? reward : 0), false, null);
|
||||
Global.WorldStateMgr.SetValueAndSaveInDb(WorldStates.WarModeAllianceBuffValue, 10 + (team == BatttleGroundTeamId.Horde ? reward : 0), false, null);
|
||||
Global.WorldStateMgr.SetValueAndSaveInDb(WorldStates.WarModeHordeBuffValue, 10 + (team == BattleGroundTeamId.Alliance ? reward : 0), false, null);
|
||||
Global.WorldStateMgr.SetValueAndSaveInDb(WorldStates.WarModeAllianceBuffValue, 10 + (team == BattleGroundTeamId.Horde ? reward : 0), false, null);
|
||||
}
|
||||
|
||||
public void DisableForcedWarModeFactionBalanceState()
|
||||
@@ -2477,9 +2477,9 @@ namespace Game
|
||||
if (raceFaction != null)
|
||||
{
|
||||
if ((raceFaction.FactionGroup & (byte)FactionMasks.Alliance) != 0)
|
||||
warModeEnabledFaction[BatttleGroundTeamId.Alliance] += result.Read<long>(1);
|
||||
warModeEnabledFaction[BattleGroundTeamId.Alliance] += result.Read<long>(1);
|
||||
else if ((raceFaction.FactionGroup & (byte)FactionMasks.Horde) != 0)
|
||||
warModeEnabledFaction[BatttleGroundTeamId.Horde] += result.Read<long>(1);
|
||||
warModeEnabledFaction[BattleGroundTeamId.Horde] += result.Read<long>(1);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2487,19 +2487,19 @@ namespace Game
|
||||
}
|
||||
|
||||
|
||||
int dominantFaction = BatttleGroundTeamId.Alliance;
|
||||
int dominantFaction = BattleGroundTeamId.Alliance;
|
||||
int outnumberedFactionReward = 0;
|
||||
|
||||
if (warModeEnabledFaction.Any(val => val != 0))
|
||||
{
|
||||
long dominantFactionCount = warModeEnabledFaction[BatttleGroundTeamId.Alliance];
|
||||
if (warModeEnabledFaction[BatttleGroundTeamId.Alliance] < warModeEnabledFaction[BatttleGroundTeamId.Horde])
|
||||
long dominantFactionCount = warModeEnabledFaction[BattleGroundTeamId.Alliance];
|
||||
if (warModeEnabledFaction[BattleGroundTeamId.Alliance] < warModeEnabledFaction[BattleGroundTeamId.Horde])
|
||||
{
|
||||
dominantFactionCount = warModeEnabledFaction[BatttleGroundTeamId.Horde];
|
||||
dominantFaction = BatttleGroundTeamId.Horde;
|
||||
dominantFactionCount = warModeEnabledFaction[BattleGroundTeamId.Horde];
|
||||
dominantFaction = BattleGroundTeamId.Horde;
|
||||
}
|
||||
|
||||
double total = warModeEnabledFaction[BatttleGroundTeamId.Alliance] + warModeEnabledFaction[BatttleGroundTeamId.Horde];
|
||||
double total = warModeEnabledFaction[BattleGroundTeamId.Alliance] + warModeEnabledFaction[BattleGroundTeamId.Horde];
|
||||
double pct = dominantFactionCount / total;
|
||||
|
||||
if (pct >= WorldConfig.GetFloatValue(WorldCfg.CallToArms20Pct))
|
||||
@@ -2510,8 +2510,8 @@ namespace Game
|
||||
outnumberedFactionReward = 5;
|
||||
}
|
||||
|
||||
Global.WorldStateMgr.SetValueAndSaveInDb(WorldStates.WarModeHordeBuffValue, 10 + (dominantFaction == BatttleGroundTeamId.Alliance ? outnumberedFactionReward : 0), false, null);
|
||||
Global.WorldStateMgr.SetValueAndSaveInDb(WorldStates.WarModeAllianceBuffValue, 10 + (dominantFaction == BatttleGroundTeamId.Horde ? outnumberedFactionReward : 0), false, null);
|
||||
Global.WorldStateMgr.SetValueAndSaveInDb(WorldStates.WarModeHordeBuffValue, 10 + (dominantFaction == BattleGroundTeamId.Alliance ? outnumberedFactionReward : 0), false, null);
|
||||
Global.WorldStateMgr.SetValueAndSaveInDb(WorldStates.WarModeAllianceBuffValue, 10 + (dominantFaction == BattleGroundTeamId.Horde ? outnumberedFactionReward : 0), false, null);
|
||||
}
|
||||
|
||||
public uint GetVirtualRealmAddress()
|
||||
|
||||
Reference in New Issue
Block a user