fix(learner): don't record other players' kill positions

On PARTY_KILL and unengaged kills, the learner was recording the local
player's position (GetCurrentPlayerPosition) as the spawn location.
This polluted the learner's spawn map with the wrong coords. Now only
records position for credited kills (your own kills or mobs you damaged
within the last 60 seconds).
This commit is contained in:
Xurkon
2026-06-08 21:51:40 -05:00
parent edbb64fb3d
commit 1629352eb6
+11 -4
View File
@@ -4149,10 +4149,17 @@ function QuestieLearner:OnCombatLogEvent(timestamp, eventType, srcGUID, srcName,
if not npcId or npcId <= 0 then return end if not npcId or npcId <= 0 then return end
local _mapId, px, py = QuestieCompat.GetCurrentPlayerPosition() -- Only record YOUR position for the spawn. GetCurrentPlayerPosition()
if px and py and px > 0 and py > 0 then -- returns the local player's coords, not the killer's — so for
px = floor(px * 10000) / 100 -- party/raid kills where someone else landed the killing blow we
py = floor(py * 10000) / 100 -- must not pollute the learner's spawn map with our own location.
local _mapId, px, py = nil, nil, nil
if credited then
_mapId, px, py = QuestieCompat.GetCurrentPlayerPosition()
if px and py and px > 0 and py > 0 then
px = floor(px * 10000) / 100
py = floor(py * 10000) / 100
end
end end
local zoneId = GetZoneId() local zoneId = GetZoneId()
local zoneText = GetRealZoneText and GetRealZoneText() or "" local zoneText = GetRealZoneText and GetRealZoneText() or ""