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

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

Показано с 1 по 10 из 10

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

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Заблокирован
    Регистрация
    14.12.2018
    Адрес
    Кровать твоей мамы
    Сообщений
    244
    Поблагодарил(а)
    44
    Получено благодарностей: 126 (сообщений: 93).
    Репутация: 126
    PHP код:
    local frame CreateFrame("StatusBar",nil,UIParent)
    frame:SetSize(32,32)
    frame:SetPoint("CENTER",140,140)
    frame:SetStatusBarTexture([[Interface\Buttons\WHITE8X8]])
    frame:SetStatusBarColor(0,0,0,0.75)
    frame:SetOrientation("VERTICAL")
    frame:SetMinMaxValues(0,3)

    local icon frame:CreateTexture(nil,"BORDER")
    icon:SetAllPoints()
    icon:SetTexCoord(0.07,0.93,0.07,0.93)
    icon:SetTexture([[Interface\Icons\Spell_Nature_TremorTotem]])

    local bg frame:CreateTexture(nil,"BACKGROUND")
    bg:SetPoint("TOPRIGHT",frame,"TOPRIGHT",2,2)
    bg:SetPoint("BOTTOMLEFT",frame,"BOTTOMLEFT",-2,-2)
    bg:SetTexture([[Interface\Buttons\WHITE8X8]])
    bg:SetVertexColor(0,0,0)

    local GetTime GetTime
    local summonTime
    frame
    :SetScript("OnUpdate",function(self)
        
    self:SetValue((GetTime()-summonTime)%3)
    end)

    local COMBATLOG_OBJECT_REACTION_HOSTILE COMBATLOG_OBJECT_REACTION_HOSTILE
    local band 
    bit.band
    local totemGUID
    frame
    :RegisterEvent("COMBAT_LOG_EVENT_UNFILTERED")
    frame:RegisterEvent("PLAYER_ENTERING_WORLD")
    frame:SetScript("OnEvent",function(self,event,_,subEvent,...)
        if 
    event=="PLAYER_ENTERING_WORLD" then
            self
    :Hide()
        else
            if 
    subEvent=="SPELL_SUMMON" then
                local _
    ,_,srcFlags,objGUID,_,_,spellid = ...  
                if 
    band(srcFlags,COMBATLOG_OBJECT_REACTION_HOSTILE)~=and spellid==8143 then
                    summonTime
    ,totemGUID GetTime(),objGUID
                    self
    :Show()
                
    end
            
    elseif subEvent=="UNIT_DIED" then
                local _
    ,_,_,objGUID = ...
                if 
    objGUID==totemGUID then
                    self
    :Hide()
                
    end
            end
        end
    end

    Последний раз редактировалось Толя фитоняшка; 02.04.2019 в 09:03.

  2. #2
    Старожил
    Регистрация
    17.06.2018
    Сообщений
    264
    Поблагодарил(а)
    6
    Получено благодарностей: 150 (сообщений: 107).
    Репутация: 150
    Цитата Сообщение от Ricardozx Посмотреть сообщение
    PHP код:
    local srcFlags,_,_,objGUID,_,_,spellid = ... 
    PHP код:
    local _,_,srcFlags,objGUID,_,_,spellid = ... 
    и в дуэль зоне это работать не будет, там противоположная фракция считается врагами и от них таймер будет сбиваться.
    это можно обойти, если когда начинается дуэль брать имя, и если в логе оно совпадает, только тогда запускать таймер.
    еще, если тотем поставили до дуэли, то отображаться не будет. значит надо собирать и хранить все тотемы, а показывать только если дуэль с ним началась.
    на бг и в мире ясное дело будет глючить, показывать неактуальный таймер.
    в общем очень сыро, но если прятать фрейм по эвенту PLAYER_ENTERING_WORLD, то в принципе, чисто для арены, сойдет. но тогда не проще ли сделать чтобы он работал чисто на арене?
    а еще возможно же элем+ршам на арене и там два тремора, значит надо создавать статусбары по необходимости, а не сразу.
    Последний раз редактировалось Ururu; 02.04.2019 в 08:43.

  3. #3
    Заблокирован
    Регистрация
    14.12.2018
    Адрес
    Кровать твоей мамы
    Сообщений
    244
    Поблагодарил(а)
    44
    Получено благодарностей: 126 (сообщений: 93).
    Репутация: 126
    Цитата Сообщение от Ururu Посмотреть сообщение
    PHP код:
    local _,_,srcFlags,objGUID,_,_,spellid = ... 
    Поправил, и сделал сброс по
    Цитата Сообщение от Ururu Посмотреть сообщение
    PLAYER_ENTERING_WORLD
    - - - Updated - - -

    Все остальное что перечислил малозначимо или фиксится с подводными. Тебе заняться если нечем, допиши как по душе больше самому.

  4. #4
    Новичок
    Регистрация
    09.01.2020
    Сообщений
    20
    Поблагодарил(а)
    4
    Получено благодарностей: 0 (сообщений: 0).
    Репутация: 0
    Цитата Сообщение от Толя фитоняшка Посмотреть сообщение
    PHP код:
    local frame CreateFrame("StatusBar",nil,UIParent)
    frame:SetSize(32,32)
    frame:SetPoint("CENTER",140,140)
    frame:SetStatusBarTexture([[Interface\Buttons\WHITE8X8]])
    frame:SetStatusBarColor(0,0,0,0.75)
    frame:SetOrientation("VERTICAL")
    frame:SetMinMaxValues(0,3)

    local icon frame:CreateTexture(nil,"BORDER")
    icon:SetAllPoints()
    icon:SetTexCoord(0.07,0.93,0.07,0.93)
    icon:SetTexture([[Interface\Icons\Spell_Nature_TremorTotem]])

    local bg frame:CreateTexture(nil,"BACKGROUND")
    bg:SetPoint("TOPRIGHT",frame,"TOPRIGHT",2,2)
    bg:SetPoint("BOTTOMLEFT",frame,"BOTTOMLEFT",-2,-2)
    bg:SetTexture([[Interface\Buttons\WHITE8X8]])
    bg:SetVertexColor(0,0,0)

    local GetTime GetTime
    local summonTime
    frame
    :SetScript("OnUpdate",function(self)
        
    self:SetValue((GetTime()-summonTime)%3)
    end)

    local COMBATLOG_OBJECT_REACTION_HOSTILE COMBATLOG_OBJECT_REACTION_HOSTILE
    local band 
    bit.band
    local totemGUID
    frame
    :RegisterEvent("COMBAT_LOG_EVENT_UNFILTERED")
    frame:RegisterEvent("PLAYER_ENTERING_WORLD")
    frame:SetScript("OnEvent",function(self,event,_,subEvent,...)
        if 
    event=="PLAYER_ENTERING_WORLD" then
            self
    :Hide()
        else
            if 
    subEvent=="SPELL_SUMMON" then
                local _
    ,_,srcFlags,objGUID,_,_,spellid = ...  
                if 
    band(srcFlags,COMBATLOG_OBJECT_REACTION_HOSTILE)~=and spellid==8143 then
                    summonTime
    ,totemGUID GetTime(),objGUID
                    self
    :Show()
                
    end
            
    elseif subEvent=="UNIT_DIED" then
                local _
    ,_,_,objGUID = ...
                if 
    objGUID==totemGUID then
                    self
    :Hide()
                
    end
            end
        end
    end

    На ру клиенте должно работать? И на бг?)

  5. #5
    Заблокирован
    Регистрация
    09.06.2016
    Адрес
    Rivne, Ukraine
    Сообщений
    907
    Поблагодарил(а)
    244
    Получено благодарностей: 412 (сообщений: 237).
    Репутация: 412
    Цитата Сообщение от westcost Посмотреть сообщение
    На ру клиенте должно работать? И на бг?)
    на циркулевском бг где багается комбат лог может иногда не работать, если его не разбагивать

Похожие темы

  1. Аддон на тремор
    от fatalitydmg в разделе Аддоны
    Ответов: 2
    Последнее сообщение: 12.03.2017, 19:49
  2. Ответов: 17
    Последнее сообщение: 11.03.2014, 18:24
  3. Тики тремора [аддон]
    от 13-th в разделе Корзина
    Ответов: 4
    Последнее сообщение: 09.05.2013, 19:10
  4. Подскажите аддон на тремор
    от Keionex в разделе Корзина
    Ответов: 7
    Последнее сообщение: 02.04.2012, 16:38

Ваши права

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