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

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

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

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Старожил Аватар для DeadSmile
    Регистрация
    19.02.2012
    Сообщений
    232
    Поблагодарил(а)
    126
    Получено благодарностей: 79 (сообщений: 40).
    Репутация: 79
    Цитата Сообщение от ʎpooɹds Посмотреть сообщение
    PHP код:
    local importants,NameToFrame = {},{}

    local function UpdateIcon(self)
        
    local tex importants[self._lastName]
        if 
    tex then
            
    if tex~=self._lasttex then
                self
    ._icon:SetTexture(tex)
                
    self._icon:Show()
                
    self._lasttex tex
            end
        
    else
            
    self._icon:Hide()
        
    end
    end

    local HookNameplate
    do
        
    local function NamePlate_OnShow(self)
            
    local name self._namereg:GetText()
            
    self._lastName name
            NameToFrame
    [name] = self
            
    if importants[namethen
                UpdateIcon
    (self)
            
    end
        end

        local 
    function NamePlate_OnHide(self)
            
    self._icon:Hide()
            
    NameToFrame[self._lastName],self._lastName,self._lasttex nil
        end

        local 
    function NamePlate_OnUpdate(self)
            if 
    self._namereg:GetText()~=self._lastName then
                NamePlate_OnHide
    (self)
                
    NamePlate_OnShow(self)
                
    self._lastName self._namereg:GetText()
            
    end
        end

        
    function HookNameplate(frame)
            
    frame._icon frame:CreateTexture(nil,"BACKGROUND")
            
    frame._icon:SetSize(40,40)
            
    frame._icon:SetPoint("CENTER",frame,0,36)

            
    local _,_,_,_,_,_,name frame:GetRegions()
            
    frame._namereg name
            NamePlate_OnShow
    (frame)

            
    frame:HookScript("OnShow",NamePlate_OnShow)
            
    frame:HookScript("OnHide",NamePlate_OnHide)
            
    frame:HookScript("OnUpdate",NamePlate_OnUpdate)
        
    end
    end

    local 
    function IsNamePlate(obj)
        if 
    obj:GetName() then return end
        
    if obj.GetRegions then
            local reg 
    obj:GetRegions()
            if 
    reg and reg.GetTexture then
                
    return reg:GetTexture()==[[Interface\TargetingFrame\UI-TargetingFrame-Flash]]
            
    end
        end
    end

    local WorldFrame 
    WorldFrame
    local lastNumChildren 
    1
    CreateFrame
    ("frame"):SetScript("OnUpdate",function()
        if 
    lastNumChildren~=WorldFrame:GetNumChildren() then
            local tbl 
    = {WorldFrame:GetChildren()}
            for 
    lastNumChildren,#tbl do
                
    if IsNamePlate(tbl[i]) then
                    HookNameplate
    (tbl[i])
                
    end
            end
            lastNumChildren 
    WorldFrame:GetNumChildren()
        
    end
    end
    )

    function 
    SetStamp(name,texture)
        
    importants[name] = texture
        
    if NameToFrame[namethen
            UpdateIcon
    (NameToFrame[name])
        
    end
    end 
    PHP код:
    /run SetStamp(ник,текстура
    - - - Updated - - -

    https://i.imgur.com/dRMOr1G.jpg

    - - - Updated - - -

    Можно допилить что б хилам метки само ставило, но мне влом :>

    - - - Updated - - -

    Быть может завтра допишу
    Ты восхитителен!) это то, что нужно!)
    сейчас побалуюсь) только подскажи, что ты в качестве параметра текстуры передал, чтобы именно вот эта иконка вылезла? Она идеально подходит для данных нужд, прям бросается в глаза!)

  2. #2
    Местный Аватар для ʎpooɹds
    Регистрация
    17.02.2019
    Сообщений
    28
    Поблагодарил(а)
    2
    Получено благодарностей: 20 (сообщений: 12).
    Репутация: 20
    Цитата Сообщение от DeadSmile Посмотреть сообщение
    Ты восхитителен!) это то, что нужно!)
    сейчас побалуюсь) только подскажи, что ты в качестве параметра текстуры передал, чтобы именно вот эта иконка вылезла? Она идеально подходит для данных нужд, прям бросается в глаза!)
    PHP код:
    /dump SetStamp(UnitName("target"),[[Interface\Icons\Spell_Holy_SealOfSacrifice]]) 
    - - - Updated - - -

    А вообще текстурку спела узнать можно макросом /dump GetSpellInfo(spell)

    - - - Updated - - -

    Цитата Сообщение от DeadSmile Посмотреть сообщение
    local*tbl*=*{WorldFrame:GetChildren()}
    ********for*i*=*lastNumChildren,#tbl*do
    ************if*IsNamePlate(tbl[i])*then
    ****************HookNameplate(tbl[i])
    ************end
    ********end
    зы.: перезагрузи страницу, отредактировал пост, ибо этот кусок ошибки вызывал

  3. 1 пользователь сказал cпасибо ʎpooɹds за это полезное сообщение:

    DeadSmile (28.02.2019)

  4. #3
    Старожил Аватар для DeadSmile
    Регистрация
    19.02.2012
    Сообщений
    232
    Поблагодарил(а)
    126
    Получено благодарностей: 79 (сообщений: 40).
    Репутация: 79
    Цитата Сообщение от ʎpooɹds Посмотреть сообщение
    PHP код:
    /dump SetStamp(UnitName("target"),[[Interface\Icons\Spell_Holy_SealOfSacrifice]]) 
    - - - Updated - - -

    А вообще текстурку спела узнать можно макросом /dump GetSpellInfo(spell)

    - - - Updated - - -


    зы.: перезагрузи страницу, отредактировал пост, ибо этот кусок ошибки вызывал
    Есть вот такой баг:



    Стоит поставить метку хотя бы на одного человека, как она спустя несколько минут, в процессе БГ, появляться на остальных игроках.
    Как результат, в течении 5 минут, ярлык сам расставился практически на всех игроков, и союзников, и противников) Мне кажется, что если бы я включил отображение полосок над петами, то метка и на них бы перекинулась)) Пока понять не сумел, в чем причина.

  5. #4
    Местный Аватар для ʎpooɹds
    Регистрация
    17.02.2019
    Сообщений
    28
    Поблагодарил(а)
    2
    Получено благодарностей: 20 (сообщений: 12).
    Репутация: 20
    Цитата Сообщение от DeadSmile Посмотреть сообщение
    Есть вот такой баг:



    Стоит поставить метку хотя бы на одного человека, как она спустя несколько минут, в процессе БГ, появляться на остальных игроках.
    Как результат, в течении 5 минут, ярлык сам расставился практически на всех игроков, и союзников, и противников) Мне кажется, что если бы я включил отображение полосок над петами, то метка и на них бы перекинулась)) Пока понять не сумел, в чем причина.
    У тебя вероятней всего кастомные неймплейты переназначают калбеки аддона

    - - - Updated - - -

    Там есть сразу несколько обходных путей, завтра с утра залью версию с фиксом и еще несколькими плюшками

Похожие темы

  1. Ответов: 2
    Последнее сообщение: 20.02.2018, 16:51
  2. Ответов: 1
    Последнее сообщение: 04.04.2017, 17:47
  3. Заявка на разблокировку (блок по причине незнаю как он это сделал он читер)) )
    от AkaZmei в разделе Обжалование наказаний форумных аккаунтов
    Ответов: 1
    Последнее сообщение: 06.05.2015, 21:57
  4. Лон'горон, лук Горемычного кв нету
    от ETIS в разделе Корзина
    Ответов: 3
    Последнее сообщение: 18.04.2014, 12:55
  5. Ответов: 1
    Последнее сообщение: 01.11.2013, 21:26

Ваши права

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