Core/WorldStates: Migrate OutdoorPvP worldstates to new system
This commit is contained in:
1 parent
c63312cc06
commit
e748845e78
14 files changed
+320
-578
No files matched your search
@@ -8757,7 +8757,6 @@ void Player::SendInitWorldStates(uint32 zoneId, uint32 areaId)
|
||||
{
|
||||
// data depends on zoneid/mapid...
|
||||
uint32 mapid = GetMapId();
|
||||
OutdoorPvP* pvp = sOutdoorPvPMgr->GetOutdoorPvPToZoneId(zoneId);
|
||||
|
||||
TC_LOG_DEBUG("network", "Sending SMSG_INIT_WORLD_STATES to Map: %u, Zone: %u", mapid, zoneId);
|
||||
|
||||
@@ -8779,180 +8778,6 @@ void Player::SendInitWorldStates(uint32 zoneId, uint32 areaId)
|
||||
// 0 - End of season
|
||||
packet.Worldstates.emplace_back(3901, int32(sWorld->getIntConfig(CONFIG_ARENA_SEASON_ID) - sWorld->getBoolConfig(CONFIG_ARENA_SEASON_IN_PROGRESS))); // 8 PreviousSeason
|
||||
|
||||
if (mapid == 530) // Outland
|
||||
{
|
||||
packet.Worldstates.emplace_back(2495, 0); // 7
|
||||
packet.Worldstates.emplace_back(2493, 0xF); // 8
|
||||
packet.Worldstates.emplace_back(2491, 0xF); // 9
|
||||
}
|
||||
|
||||
// insert <field> <value>
|
||||
switch (zoneId)
|
||||
{
|
||||
case 1: // Dun Morogh
|
||||
case 11: // Wetlands
|
||||
case 12: // Elwynn Forest
|
||||
case 38: // Loch Modan
|
||||
case 40: // Westfall
|
||||
case 51: // Searing Gorge
|
||||
case 1519: // Stormwind City
|
||||
case 1537: // Ironforge
|
||||
case 2257: // Deeprun Tram
|
||||
case 3703: // Shattrath City});
|
||||
break;
|
||||
case 1377: // Silithus
|
||||
if (pvp && pvp->GetTypeId() == OUTDOOR_PVP_SI)
|
||||
pvp->FillInitialWorldStates(packet);
|
||||
else
|
||||
{
|
||||
// states are always shown
|
||||
packet.Worldstates.emplace_back(2313, 0x0); // 7 ally silityst gathered
|
||||
packet.Worldstates.emplace_back(2314, 0x0); // 8 horde silityst gathered
|
||||
packet.Worldstates.emplace_back(2317, 0x0); // 9 max silithyst
|
||||
}
|
||||
// dunno about these... aq opening event maybe?
|
||||
packet.Worldstates.emplace_back(2322, 0x0); // 10 sandworm N
|
||||
packet.Worldstates.emplace_back(2323, 0x0); // 11 sandworm S
|
||||
packet.Worldstates.emplace_back(2324, 0x0); // 12 sandworm SW
|
||||
packet.Worldstates.emplace_back(2325, 0x0); // 13 sandworm E
|
||||
break;
|
||||
// any of these needs change! the client remembers the prev setting!
|
||||
// ON EVERY ZONE LEAVE, RESET THE OLD ZONE'S WORLD STATE, BUT AT LEAST THE UI STUFF!
|
||||
case 3483: // Hellfire Peninsula
|
||||
if (pvp && pvp->GetTypeId() == OUTDOOR_PVP_HP)
|
||||
pvp->FillInitialWorldStates(packet);
|
||||
else
|
||||
{
|
||||
packet.Worldstates.emplace_back(0x9ba, 0x1); // 10 // add ally tower main gui icon // maybe should be sent only on login?
|
||||
packet.Worldstates.emplace_back(0x9b9, 0x1); // 11 // add horde tower main gui icon // maybe should be sent only on login?
|
||||
packet.Worldstates.emplace_back(0x9b5, 0x0); // 12 // show neutral broken hill icon // 2485
|
||||
packet.Worldstates.emplace_back(0x9b4, 0x1); // 13 // show icon above broken hill // 2484
|
||||
packet.Worldstates.emplace_back(0x9b3, 0x0); // 14 // show ally broken hill icon // 2483
|
||||
packet.Worldstates.emplace_back(0x9b2, 0x0); // 15 // show neutral overlook icon // 2482
|
||||
packet.Worldstates.emplace_back(0x9b1, 0x1); // 16 // show the overlook arrow // 2481
|
||||
packet.Worldstates.emplace_back(0x9b0, 0x0); // 17 // show ally overlook icon // 2480
|
||||
packet.Worldstates.emplace_back(0x9ae, 0x0); // 18 // horde pvp objectives captured // 2478
|
||||
packet.Worldstates.emplace_back(0x9ac, 0x0); // 19 // ally pvp objectives captured // 2476
|
||||
packet.Worldstates.emplace_back(2475, 100); //: ally / horde slider grey area // show only in direct vicinity!
|
||||
packet.Worldstates.emplace_back(2474, 50); //: ally / horde slider percentage, 100 for ally, 0 for horde // show only in direct vicinity!
|
||||
packet.Worldstates.emplace_back(2473, 0); //: ally / horde slider display // show only in direct vicinity!
|
||||
packet.Worldstates.emplace_back(0x9a8, 0x0); // 20 // show the neutral stadium icon // 2472
|
||||
packet.Worldstates.emplace_back(0x9a7, 0x0); // 21 // show the ally stadium icon // 2471
|
||||
packet.Worldstates.emplace_back(0x9a6, 0x1); // 22 // show the horde stadium icon // 2470
|
||||
}
|
||||
break;
|
||||
case 3518: // Nagrand
|
||||
if (pvp && pvp->GetTypeId() == OUTDOOR_PVP_NA)
|
||||
pvp->FillInitialWorldStates(packet);
|
||||
else
|
||||
{
|
||||
packet.Worldstates.emplace_back(2503, 0x0); // 10
|
||||
packet.Worldstates.emplace_back(2502, 0x0); // 11
|
||||
packet.Worldstates.emplace_back(2493, 0x0); // 12
|
||||
packet.Worldstates.emplace_back(2491, 0x0); // 13
|
||||
|
||||
packet.Worldstates.emplace_back(2495, 0x0); // 14
|
||||
packet.Worldstates.emplace_back(2494, 0x0); // 15
|
||||
packet.Worldstates.emplace_back(2497, 0x0); // 16
|
||||
|
||||
packet.Worldstates.emplace_back(2762, 0x0); // 17
|
||||
packet.Worldstates.emplace_back(2662, 0x0); // 18
|
||||
packet.Worldstates.emplace_back(2663, 0x0); // 19
|
||||
packet.Worldstates.emplace_back(2664, 0x0); // 20
|
||||
|
||||
packet.Worldstates.emplace_back(2760, 0x0); // 21
|
||||
packet.Worldstates.emplace_back(2670, 0x0); // 22
|
||||
packet.Worldstates.emplace_back(2668, 0x0); // 23
|
||||
packet.Worldstates.emplace_back(2669, 0x0); // 24
|
||||
|
||||
packet.Worldstates.emplace_back(2761, 0x0); // 25
|
||||
packet.Worldstates.emplace_back(2667, 0x0); // 26
|
||||
packet.Worldstates.emplace_back(2665, 0x0); // 27
|
||||
packet.Worldstates.emplace_back(2666, 0x0); // 28
|
||||
|
||||
packet.Worldstates.emplace_back(2763, 0x0); // 29
|
||||
packet.Worldstates.emplace_back(2659, 0x0); // 30
|
||||
packet.Worldstates.emplace_back(2660, 0x0); // 31
|
||||
packet.Worldstates.emplace_back(2661, 0x0); // 32
|
||||
|
||||
packet.Worldstates.emplace_back(2671, 0x0); // 33
|
||||
packet.Worldstates.emplace_back(2676, 0x0); // 34
|
||||
packet.Worldstates.emplace_back(2677, 0x0); // 35
|
||||
packet.Worldstates.emplace_back(2672, 0x0); // 36
|
||||
packet.Worldstates.emplace_back(2673, 0x0); // 37
|
||||
}
|
||||
break;
|
||||
case 3519: // Terokkar Forest
|
||||
if (pvp && pvp->GetTypeId() == OUTDOOR_PVP_TF)
|
||||
pvp->FillInitialWorldStates(packet);
|
||||
else
|
||||
{
|
||||
packet.Worldstates.emplace_back(0xa41, 0x0); // 10 // 2625 capture bar pos
|
||||
packet.Worldstates.emplace_back(0xa40, 0x14); // 11 // 2624 capture bar neutral
|
||||
packet.Worldstates.emplace_back(0xa3f, 0x0); // 12 // 2623 show capture bar
|
||||
packet.Worldstates.emplace_back(0xa3e, 0x0); // 13 // 2622 horde towers controlled
|
||||
packet.Worldstates.emplace_back(0xa3d, 0x5); // 14 // 2621 ally towers controlled
|
||||
packet.Worldstates.emplace_back(0xa3c, 0x0); // 15 // 2620 show towers controlled
|
||||
packet.Worldstates.emplace_back(0xa88, 0x0); // 16 // 2696 SE Neu
|
||||
packet.Worldstates.emplace_back(0xa87, 0x0); // 17 // SE Horde
|
||||
packet.Worldstates.emplace_back(0xa86, 0x0); // 18 // SE Ally
|
||||
packet.Worldstates.emplace_back(0xa85, 0x0); // 19 //S Neu
|
||||
packet.Worldstates.emplace_back(0xa84, 0x0); // 20 S Horde
|
||||
packet.Worldstates.emplace_back(0xa83, 0x0); // 21 S Ally
|
||||
packet.Worldstates.emplace_back(0xa82, 0x0); // 22 NE Neu
|
||||
packet.Worldstates.emplace_back(0xa81, 0x0); // 23 NE Horde
|
||||
packet.Worldstates.emplace_back(0xa80, 0x0); // 24 NE Ally
|
||||
packet.Worldstates.emplace_back(0xa7e, 0x0); // 25 // 2686 N Neu
|
||||
packet.Worldstates.emplace_back(0xa7d, 0x0); // 26 N Horde
|
||||
packet.Worldstates.emplace_back(0xa7c, 0x0); // 27 N Ally
|
||||
packet.Worldstates.emplace_back(0xa7b, 0x0); // 28 NW Ally
|
||||
packet.Worldstates.emplace_back(0xa7a, 0x0); // 29 NW Horde
|
||||
packet.Worldstates.emplace_back(0xa79, 0x0); // 30 NW Neutral
|
||||
packet.Worldstates.emplace_back(0x9d0, 0x5); // 31 // 2512 locked time remaining seconds first digit
|
||||
packet.Worldstates.emplace_back(0x9ce, 0x0); // 32 // 2510 locked time remaining seconds second digit
|
||||
packet.Worldstates.emplace_back(0x9cd, 0x0); // 33 // 2509 locked time remaining minutes
|
||||
packet.Worldstates.emplace_back(0x9cc, 0x0); // 34 // 2508 neutral locked time show
|
||||
packet.Worldstates.emplace_back(0xad0, 0x0); // 35 // 2768 horde locked time show
|
||||
packet.Worldstates.emplace_back(0xacf, 0x1); // 36 // 2767 ally locked time show
|
||||
}
|
||||
break;
|
||||
case 3521: // Zangarmarsh
|
||||
if (pvp && pvp->GetTypeId() == OUTDOOR_PVP_ZM)
|
||||
pvp->FillInitialWorldStates(packet);
|
||||
else
|
||||
{
|
||||
packet.Worldstates.emplace_back(0x9e1, 0x0); // 10 //2529
|
||||
packet.Worldstates.emplace_back(0x9e0, 0x0); // 11
|
||||
packet.Worldstates.emplace_back(0x9df, 0x0); // 12
|
||||
packet.Worldstates.emplace_back(0xa5d, 0x1); // 13 //2653
|
||||
packet.Worldstates.emplace_back(0xa5c, 0x0); // 14 //2652 east beacon neutral
|
||||
packet.Worldstates.emplace_back(0xa5b, 0x1); // 15 horde
|
||||
packet.Worldstates.emplace_back(0xa5a, 0x0); // 16 ally
|
||||
packet.Worldstates.emplace_back(0xa59, 0x1); // 17 // 2649 Twin spire graveyard horde 12???
|
||||
packet.Worldstates.emplace_back(0xa58, 0x0); // 18 ally 14 ???
|
||||
packet.Worldstates.emplace_back(0xa57, 0x0); // 19 neutral 7???
|
||||
packet.Worldstates.emplace_back(0xa56, 0x0); // 20 // 2646 west beacon neutral
|
||||
packet.Worldstates.emplace_back(0xa55, 0x1); // 21 horde
|
||||
packet.Worldstates.emplace_back(0xa54, 0x0); // 22 ally
|
||||
packet.Worldstates.emplace_back(0x9e7, 0x0); // 23 // 2535
|
||||
packet.Worldstates.emplace_back(0x9e6, 0x0); // 24
|
||||
packet.Worldstates.emplace_back(0x9e5, 0x0); // 25
|
||||
packet.Worldstates.emplace_back(0xa00, 0x0); // 26 // 2560
|
||||
packet.Worldstates.emplace_back(0x9ff, 0x1); // 27
|
||||
packet.Worldstates.emplace_back(0x9fe, 0x0); // 28
|
||||
packet.Worldstates.emplace_back(0x9fd, 0x0); // 29
|
||||
packet.Worldstates.emplace_back(0x9fc, 0x1); // 30
|
||||
packet.Worldstates.emplace_back(0x9fb, 0x0); // 31
|
||||
packet.Worldstates.emplace_back(0xa62, 0x0); // 32 // 2658
|
||||
packet.Worldstates.emplace_back(0xa61, 0x1); // 33
|
||||
packet.Worldstates.emplace_back(0xa60, 0x1); // 34
|
||||
packet.Worldstates.emplace_back(0xa5f, 0x0); // 35
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
SendDirectMessage(packet.Write());
|
||||
SendBGWeekendWorldStates();
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user