Hallöchen,
so kurz vor WoD Start wollte ich mein UI noch auf den laufenden bringen und hänge nun bei KGPanels fest. Wieder mal...
Vorweg ich habe keine Ahnung von LUA und habe meine ganzen Scripte von freundlichen Usern aus´m
WOW Interface Forum.
Die 4 Buttons ( Show / Hide / DPS/HPS und Chat ) funktionieren und das U ist auch ausgeblendet wenn ich solo unterwegs bin. Im Raid/grp wird alles eingeblendet und in der Stadt nur der Chat.
Nun möchte ich, das wenn ich an einem x-beliebigen Händler stehe oder in der Bank/GBank bin das alles ausgeblendet wird!
Und falls möglich auch das UI ausblenden wenn man eine Fahrzeug UI wie in Ulduar/Malygos hat und während des Petbattles.
Priorität hat aber Bank/Gbank/Händler NPC!
_G[
steht hier zwar noch in den Scripten drin ist aber aus meinem aktuellen UI scripten verbannt worden!
Folgend sind meine Scripte:
Speziell die letzten beiden funktionieren nicht!
Button 'DPS'
OnLoad
OnEvent
OnClick
Button 'Chat'
OnLoad
OnEvent
OnClick
Button 'Show'
OnClick
Button 'Hide'
OnClick
OnEvent
so kurz vor WoD Start wollte ich mein UI noch auf den laufenden bringen und hänge nun bei KGPanels fest. Wieder mal...
Vorweg ich habe keine Ahnung von LUA und habe meine ganzen Scripte von freundlichen Usern aus´m
WOW Interface Forum.
Die 4 Buttons ( Show / Hide / DPS/HPS und Chat ) funktionieren und das U ist auch ausgeblendet wenn ich solo unterwegs bin. Im Raid/grp wird alles eingeblendet und in der Stadt nur der Chat.
Nun möchte ich, das wenn ich an einem x-beliebigen Händler stehe oder in der Bank/GBank bin das alles ausgeblendet wird!
Und falls möglich auch das UI ausblenden wenn man eine Fahrzeug UI wie in Ulduar/Malygos hat und während des Petbattles.
Priorität hat aber Bank/Gbank/Händler NPC!
_G[
steht hier zwar noch in den Scripten drin ist aber aus meinem aktuellen UI scripten verbannt worden!
Folgend sind meine Scripte:
Speziell die letzten beiden funktionieren nicht!
Button 'DPS'
OnLoad
Code:
--table with the Skada frames that should be handled
self.SkadaWindowsToToggle = {
Recount = true,
Omen = true,
}
function self:ToggleAllSkadaWindows()
for name,v in pairs(self.SkadaWindowsToToggle) do
if v then
local f = _G["SkadaBarWindow"..name]
if f then
f[IsInGroup() and "Show" or "Hide"](f)
end
end
end
end
--Get LibStub's Skada table
local skada = LibStub("AceAddon-3.0"):GetAddon("Skada")
--hook the settings application that is run after a Skada window is created
hooksecurefunc(skada,"ApplySettings", function() self:ToggleAllSkadaWindows() end)
--hide any asociated Skada windows that are already created
self:ToggleAllSkadaWindows()
--register events
self:RegisterEvent("PLAYER_ENTERING_WORLD")
self:RegisterEvent("GROUP_ROSTER_UPDATE")
OnEvent
Code:
self:ToggleAllSkadaWindows()
OnClick
Code:
if IsAddOnLoaded("Skada") and pressed then
if IsControlKeyDown() then
Skada:Reset()
PlaySoundFile("Sound\\Interface\\iAbilitiesTurnPageA.wav")
else
CombatLogClearEntries()
Skada:ToggleWindow()
if SkadaBarWindowRecount:IsShown() and SkadaBarWindowOmen:IsShown() then
PlaySoundFile("Sound\\Interface\\uCharacterSheetOpen.wav")
else
PlaySoundFile("Sound\\Interface\\uCharacterSheetClose.wav")
end
end
end
Button 'Chat'
OnLoad
Code:
self:RegisterEvent("ZONE_CHANGED")
self:RegisterEvent("ZONE_CHANGED_NEW_AREA")
self:RegisterEvent("ZONE_CHANGED_INDOORS")
self:RegisterEvent("PLAYER_ENTERING_WORLD")
self:RegisterEvent("GROUP_ROSTER_UPDATE")
if IsResting() or IsInGroup() then
_G["ChatFrame1"]:Show()
_G["ChatFrame3"]:Show()
_G["ChatFrame1ButtonFrame"]:Show()
_G["ChatFrame3ButtonFrame"]:Show()
_G["ChatFrameMenuButton"]:Show()
_G["GeneralDockManager"]:Show()
_G["FriendsMicroButton"]:Show()
else
_G["ChatFrame1"]:Hide()
_G["ChatFrame3"]:Hide()
_G["ChatFrame1ButtonFrame"]:Hide()
_G["ChatFrame3ButtonFrame"]:Hide()
_G["ChatFrameMenuButton"]:Hide()
_G["GeneralDockManager"]:Hide()
_G["FriendsMicroButton"]:Hide()
end
OnEvent
Code:
if IsResting() or IsInGroup() then
_G["ChatFrame1"]:Show()
_G["ChatFrame3"]:Show()
_G["ChatFrame1ButtonFrame"]:Show()
_G["ChatFrame3ButtonFrame"]:Show()
_G["ChatFrameMenuButton"]:Show()
_G["GeneralDockManager"]:Show()
_G["FriendsMicroButton"]:Show()
else
_G["ChatFrame1"]:Hide()
_G["ChatFrame3"]:Hide()
_G["ChatFrame1ButtonFrame"]:Hide()
_G["ChatFrame3ButtonFrame"]:Hide()
_G["ChatFrameMenuButton"]:Hide()
_G["GeneralDockManager"]:Hide()
_G["FriendsMicroButton"]:Hide()
end
OnClick
Code:
if pressed then
if _G["ChatFrame1"]:IsShown() then
_G["ChatFrame1"]:Hide()
_G["ChatFrame3"]:Hide()
_G["ChatFrame1ButtonFrame"]:Hide()
_G["ChatFrame3ButtonFrame"]:Hide()
_G["ChatFrameMenuButton"]:Hide()
_G["GeneralDockManager"]:Hide()
_G["FriendsMicroButton"]:Hide()
PlaySoundFile("Sound\\Interface\\uCharacterSheetClose.wav")
else
_G["ChatFrame1"]:Show()
_G["ChatFrame3"]:Show()
_G["ChatFrame1ButtonFrame"]:Show()
_G["ChatFrame3ButtonFrame"]:Show()
_G["ChatFrameMenuButton"]:Show()
_G["GeneralDockManager"]:Show()
_G["FriendsMicroButton"]:Show()
PlaySoundFile("Sound\\Interface\\uCharacterSheetOpen.wav")
end
end
Button 'Show'
OnClick
Code:
if IsAddOnLoaded("Skada") and pressed then
if not SkadaBarWindowOmen:IsShown() or not SkadaBarWindowRecount:IsShown() then
PlaySoundFile("Sound\\Interface\\uCharacterSheetOpen.wav")
end
SkadaBarWindowRecount:Show()
SkadaBarWindowOmen:Show()
end
if pressed then
_G["ChatFrame1"]:Show()
_G["ChatFrame3"]:Show()
_G["ChatFrame1ButtonFrame"]:Show()
_G["ChatFrame3ButtonFrame"]:Show()
_G["ChatFrameMenuButton"]:Show()
_G["GeneralDockManager"]:Show()
_G["FriendsMicroButton"]:Show()
end
Button 'Hide'
OnClick
Code:
if IsAddOnLoaded("Skada") and pressed then
if SkadaBarWindowOmen:IsShown() or SkadaBarWindowRecount:IsShown() then
PlaySoundFile("Sound\\Interface\\uCharacterSheetClose.wav")
end
SkadaBarWindowRecount:Hide()
SkadaBarWindowOmen:Hide()
end
if pressed then
_G["ChatFrame1"]:Hide()
_G["ChatFrame3"]:Hide()
_G["ChatFrame1ButtonFrame"]:Hide()
_G["ChatFrame3ButtonFrame"]:Hide()
_G["ChatFrameMenuButton"]:Hide()
_G["GeneralDockManager"]:Hide()
_G["FriendsMicroButton"]:Hide()
end
OnEvent
Code:
local oEvents = {
"GOSSIP_SHOW",
"BANKFRAME_OPENED",
"GUILDBANKFRAME_OPENED"
}
if tContains(oEvents,event) then
ChatFrame1:Hide()
ChatFrame3:Hide()
ChatFrame1ButtonFrame:Hide()
ChatFrame3ButtonFrame:Hide()
ChatFrameMenuButton:Hide()
GeneralDockManager:Hide()
FriendsMicroButton:Hide()
else
ChatFrame1:Show()
ChatFrame3:Show()
ChatFrame1ButtonFrame:Show()
ChatFrame3ButtonFrame:Show()
ChatFrameMenuButton:Show()
GeneralDockManager:Show()
FriendsMicroButton:Show()
end