Скрипты Neilyo и не только  
Автор Сообщение

0
Сообщение Скрипты Neilyo и не только

Fernir писал(а):

Код:
/run for i=1,20 do _G['CombatText'..i].SetTextHeight = function(size) _G['CombatText'..i]:SetFont(DAMAGE_TEXT_FONT, size, 'OUTLINE') end end
или
Код:
/run for i=1,20 do _G['CombatText'..i].SetTextHeight = function(self, size) _self:SetFont(DAMAGE_TEXT_FONT, size, 'OUTLINE') end end

 


Message: Interface\AddOns\RomaScript\Script.lua:275: attempt to index field '?' (a nil value)

 

такую вот ошибку выдает, пробовал из игры с /run запускать - не работает

 



19 мар 2013, 15:52
Профиль



<Мёртвая Хватка>


Сервер: Азурегос
2х2: 1766
3х3: 1794
0
Сообщение Скрипты Neilyo и не только

я забыл в начале добавить LoadAddOn("Blizzard_CombatText"), без этого скрипт не видит его



19 мар 2013, 16:22
Профиль

0
Сообщение Скрипты Neilyo и не только

Код:
local trinkets = {}
local events = CreateFrame("Frame")
function events:ADDON_LOADED(addonName)
           if addonName ~= "Blizzard_ArenaUI" then
              return
           end
              ArenaEnemyFrame1:ClearAllPoints()
              ArenaEnemyFrame1:SetPoint("CENTER", nil, "CENTER", 310.0, 175.0)
              ArenaEnemyFrame1.SetPoint = function() end
              ArenaEnemyFrame2:ClearAllPoints()
              ArenaEnemyFrame2:SetPoint("BOTTOMLEFT", ArenaEnemyFrame1, "BOTTOMLEFT", 0, -50)
              ArenaEnemyFrame2.SetPoint = function() end
              ArenaEnemyFrame3:ClearAllPoints()
              ArenaEnemyFrame3:SetPoint("BOTTOMLEFT", ArenaEnemyFrame1, "BOTTOMLEFT", 0, -100)
              ArenaEnemyFrame3.SetPoint = function() end
              ArenaEnemyFrames:SetScale(1.4)
           local arenaFrame, trinket
           for i = 1, MAX_ARENA_ENEMIES do
              arenaFrame = "ArenaEnemyFrame"..i
              trinket = CreateFrame("Cooldown", arenaFrame.."Trinket", ArenaEnemyFrames)
              trinket:SetPoint("TOPRIGHT", arenaFrame, 30, -6)
              trinket:SetSize(27, 27)
              trinket.icon = trinket:CreateTexture(nil, "BACKGROUND")
              trinket.icon:SetAllPoints()
              trinket.icon:SetTexture("Interface\\Icons\\inv_jewelry_trinketpvp_01")
              trinket:Hide()
              trinkets["arena"..i] = trinket
          end
          self:UnregisterEvent("ADDON_LOADED")
end
function events:UNIT_SPELLCAST_SUCCEEDED(unitID, spell, rank, lineID, spellID)
          if not trinkets[unitID] then
              return
          end
          if spellID == 59752 or spellID == 42292 then
             CooldownFrame_SetTimer(trinkets[unitID], GetTime(), 120, 1)
             SendChatMessage("Trinket used by: "..GetUnitName(unitID, true), "PARTY")
          elseif spellID == 7744 then
             CooldownFrame_SetTimer(trinkets[unitID], GetTime(), 45, 1)
             SendChatMessage("WotF used by: "..GetUnitName(unitID, true), "PARTY")
          end
end
function events:PLAYER_ENTERING_WORLD()
          local _, instanceType = IsInInstance()
          if instanceType == "arena" then
             self:RegisterEvent("UNIT_SPELLCAST_SUCCEEDED")
         elseif self:IsEventRegistered("UNIT_SPELLCAST_SUCCEEDED") then
             self:UnregisterEvent("UNIT_SPELLCAST_SUCCEEDED")
             for _, trinket in pairs(trinkets) do
                 trinket:SetCooldown(0, 0)
                 trinket:Hide()
             end
         end
end

 

Стандартные арена фреймы с отображением тринкетов.  Что нужно изменить, чтобы фреймы противников отображались ещё за минуту до боя, а не с открытием ворот(стартом арены)? Подскажите, если кто разбирается в этом. 

upd: И можно ли как-то добавить сюда отображение длительности контролей, действующих на оппонентов (на самих арена фреймах или рядом с ними), подобно гладиусу? 



20 мар 2013, 10:39
Профиль



<Мёртвая Хватка>


Сервер: Азурегос
2х2: 1766
3х3: 1794
0
Сообщение Скрипты Neilyo и не только

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



20 мар 2013, 11:01
Профиль

0
Сообщение Скрипты Neilyo и не только

Но ведь стандартные фреймы сейчас отображаются сразу с заходом на арену, чтобы видели оппонентов. 

+ если вписать в аддон отображение стандартных фреймов простым скриптом, как этот:

Код:

