ESOUI SVN UltimateUIHider

[/] [branches/] [UUI_1.5/] [UltimateUIHider.lua] - Blame information for rev 19

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 SilentShanx-14440
UltimateUIHider = {}
2 SilentShanx-14440
UltimateUIHider.name = "UltimateUIHider"
3 16 SilentShanx-14440
UltimateUIHider.version = 1.0
4 2 SilentShanx-14440
 
5 SilentShanx-14440
UltimateUIHider.default = {
6 SilentShanx-14440
    isInterfaceEventHandler = 0,
7 SilentShanx-14440
    UltimateUIHider_isUIHidden = false,
8 16 SilentShanx-14440
 
9 2 SilentShanx-14440
    defaultInteractableGlow = GetSetting(SETTING_TYPE_IN_WORLD, IN_WORLD_UI_SETTING_INTERACTABLE_GLOW_ENABLED),
10 SilentShanx-14440
    defaultTargetGlow = GetSetting(SETTING_TYPE_IN_WORLD, IN_WORLD_UI_SETTING_TARGET_GLOW_ENABLED),
11 16 SilentShanx-14440
    defaultQuestBestowerIndicator = GetSetting(SETTING_TYPE_UI, UI_SETTING_SHOW_QUEST_BESTOWER_INDICATORS),
12 2 SilentShanx-14440
    defaultGroupIndicators = GetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_GROUP_INDICATORS),
13 SilentShanx-14440
    defaultFollowIndicator = GetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_FOLLOWER_INDICATORS),
14 SilentShanx-14440
    defaultAllianceIndicators = GetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_ALLIANCE_INDICATORS),
15 SilentShanx-14440
    defaultResurrectIndicator = GetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_RESURRECT_INDICATORS),
16 SilentShanx-14440
    defaultAllHealthBars = GetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_ALL_HEALTHBARS),
17 SilentShanx-14440
    defaultAllNamePlates = GetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_ALL_NAMEPLATES)
18 SilentShanx-14440
}
19 SilentShanx-14440
 
20 SilentShanx-14440
function UltimateUIHider.setSettingsFromFile()
21 SilentShanx-14440
    SetSetting(SETTING_TYPE_IN_WORLD, IN_WORLD_UI_SETTING_INTERACTABLE_GLOW_ENABLED, UltimateUIHider.savedVariables.defaultInteractableGlow)
22 SilentShanx-14440
    SetSetting(SETTING_TYPE_IN_WORLD, IN_WORLD_UI_SETTING_TARGET_GLOW_ENABLED, UltimateUIHider.savedVariables.defaultTargetGlow)
23 SilentShanx-14440
 
24 SilentShanx-14440
    SetSetting(SETTING_TYPE_UI, UI_SETTING_SHOW_QUEST_BESTOWER_INDICATORS, UltimateUIHider.savedVariables.defaultQuestBestowerIndicator)
25 16 SilentShanx-14440
 
26 2 SilentShanx-14440
    SetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_GROUP_INDICATORS, UltimateUIHider.savedVariables.defaultGroupIndicators)
27 SilentShanx-14440
    SetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_FOLLOWER_INDICATORS, UltimateUIHider.savedVariables.defaultFollowIndicator)
28 SilentShanx-14440
    SetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_ALLIANCE_INDICATORS, UltimateUIHider.savedVariables.defaultAllianceIndicators)
29 SilentShanx-14440
    SetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_RESURRECT_INDICATORS, UltimateUIHider.savedVariables.defaultResurrectIndicator)
30 SilentShanx-14440
    SetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_ALL_HEALTHBARS, UltimateUIHider.savedVariables.defaultAllHealthBars)
31 SilentShanx-14440
    SetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_ALL_NAMEPLATES, UltimateUIHider.savedVariables.defaultAllNamePlates)
32 SilentShanx-14440
end
33 SilentShanx-14440
 
34 SilentShanx-14440
function UltimateUIHider.saveSettingsToFile()
35 16 SilentShanx-14440
  if UltimateUIHider.savedVariables.UltimateUIHider_isUIHidden == false then
