WORLD OF WARCRAFT

Тема: kgPanels - скрипты и не только!  (Прочитано 7805 раз)

0 Пользователей и 1 Гость просматривают эту тему.

afreg

  • Завсегдатай
  • **
  • Сообщений: 437
  • Химюон - Азурегос

  • Варкрафт: +
    • Имя: Химюон
    • Класс: жрец
    • Сервер: Азурегос
Re: kgPanels - скрипты и не только!
« Ответ #15 : 06 Июня, 2016, 03:18:30 »
  • Рейтинг:0 (+0 | 0)
Все перепробовал, ничего не получается :facepalm:
Ну вот я в WA сделал кнопку для релоада, нормально работает.
Кастомная часть триггера:
function()
    local r = WeakAuras.regions['WA_RLButton'].region
    local WA_Button_RL = CreateFrame("Button", nil, r, "SecureUnitButtonTemplate")
    WA_Button_RL:SetAllPoints()
    WA_Button_RL:SetScript("OnClick", function()
            ReloadUI()
    end)
    WA_Button_RL:SetScript("OnEnter", function()
            GameTooltip:SetText("Reloads my UI")
    end)
    return true
end
Твои панели можно по аналогии делать.

prof1x

  • Новичок
  • *
  • Сообщений: 18
Re: kgPanels - скрипты и не только!
« Ответ #16 : 06 Июня, 2016, 13:11:34 »
  • Рейтинг:0 (+0 | 0)
Ок. Пойдем другим путем. Есть код:
local reload=CreateFrame("BUTTON")
reload:ClearAllPoints()
reload:SetAllPoints(self)
reload:SetScript("OnClick", ReloadUI)]
self.text:SetText("reloadUI")
Как сделать, чтобы по маусоверу менялась прозрачность текста?

afreg

  • Завсегдатай
  • **
  • Сообщений: 437
  • Химюон - Азурегос

  • Варкрафт: +
    • Имя: Химюон
    • Класс: жрец
    • Сервер: Азурегос
Re: kgPanels - скрипты и не только!
« Ответ #17 : 06 Июня, 2016, 14:01:30 »
  • Рейтинг:0 (+0 | 0)
Как сделать, чтобы по маусоверу менялась прозрачность текста?

Можно попробовать добавить
reload:SetScript("OnEnter", reload:SetAlpha(0.5))
reload:SetScript("OnLeave", reload:SetAlpha(1))
В данном случае button:SetAlpha() отвечает за прозрачность кнопки, 0 - полностью прозрачная, 1 - полностью непрозрачная.
Может быть нужно будет сделать button.text:SetAlpha(), покрути сам.
Не проверял, мб сработает. Вообще вот тебе справочная по кнопкам.

prof1x

  • Новичок
  • *
  • Сообщений: 18
Re: kgPanels - скрипты и не только!
« Ответ #18 : 06 Июня, 2016, 16:04:19 »
  • Рейтинг:0 (+0 | 0)
Спасибо, вечером попробую. А есть какая-нибудь прога чтобы, можно было протестировать без клиента игры? Что-то типа эмулятора среды.

prof1x

  • Новичок
  • *
  • Сообщений: 18
Re: kgPanels - скрипты и не только!
« Ответ #19 : 06 Июня, 2016, 22:04:23 »
  • Рейтинг:0 (+0 | 0)
Работает:
local reload=CreateFrame("BUTTON")
reload:ClearAllPoints()
reload:SetAllPoints(self)
reload:SetScript("OnClick", ReloadUI)
self.text:SetText("ReloadUI")
local reload = kgPanels:FetchFrame("addon.reloadUI")
reload:SetParent(kgPanels:FetchFrame("addons.list"))
reload:SetPoint("TOP", kgPanels:FetchFrame("addons.list"), "BOTTOM", 0, 30)
Не работает:
local reload=CreateFrame("BUTTON")
reload:ClearAllPoints()
reload:SetAllPoints(self)
reload:SetScript("OnClick", ReloadUI)
reload:SetScript("OnEnter", reload.text:SetAlpha(0.5))
reload:SetScript("OnLeave", reload.text:SetAlpha(1))
self.text:SetText("ReloadUI")
local reload = kgPanels:FetchFrame("addon.reloadUI")
reload:SetParent(kgPanels:FetchFrame("addons.list"))
reload:SetPoint("TOP", kgPanels:FetchFrame("addons.list"), "BOTTOM", 0, 30)
Ппц какой-то

Afenar

  • Ветеран
  • ****
  • Сообщений: 7675
  • WarsongEU_Wolfheart

  • Варкрафт: +
    • Имя: Афенар
    • Класс: Priest
    • Сервер: Король-Свитч
