More work on new worldstate system

Port From (https://github.com/TrinityCore/TrinityCore/commit/a161b6cd328bbcf56950664f677fba716659f0d5)
This commit is contained in:
hondacrx
2022-06-30 00:30:55 -04:00
parent 57d3221a93
commit 0e910e01c4
6 changed files with 0 additions and 78 deletions
@@ -2983,10 +2983,6 @@ namespace Framework.Constants
BattlefieldTbStatePreparations = 5684,
BattlefieldTbStateBattle = 5344,
BattlefieldTbProgressShow = 5376,
BattlefieldTbProgress = 5377, // 0 Horde, 100 Alliance
BattlefieldTbProgressPercentGrey = 5378,
BattlefieldTbKeepHorde = 5469,
BattlefieldTbKeepAlliance = 5470,
-30
View File
@@ -468,31 +468,6 @@ namespace Game.BattleFields
Global.CreatureTextMgr.SendChat(stalker, (byte)id, target);
}
public void SendInitWorldStatesTo(Player player)
{
InitWorldStates packet = new();
packet.MapID = m_MapId;
packet.AreaID = m_ZoneId;
packet.SubareaID = player.GetAreaId();
FillInitialWorldStates(packet);
player.SendPacket(packet);
}
public void SendUpdateWorldState(WorldStates variable, uint value, bool hidden = false)
{
SendUpdateWorldState((uint)variable, value, hidden);
}
public void SendUpdateWorldState(uint variable, uint value, bool hidden = false)
{
UpdateWorldState worldstate = new();
worldstate.VariableID = variable;
worldstate.Value = (int)value;
worldstate.Hidden = hidden;
BroadcastPacketToZone(worldstate);
}
public void AddCapturePoint(BfCapturePoint cp)
{
if (m_capturePoints.ContainsKey(cp.GetCapturePointEntry()))
@@ -803,11 +778,6 @@ namespace Game.BattleFields
public virtual void DoCompleteOrIncrementAchievement(uint achievement, Player player, byte incrementNumber = 1) { }
// Send all worldstate data to all player in zone.
public virtual void SendInitWorldStatesToAll() { }
public virtual void FillInitialWorldStates(InitWorldStates data) { }
// Return if we can use mount in battlefield
public bool CanFlyIn() { return !m_isActive; }
@@ -99,7 +99,6 @@ namespace Game.Chat
return false;
bf.SetTimer(time * Time.InMilliseconds);
bf.SendInitWorldStatesToAll();
if (battleId == 1)
handler.SendGlobalGMSysMessage("Wintergrasp (Command timer used)");
-17
View File
@@ -737,23 +737,6 @@ namespace Game.Entities
//SendPacket(packet);
}
//Battlefields
void SendBattlefieldWorldStates()
{
// Send misc stuff that needs to be sent on every login, like the battle timers.
if (WorldConfig.GetBoolValue(WorldCfg.TolbaradEnable))
{
BattleField tb = Global.BattleFieldMgr.GetBattlefieldByBattleId(BattlefieldIds.TB);
if (tb != null)
{
SendUpdateWorldState(WorldStates.BattlefieldTbFactionControlling, (uint)(tb.GetDefenderTeam() + 1));
uint timer = tb.GetTimer() / 1000;
SendUpdateWorldState(WorldStates.BattlefieldTbTimeBattleEnd, (uint)(tb.IsWarTime() ? (uint)(GameTime.GetGameTime() + timer) : 0));
SendUpdateWorldState(WorldStates.BattlefieldTbTimeNextBattle, (uint)(!tb.IsWarTime() ? (uint)(GameTime.GetGameTime() + timer) : 0));
}
}
}
//Arenas
public void SetArenaTeamInfoField(byte slot, ArenaTeamInfoType type, uint value)
{
-16
View File
@@ -2906,7 +2906,6 @@ namespace Game.Entities
uint mapid = GetMapId();
OutdoorPvP pvp = Global.OutdoorPvPMgr.GetOutdoorPvPToZoneId(zoneId);
InstanceScript instance = GetInstanceScript();
BattleField battlefield = Global.BattleFieldMgr.GetBattlefieldToZoneId(zoneId);
InitWorldStates packet = new();
packet.MapID = mapid;
@@ -3497,27 +3496,12 @@ namespace Game.Entities
if (bg && bg.GetTypeID(true) == BattlegroundTypeId.BFG)
bg.FillInitialWorldStates(packet);
break;
case 5389: // Tol Barad Peninsula
if (WorldConfig.GetBoolValue(WorldCfg.TolbaradEnable))
{
packet.AddState(WorldStates.BattlefieldTbAllianceControlsShow, Global.WorldMgr.GetWorldState(WorldStates.BattlefieldTbAllianceControlsShow));
packet.AddState(WorldStates.BattlefieldTbHordeControlsShow, Global.WorldMgr.GetWorldState(WorldStates.BattlefieldTbHordeControlsShow));
packet.AddState(WorldStates.BattlefieldTbTimeNextBattleShow, Global.WorldMgr.GetWorldState(WorldStates.BattlefieldTbTimeNextBattleShow));
packet.AddState(WorldStates.BattlefieldTbAllianceAttackingShow, Global.WorldMgr.GetWorldState(WorldStates.BattlefieldTbAllianceAttackingShow));
packet.AddState(WorldStates.BattlefieldTbHordeAttackingShow, Global.WorldMgr.GetWorldState(WorldStates.BattlefieldTbHordeAttackingShow));
}
break;
case 5095: // Tol Barad
if (battlefield != null && battlefield.GetTypeId() == (uint)BattleFieldTypes.TolBarad)
battlefield.FillInitialWorldStates(packet);
break;
default:
break;
}
SendPacket(packet);
SendBGWeekendWorldStates();
SendBattlefieldWorldStates();
}
public long GetBarberShopCost(List<ChrCustomizationChoice> newCustomizations)
-10
View File
@@ -261,7 +261,6 @@ namespace Game.BattleFields
player.GetPosition(out x, out y, out z);
if (5500 > x && x > 5392 && y < 2880 && y > 2800 && z < 480)
player.TeleportTo(571, 5349.8686f, 2838.481f, 409.240f, 0.046328f);
SendInitWorldStatesTo(player);
}
}
}
@@ -728,7 +727,6 @@ namespace Game.BattleFields
if (GetData(WGData.BrokenTowerAtt) > 0)
player.SetAuraStack(WGSpells.TowerControl, player, GetData(WGData.BrokenTowerAtt));
}
SendInitWorldStatesTo(player);
}
public override void OnPlayerLeaveWar(Player player)
@@ -767,8 +765,6 @@ namespace Game.BattleFields
RemoveAurasFromPlayer(player);
player.AddAura(m_DefenderTeam == TeamId.Horde ? WGSpells.HordeControlPhaseShift : WGSpells.AllianceControlPhaseShift, player);
// Send worldstate to player
SendInitWorldStatesTo(player);
}
public override uint GetData(uint data)
@@ -793,9 +789,6 @@ namespace Game.BattleFields
return base.GetData(data);
}
//todo remove
public override void SendInitWorldStatesToAll() { }
public void BrokenWallOrTower(uint team, BfWGGameObjectBuilding building)
{
if (team == GetDefenderTeam())
@@ -1449,9 +1442,6 @@ namespace Game.BattleFields
}
}
// todo remove
public void FillInitialWorldStates(InitWorldStates packet) { }
public void Save()
{
Global.WorldMgr.SetWorldState(_worldState, (ulong)_state);