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

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

Показано с 1 по 12 из 12
  1. #1
    Гуру Аватар для Friskes
    Регистрация
    08.10.2013
    Сообщений
    334
    Поблагодарил(а)
    60
    Получено благодарностей: 84 (сообщений: 59).
    Репутация: 84

    AOM таймер пиларов на арене доблести

    Есть такой аддон AOM https://forum.wowcircle.com/showthread.php?t=733910 так вот в одном из ближайших обновлений сервера он поломался, пробовал чинить, думал проблема в
    строке "Бой на арене начинается!" изменил на актуальную которая сейчас на сервере но эффекта это не дало, и так как я не кодер больше ничего придумать не смог) может есть у
    кого какие идеи по поводу ремонта аддона, на нашем сервере актуальная и довольно полезная штука думаю многие будут рады если этот аддон снова заработает.

  2. #2
    Гуру Аватар для Friskes
    Регистрация
    08.10.2013
    Сообщений
    334
    Поблагодарил(а)
    60
    Получено благодарностей: 84 (сообщений: 59).
    Репутация: 84
    Цитата Сообщение от Slaaneshx Посмотреть сообщение
    А какие сейчас на сервере тайминги поднятия? Попробуй в аддоне поменять на актуальные. Ну и если у тебя англ клиент то и англ анонс соответственно.
    Да и вообще было бы неплохо узнать какие сейчас тайминги и на водопад и на глазики, тайминги появления и обновления.
    Насчет таймингов интересная идея, как будет время посчитаю их, мб реально изменили

    update:
    В общем протестил по секундомеру и действительно теперь вместо (10-35-25-35-25-35-25...) идёт (10-25-25-25-25-25-25...) но все равно иконка таймера не появляется, надо дальше думать..
    PHP код:
    local b=CreateFrame("Frame")
    b:SetPoint("CENTER",-70,-252) -- позиция
    b
    :SetSize(38,38) -- размер


    b
    .c=CreateFrame("Cooldown")
    b.c:SetAllPoints)
    b.t=b:CreateTexture(nil,"BORDER")
    b.t:SetAllPoints()
    b.t:SetTexture("Interface\\Icons\\trade_engineering")
    b:Hide()


    local pillar=0
    local water_spout
    =0
    local timeElapsed
    =0
    local timeElapsed2
    =0
    local RoV_Timer_Test 
    1

    local 
    function RoV_Timer_Disable()
        
    b:Hide()
        
    b:SetScript("OnUpdate",nil)
        
    CooldownFrame_SetTimer(b.cGetTime(), 01)
        
    pillar=nil
        water_spout
    =nil
        timeElapsed
    =0
    end

    local 
    function RoV_Timer_Update(selfelapsed)
            
    timeElapsed timeElapsed elapsed
            timeElapsed2 
    timeElapsed2 elapsed
            
            
    if ( timeElapsed2 >= RoV_Timer_Testthen
              timeElapsed2
    =0
              
    if not IsActiveBattlefieldArena() then
                    RoV_Timer_Disable
    ()
              
    end
            end
            
            
    if not pillar then
              
    if ( timeElapsed >= 10 then
                    CooldownFrame_SetTimer
    (b.cGetTime(), 251)
                    
    pillar=25
                    timeElapsed 
    0
              end
            
    elseif pillar==25 then
              
    if ( timeElapsed >= 25 then
                    CooldownFrame_SetTimer
    (b.cGetTime(), 251)
                    
    pillar=25
                    timeElapsed 
    0
              end
            
    elseif pillar==25 then
              
    if ( timeElapsed >= 25 then
                    CooldownFrame_SetTimer
    (b.cGetTime(), 251)
                    
    pillar=25
                    timeElapsed 
    0
              end
            end
    end

    function RoV_Timer_Event(selfeventmsg)
        if 
    event=="CHAT_MSG_RAID_BOSS_EMOTE" or evet=="CHAT_MSG_BG_SYSTEM_NEUTRAL" then
              
    if msg=="Битва на арене началась!" then
                    
    if (GetRealZoneText()=="Арена Доблести"then
                      b
    .t:SetTexture("Interface\\Icons\\trade_engineering")
                          
    b:Show()
                          
    CooldownFrame_SetTimer(b.cGetTime(), 101)
                          
    b:SetScript("OnUpdate",RoV_Timer_Update)      
                
    end
            end
          
    elseif msg=="test" then
                RoV_Timer_Test 
    1000000000
                b
    :Show()
                
    CooldownFrame_SetTimer(b.cGetTime(), 101)
                
    b:SetScript("OnUpdate",RoV_Timer_Update)
                print(
    "RoV Timer Test")
          elseif 
    msg=="reset" then
                RoV_Timer_Test 
    1
                RoV_Timer_Disable
    ()
                print(
    "RoV Timer Reset")
        elseif 
    event=="PLAYER_ENTERING_WORLD" then
            RoV_Timer_Disable
    ()
        
    end
    end


    b
    :RegisterEvent("CHAT_MSG_BG_SYSTEM_NEUTRAL")
    b:RegisterEvent("CHAT_MSG_RAID_BOSS_EMOTE")
    b:RegisterEvent("PLAYER_ENTERING_WORLD")
    b:SetScript("OnEvent",RoV_Timer_Event)



    --[[
    /
    script RoV_Timer_Event(nil,nil,"test")
    /
    script RoV_Timer_Event(nil,nil,"reset")
    ]] 
    Последний раз редактировалось Friskes; 05.11.2019 в 16:08.

  3. #3
    Наш человек Аватар для romanspector
    Регистрация
    20.08.2018
    Сообщений
    966
    Поблагодарил(а)
    399
    Получено благодарностей: 328 (сообщений: 224).
    Репутация: 1772
    Вроде фиксит, заменяем евенты на:
    PHP код:
    if event=="ARENA_OPPONENT_UPDATE" then
    if arg2=="seen" then
    if (GetRealZoneText()=="Арена Доблести"then

    b
    :RegisterEvent("ARENA_OPPONENT_UPDATE"
    Последний раз редактировалось romanspector; 11.03.2020 в 01:02.
    не может быть так что бы человек был хорош в ПВЕ и полным отстоем в ПВП. (с) Старик Мерлин

  4. #4
    Гуру Аватар для Friskes
    Регистрация
    08.10.2013
    Сообщений
    334
    Поблагодарил(а)
    60
    Получено благодарностей: 84 (сообщений: 59).
    Репутация: 84
    можешь вставить полностью php код, нифига не получается(

  5. #5
    Наш человек Аватар для romanspector
    Регистрация
    20.08.2018
    Сообщений
    966
    Поблагодарил(а)
    399
    Получено благодарностей: 328 (сообщений: 224).
    Репутация: 1772
    PHP код:
    local b=CreateFrame("Frame")
    b:SetPoint("CENTER",-200,-200) -- позиция
    b
    :SetSize(38,38) -- размер

    b
    .c=CreateFrame("Cooldown")
    b.c:SetAllPoints)
    b.t=b:CreateTexture(nil,"BORDER")
    b.t:SetAllPoints()
    b.t:SetTexture("Interface\\Icons\\trade_engineering")
    b:Hide()


    local pillar=0
    local water_spout
    =0
    local timeElapsed
    =0
    local timeElapsed2
    =0
    local RoV_Timer_Test 
    1

    local 
    function RoV_Timer_Disable()
        
    b:Hide()
        
    b:SetScript("OnUpdate",nil)
        
    CooldownFrame_SetTimer(b.cGetTime(), 01)
        
    pillar=nil
        water_spout
    =nil
        timeElapsed
    =0
    end

    local 
    function RoV_Timer_Update(selfelapsed)
            
    timeElapsed timeElapsed elapsed
            timeElapsed2 
    timeElapsed2 elapsed
            
            
    if ( timeElapsed2 >= RoV_Timer_Testthen
              timeElapsed2
    =0
              
    if not IsActiveBattlefieldArena() then
                    RoV_Timer_Disable
    ()
              
    end
            end
            
            
    if not pillar then
              
    if ( timeElapsed >= 10 then
                    CooldownFrame_SetTimer
    (b.cGetTime(), 351)
                    
    pillar=35
                    timeElapsed 
    0
              end
            
    elseif pillar==35 then
              
    if ( timeElapsed >= 35 then
                    CooldownFrame_SetTimer
    (b.cGetTime(), 251)
                    
    pillar=25
                    timeElapsed 
    0
              end
            
    elseif pillar==25 then
              
    if ( timeElapsed >= 25 then
                    CooldownFrame_SetTimer
    (b.cGetTime(), 251)
                    
    pillar=25
                    timeElapsed 

              end
            end
    end

    function RoV_Timer_Event(selfeventmsg)
        if 
    event=="CHAT_MSG_BG_SYSTEM_NEUTRAL" then
            
    if arg1=="Битва на арене началась!" then
                    
    if (GetRealZoneText()=="Арена Доблести"then
                      b
    .t:SetTexture("Interface\\Icons\\trade_engineering")
                          
    b:Show()
                          
    CooldownFrame_SetTimer(b.cGetTime(), 101)
                          
    b:SetScript("OnUpdate",RoV_Timer_Update)      
                
    end
            end
          
    elseif msg=="test" then
                RoV_Timer_Test 
    1000000000
                b
    :Show()
                
    CooldownFrame_SetTimer(b.cGetTime(), 101)
                
    b:SetScript("OnUpdate",RoV_Timer_Update)
                print(
    "RoV Timer Test")
          elseif 
    msg=="reset" then
                RoV_Timer_Test 
    1
                RoV_Timer_Disable
    ()
                print(
    "RoV Timer Reset")
        elseif 
    event=="PLAYER_ENTERING_WORLD" then
            RoV_Timer_Disable
    ()
        
    end
    end


    b
    :RegisterEvent("CHAT_MSG_BG_SYSTEM_NEUTRAL")
    b:RegisterEvent("PLAYER_ENTERING_WORLD")
    b:SetScript("OnEvent",RoV_Timer_Event
    Последний раз редактировалось romanspector; 12.03.2020 в 18:15.
    не может быть так что бы человек был хорош в ПВЕ и полным отстоем в ПВП. (с) Старик Мерлин

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

    Friskes (12.03.2020),Zikiprundoxx (22.01.2021)

  7. #6
    Гуру Аватар для Friskes
    Регистрация
    08.10.2013
    Сообщений
    334
    Поблагодарил(а)
    60
    Получено благодарностей: 84 (сообщений: 59).
    Репутация: 84
    Вмеcте с AOM сломался ArenaCountDown, его смогли починить(на стримах видел), мб можно что то из ACD вытянуть интересного для починки AOM..

  8. #7
    Наш человек Аватар для romanspector
    Регистрация
    20.08.2018
    Сообщений
    966
    Поблагодарил(а)
    399
    Получено благодарностей: 328 (сообщений: 224).
    Репутация: 1772
    Для ру клиента фикс:
    PHP код:
    function ACD_OnEventevent )

        if ((
    event == "ADDON_LOADED") and (arg1 == "SpamAssasin")) then 
            
            ACD_OnLoaded
    ();
                
        elseif (
    event == "CHAT_MSG_BG_SYSTEM_NEUTRAL"then
        
            
    if (string.find(arg1"Одна минута до начала боя на арене!")) then
                countdown 
    61;
                return;
            
    end
            
    if (string.find(arg1"Тридцать секунд до начала боя на арене !")) then
                countdown 
    31;
                return;
            
    end
            
    if (string.find(arg1"Пятнадцать секунд до начала боя на арене!")) then
                countdown 
    16;
                return;
            
    end        
            
            
      end 
    Для енг. сделать по аналогии.
    p.s. поправил #5 пост, ща все ок должно работать. По крайней мере, когда регал 5х5 скримиш для теста все работало.
    Последний раз редактировалось romanspector; 12.03.2020 в 14:16.
    не может быть так что бы человек был хорош в ПВЕ и полным отстоем в ПВП. (с) Старик Мерлин

  9. #8
    Гуру Аватар для Friskes
    Регистрация
    08.10.2013
    Сообщений
    334
    Поблагодарил(а)
    60
    Получено благодарностей: 84 (сообщений: 59).
    Репутация: 84
    Хм, красава шаришь), поменяй у себя в посте тайминги на "старые" анимагус о5 лазил в код.
    PHP код:
            if not pillar then
              
    if ( timeElapsed >= 10 then
                    CooldownFrame_SetTimer
    (b.cGetTime(), 351)
                    
    pillar=35
                    timeElapsed 
    0
              end
            
    elseif pillar==35 then
              
    if ( timeElapsed >= 35 then
                    CooldownFrame_SetTimer
    (b.cGetTime(), 251)
                    
    pillar=25
                    timeElapsed 
    0
              end
            
    elseif pillar==25 then
              
    if ( timeElapsed >= 25 then
                    CooldownFrame_SetTimer
    (b.cGetTime(), 251)
                    
    pillar=25
                    timeElapsed 

    Ну а насчет ACD ты видимо меня не правильно понял, но все равно спасибо что и за этот аддон взялся) но я о5 не врубился меж чего вставлять твой код..

  10. #9
    Наш человек Аватар для romanspector
    Регистрация
    20.08.2018
    Сообщений
    966
    Поблагодарил(а)
    399
    Получено благодарностей: 328 (сообщений: 224).
    Репутация: 1772
    Цитата Сообщение от Friskes Посмотреть сообщение

    Ну а насчет ACD ты видимо меня не правильно понял, но все равно спасибо что и за этот аддон взялся) но я о5 не врубился меж чего вставлять твой код..
    Не вставить, а заменить) найди в аддоне эту функцию function ACD_OnEvent( event ) и поменяй.
    не может быть так что бы человек был хорош в ПВЕ и полным отстоем в ПВП. (с) Старик Мерлин

  11. #10
    Гуру Аватар для Friskes
    Регистрация
    08.10.2013
    Сообщений
    334
    Поблагодарил(а)
    60
    Получено благодарностей: 84 (сообщений: 59).
    Репутация: 84
    Да блин, я то умею искать по ключевым словам, да только нету у меня такого)
    PHP код:
    local timer=0
    local total
    =0
    local frame 
    CreateFrame("FRAME""ArenaCountDown")
    frame:ClearAllPoints()
    frame:SetHeight(1000)
    frame:SetWidth(1000)
    frame:RegisterEvent("CHAT_MSG_BG_SYSTEM_NEUTRAL")
    frame.text frame:CreateFontString(nil"BACKGROUND""PVPInfoTextFont")
    frame.text:SetAllPoints()
    frame:SetPoint("CENTER"UIPARENT"CENTER"00)
    frame:SetAlpha(1)

    function 
    Fuark(self,elapsed)

    if 
    timer>0 then
    timer 
    timer elapsed
    frame
    .text:SetText(ceil(timer))
        if 
    timer<=0 then
        frame
    :Hide()
        
    end
    end

    if (UnitAffectingCombat("player") or (select(2,GetInstanceInfo())~="arena" and select(2,GetInstanceInfo())~="pvp") or not UnitInBattleground("player")) and timer>0 then
    frame
    :Hide()
    timer=0
    end

    if timer>and timer<15 then
    frame
    :Show()
    end

    end
    CreateFrame
    ("Frame""FuarkFrame")
    FuarkFrame:SetScript("OnUpdate"Fuark)

    local function EventHandler(selfevent, ...)
            if 
    select(2,GetInstanceInfo())=="arena" and (string.find(arg1,"Fifteen") or string.find(arg1,"Пятнадцать") or string.find(arg1,"15")) then
                timer
    =15
                frame
    :Hide()
            
    end
            
    if select(2,GetInstanceInfo())=="pvp" and string.find(arg1,"30"then
                timer
    =30
                frame
    :Hide()
            
    end
    end
    frame
    :SetScript("OnEvent"EventHandler

  12. #11
    Наш человек Аватар для romanspector
    Регистрация
    20.08.2018
    Сообщений
    966
    Поблагодарил(а)
    399
    Получено благодарностей: 328 (сообщений: 224).
    Репутация: 1772
    Чет хз даже как фиксануть это.
    Я этот скачал и фиксанул.
    Последний раз редактировалось romanspector; 12.03.2020 в 19:26.
    не может быть так что бы человек был хорош в ПВЕ и полным отстоем в ПВП. (с) Старик Мерлин

  13. #12
    Гуру Аватар для Friskes
    Регистрация
    08.10.2013
    Сообщений
    334
    Поблагодарил(а)
    60
    Получено благодарностей: 84 (сообщений: 59).
    Репутация: 84
    Да и не надо ничего фиксить, пофиг, лишняя работа только, таймеров до начала боя хватает, а AOM один такой)

Похожие темы

  1. [Отклонено] [Леди Смертный Шепот] - таймер призыва аддов.
    от Cri в разделе Отклонено Wotlk
    Ответов: 9
    Последнее сообщение: 22.10.2020, 15:59
  2. Таймер ДоТ-эффектов (DoT-clipping)
    от Memorinew в разделе Исправлено Wotlk
    Ответов: 2
    Последнее сообщение: 21.10.2017, 02:19
  3. Ответов: 8
    Последнее сообщение: 09.07.2017, 21:27
  4. Хелп! Проблема с таймеров TMW
    от Dark Rose в разделе Корзина
    Ответов: 3
    Последнее сообщение: 15.02.2015, 18:10
  5. Таймер боссов
    от Zarbo в разделе Корзина
    Ответов: 4
    Последнее сообщение: 02.03.2013, 02:41

Ваши права

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