Re: kgPanels - скрипты и не только!
« Ответ #20 : 15 Июня, 2016, 01:49:47 »
  • Рейтинг:0 (+0 | 0)
Скажите, пожалуйста, можно ли как-то переделать этот код или сделать новый, что бы при нажатии на панель исчезали\появлялись сразу 4 панели бартендера, а не одна как в коде:
if pressed then
if BT4Bar1:IsVisible() then
Bartender4.Bar.barregistry["1"]:SetVisibilityOption("always",true)
else
Bartender4.Bar.barregistry["1"]:SetVisibilityOption("always",false)
end
end
а то бесяво по 4 прокликивать, если что-то поменять нужно

afreg

  • Завсегдатай
  • **
  • Сообщений: 437
  • Химюон - Азурегос

  • Варкрафт: +
    • Имя: Химюон
    • Класс: жрец
    • Сервер: Азурегос
Re: kgPanels - скрипты и не только!
« Ответ #21 : 15 Июня, 2016, 02:20:26 »
  • Рейтинг:4 (+4 | 0)
Скажите, пожалуйста, можно ли как-то переделать этот код или сделать новый, что бы при нажатии на панель исчезали\появлялись сразу 4 панели бартендера, а не одна как в коде:
if pressed then
if BT4Bar1:IsVisible() then
Bartender4.Bar.barregistry["1"]:SetVisibilityOption("always",true)
else
Bartender4.Bar.barregistry["1"]:SetVisibilityOption("always",false)
end
end
а то бесяво по 4 прокликивать, если что-то поменять нужно
Если я правильно понял, то индекс в квадратных скобках обозначает номер панели. Тогда предполагаю, что вот так будет работать:
if pressed then
if BT4Bar1:IsVisible() then
Bartender4.Bar.barregistry["1"]:SetVisibilityOption("always",true)
Bartender4.Bar.barregistry["2"]:SetVisibilityOption("always",true)
Bartender4.Bar.barregistry["3"]:SetVisibilityOption("always",true)
Bartender4.Bar.barregistry["4"]:SetVisibilityOption("always",true)
else
Bartender4.Bar.barregistry["1"]:SetVisibilityOption("always",false)
Bartender4.Bar.barregistry["2"]:SetVisibilityOption("always",false)
Bartender4.Bar.barregistry["3"]:SetVisibilityOption("always",false)
Bartender4.Bar.barregistry["4"]:SetVisibilityOption("always",false)
end
end
Проверяет видимость только одной панели и по ней меняет видимость остальных. Соответственно либо все включатся, либо все выключатся.

Afenar

  • Ветеран
  • ****
  • Сообщений: 7675
  • WarsongEU_Wolfheart

  • Варкрафт: +
    • Имя: Афенар
    • Класс: Priest
    • Сервер: Король-Свитч
Re: kgPanels - скрипты и не только!
« Ответ #22 : 15 Июня, 2016, 03:26:36 »
  • Рейтинг:0 (+0 | 0)
Скажите, пожалуйста, можно ли как-то переделать этот код или сделать новый, что бы при нажатии на панель исчезали\появлялись сразу 4 панели бартендера, а не одна как в коде:
if pressed then
if BT4Bar1:IsVisible() then
Bartender4.Bar.barregistry["1"]:SetVisibilityOption("always",true)
else
Bartender4.Bar.barregistry["1"]:SetVisibilityOption("always",false)
end
end
а то бесяво по 4 прокликивать, если что-то поменять нужно
Если я правильно понял, то индекс в квадратных скобках обозначает номер панели. Тогда предполагаю, что вот так будет работать:
if pressed then
if BT4Bar1:IsVisible() then
Bartender4.Bar.barregistry["1"]:SetVisibilityOption("always",true)
Bartender4.Bar.barregistry["2"]:SetVisibilityOption("always",true)
Bartender4.Bar.barregistry["3"]:SetVisibilityOption("always",true)
Bartender4.Bar.barregistry["4"]:SetVisibilityOption("always",true)
else
Bartender4.Bar.barregistry["1"]:SetVisibilityOption("always",false)
Bartender4.Bar.barregistry["2"]:SetVisibilityOption("always",false)
Bartender4.Bar.barregistry["3"]:SetVisibilityOption("always",false)
Bartender4.Bar.barregistry["4"]:SetVisibilityOption("always",false)
end
end
Проверяет видимость только одной панели и по ней меняет видимость остальных. Соответственно либо все включатся, либо все выключатся.
Спасибо, работает идеально :)

осталось еще разобраться, как сделать выезд как в ЛУи панелек анимацией и что бы справа на экране была стрелочка, которая не исчезала, а просто задвигалась - все обыскал - нигде нету :(

 

закрыть