36 SilentShanx-14440
    UltimateUIHider.savedVariables.defaultInteractableGlow = GetSetting(SETTING_TYPE_IN_WORLD, IN_WORLD_UI_SETTING_INTERACTABLE_GLOW_ENABLED)
37 SilentShanx-14440
    UltimateUIHider.savedVariables.defaultTargetGlow = GetSetting(SETTING_TYPE_IN_WORLD, IN_WORLD_UI_SETTING_TARGET_GLOW_ENABLED)
38 SilentShanx-14440
 
39 SilentShanx-14440
    UltimateUIHider.savedVariables.defaultQuestBestowerIndicator = GetSetting(SETTING_TYPE_UI, UI_SETTING_SHOW_QUEST_BESTOWER_INDICATORS)
40 SilentShanx-14440
 
41 SilentShanx-14440
    UltimateUIHider.savedVariables.defaultGroupIndicators = GetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_GROUP_INDICATORS)
42 SilentShanx-14440
    UltimateUIHider.savedVariables.defaultFollowIndicator = GetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_FOLLOWER_INDICATORS)
43 SilentShanx-14440
    UltimateUIHider.savedVariables.defaultAllianceIndicators = GetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_ALLIANCE_INDICATORS)
44 SilentShanx-14440
    UltimateUIHider.savedVariables.defaultResurrectIndicator = GetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_RESURRECT_INDICATORS)
45 SilentShanx-14440
    UltimateUIHider.savedVariables.defaultAllHealthBars = GetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_ALL_HEALTHBARS)
46 SilentShanx-14440
    UltimateUIHider.savedVariables.defaultAllNamePlates = GetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_ALL_NAMEPLATES)
47 SilentShanx-14440
  end
48 2 SilentShanx-14440
end
49 SilentShanx-14440
 
50 SilentShanx-14440
function UltimateUIHider.interfaceEventHandlerToggle()
51 16 SilentShanx-14440
  if UltimateUIHider.savedVariables.isInterfaceEventHandler == 1 then
52 SilentShanx-14440
    EVENT_MANAGER:UnregisterForEvent(UltimateUIHider.name, EVENT_INTERFACE_SETTING_CHANGED)
53 SilentShanx-14440
  else
54 SilentShanx-14440
   EVENT_MANAGER:RegisterForEvent(UltimateUIHider.name, EVENT_INTERFACE_SETTING_CHANGED, UltimateUIHider.saveSettingsToFile)
55 SilentShanx-14440
  end
56 2 SilentShanx-14440
end
57 SilentShanx-14440
 
58 SilentShanx-14440
function UltimateUIHider.turnOffUI()
59 SilentShanx-14440
    SetSetting(SETTING_TYPE_IN_WORLD, IN_WORLD_UI_SETTING_INTERACTABLE_GLOW_ENABLED, 0)
60 SilentShanx-14440
    SetSetting(SETTING_TYPE_IN_WORLD, IN_WORLD_UI_SETTING_TARGET_GLOW_ENABLED, 0)
61 16 SilentShanx-14440
 
62 2 SilentShanx-14440
    SetSetting(SETTING_TYPE_UI, UI_SETTING_SHOW_QUEST_BESTOWER_INDICATORS, 0)
63 16 SilentShanx-14440
 
64 2 SilentShanx-14440
    SetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_GROUP_INDICATORS, 0)
65 SilentShanx-14440
    SetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_FOLLOWER_INDICATORS, 0)
66 SilentShanx-14440
    SetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_ALLIANCE_INDICATORS, 0)
67 SilentShanx-14440
    SetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_RESURRECT_INDICATORS, 0)
68 SilentShanx-14440
    SetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_ALL_HEALTHBARS, 0)
69 SilentShanx-14440
    SetSetting(SETTING_TYPE_NAMEPLATES, NAMEPLATE_TYPE_ALL_NAMEPLATES, 0)
70 SilentShanx-14440
end
71 SilentShanx-14440
 