local f=CreateFrame('frame')
f:RegisterEvent('ADDON_LOADED')
f:SetScript('OnEvent', function(self, event, addon)
if addon == 'Blizzard_ArenaUI' then
ArenaEnemyFrame1:ClearAllPoints()
ArenaEnemyFrame1:SetPoint("CENTER", nil, "CENTER", 280.0, 204.0)
ArenaEnemyFrame2:ClearAllPoints()
ArenaEnemyFrame2:SetPoint("CENTER", nil, "CENTER", 280.0, 155.0)
ArenaEnemyFrame3:ClearAllPoints()
ArenaEnemyFrame3:SetPoint("CENTER", nil, "CENTER", 280.0, 106.0)
ArenaEnemyFrame4:ClearAllPoints()
ArenaEnemyFrame4:SetPoint("CENTER", nil, "CENTER", 280.0, 57.0)
ArenaEnemyFrame5:ClearAllPoints()
ArenaEnemyFrame5:SetPoint("CENTER", nil, "CENTER", 280.0, 8.0)
ArenaEnemyFrames:SetScale(1.4)
end
end)

hooksecurefunc('Focus_Spellbar_AdjustPosition', function()
FocusFrameSpellBar:ClearAllPoints()
FocusFrameSpellBar:SetPoint("CENTER", UIPARENT, "CENTER", 0,50)
FocusFrameSpellBar.SetPoint = function() end
FocusFrameSpellBar:SetScale(1.1)
end)

то близовские фреймы видны сразу с заходом на арену (видны соперники), и уже с открытием ворот они изменяются под данный скрипт(аддон). Правда этот код иногда "криво" работает, особенно если у противников много петов/стелсеров.  

 

upd: Не разбираюсь в этом, но, если я правильно понял, менять нужно что-то здесь:

Код:
local trinkets = {}
local events = CreateFrame("Frame")
function events:ADDON_LOADED(addonName)
           if addonName ~= "Blizzard_ArenaUI" then
              return
           end

поскольку обычный скрипт с вот таким кодом:

Код:

local f=CreateFrame('frame')
f:RegisterEvent('ADDON_LOADED')
f:SetScript('OnEvent', function(self, event, addon)
if addon == 'Blizzard_ArenaUI' then

как я уже говорил работает. 

 

 

 



20 мар 2013, 11:31
Профиль



<Мёртвая Хватка>


Сервер: Азурегос
2х2: 1766
3х3: 1794
0
Сообщение Скрипты Neilyo и не только

а чего в своем скрипте не зарегил эвенты и не запустил их проверку? у тебя просто создан фрейм и есть 3 функции и все

 

events:SetScript("OnEvent", function(self, event, ...) return self[event](self, ...) end)
events:RegisterEvent("ADDON_LOADED")
events:RegisterEvent("PLAYER_ENTERING_WORLD")

 

что-то я сразу внимания не обратил



20 мар 2013, 13:52
Профиль

0
Сообщение Скрипты Neilyo и не только

Только что вписал их после всей части когда (или нужно было в начале?) - арена фреймы попрежнему появляются только с открытием ворот. Работает всё идеально, никаких траблов, но вот уж очень хотелось бы попробывать сделать так, чтобы соперников видно было и до открытия ворот (как это со стандартными фреймами).   Cry



20 мар 2013, 15:50
Профиль



<Мёртвая Хватка>


Сервер: Азурегос
2х2: 1766
3х3: 1794
0
Сообщение Скрипты Neilyo и не только

попробуй замени

Код:
           if addonName ~= "Blizzard_ArenaUI" then
              return
           end
              ArenaEnemyFrame1:ClearAllPoints()
              ArenaEnemyFrame1:SetPoint("CENTER", nil, "CENTER", 310.0, 175.0)
              ArenaEnemyFrame1.SetPoint = function() end
              ArenaEnemyFrame2:ClearAllPoints()
              ArenaEnemyFrame2:SetPoint("BOTTOMLEFT", ArenaEnemyFrame1, "BOTTOMLEFT", 0, -50)
              ArenaEnemyFrame2.SetPoint = function() end
              ArenaEnemyFrame3:ClearAllPoints()
              ArenaEnemyFrame3:SetPoint("BOTTOMLEFT", ArenaEnemyFrame1, "BOTTOMLEFT", 0, -100)
              ArenaEnemyFrame3.SetPoint = function() end
              ArenaEnemyFrames:SetScale(1.4)
           local arenaFrame, trinket
           for i = 1, MAX_ARENA_ENEMIES do
              arenaFrame = "ArenaEnemyFrame"..i
              trinket = CreateFrame("Cooldown", arenaFrame.."Trinket", ArenaEnemyFrames)
              trinket:SetPoint("TOPRIGHT", arenaFrame, 30, -6)
              trinket:SetSize(27, 27)
              trinket.icon = trinket:CreateTexture(nil, "BACKGROUND")
              trinket.icon:SetAllPoints()
              trinket.icon:SetTexture("Interface\\Icons\\inv_jewelry_trinketpvp_01")
              trinket:Hide()
              trinkets["arena"..i] = trinket
          end
на
Код:
           if addonName == "Blizzard_ArenaUI" then
              ArenaEnemyFrame1:ClearAllPoints()
              ArenaEnemyFrame1:SetPoint("CENTER", nil, "CENTER", 310.0, 175.0)
              ArenaEnemyFrame1.SetPoint = function() end
              ArenaEnemyFrame2:ClearAllPoints()
              ArenaEnemyFrame2:SetPoint("BOTTOMLEFT", ArenaEnemyFrame1, "BOTTOMLEFT", 0, -50)
              ArenaEnemyFrame2.SetPoint = function() end
              ArenaEnemyFrame3:ClearAllPoints()
              ArenaEnemyFrame3:SetPoint("BOTTOMLEFT", ArenaEnemyFrame1, "BOTTOMLEFT", 0, -100)
              ArenaEnemyFrame3.SetPoint = function() end
              ArenaEnemyFrames:SetScale(1.4)
           local arenaFrame, trinket
           for i = 1, MAX_ARENA_ENEMIES do
              arenaFrame = "ArenaEnemyFrame"..i
              trinket = CreateFrame("Cooldown", arenaFrame.."Trinket", ArenaEnemyFrames)
              trinket:SetPoint("TOPRIGHT", arenaFrame, 30, -6)
              trinket:SetSize(27, 27)
              trinket.icon = trinket:CreateTexture(nil, "BACKGROUND")
              trinket.icon:SetAllPoints()
              trinket.icon:SetTexture("Interface\\Icons\\inv_jewelry_trinketpvp_01")
              trinket:Hide()
              trinkets["arena"..i] = trinket
          end

         end



20 мар 2013, 17:02
Профиль



<Попа в огне>


Сервер: Черный Шрам
2х2: 1822
3х3: 1567
2
Сообщение Скрипты Neilyo и не только

Я просто добавил строчку ArenaPrepFrame, все работает

Код:
--Arena trinkets
    local trinkets = {}
    local events = CreateFrame("Frame")
    function events:ADDON_LOADED(addonName)
        if addonName ~= "Blizzard_ArenaUI" then
            return
        end
            ArenaEnemyFrame1:ClearAllPoints()
            ArenaEnemyFrame1:SetPoint("TOPRIGHT", UIParent, "TOPRIGHT", -300, -200)        
            ArenaEnemyFrame1.SetPoint = function() end     
            ArenaEnemyFrame2:ClearAllPoints()
            ArenaEnemyFrame2:SetPoint("BOTTOMLEFT", ArenaEnemyFrame1, "BOTTOMLEFT", 0, -50)
            ArenaEnemyFrame2.SetPoint = function() end
            ArenaEnemyFrame3:ClearAllPoints()
            ArenaEnemyFrame3:SetPoint("BOTTOMLEFT", ArenaEnemyFrame1, "BOTTOMLEFT", 0, -100)
            ArenaEnemyFrame3.SetPoint = function() end
            ArenaEnemyFrame4:ClearAllPoints()
            ArenaEnemyFrame4:SetPoint("BOTTOMLEFT", ArenaEnemyFrame1, "BOTTOMLEFT", 0, -150)
            ArenaEnemyFrame4.SetPoint = function() end
            ArenaEnemyFrame5:ClearAllPoints()
            ArenaEnemyFrame5:SetPoint("BOTTOMLEFT", ArenaEnemyFrame1, "BOTTOMLEFT", 0, -200)
            ArenaEnemyFrame5.SetPoint = function() end
            ArenaPrepFrame1:ClearAllPoints()
            ArenaPrepFrame1:SetPoint("TOPRIGHT", UIParent, "TOPRIGHT", -300, -200)
            ArenaPrepFrame1.SetPoint = function() end
            ArenaPrepFrame2:ClearAllPoints()
            ArenaPrepFrame2:SetPoint("TOPRIGHT", ArenaPrepFrame1, "TOPRIGHT", 0, -50)
            ArenaPrepFrame2.SetPoint = function() end
            ArenaPrepFrame3:ClearAllPoints()
            ArenaPrepFrame3:SetPoint("TOPRIGHT", ArenaPrepFrame1, "TOPRIGHT", 0, -100)
            ArenaPrepFrame3.SetPoint = function() end
            ArenaPrepFrame4:ClearAllPoints()
            ArenaPrepFrame4:SetPoint("TOPRIGHT", ArenaPrepFrame1, "TOPRIGHT", 0, -150)
            ArenaPrepFrame4.SetPoint = function() end
            ArenaPrepFrame5:ClearAllPoints()
            ArenaPrepFrame5:SetPoint("TOPRIGHT", ArenaPrepFrame1, "TOPRIGHT", 0, -200)
            ArenaPrepFrame5.SetPoint = function() end
            ArenaPrepFrames:SetScale(1.4)            
            ArenaEnemyFrames:SetScale(1.4)            
        local arenaFrame, trinket
        for i = 1, MAX_ARENA_ENEMIES do
                arenaFrame = "ArenaEnemyFrame"..i
            trinket = CreateFrame("Cooldown", arenaFrame.."Trinket", ArenaEnemyFrames)
            trinket:SetPoint("TOPRIGHT", arenaFrame, 20, -6)
            trinket:SetSize(25, 25)
            trinket.icon = trinket:CreateTexture(nil, "BACKGROUND")
            trinket.icon:SetAllPoints()
            trinket.icon:SetTexture("Interface\\Icons\\inv_jewelry_trinketpvp_01")
            trinket:Hide()
            trinkets["arena"..i] = trinket
        end
        self:UnregisterEvent("ADDON_LOADED")
    end
    function events:UNIT_SPELLCAST_SUCCEEDED(unitID, spell, rank, lineID, spellID)
        if not trinkets[unitID] then
            return
        end
        if spellID == 59752 or spellID == 42292 then
            CooldownFrame_SetTimer(trinkets[unitID], GetTime(), 120, 1)
            SendChatMessage("Trinket used by: "..GetUnitName(unitID, true), "PARTY")
        elseif spellID == 7744 then
            CooldownFrame_SetTimer(trinkets[unitID], GetTime(), 45, 1)
            SendChatMessage("WotF used by: "..GetUnitName(unitID, true), "PARTY")
        end
    end
    function events:PLAYER_ENTERING_WORLD()
        local _, instanceType = IsInInstance()
        if instanceType == "arena" then
            self:RegisterEvent("UNIT_SPELLCAST_SUCCEEDED")
        elseif self:IsEventRegistered("UNIT_SPELLCAST_SUCCEEDED") then
            self:UnregisterEvent("UNIT_SPELLCAST_SUCCEEDED")
            for _, trinket in pairs(trinkets) do
                trinket:SetCooldown(0, 0)
                trinket:Hide()
            end
        end
    end
    SLASH_TESTAEF1 = "/testaef"
    SlashCmdList["TESTAEF"] = function(msg, editBox)
        if not IsAddOnLoaded("Blizzard_ArenaUI") then
            LoadAddOn("Blizzard_ArenaUI")
        end
        ArenaEnemyFrames:Show()
        local arenaFrame
        for i = 1, 3 do
            arenaFrame = _G["ArenaEnemyFrame"..i]          
            arenaFrame.classPortrait:SetTexture("Interface\\TargetingFrame\\UI-Classes-Circles")
            arenaFrame.classPortrait:SetTexCoord(unpack(CLASS_ICON_TCOORDS["WARRIOR"]))
            arenaFrame.name:SetText("Dispelme")
            arenaFrame:Show()                      
            CooldownFrame_SetTimer(trinkets["arena"..i], GetTime(), 120, 1)        
        end
    end
    events:SetScript("OnEvent", function(self, event, ...) return self[event](self, ...) end)
    events:RegisterEvent("ADDON_LOADED")
    events:RegisterEvent("PLAYER_ENTERING_WORLD")



20 мар 2013, 18:16
Профиль



<Попа в огне>


Сервер: Черный Шрам
2х2: 1822
3х3: 1567
0
Сообщение Скрипты Neilyo и не только

Фернир, уже спрашивал про этот скрипт, ты мне ответил, но немного не то, что я хотел :) Мне нужно подвинуть экшн бары с абилками выше, как это сделать ? Помоги плз)

