|
1 | 1 | local addon, ns = ... |
| 2 | + |
| 3 | +-- file-local wrapper to handle Retail/Classic API for flag positions (surgical fix) |
| 4 | +local function PVPS_GetBattlefieldFlagPosition(index) |
| 5 | + local uiMapId = C_Map and C_Map.GetBestMapForUnit and C_Map.GetBestMapForUnit("player") or nil |
| 6 | + if PS and PS.isRetail and C_PvP and C_PvP.GetBattlefieldFlagPosition and uiMapId then |
| 7 | + return C_PvP.GetBattlefieldFlagPosition(index, uiMapId) |
| 8 | + end |
| 9 | + if _G.GetBattlefieldFlagPosition then |
| 10 | + return _G.GetBattlefieldFlagPosition(index) |
| 11 | + end |
| 12 | + return nil, nil, nil |
| 13 | +end |
2 | 14 | local PVPSound = ns.PVPSound |
3 | 15 | local PS = ns.PS |
4 | 16 | local L = ns.L |
@@ -197,11 +209,11 @@ function mod:CHAT_MSG_BG_SYSTEM_ALLIANCE(event, EventMessage) |
197 | 209 |
|
198 | 210 | for i = 1, 2 do |
199 | 211 | if PS.isRetail then |
200 | | - local type = select(3, C_PvP.PVPS_GetBattlefieldFlagPosition(i, mod.zoneId)) |
| 212 | + local type = select(3, C_PvP.GetBattlefieldFlagPosition(i, mod.zoneId)) |
201 | 213 |
|
202 | 214 | if type == 137218 then -- type for "AllianceFlag" |
203 | | - AllianceFlagPositionX = select(1, C_PvP.PVPS_GetBattlefieldFlagPosition(i, mod.zoneId)) |
204 | | - AllianceFlagPositionY = select(2, C_PvP.PVPS_GetBattlefieldFlagPosition(i, mod.zoneId)) |
| 215 | + AllianceFlagPositionX = select(1, C_PvP.GetBattlefieldFlagPosition(i, mod.zoneId)) |
| 216 | + AllianceFlagPositionY = select(2, C_PvP.GetBattlefieldFlagPosition(i, mod.zoneId)) |
205 | 217 | break |
206 | 218 | end |
207 | 219 | else |
@@ -276,11 +288,11 @@ function mod:CHAT_MSG_BG_SYSTEM_HORDE(event, EventMessage) |
276 | 288 |
|
277 | 289 | for i = 1, 2 do |
278 | 290 | if PS.isRetail then |
279 | | - local type = select(3, C_PvP.PVPS_GetBattlefieldFlagPosition(i, mod.zoneId)) |
| 291 | + local type = select(3, C_PvP.GetBattlefieldFlagPosition(i, mod.zoneId)) |
280 | 292 |
|
281 | 293 | if type == 137200 then -- type for "HordeFlag" |
282 | | - HordeFlagPositionX = select(1, C_PvP.PVPS_GetBattlefieldFlagPosition(i, mod.zoneId)) |
283 | | - HordeFlagPositionY = select(2, C_PvP.PVPS_GetBattlefieldFlagPosition(i, mod.zoneId)) |
| 294 | + HordeFlagPositionX = select(1, C_PvP.GetBattlefieldFlagPosition(i, mod.zoneId)) |
| 295 | + HordeFlagPositionY = select(2, C_PvP.GetBattlefieldFlagPosition(i, mod.zoneId)) |
284 | 296 | break |
285 | 297 | end |
286 | 298 | else |
|
0 commit comments