72 SilentShanx-14440
--Toggle UI on an off.
73 SilentShanx-14440
--Toggle 1: Turns everything off.
74 SilentShanx-14440
--Toggle 2: Sets user preferred settings and toggles the default ui back on.
75 SilentShanx-14440
function UltimateUIHider.UltimateUIHiderToggler()
76 16 SilentShanx-14440
  if not UltimateUIHider.savedVariables.UltimateUIHider_isUIHidden then
77 SilentShanx-14440
    UltimateUIHider.interfaceEventHandlerToggle()
78 SilentShanx-14440
    UltimateUIHider.turnOffUI()
79 SilentShanx-14440
    ToggleShowIngameGui()
80 SilentShanx-14440
    SetGameCameraUIMode(false)
81 SilentShanx-14440
    SetFloatingMarkerGlobalAlpha(0)
82 SilentShanx-14440
    UltimateUIHider.savedVariables.UltimateUIHider_isUIHidden = true
83 SilentShanx-14440
 
84 SilentShanx-14440
  else
85 SilentShanx-14440
    UltimateUIHider.setSettingsFromFile()
86 SilentShanx-14440
    ToggleShowIngameGui()
87 SilentShanx-14440
    SetGameCameraUIMode(true)
88 SilentShanx-14440
    SetFloatingMarkerGlobalAlpha(100)
89 SilentShanx-14440
    UltimateUIHider.savedVariables.UltimateUIHider_isUIHidden = false
90 SilentShanx-14440
    UltimateUIHider.interfaceEventHandlerToggle()
91 SilentShanx-14440
  end
92 2 SilentShanx-14440
end
93 SilentShanx-14440
 
94 SilentShanx-14440
--Initialize settings/get default settings
95 SilentShanx-14440
function UltimateUIHider:Initialize()
96 16 SilentShanx-14440
  --Our saved variables file. Needs to be in the initializer.
97 SilentShanx-14440
  UltimateUIHider.savedVariables = ZO_SavedVars:New("UltimateUIHiderSavedVariables", UltimateUIHider.version, nil, UltimateUIHider.default)
98 SilentShanx-14440
 
99 SilentShanx-14440
  --Handles logic to store user preferred settings. (prevents errors if logged out while UI is hidden)
100 SilentShanx-14440
  if UltimateUIHider.savedVariables.UltimateUIHider_isUIHidden == true then
101 SilentShanx-14440
    UltimateUIHider.setSettingsFromFile()
102 SilentShanx-14440
    UltimateUIHider.savedVariables.UltimateUIHider_isUIHidden = false
103 SilentShanx-14440
  else
104 SilentShanx-14440
    UltimateUIHider.saveSettingsToFile()
105 SilentShanx-14440
    UltimateUIHider.savedVariables.UltimateUIHider_isUIHidden = false
106 SilentShanx-14440
  end
107 SilentShanx-14440
   --turn on the event listener for on interface change
108 SilentShanx-14440
   UltimateUIHider.savedVariables.isInterfaceEventHandler = 0
109 SilentShanx-14440
   UltimateUIHider.interfaceEventHandlerToggle()
110 SilentShanx-14440
   EVENT_MANAGER:UnregisterForEvent(UltimateUIHider.name, EVENT_ADD_ON_LOADED)
111 2 SilentShanx-14440
end
112 SilentShanx-14440
 
113 SilentShanx-14440
--Function to call the initializer when this specific addon is loaded.
114 SilentShanx-14440
function UltimateUIHider.OnAddOnLoaded(event, addonName)
115 16 SilentShanx-14440
  if addonName == UltimateUIHider.name then
116 SilentShanx-14440
    UltimateUIHider:Initialize()
117 SilentShanx-14440
  end
118 2 SilentShanx-14440
end
119 SilentShanx-14440
 
120 SilentShanx-14440
--Events
121 SilentShanx-14440
EVENT_MANAGER:RegisterForEvent(UltimateUIHider.name, EVENT_ADD_ON_LOADED, UltimateUIHider.OnAddOnLoaded)
122 SilentShanx-14440
 
123 SilentShanx-14440
--Slash commands
124 SilentShanx-14440
SLASH_COMMANDS["/hideui"] = UltimateUIHider.UltimateUIHiderToggler