Код:
---Экшн бары

-- if things seem odd you can adjust here

-- scale of action bars
local SCALE = 1.02 -- 0.5 / 0.64

-- height of exp and rep bars
local HEIGHT = 4

-- fade micro buttons and bags
local FADE_BOX = 1

-- end of config



do    
    -- two rows MultiBarBottomRight
    MultiBarBottomRightButton7:ClearAllPoints()
    MultiBarBottomRightButton7:SetPoint("BOTTOMLEFT", ActionButton12, "BOTTOMRIGHT", 12, 0)
    

    -- adjusts MultiBarRight and MultiBarLeft
    -- MultiBarRightButton1:ClearAllPoints()
    -- MultiBarRightButton1:SetPoint("TOPRIGHT", MultiBarRight, x, y)
    -- MultiBarLeftButton1:ClearAllPoints()
    -- MultiBarLeftButton1:SetPoint("TOPRIGHT", MultiBarLeft, x, y)

    -- PetActionButtons on the right side
    PetActionButton1:ClearAllPoints()
    PetActionButton1:SetPoint("BOTTOMLEFT", MultiBarBottomRightButton3, "TOPRIGHT", -404, 10) -- 372 + 32
    
    -- StanceButtons on the left side
    
    StanceButton1:ClearAllPoints()
    StanceButton1:SetPoint("BOTTOMLEFT", MultiBarBottomLeftButton2, "TOPRIGHT", 3, 10)
    
    -- concerned things with MainMenuBar
    MainMenuExpBar:SetWidth(761 - 5 )
    MainMenuExpBar:SetHeight(HEIGHT)
    MainMenuExpBar:ClearAllPoints()
    MainMenuExpBar:SetPoint("CENTER", MainMenuBar, "TOP", 0, -4.5)

    local fontFile, fontHeight, fontFlags = MainMenuBarExpText:GetFont()
    MainMenuBarExpText:SetFont(fontFile, floor(fontHeight / SCALE + 0.5), fontFlags)

    ExhaustionLevelFillBar:SetHeight(HEIGHT)

    ReputationWatchBar:SetWidth(761 - 5)
    ReputationWatchBar:SetHeight(HEIGHT)

    ReputationWatchStatusBar:SetWidth(761 - 5)

    local fontFile, fontHeight, fontFlags = ReputationWatchStatusBarText:GetFont()
    ReputationWatchStatusBarText:SetFont(fontFile, floor(fontHeight / SCALE + 0.5), fontFlags)

    -- re-reconfigure ReputationWatchBar
    -- we can't use events because of the delay issue
    local function ReputationWatchBar_Update_posthook(...)
        local name, reaction, _, _, value = GetWatchedFactionInfo()
        local hasExpBar = MainMenuExpBar:IsShown()

        if ( not name ) then
            if ( hasExpBar and MainMenuBarExpText:GetPoint() ~= "CENTER" ) then
                MainMenuBarExpText:ClearAllPoints()
                MainMenuBarExpText:SetPoint("CENTER", MainMenuExpBar, 0, 1)
            end

            return ...
        end

        ReputationWatchStatusBar:SetHeight(HEIGHT)
        ReputationWatchStatusBarText:SetText(ReputationWatchStatusBarText:GetText() .. " " .. GetText("FACTION_STANDING_LABEL" .. reaction, UnitSex("player"))) -- adds standing label

        if ( hasExpBar ) then
            ReputationWatchBar:ClearAllPoints()
            ReputationWatchBar:SetPoint("CENTER", MainMenuBar, "TOP", 0, 4.5)

            if ( ReputationWatchStatusBarText:GetPoint() ~= "RIGHT" ) then
                ReputationWatchStatusBarText:ClearAllPoints()
                ReputationWatchStatusBarText:SetPoint("RIGHT", ReputationWatchBarOverlayFrame, -128, 1)
            end

            if ( MainMenuBarExpText:GetPoint() ~= "LEFT" ) then
                MainMenuBarExpText:ClearAllPoints()
                MainMenuBarExpText:SetPoint("LEFT", MainMenuExpBar, 128, 1)
            end
        else
            ReputationWatchBar:ClearAllPoints()
            ReputationWatchBar:SetPoint("CENTER", MainMenuBar, "TOP", 0, -4.5)

            if ( ReputationWatchStatusBarText:GetPoint() ~= "CENTER" ) then
                ReputationWatchStatusBarText:ClearAllPoints()
                ReputationWatchStatusBarText:SetPoint("CENTER", ReputationWatchBarOverlayFrame, 0, 1)
            end
        end

        -- removes watched faction if we ware exalted
        if ( value == 42999 ) then
            SetWatchedFactionIndex(0)
        end

        return ...
    end
    local ReputationWatchBar_Update_original = ReputationWatchBar_Update
    function ReputationWatchBar_Update(...)
        return ReputationWatchBar_Update_posthook(ReputationWatchBar_Update_original(...))
    end

    -- actual new MainMenuBar's width
    MainMenuBar:SetWidth(777 - 5) -- 761 + 8 * 2
    -- who cares? but i do
    MainMenuBar:EnableMouse(false)


    -- unloads un-wanted textures
    for _, texture in next, {
        MainMenuXPBarTextureLeftCap,MainMenuXPBarTextureRightCap,MainMenuXPBarTextureMid, MainMenuMaxLevelBar0, MainMenuMaxLevelBar1, MainMenuMaxLevelBar2, MainMenuMaxLevelBar3, MainMenuBarTexture0, MainMenuBarTexture1, --[[MainMenuBarTexture2, MainMenuBarTexture3,]] MainMenuBarLeftEndCap, MainMenuBarRightEndCap,
        ReputationWatchBarTexture0, ReputationWatchBarTexture1, ReputationWatchBarTexture2, ReputationWatchBarTexture3, ReputationXPBarTexture0, ReputationXPBarTexture1, ReputationXPBarTexture2, ReputationXPBarTexture3,
        BonusActionBarTexture0, BonusActionBarTexture1, ShapeshiftBarLeft, ShapeshiftBarMiddle, ShapeshiftBarRight, PossessBackground1, PossessBackground2,
        SlidingActionBarTexture0, SlidingActionBarTexture1,
    } do
        texture:SetTexture(nil)
    end
    
    -- scales these bars
    for _, bar in next, {
        MainMenuBar, --[[ VehicleMenuBar,]] MultiBarRight
    } do
        bar:SetScale(SCALE)
    end

end




-- modified by smaltore @2011-11-16
---------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------
    -- hide the art frames from bonus action bar
    hooksecurefunc("UIParent_ManageFramePosition", function ()
        for _,frame in next, {
            MainMenuBarTexture0,MainMenuBarTexture1,--Цч¶ЇЧчМх±іѕ°
            MainMenuBarTexture2,MainMenuBarTexture3, --ФїіЧєН±і°ь±іѕ°
            MainMenuBarLeftEndCap, MainMenuBarRightEndCap, --Цч¶ЇЧчМхБЅ¶ЛµДУҐ
            MainMenuBarPageNumber,ActionBarUpButton,ActionBarDownButton, --·­Ті°ґЕҐ
            }
        do    frame:Hide()    end
    
        for i=1,19 do _G["MainMenuXPBarDiv"..i]:SetTexture(nil) end    --ѕ­СйМхµДёсёс
        
    end)
-------------------------------------bags and micro menu----------------------------------
    --create fade function
    function fade(frame,button)
        local function showhide(alpha)
            frame:SetAlpha(alpha)
        end
        frame:EnableMouse(true)
        frame:SetAlpha(0.1)
        frame:SetScript("OnEnter", function(self) showhide(1) end)
        frame:SetScript("OnLeave", function(self) showhide(0.1) end)
        button:HookScript("OnEnter", function(self) showhide(1) end)
        button:HookScript("OnLeave", function(self) showhide(0.1) end)
    end

    --bags and micromenu buttons
    local MicroButtons = {    
        CharacterMicroButton,
        SpellbookMicroButton,
        TalentMicroButton,
        AchievementMicroButton,
        QuestLogMicroButton,
        GuildMicroButton,
        PVPMicroButton,
        LFDMicroButton,
        CompanionsMicroButton,
        EJMicroButton,
        MainMenuMicroButton,
        HelpMicroButton,
    }
    local BagButtons = {
        MainMenuBarBackpackButton,
        CharacterBag0Slot,
        CharacterBag1Slot,    
        CharacterBag2Slot,
        CharacterBag3Slot,
        --KeyRingButton
    }
    
    local box = CreateFrame("Frame","Micro_and_Bags_Frame",UIParent)
        box:SetWidth(210)
        box:SetHeight(55)
        box:SetPoint("BOTTOMRIGHT", UIParent, 0, 0);
        box:SetScale(SCALE * 0.8)
    local function mybox()
        --bags
        for _, button in pairs(BagButtons) do
            if button ~= MainMenuBarBackpackButton then
                button:Hide()
            else
                MainMenuBarBackpackButton:SetParent(box)
                MainMenuBarBackpackButton:SetScale( 2.2 )
            end
        end
        MainMenuBarBackpackButton:ClearAllPoints();
        MainMenuBarBackpackButton:SetPoint("BOTTOMRIGHT",box,0,0);
        -- micro menu bar ПµНіІЛµҐ
        for _, button in pairs(MicroButtons) do
            button:SetParent(box);
        end
        CharacterMicroButton:ClearAllPoints();
        CharacterMicroButton:SetPoint("BOTTOMLEFT", MainMenuBarBackpackButton, -155, 30);
        PVPMicroButton:ClearAllPoints();
        PVPMicroButton:SetPoint("TOPLEFT", CharacterMicroButton, "BOTTOMLEFT", 0, 25);
    end
    mybox()
    hooksecurefunc("UpdateMicroButtons",mybox)
    
    --fade and move the side bars
    if FADE_BOX == 1 then
        for _,button in pairs(MicroButtons) do fade(box,button) end
        for _,button in pairs(BagButtons)     do fade(box,button) end
    end
    
    
    --[[
    --------------------------------------------------------------------------------------------
    --------------------------------------------------------------------------------------------
    --patch from Tidy bar
    --fix pet bar bug, it doesn't show sometime
    PetActionBarFrame:SetAttribute("unit", "pet")    
    RegisterUnitWatch(PetActionBarFrame)
    --]]
    
    --------------------------------------------------------------------------------------------
    --------------------------------------------------------------------------------------------
    --OverRideBar patch from rActionBarStyler

    local textureList =  {
      "_BG",
      "EndCapL",
      "EndCapR",
      "_Border",
      "Divider1",
      "Divider2",
      "Divider3",
      "ExitBG",
      "MicroBGL",
      "MicroBGR",
      "_MicroBGMid",
      "ButtonBGL",
      "ButtonBGR",
      "_ButtonBGMid",
    }
    for _,tex in pairs(textureList) do
      OverrideActionBar[tex]:SetAlpha(0)
    end

    local hideor = CreateFrame("frame")
    hideor:Hide()
    for _,f in next,{
    OverrideActionBarExpBar,
    OverrideActionBarHealthBar,
    OverrideActionBarPowerBar,
    OverrideActionBarPitchFrame,
    } do
        f:SetParent(hideor)
    end
    

    for i=1, 6 do
        local button =  _G["OverrideActionBarButton"..i]
        if not button then break end
        button:SetSize(40, 40)
        button:ClearAllPoints()
        if i == 1 then
            button:SetPoint("BOTTOMLEFT",ActionButton1)
        else
            local previous = _G["OverrideActionBarButton"..i-1]
            button:SetPoint("LEFT", previous, "RIGHT", 10, 0)
        end
    end
    OverrideActionBar.LeaveButton:SetSize(40, 40)
    OverrideActionBar.LeaveButton:ClearAllPoints()
    OverrideActionBar.LeaveButton:SetPoint("BOTTOMRIGHT",ActionButton12)



