Приветствуем вас на форуме проекта WoW Circle. Если вы читаете это, значит не зарегистрировались у нас. Для того, чтобы получить доступ к расширенным возможностям нашего форума нажмите сюда и пройди регистрацию, которая не займет у вас много времени. После регистрации будут доступны новые, более расширенные, возможности.
Карта!

Упомянутые в теме пользователи:

Показано с 1 по 12 из 27

Тема: Карта!

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #9
    Почетный флудер Аватар для Artur91425
    Регистрация
    25.10.2012
    Адрес
    Россия
    Сообщений
    2,772
    Поблагодарил(а)
    339
    Получено благодарностей: 558 (сообщений: 391).
    Репутация: 1047
    Обновил код в сообщении выше (взял код с панд), теперь логика как для миникарты. То есть если вы в рейде, то ВАША группа будет с цельными текстурами, а все игроки ВНЕ вашей группы будут иметь текстуры "пончики" (с дыркой по-середине).

    - - - 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

  2. 1 пользователь сказал cпасибо Artur91425 за это полезное сообщение:

    HA1DEKS (13.06.2021)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •