Обновил код в сообщении выше (взял код с панд), теперь логика как для миникарты. То есть если вы в рейде, то ВАША группа будет с цельными текстурами, а все игроки ВНЕ вашей группы будут иметь текстуры "пончики" (с дыркой по-середине).
- - - Updated - - -

Сообщение от
Xайдекс
Нет, точки не от этого, и не от пвп статуса)
- - - Updated - - -
Бог знает от чего они, мне не ответили)
Да, они от этого. Я по коду понял.
Код:
if ( IsInRaid() ) then
for i=1, MAX_PARTY_MEMBERS do
local partyMemberFrame = _G["WorldMapParty"..i];
partyMemberFrame:Hide();
end
for i=1, MAX_RAID_MEMBERS do
local unit = "raid"..i;
local partyX, partyY = GetPlayerMapPosition(unit);
local partyMemberFrame = _G["WorldMapRaid"..(playerCount + 1)];
if ( (partyX == 0 and partyY == 0) or UnitIsUnit(unit, "player") ) then
partyMemberFrame:Hide();
else
partyX = partyX * WorldMapDetailFrame:GetWidth();
partyY = -partyY * WorldMapDetailFrame:GetHeight();
partyMemberFrame:SetPoint("CENTER", "WorldMapDetailFrame", "TOPLEFT", partyX, partyY);
local class = select(2, UnitClass(unit));
if ( class ) then
if ( UnitInParty(unit) ) then
partyMemberFrame.icon:SetTexCoord(
BLIP_TEX_COORDS[class][1],
BLIP_TEX_COORDS[class][2],
BLIP_TEX_COORDS[class][3],
BLIP_TEX_COORDS[class][4]
);
else
partyMemberFrame.icon:SetTexCoord(
BLIP_TEX_COORDS[class][1],
BLIP_TEX_COORDS[class][2],
BLIP_TEX_COORDS[class][3] + BLIP_RAID_Y_OFFSET,
BLIP_TEX_COORDS[class][4] + BLIP_RAID_Y_OFFSET
);
end
end
partyMemberFrame.name = nil;
partyMemberFrame.unit = unit;
partyMemberFrame:Show();
playerCount = playerCount + 1;
end
end
Вот этот BLIP_RAID_Y_OFFSET сдвигает текстуры на те, которые с дыркой для случая если IsInRaid() (в рейде) и UnitInParty(unit) (вне группы. Вне потому что BLIP_RAID_Y_OFFSET после else).
Вложение 943484