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

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

Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 12 из 23
  1. #1
    Старожил Аватар для DeadSmile
    Регистрация
    19.02.2012
    Сообщений
    232
    Поблагодарил(а)
    126
    Получено благодарностей: 79 (сообщений: 40).
    Репутация: 79

    Кто сделает аддон?)

    Уважаемые знатоки, есть идея важного нужного аддона.

    Каждый раз попадая на бг, хочу поставить метки на своих хилов или пве'шных рдд, что бы в замесе боковым зрением легко видеть, кого нужно защищать, но не могу этого сделать, т.к. я не являюсь лидером рейда. И каждый раз думаю, ну почему же стандартный интерфейс не позволяет ставить метки хотя бы для себя, пусть их никто другой не видит, но хотя бы для себя. Вариант с фокусом не подходит, т.к. мне нужно видеть, где он находится в толпе. Тут же пришла в голову мысль, есть ведь куча аддонов, которые позволяют изменять отображение полосок ХП над союзниками и противниками, изменять размер, добавлять туда бафы, дебафы и т.д. большими иконками. Так может быть есть аддон, который подобным образом позволит добавлять подобие ярких меток на своих и чужих? И похоже, что таких нет, или я не нашел. Нечто типо этого есть, аддон "Healers have to die", но увы он конечно же не является тем, что мне нужно, т.к. там метки сами ставятся на тех, кого аддон посчитал хилером, а мне бы хотелось самому управлять этим процессом, причем хочу иметь возможность ставить метки и на своих и на чужих. Отсюда вопросы:
    1) Есть ли такой аддон?
    2) И если такого нету, то может быть есть какой ни будь сердобольный программист, желающих подобный написать?
    Я имею некоторое представление о программировании, и мне кажется, что на основе того же "Healers have to die" можно было бы написать подобный с меньшими затратами.

    Заранее прошу прощения, что так сильно раскатал губу, понимаю, что любой проект, это большой труд, но я должен был спросить)

  2. #2
    Активист Аватар для Ridddle
    Регистрация
    24.11.2018
    Сообщений
    97
    Поблагодарил(а)
    6
    Получено благодарностей: 3 (сообщений: 3).
    Репутация: 3
    за отдельную плату

  3. #3
    Ветеран форума Аватар для Сан Саныч
    Регистрация
    05.06.2017
    Адрес
    logon x100
    Сообщений
    1,384
    Поблагодарил(а)
    711
    Получено благодарностей: 430 (сообщений: 225).
    Репутация: 2638
    Цитата Сообщение от DeadSmile Посмотреть сообщение
    Уважаемые знатоки, есть идея важного нужного аддона.

    Каждый раз попадая на бг, хочу поставить метки на своих хилов или пве'шных рдд, что бы в замесе боковым зрением легко видеть, кого нужно защищать, но не могу этого сделать, т.к. я не являюсь лидером рейда. И каждый раз думаю, ну почему же стандартный интерфейс не позволяет ставить метки хотя бы для себя, пусть их никто другой не видит, но хотя бы для себя. Вариант с фокусом не подходит, т.к. мне нужно видеть, где он находится в толпе. Тут же пришла в голову мысль, есть ведь куча аддонов, которые позволяют изменять отображение полосок ХП над союзниками и противниками, изменять размер, добавлять туда бафы, дебафы и т.д. большими иконками. Так может быть есть аддон, который подобным образом позволит добавлять подобие ярких меток на своих и чужих? И похоже, что таких нет, или я не нашел. Нечто типо этого есть, аддон "Healers have to die", но увы он конечно же не является тем, что мне нужно, т.к. там метки сами ставятся на тех, кого аддон посчитал хилером, а мне бы хотелось самому управлять этим процессом, причем хочу иметь возможность ставить метки и на своих и на чужих. Отсюда вопросы:
    1) Есть ли такой аддон?
    2) И если такого нету, то может быть есть какой ни будь сердобольный программист, желающих подобный написать?
    Я имею некоторое представление о программировании, и мне кажется, что на основе того же "Healers have to die" можно было бы написать подобный с меньшими затратами.

    Заранее прошу прощения, что так сильно раскатал губу, понимаю, что любой проект, это большой труд, но я должен был спросить)
    это все конечно можно сделать, но тебе достаточно поставить аддон H.H.T.D.


  4. #4
    Старожил
    Регистрация
    17.06.2018
    Сообщений
    264
    Поблагодарил(а)
    6
    Получено благодарностей: 150 (сообщений: 107).
    Репутация: 150
    "Healers have to die" для вотлк вообще неймплейты не трогал. чуть более поздняя версия, где уже добавлены иконки запустилась, но союзников игнорировала, пару строк удалил и вешается на союзных хилов. правда способ определения хилов, который использует данный аддон, совсем какой-то никакой.
    есть еще вариант NamePlateX, и по имени увеличивать неймплейты. можно даже скрипт дописать для быстрого добавления и удаления после бг.
    а вообще обычно, неймплейты союзников отключены, чтоб фпс меньше просаживали, по этому лучше просить ассиста и делать скрипт, который автоматом будет расставлять метки.

  5. #5
    Старожил
    Регистрация
    19.01.2012
    Сообщений
    152
    Поблагодарил(а)
    87
    Получено благодарностей: 76 (сообщений: 57).
    Репутация: 76
    Впринципе можно организовать Button, который по таргету добавляет текстурку к неймплейту.
    Цитата Сообщение от sin000711 Посмотреть сообщение
    Циркулевские маги на столько суровы, что фейкают даже скастованный фболт!

  6. #6
    Местный Аватар для ʎpooɹds
    Регистрация
    17.02.2019
    Сообщений
    28
    Поблагодарил(а)
    2
    Получено благодарностей: 20 (сообщений: 12).
    Репутация: 20
    Цитата Сообщение от Konstruktor Посмотреть сообщение
    Впринципе можно организовать Button, который по таргету добавляет текстурку к неймплейту.
    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
            
    for _,obj in next,{WorldFrame:GetChildren()},lastNumChildren do
                if 
    IsNamePlate(objthen
                    HookNameplate
    (obj)
                
    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 - - -

    Быть может завтра допишу
    Последний раз редактировалось ʎpooɹds; 28.02.2019 в 18:26. Причина: быстрофикс

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

    DeadSmile (28.02.2019)

  8. #7
    Старожил Аватар для 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 - - -

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

  9. #8
    Местный Аватар для ʎ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
    зы.: перезагрузи страницу, отредактировал пост, ибо этот кусок ошибки вызывал

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

    DeadSmile (28.02.2019)

  11. #9
    Старожил Аватар для 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 минут, ярлык сам расставился практически на всех игроков, и союзников, и противников) Мне кажется, что если бы я включил отображение полосок над петами, то метка и на них бы перекинулась)) Пока понять не сумел, в чем причина.

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



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

    - - - Updated - - -

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

  13. #11
    Местный Аватар для ʎpooɹds
    Регистрация
    17.02.2019
    Сообщений
    28
    Поблагодарил(а)
    2
    Получено благодарностей: 20 (сообщений: 12).
    Репутация: 20
    http://www.mediafire.com/file/h0hv8v33cfv46cf/stamp.zip

    - - - Updated - - -

    По идеи должно работать с любыми неймплейтами.

    - - - Updated - - -

    На бг хилам кресты само ставит(в зависимости от вашей фракции и фракции хила зеленый или красный), частично позаимствовано из елвюи

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

    DeadSmile (01.03.2019)

  15. #12
    Старожил Аватар для DeadSmile
    Регистрация
    19.02.2012
    Сообщений
    232
    Поблагодарил(а)
    126
    Получено благодарностей: 79 (сообщений: 40).
    Репутация: 79
    Похоже битая ссылка. Или сервис поломался) Висит такое сообщение, ничего не происходит, загрузка не начинается

Страница 1 из 2 12 ПоследняяПоследняя

Похожие темы

  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

Ваши права

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