21 мар 2013, 18:35
Профиль

0
Сообщение Скрипты Neilyo и не только

Reimu писал(а):

Я просто добавил строчку ArenaPrepFrame, все работает

Код:
--Arena trinkets
    local trinkets = {}
    local events = CreateFrame("Frame")
    function events:ADDON_LOADED(addonName)
        if addonName ~= "Blizzard_ArenaUI" then
            return
        end
            ArenaEnemyFrame1:ClearAllPoints()
            ArenaEnemyFrame1:SetPoint("TOPRIGHT", UIParent, "TOPRIGHT", -300, -200)        
            ArenaEnemyFrame1.SetPoint = function() end     
            ArenaEnemyFrame2:ClearAllPoints()
            ArenaEnemyFrame2:SetPoint("BOTTOMLEFT", ArenaEnemyFrame1, "BOTTOMLEFT", 0, -50)
            ArenaEnemyFrame2.SetPoint = function() end
            ArenaEnemyFrame3:ClearAllPoints()
            ArenaEnemyFrame3:SetPoint("BOTTOMLEFT", ArenaEnemyFrame1, "BOTTOMLEFT", 0, -100)
            ArenaEnemyFrame3.SetPoint = function() end
            ArenaEnemyFrame4:ClearAllPoints()
            ArenaEnemyFrame4:SetPoint("BOTTOMLEFT", ArenaEnemyFrame1, "BOTTOMLEFT", 0, -150)
            ArenaEnemyFrame4.SetPoint = function() end
            ArenaEnemyFrame5:ClearAllPoints()
            ArenaEnemyFrame5:SetPoint("BOTTOMLEFT", ArenaEnemyFrame1, "BOTTOMLEFT", 0, -200)
            ArenaEnemyFrame5.SetPoint = function() end
            ArenaPrepFrame1:ClearAllPoints()
            ArenaPrepFrame1:SetPoint("TOPRIGHT", UIParent, "TOPRIGHT", -300, -200)
            ArenaPrepFrame1.SetPoint = function() end
            ArenaPrepFrame2:ClearAllPoints()
            ArenaPrepFrame2:SetPoint("TOPRIGHT", ArenaPrepFrame1, "TOPRIGHT", 0, -50)
            ArenaPrepFrame2.SetPoint = function() end
            ArenaPrepFrame3:ClearAllPoints()
            ArenaPrepFrame3:SetPoint("TOPRIGHT", ArenaPrepFrame1, "TOPRIGHT", 0, -100)
            ArenaPrepFrame3.SetPoint = function() end
            ArenaPrepFrame4:ClearAllPoints()
            ArenaPrepFrame4:SetPoint("TOPRIGHT", ArenaPrepFrame1, "TOPRIGHT", 0, -150)
            ArenaPrepFrame4.SetPoint = function() end
            ArenaPrepFrame5:ClearAllPoints()
            ArenaPrepFrame5:SetPoint("TOPRIGHT", ArenaPrepFrame1, "TOPRIGHT", 0, -200)
            ArenaPrepFrame5.SetPoint = function() end
            ArenaPrepFrames:SetScale(1.4)            
            ArenaEnemyFrames:SetScale(1.4)            
        local arenaFrame, trinket
        for i = 1, MAX_ARENA_ENEMIES do
                arenaFrame = "ArenaEnemyFrame"..i
            trinket = CreateFrame("Cooldown", arenaFrame.."Trinket", ArenaEnemyFrames)
            trinket:SetPoint("TOPRIGHT", arenaFrame, 20, -6)
            trinket:SetSize(25, 25)
            trinket.icon = trinket:CreateTexture(nil, "BACKGROUND")
            trinket.icon:SetAllPoints()
            trinket.icon:SetTexture("Interface\\Icons\\inv_jewelry_trinketpvp_01")
            trinket:Hide()
            trinkets["arena"..i] = trinket
        end
        self:UnregisterEvent("ADDON_LOADED")
    end
    function events:UNIT_SPELLCAST_SUCCEEDED(unitID, spell, rank, lineID, spellID)
        if not trinkets[unitID] then
            return
        end
        if spellID == 59752 or spellID == 42292 then
            CooldownFrame_SetTimer(trinkets[unitID], GetTime(), 120, 1)
            SendChatMessage("Trinket used by: "..GetUnitName(unitID, true), "PARTY")
        elseif spellID == 7744 then
            CooldownFrame_SetTimer(trinkets[unitID], GetTime(), 45, 1)
            SendChatMessage("WotF used by: "..GetUnitName(unitID, true), "PARTY")
        end
    end
    function events:PLAYER_ENTERING_WORLD()
        local _, instanceType = IsInInstance()
        if instanceType == "arena" then
            self:RegisterEvent("UNIT_SPELLCAST_SUCCEEDED")
        elseif self:IsEventRegistered("UNIT_SPELLCAST_SUCCEEDED") then
            self:UnregisterEvent("UNIT_SPELLCAST_SUCCEEDED")
            for _, trinket in pairs(trinkets) do
                trinket:SetCooldown(0, 0)
                trinket:Hide()
            end
        end
    end
    SLASH_TESTAEF1 = "/testaef"
    SlashCmdList["TESTAEF"] = function(msg, editBox)
        if not IsAddOnLoaded("Blizzard_ArenaUI") then
            LoadAddOn("Blizzard_ArenaUI")
        end
        ArenaEnemyFrames:Show()
        local arenaFrame
        for i = 1, 3 do
            arenaFrame = _G["ArenaEnemyFrame"..i]          
            arenaFrame.classPortrait:SetTexture("Interface\\TargetingFrame\\UI-Classes-Circles")
            arenaFrame.classPortrait:SetTexCoord(unpack(CLASS_ICON_TCOORDS["WARRIOR"]))
            arenaFrame.name:SetText("Dispelme")
            arenaFrame:Show()                      
            CooldownFrame_SetTimer(trinkets["arena"..i], GetTime(), 120, 1)        
        end
    end
    events:SetScript("OnEvent", function(self, event, ...) return self[event](self, ...) end)
    events:RegisterEvent("ADDON_LOADED")
    events:RegisterEvent("PLAYER_ENTERING_WORLD")

Спасибо, помогло  Love

 



22 мар 2013, 12:59
Профиль



<еХТеам>


Сервер: Ясеневый лес
0
Сообщение Скрипты Neilyo и не только

Привет!
А можно как-нибудь включить отображение цели таргета и цели фокуса? Только из-за этого с Хперла не ухожу :)



22 мар 2013, 22:39
Профиль Skype

0
Сообщение Скрипты Neilyo и не только

Жуук писал(а):

Привет!
А можно как-нибудь включить отображение цели таргета и цели фокуса? Только из-за этого с Хперла не ухожу :)

интерфейс - бой - цель выбранной цели. 

 



23 мар 2013, 06:00
Профиль



<еХТеам>


Сервер: Ясеневый лес
0
Сообщение Скрипты Neilyo и не только

Цитата:
интерфейс - бой - цель выбранной цели. 
Спасибо большое!



23 мар 2013, 11:20
Профиль Skype



<Бехолдэрс>


Сервер: Черный Шрам
Рейтинг поля боя: 1145
2х2: 1665
3х3: 2143
5х5: 1670
0
Сообщение Скрипты Neilyo и не только

Можно как то сделать, чтобы вместо портрета игрока отображалась власть крови/льда/нечестивости, в зависимости от того, какая включена?



23 мар 2013, 12:52
Профиль



<ТАКЕ ТНЕ ТОР>


Сервер: Свежеватель Душ
2х2: 765
0
Сообщение Скрипты Neilyo и не только

Ребят, помогите плиз

Вот скрипт DRTracker

--[[
DR Tracker
drx = x position
drs = icon size

DRt={{DRLIST1},{DRLIST2},{DRLIST3}...}
DEFAULT :DRt={{fear},{polymorph}}

-- show frame in left of arena enemyframe
drx :set minus value(ex drx :-160)
dp :"LEFT"
and insert in macro 5
drx+(r-1)-> drx-(r-1)
]]--

DRt={{5782,53759,2094,8122,5246,5484,6358,1513,10326,115268},{108194,91800,91797,22570,9005,5211,102795,117526,24394,90337,50519,44572,118271,119392,119381,122242,120086,853,119072,105593,1833,408,118905,30283,103131,20549}}

drx=160;drs=40;dp="RIGHT";dre="COMBAT_LOG_EVENT_UNFILTERED"drp="PLAYER_ENTERING_WORLD"dra="ARENA_OPPONENT_UPDATE"LoadAddOn("Blizzard_ArenaUI")function gaef(f,n)return _G["ArenaEnemyFrame"..n.."HealthBar"]end

function rDR(f)f.e=1;f.t:SetTexture(nil)f.c:Hide()end function sDR(f)f.e=f.e+1;f.c:Show()end function gDRt(i,j)return _G["drc"..i..":"..j]end function runDR(f,n)CooldownFrame_SetTimer(f.c,GetTime(),18,1)eDR(f,n)sDR(f)oDR(n)end

function eDR(f,n)local t=1;f:SetScript("OnUpdate",function(s,e)t=t+e;if(t>=18)then f:SetScript("OnUpdate",nil)rDR(f)oDR(n)end end)end function cDR(f,n,s)if f.e<4 then local _,_,t=GetSpellInfo(s)f.t:SetTexture(t)runDR(f,n)end end

function oDR(n)local r=1;for j in ipairs(DRt)do local f=gDRt(n,j)f:SetPoint(dp,gaef(f,n),dp,drx+(r-1)*50,0)r=r+1;end end function uDR(n,s)for i,t in ipairs(DRt)do for _,j in ipairs(t)do if s==j then cDR(gDRt(n,i),n,s)end end end end

function DRc(i,j)local f=CreateFrame("Frame",nil,UIParent)f:SetSize(drs,drs)f.t=f:CreateTexture(nil,"BORDER")f.t:SetAllPoints(true)f.c=CreateFrame("Cooldown",nil,f)f.c:SetAllPoints(f)f.e=1 return f end

function clDR(_,e,_,_,_,_,_,d,_,_,_,s)if(e=="SPELL_AURA_REMOVED" or e=="SPELL_AURA_REFRESH")then for i=1,5 do local ag=UnitGUID("arena"..i)if(ag ~= nil and d==ag)then uDR(i,s)end end end end

function iDRt(o,m)for i=1,m do for j in ipairs(DRt)do local f=gDRt(i,j)rDR(f)if o then f:Show()end end end end for i=1,5 do for j in ipairs(DRt)do _G["drc"..i..":"..j]=DRc(i,j)end end

dt=CreateFrame("Frame")dt:SetScript("OnEvent",function(_,e,...)if e==dre then clDR(...)elseif e==dra then iDRt(1,GetNumArenaOpponents())else iDRt(nil,5)end end)dt:RegisterEvent(dra)dt:RegisterEvent(drp)dt:RegisterEvent(dre)

Всё работает отлично, кроме того, что не показывает диминишинг на http://ru.wowhead.com/spell=53759. Что не так?)



23 мар 2013, 16:43
Профиль Skype

0
Сообщение Скрипты Neilyo и не только

nemcuk писал(а):

#845

c новым патчем добавилась новая возможность, которая на хп баре показывает количество абсорба белой заштрихованной зоной

как её убрать?



23 мар 2013, 18:36
Профиль

0
Сообщение Скрипты Neilyo и не только

интерфейс - профиль рейда - полученное лечение.



24 мар 2013, 03:47
Профиль



<Мёртвая Хватка>


Сервер: Азурегос
2х2: 1766
3х3: 1794
1
Сообщение Скрипты Neilyo и не только

Reimu писал(а):

Фернир, уже спрашивал про этот скрипт, ты мне ответил, но немного не то, что я хотел :) Мне нужно подвинуть экшн бары с абилками выше, как это сделать ? Помоги плз)

добавь в начало кода после do

Код:
local Y_OFFSET = 100 -- сдвиг по вертикали
    for i=1,12 do
        _G['ActionButton'..i]:ClearAllPoints()
        _G['ActionButton'..i]:SetPoint('BOTTOMLEFT', MainMenuBar, 'BOTTOMLEFT', i*42, Y_OFFSET)
    end



24 мар 2013, 08:21
Профиль

0
Сообщение Скрипты Neilyo и не только

Пушкин писал(а):

интерфейс - профиль рейда - полученное лечение.

это к рейд фреймама относится, а не к хп бару                     



24 мар 2013, 11:16
Профиль
Начать новую тему Ответить на тему


Перейти:  

На сайте использованы материалы, принадлежащие Blizzard Entertainment. Копирование материалов возможно только c разрешения портала. В противном случае это будет называться уже другим словом.
Рейтинг@Mail.ru