diff --git a/LeoAltholic.lua b/LeoAltholic.lua index bfe6582..b5e3015 100644 --- a/LeoAltholic.lua +++ b/LeoAltholic.lua @@ -2,7 +2,9 @@ LeoAltholic = {} LeoAltholic.name = "LeoAltholic" LeoAltholic.displayName = "Leo's Altholic" -LeoAltholic.version = "0.9.5" +LeoAltholic.version = "0.9.6" +LeoAltholic.chatPrefix = "|c39B027" .. LeoAltholic.name .. "|r: " +LeoAltholic.timerQueue = {} LeoAltholic.maxTraits = select(3,GetSmithingResearchLineInfo(1,1)) LeoAltholic.jewelryMaxTraits = select(3,GetSmithingResearchLineInfo(7,1)) @@ -15,46 +17,44 @@ function LeoAltholic.loadPlayerDataPart(skillType, baseElem) end local numSkillLines = GetNumSkillLines(skillType) for i = 1, numSkillLines do - local name, rank, discovered, skillLineId, advised, unlockText = GetSkillLineInfo(skillType,i) + local name, rank, discovered, lineId, advised, unlockText = GetSkillLineInfo(skillType,i) if name == nil then name = i; end if discovered then - baseElem[name] = {} - local baseElemTable = baseElem[name] - local numAbilities = GetNumSkillAbilities(skillType, i) + baseElem[i] = {} + local baseElemTable = baseElem[i] + local qty = GetNumSkillAbilities(skillType, i) baseElemTable.name = name baseElemTable.id = i - baseElemTable.numAbilities = numAbilities + baseElemTable.qty = qty baseElemTable.rank = rank - baseElemTable.skillLineId = skillLineId - LeoAltholic.loadPlayerTradeDetails( name, baseElem, baseElemTable, skillType, i, numAbilities ) + baseElemTable.lineId = lineId + + baseElemTable.list = {} + + for aj = 1, qty do + local name2, icon, earnedRank, passive, ultimate, purchased, progressionIndex = GetSkillAbilityInfo(skillType, i, aj) + local currentUpgradeLevel, maxUpgradeLevel = GetSkillAbilityUpgradeInfo(skillType, i, aj) + --if type(currentUpgradeLevel) == "number" and currentUpgradeLevel > 0 then + if rank >= earnedRank then + local _, _, nextUpgradeEarnedRank = GetSkillAbilityNextUpgradeInfo(skillType, i, aj) + local plainName = zo_strformat(SI_ABILITY_NAME, name2) + name2 = ZO_Skills_GenerateAbilityName(SI_ABILITY_NAME_AND_UPGRADE_LEVELS, name2, currentUpgradeLevel, maxUpgradeLevel, progressionIndex) + baseElemTable.list[aj] = {} + local selL = baseElemTable.list[aj] + selL.plainName = plainName + selL.name = name2 + selL.earnedRank = earnedRank or 0 + selL.level = currentUpgradeLevel + selL.maxLevel = maxUpgradeLevel + selL.nextUpgradeEarnedRank = nextUpgradeEarnedRank + end + end end end end -function LeoAltholic.loadPlayerTradeDetails(parentName, parentTableElem, tradeTableElem, skillType, i, numAbilities ) - parentTableElem[parentName].list = {} - local selElemSubTable = parentTableElem[parentName].list - local skillIndex = i - for aj = 1, numAbilities do - local name, icon, earnedRank, passive, ultimate, purchased, progressionIndex = GetSkillAbilityInfo(skillType, i, aj) - local currentUpgradeLevel, maxUpgradeLevel = GetSkillAbilityUpgradeInfo(skillType, skillIndex, aj) - local _, _, nextUpgradeEarnedRank = GetSkillAbilityNextUpgradeInfo(skillType, skillIndex, aj) - local plainName = zo_strformat(SI_ABILITY_NAME, name) - name = ZO_Skills_GenerateAbilityName(SI_ABILITY_NAME_AND_UPGRADE_LEVELS, name, currentUpgradeLevel, maxUpgradeLevel, progressionIndex) - selElemSubTable[plainName] = {} - local selL = selElemSubTable[plainName] - selL.plainName = plainName - selL.name = name - selL.order = aj - selL.earnedRank = earnedRank - selL.currentUpgradeLevel = currentUpgradeLevel - selL.maxUpgradeLevel = maxUpgradeLevel - selL.nextUpgradeEarnedRank = nextUpgradeEarnedRank - end -end - function LeoAltholic.InitCharsList() if LeoAltholic.savedVariables.CharList == nil then LeoAltholic.savedVariables.CharList = {} end @@ -76,6 +76,25 @@ function LeoAltholic.InitCharsList() end end + for _, char in pairs(LeoAltholic.GetCharacters()) do + if char.research[craftName] ~= nil then + research = {} + for _,craft in pairs(LeoAltholic.craftResearch) do + local craftName = GetCraftingSkillName(craft) + char.research[craft] = GetBonus(craft) + for line = 1, GetNumSmithingResearchLines(craft) do + local lineName = GetSmithingResearchLineInfo(craft, line) + char.research[craft][line] = {} + for trait = 1, LeoAltholic.maxTraits do + local traitType = GetSmithingResearchLineTraitInfo(craft, line, trait) + local traitName = GetString('SI_ITEMTRAITTYPE',traitType) + char.research[craft][line][trait] = char.research[craftName][lineName][traitName] + end + end + end + end + end + LeoAltholic.CharName = GetUnitName("player") LeoAltholic.CharNum = 0 local char = LeoAltholic.savedVariables.CharList[LeoAltholic.CharName] or { @@ -182,21 +201,7 @@ function LeoAltholic.InitCharsList() local skillType = SKILL_TYPE_ARMOR char.skills.armor = {} local baseElem = char.skills.armor - local numSkillLines = GetNumSkillLines(skillType) - for i = 1, numSkillLines do - local name, rank, discovered, skillLineId, advised, unlockText = GetSkillLineInfo(skillType,i) - if name == nil then - name = i; - end - baseElem[name] = {} - local baseElemTable = baseElem[name] - local numAbilities = GetNumSkillAbilities(skillType, i) - baseElemTable.name = name - baseElemTable.id = i - baseElemTable.numAbilities = numAbilities - baseElemTable.rank = rank - baseElemTable.skillLineId = skillLineId - end + LeoAltholic.loadPlayerDataPart(skillType,baseElem) -- skillType = SKILL_TYPE_WORLD @@ -236,63 +241,48 @@ function LeoAltholic.InitCharsList() skillType = SKILL_TYPE_TRADESKILL char.skills.craft = {} - local baseTableElem = char.skills.craft - numSkillLines = GetNumSkillLines(skillType) - for i = 1, numSkillLines do - local name, rank, discovered, skillLineId, advised, unlockText = GetSkillLineInfo(skillType,i) - if name == nil then - name = i; - end - baseTableElem[name] = {} - local selElemTable = baseTableElem[name] - local numAbilities = GetNumSkillAbilities(skillType, i) - selElemTable.name = name - selElemTable.id = i - selElemTable.numAbilities = numAbilities - selElemTable.rank = rank - selElemTable.skillLineId = skillLineId - LeoAltholic.loadPlayerTradeDetails( name, baseTableElem, selElemTable, skillType, i, numAbilities ) - end + baseElem = char.skills.craft + LeoAltholic.loadPlayerDataPart(skillType,baseElem) local function GetBonus(craft) - local skillType, skillId = GetCraftingSkillLineIndices(craft) - local _, rank = GetSkillLineInfo(skillType,skillId) + local skillType0, skillId = GetCraftingSkillLineIndices(craft) + local _, rank = GetSkillLineInfo(skillType0,skillId) return {rank = rank, max = GetMaxSimultaneousSmithingResearch(craft) or 1} end char.research = {} for _,craft in pairs(LeoAltholic.craftResearch) do - local craftName = GetCraftingSkillName(craft) - char.research[craftName] = GetBonus(craft) + --local craftName = GetCraftingSkillName(craft) + char.research[craft] = GetBonus(craft) for line = 1, GetNumSmithingResearchLines(craft) do - local lineName = GetSmithingResearchLineInfo(craft, line) - char.research[craftName][lineName] = {} + --local lineName = GetSmithingResearchLineInfo(craft, line) + char.research[craft][line] = {} for trait = 1, LeoAltholic.maxTraits do local traitType = GetSmithingResearchLineTraitInfo(craft, line, trait) - local traitName = GetString('SI_ITEMTRAITTYPE',traitType) - if not char.research[craftName][lineName][traitName] then - char.research[craftName][lineName][traitName] = {} + --local traitName = GetString('SI_ITEMTRAITTYPE',traitType) + if not char.research[craft][line][trait] then + char.research[craft][line][trait] = {} end end end end for _,craft in pairs(LeoAltholic.craftResearch) do - local craftName = GetCraftingSkillName(craft) + --local craftName = GetCraftingSkillName(craft) for line = 1, GetNumSmithingResearchLines(craft) do - local lineName = GetSmithingResearchLineInfo(craft, line) + --local lineName = GetSmithingResearchLineInfo(craft, line) for trait = 1, LeoAltholic.maxTraits do local traitType, _, known = GetSmithingResearchLineTraitInfo(craft, line, trait) - local traitName = GetString('SI_ITEMTRAITTYPE',traitType) + --local traitName = GetString('SI_ITEMTRAITTYPE',traitType) if known == false then local _,remaining = GetSmithingResearchLineTraitTimes(craft,line,trait) if remaining and remaining > 0 then - char.research[craftName][lineName][traitName] = remaining + GetTimeStamp() + char.research[craft][line][trait] = remaining + GetTimeStamp() else - char.research[craftName][lineName][traitName] = false + char.research[craft][line][trait] = false end else - char.research[craftName][lineName][traitName] = true + char.research[craft][line][trait] = true end end end @@ -307,7 +297,6 @@ function LeoAltholic.InitCharsList() end for i = 1, GetNumChampionDisciplines() do - local dispName = GetChampionDisciplineName(i) local attribute = GetChampionDisciplineAttribute(i) char.champion[attribute].disciplines[i] = { spent = GetNumPointsSpentInChampionDiscipline(i), @@ -315,8 +304,13 @@ function LeoAltholic.InitCharsList() } char.champion[attribute].spent = char.champion[attribute].spent + char.champion[attribute].disciplines[i].spent for j = 1, GetNumChampionDisciplineSkills(i) do --- local skillName = GetChampionSkillName(i, j) - char.champion[attribute].disciplines[i].skills[j] = GetNumPointsSpentOnChampionSkill(i, j) + --local dispName = GetChampionDisciplineName(i) + --local skillName = GetChampionSkillName(i, j) + if WillChampionSkillBeUnlocked(i, j) then + char.champion[attribute].disciplines[i].skills[j] = true + else + char.champion[attribute].disciplines[i].skills[j] = GetNumPointsSpentOnChampionSkill(i, j) + end end end @@ -335,6 +329,14 @@ function LeoAltholic.InitCharsList() char.inventory.telvar = GetCarriedCurrencyAmount(CURT_TELVAR_STONES) char.inventory.writVoucher = GetCarriedCurrencyAmount(CURT_WRIT_VOUCHERS) + --if not bag then bag = SHARED_INVENTORY:GenerateFullSlotData(nil,BAG_WORN,BAG_BACKPACK,BAG_BANK,BAG_SUBSCRIBER_BANK,BAG_VIRTUAL) end + local bag = SHARED_INVENTORY:GenerateFullSlotData(nil,BAG_WORN,BAG_BACKPACK) + char.inventory[BAG_WORN] = {} + char.inventory[BAG_BACKPACK] = {} + for _, data in pairs(bag) do + char.inventory[data.bagId][data.slotIndex] = GetItemLink(data.bagId, data.slotIndex) + end + if char.stats == nil then char.stats = {} end LeoAltholic.savedVariables.CharList[LeoAltholic.CharName] = char @@ -365,7 +367,61 @@ function LeoAltholic.GetCharacters() return playerLines end +function LeoAltholic.ProcessQueue() + for x,data in pairs(LeoAltholic.timerQueue) do + if GetDiffBetweenTimeStamps(data.time, GetTimeStamp()) <= 0 then + d(LeoAltholic.chatPrefix .. data.info) + table.remove(LeoAltholic.timerQueue, x) + end + end +end + +function LeoAltholic.GetTimer() + LeoAltholic.timerQueue = {} + local crafts = {CRAFTING_TYPE_BLACKSMITHING,CRAFTING_TYPE_CLOTHIER,CRAFTING_TYPE_WOODWORKING,CRAFTING_TYPE_JEWELRYCRAFTING} + for _, char in pairs(LeoAltholic.GetCharacters()) do + if GetDiffBetweenTimeStamps(char.attributes.riding.time - GetTimeStamp()) < 0 then + local data = { + id = '$M' .. char.bio.name, + info = zo_strformat('<<C:1>> has finished a mount training.', char.bio.name), + time = char.attributes.riding.time + } + table.insert(LeoAltholic.timerQueue, data) + end + for _,craft in pairs(crafts) do + local craftName = GetCraftingSkillName(craft) + for line = 1, GetNumSmithingResearchLines(craft) do + local lineName, lineIcon = GetSmithingResearchLineInfo(craft, line) + for trait = 1, LeoAltholic.maxTraits do + local traitType = GetSmithingResearchLineTraitInfo(craft, line, trait) + local traitName = GetString('SI_ITEMTRAITTYPE',traitType) + local traitData = char.research[craft][line][trait] or false + if type(traitData) == 'number' then + local data = { + id = '$R' .. char.bio.name..craft..line..trait, + info = zo_strformat( + '<<C:1>> has finished a research: |c00FF00<<C:2>> <<C:3>>|r.', + char.bio.name, + GetString('SI_ITEMTRAITTYPE',traitType), + lineName + ), + time = traitData + } + if GetDiffBetweenTimeStamps(traitData - GetTimeStamp()) < 0 then + d(LeoAltholic.chatPrefix .. data.info) + else + table.insert(LeoAltholic.timerQueue, data) + end + end + end + end + end + end +end + function LeoAltholic:OnUpdate() + LeoAltholic.ProcessQueue() + if LeoAltholic:isHidden() then return end @@ -410,13 +466,13 @@ function LeoAltholic.formatNumber(amount) end function LeoAltholic.Initialize() - LeoAltholic.savedVariables = ZO_SavedVars:NewAccountWide("LeoAltholicSavedVariables", 1) + LeoAltholic.savedVariables = ZO_SavedVars:NewAccountWide("LeoAltholicSavedVariables", 2) local LibFeedback = LibStub:GetLibrary("LibFeedback") local showButton, feedbackWindow = LibFeedback:initializeFeedbackWindow(LeoAltholic, LeoAltholic.name,LeoAltholicWindow, "@LeandroSilva", {TOPRIGHT, LeoAltholicWindow, TOPRIGHT,-50,3}, - {0,500,1000,10000}, + {0,1000,10000,"https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=Y9KM4PZU2UZ6A"}, "If you found a bug, have a request or a suggestion, or simply wish to donate, send a mail.") LeoAltholic.feedback = feedbackWindow @@ -425,6 +481,7 @@ function LeoAltholic.Initialize() LeoAltholic.InitCharsList() LeoAltholic.InitializeCharacterFrames() LeoAltholic.DisplayCharacterFrames() + LeoAltholic.GetTimer() SLASH_COMMANDS["/rr"] = function(cmd) ReloadUI() @@ -466,7 +523,6 @@ end --SCENE_MANAGER:RegisterTopLevel(LeoAltholicWindow, false) EVENT_MANAGER:RegisterForEvent(LeoAltholic.name, EVENT_ADD_ON_LOADED, LeoAltholic.OnAddOnLoaded) EVENT_MANAGER:RegisterForEvent(LeoAltholic.name, EVENT_PLAYER_DEACTIVATED, LeoAltholic.OnPlayerDeactivated) -EVENT_MANAGER:RegisterForUpdate(LeoAltholic.name, 5000, function(...) LeoAltholic:OnUpdate(...) end) +EVENT_MANAGER:RegisterForUpdate(LeoAltholic.name, 5000, function() LeoAltholic.OnUpdate() end) EVENT_MANAGER:RegisterForEvent(LeoAltholic.name, EVENT_NEW_MOVEMENT_IN_UI_MODE, LeoAltholic.NewMovementInUIMode) CHAMPION_PERKS_SCENE:RegisterCallback('StateChange', LeoAltholic.OnChampionPerksSceneStateChange) - diff --git a/LeoAltholic.txt b/LeoAltholic.txt index bdf2057..8bd5cc6 100644 --- a/LeoAltholic.txt +++ b/LeoAltholic.txt @@ -1,12 +1,9 @@ ## Title: Leo's Altholic ## APIVersion: 100024 -## Version: 0.9.5 +## Version: 0.9.6 ## Author: |c39B027@LeandroSilva|r ## SavedVariables: LeoAltholicSavedVariables -## OptionalDependsOn: LibFeedback - -Libs/LibStub/LibStub.lua -Libs/LibFeedback/feedback.lua +## DependsOn: LibStub LibFeedback LeoAltholic.xml LeoAltholic.lua diff --git a/LeoAltholic.xml b/LeoAltholic.xml index 0323a77..cfa5e3e 100644 --- a/LeoAltholic.xml +++ b/LeoAltholic.xml @@ -1,5 +1,6 @@ <GuiXml> <Controls> + <TopLevelControl name="LeoAltholicWindow" mouseEnabled="true" movable="true" hidden="true" clampedToScreen="true"> <Dimensions x="900" y="700" /> <Anchor point="TOP" relativeTo="GuiRoot" relativePoint="CENTER" offsetY="100" /> @@ -227,5 +228,659 @@ </Controls> </TopLevelControl> + <Control name="LeoAltholicBioRowTemplate" virtual="true" horizontalAlignment="LEFT" verticalAlignment="CENTER"> + <Dimensions x="880" y="105"/> + <Controls> + <Backdrop name="$(parent)BG" centerColor="222222" edgeColor="444444" tier="LOW"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="2" offsetY="2"/> + <Dimensions x="880" y="105"/> + <Edge edgeSize="1"/> + </Backdrop> + + <Label name="$(parent)Alliance" mouseEnabled="true" font="ZoFontWinH3" normalColor="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="CENTER" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="10" offsetY="10"/> + <Dimensions x="60" y="75"/> + <OnMouseEnter> ZO_Tooltips_ShowTextTooltip(self, RIGHT, self.data) </OnMouseEnter> + <OnMouseExit> ZO_Tooltips_HideTextTooltip() </OnMouseExit> + </Label> + + <Label name="$(parent)Name" mouseEnabled="true" font="ZoFontWinH3" normalColor="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="80" offsetY="20"/> + <Dimensions x="180" y="30"/> + </Label> + + <Label name="$(parent)RaceClass" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="80" offsetY="50"/> + <Dimensions x="450" y="30"/> + </Label> + + <Label name="$(parent)LevelLabel" text="Level" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="250" offsetY="4"/> + <Dimensions x="80" y="35"/> + </Label> + + <Label name="$(parent)Level" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="340" offsetY="4"/> + <Dimensions x="50" y="35"/> + </Label> + + <Label name="$(parent)AllianceRankLabel" text="Rank" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="250" offsetY="34"/> + <Dimensions x="80" y="35"/> + </Label> + + <Label name="$(parent)AllianceRank" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="340" offsetY="34"/> + <Dimensions x="150" y="35"/> + </Label> + + <Label name="$(parent)BountyLabel" text="Bounty" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="250" offsetY="64"/> + <Dimensions x="80" y="35"/> + </Label> + + <Label name="$(parent)Bounty" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="340" offsetY="64"/> + <Dimensions x="150" y="35"/> + </Label> + + <Label name="$(parent)AttributePointsLabel" text="Attribute Points" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="460" offsetY="4"/> + <Dimensions x="150" y="35"/> + </Label> + + <Label name="$(parent)AttributePoints" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="620" offsetY="4"/> + <Dimensions x="50" y="35"/> + </Label> + + <Label name="$(parent)PlayedLabel" text="Played" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="460" offsetY="34"/> + <Dimensions x="150" y="35"/> + </Label> + + <Label name="$(parent)Played" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="620" offsetY="34"/> + <Dimensions x="100" y="35"/> + </Label> + + <Label name="$(parent)RidingLabel" text="Riding" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="460" offsetY="64"/> + <Dimensions x="150" y="35"/> + </Label> + + <Label name="$(parent)Riding" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="620" offsetY="64"/> + <Dimensions x="400" y="35"/> + </Label> + </Controls> + </Control> + + <Control name="LeoAltholicStatsRowTemplate" virtual="true" horizontalAlignment="LEFT" verticalAlignment="CENTER"> + <Dimensions x="880" y="105"/> + <Controls> + <Backdrop name="$(parent)BG" centerColor="222222" edgeColor="444444" tier="LOW"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="2" offsetY="2"/> + <Dimensions x="880" y="105"/> + <Edge edgeSize="1"/> + </Backdrop> + + <Label name="$(parent)Alliance" mouseEnabled="true" font="ZoFontWinH3" normalColor="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="CENTER" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="10" offsetY="10"/> + <Dimensions x="60" y="75"/> + <OnMouseEnter> ZO_Tooltips_ShowTextTooltip(self, RIGHT, self.data) </OnMouseEnter> + <OnMouseExit> ZO_Tooltips_HideTextTooltip() </OnMouseExit> + </Label> + + <Label name="$(parent)Name" mouseEnabled="true" font="ZoFontWinH3" normalColor="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="80" offsetY="20"/> + <Dimensions x="180" y="30"/> + </Label> + + <Label name="$(parent)RaceClass" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="80" offsetY="50"/> + <Dimensions x="450" y="30"/> + </Label> + + <Label name="$(parent)AttributePointsLabel" text="Points" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="280" offsetY="4"/> + <Dimensions x="80" y="35"/> + </Label> + + <Label name="$(parent)AttributePoints" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="370" offsetY="4"/> + <Dimensions x="100" y="35"/> + </Label> + + <Label name="$(parent)MaxAttributesLabel" text="Maximum" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="280" offsetY="34"/> + <Dimensions x="80" y="35"/> + </Label> + + <Label name="$(parent)MaxAttributes" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="370" offsetY="34"/> + <Dimensions x="150" y="35"/> + </Label> + + <Label name="$(parent)RecoveryAttributesLabel" text="Recovery" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="280" offsetY="64"/> + <Dimensions x="80" y="35"/> + </Label> + + <Label name="$(parent)RecoveryAttributes" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="370" offsetY="64"/> + <Dimensions x="150" y="35"/> + </Label> + + <Label name="$(parent)SpellPointsLabel" text="Spell Crit" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="490" offsetY="4"/> + <Dimensions x="150" y="35"/> + </Label> + + <Label name="$(parent)SpellPoints" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="650" offsetY="4"/> + <Dimensions x="50" y="35"/> + </Label> + + <Label name="$(parent)WeaponPointsLabel" text="Weapon Crit" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="490" offsetY="34"/> + <Dimensions x="150" y="35"/> + </Label> + + <Label name="$(parent)WeaponPoints" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="650" offsetY="34"/> + <Dimensions x="100" y="35"/> + </Label> + + </Controls> + </Control> + + <Control name="LeoAltholicSkillsRowTemplate" virtual="true" horizontalAlignment="LEFT" verticalAlignment="CENTER"> + <Dimensions x="880" y="105"/> + <Controls> + <Backdrop name="$(parent)BG" centerColor="222222" edgeColor="444444" tier="LOW"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="2" offsetY="2"/> + <Dimensions x="880" y="105"/> + <Edge edgeSize="1"/> + </Backdrop> + + <Label name="$(parent)Alliance" mouseEnabled="true" font="ZoFontWinH3" normalColor="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="CENTER" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="10" offsetY="10"/> + <Dimensions x="60" y="75"/> + <OnMouseEnter> ZO_Tooltips_ShowTextTooltip(self, RIGHT, self.data) </OnMouseEnter> + <OnMouseExit> ZO_Tooltips_HideTextTooltip() </OnMouseExit> + </Label> + + <Label name="$(parent)Name" mouseEnabled="true" font="ZoFontWinH3" normalColor="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="80" offsetY="20"/> + <Dimensions x="180" y="30"/> + </Label> + + <Label name="$(parent)RaceClass" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="80" offsetY="50"/> + <Dimensions x="450" y="30"/> + </Label> + + </Controls> + </Control> + + <Control name="LeoAltholicChampionRowTemplate" virtual="true" horizontalAlignment="LEFT" verticalAlignment="CENTER"> + <Dimensions x="880" y="135"/> + <Controls> + <Backdrop name="$(parent)BG" centerColor="222222" edgeColor="444444" tier="LOW"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="2" offsetY="2"/> + <Dimensions x="880" y="135"/> + <Edge edgeSize="1"/> + </Backdrop> + + <Label name="$(parent)Alliance" mouseEnabled="true" font="ZoFontWinH3" normalColor="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="CENTER" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="10" offsetY="10"/> + <Dimensions x="60" y="75"/> + <OnMouseEnter> ZO_Tooltips_ShowTextTooltip(self, RIGHT, self.data) </OnMouseEnter> + <OnMouseExit> ZO_Tooltips_HideTextTooltip() </OnMouseExit> + </Label> + + <Label name="$(parent)Name" mouseEnabled="true" font="ZoFontWinH3" normalColor="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="80" offsetY="20"/> + <Dimensions x="180" y="30"/> + </Label> + + <Label name="$(parent)RaceClass" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="80" offsetY="50"/> + <Dimensions x="450" y="30"/> + </Label> + + <Button name="$(parent)HealthIcon" mouseEnabled="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="375" offsetY="10"/> + <Dimensions x="25" y="25"/> + <Controls> + <Texture name="$(parent)Texture" textureFile="esoui/art/tutorial/champion_points_health_icon.dds"> + <Dimensions y="25" x="25"/> + <Anchor point="128"/> + </Texture> + </Controls> + </Button> + <Label name="$(parent)Attribute1" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="410" offsetY="4"/> + <Dimensions x="100" y="35"/> + </Label> + <Label name="$(parent)Disc2Label" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="300" offsetY="34"/> + <Dimensions x="100" y="35"/> + </Label> + <Label name="$(parent)Disc2" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="410" offsetY="34"/> + <Dimensions x="100" y="35"/> + </Label> + <Label name="$(parent)Disc3Label" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="300" offsetY="64"/> + <Dimensions x="100" y="35"/> + </Label> + <Label name="$(parent)Disc3" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="410" offsetY="64"/> + <Dimensions x="100" y="35"/> + </Label> + <Label name="$(parent)Disc4Label" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="300" offsetY="94"/> + <Dimensions x="100" y="35"/> + </Label> + <Label name="$(parent)Disc4" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="410" offsetY="94"/> + <Dimensions x="100" y="35"/> + </Label> + + <Button name="$(parent)MagickaIcon" mouseEnabled="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="575" offsetY="10"/> + <Dimensions x="25" y="25"/> + <Controls> + <Texture name="$(parent)Texture" textureFile="esoui/art/tutorial/champion_points_magicka_icon.dds"> + <Dimensions y="25" x="25"/> + <Anchor point="128"/> + </Texture> + </Controls> + </Button> + <Label name="$(parent)Attribute2" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="610" offsetY="4"/> + <Dimensions x="120" y="35"/> + </Label> + <Label name="$(parent)Disc5Label" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="480" offsetY="34"/> + <Dimensions x="120" y="35"/> + </Label> + <Label name="$(parent)Disc5" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="610" offsetY="34"/> + <Dimensions x="120" y="35"/> + </Label> + <Label name="$(parent)Disc6Label" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="480" offsetY="64"/> + <Dimensions x="120" y="35"/> + </Label> + <Label name="$(parent)Disc6" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="610" offsetY="64"/> + <Dimensions x="120" y="35"/> + </Label> + <Label name="$(parent)Disc7Label" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="480" offsetY="94"/> + <Dimensions x="120" y="35"/> + </Label> + <Label name="$(parent)Disc7" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="610" offsetY="94"/> + <Dimensions x="120" y="35"/> + </Label> + + <Button name="$(parent)StaminaIcon" mouseEnabled="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="775" offsetY="10"/> + <Dimensions x="25" y="25"/> + <Controls> + <Texture name="$(parent)Texture" textureFile="esoui/art/tutorial/champion_points_stamina_icon.dds"> + <Dimensions y="25" x="25"/> + <Anchor point="128"/> + </Texture> + </Controls> + </Button> + <Label name="$(parent)Attribute3" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="810" offsetY="4"/> + <Dimensions x="100" y="35"/> + </Label> + <Label name="$(parent)Disc1Label" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="700" offsetY="34"/> + <Dimensions x="100" y="35"/> + </Label> + <Label name="$(parent)Disc1" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="810" offsetY="34"/> + <Dimensions x="100" y="35"/> + </Label> + <Label name="$(parent)Disc8Label" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="700" offsetY="64"/> + <Dimensions x="100" y="35"/> + </Label> + <Label name="$(parent)Disc8" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="810" offsetY="64"/> + <Dimensions x="100" y="35"/> + </Label> + <Label name="$(parent)Disc9Label" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="700" offsetY="94"/> + <Dimensions x="100" y="35"/> + </Label> + <Label name="$(parent)Disc9" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="810" offsetY="94"/> + <Dimensions x="100" y="35"/> + </Label> + + </Controls> + </Control> + + <Control name="LeoAltholicInventoryRowTemplate" virtual="true" horizontalAlignment="LEFT" verticalAlignment="CENTER"> + <Dimensions x="880" y="105"/> + <Controls> + <Backdrop name="$(parent)BG" centerColor="222222" edgeColor="444444" tier="LOW"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="2" offsetY="2"/> + <Dimensions x="880" y="105"/> + <Edge edgeSize="1"/> + </Backdrop> + + <Label name="$(parent)Alliance" mouseEnabled="true" font="ZoFontWinH3" normalColor="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="CENTER" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="10" offsetY="10"/> + <Dimensions x="60" y="75"/> + <OnMouseEnter> ZO_Tooltips_ShowTextTooltip(self, RIGHT, self.data) </OnMouseEnter> + <OnMouseExit> ZO_Tooltips_HideTextTooltip() </OnMouseExit> + </Label> + + <Label name="$(parent)Name" mouseEnabled="true" font="ZoFontWinH3" normalColor="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="80" offsetY="20"/> + <Dimensions x="180" y="30"/> + </Label> + + <Label name="$(parent)RaceClass" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="80" offsetY="50"/> + <Dimensions x="450" y="30"/> + </Label> + + <Texture name="$(parent)BagIcon" textureFile="esoui/art/mainmenu/menubar_inventory_up.dds"> + <Dimensions y="30" x="30"/> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="305" offsetY="4"/> + </Texture> + <Label name="$(parent)Bag" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="340" offsetY="4"/> + <Dimensions x="50" y="35"/> + <OnMouseEnter> ZO_Tooltips_ShowTextTooltip(self, RIGHT, "Bag space") </OnMouseEnter> + <OnMouseExit> ZO_Tooltips_HideTextTooltip() </OnMouseExit> + </Label> + + <Texture name="$(parent)SoulGemsIcon" textureFile="esoui/art/currency/currency_seedcrystal_16.dds"> + <Dimensions y="20" x="20"/> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="310" offsetY="40"/> + </Texture> + + <Label name="$(parent)SoulGems" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="340" offsetY="34"/> + <Dimensions x="150" y="35"/> + <OnMouseEnter> ZO_Tooltips_ShowTextTooltip(self, RIGHT, "Soul Gems") </OnMouseEnter> + <OnMouseExit> ZO_Tooltips_HideTextTooltip() </OnMouseExit> + </Label> + + <Texture name="$(parent)GoldIcon" textureFile="esoui/art/currency/currency_gold.dds"> + <Dimensions y="20" x="20"/> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="310" offsetY="70"/> + </Texture> + <Label name="$(parent)Gold" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="340" offsetY="64"/> + <Dimensions x="150" y="35"/> + <OnMouseEnter> ZO_Tooltips_ShowTextTooltip(self, RIGHT, "Gold") </OnMouseEnter> + <OnMouseExit> ZO_Tooltips_HideTextTooltip() </OnMouseExit> + </Label> + + <Texture name="$(parent)APIcon" textureFile="esoui/art/currency/alliancepoints.dds"> + <Dimensions y="20" x="20"/> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="450" offsetY="10"/> + </Texture> + <Label name="$(parent)AP" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="480" offsetY="4"/> + <Dimensions x="50" y="35"/> + <OnMouseEnter> ZO_Tooltips_ShowTextTooltip(self, RIGHT, "Alliance Points") </OnMouseEnter> + <OnMouseExit> ZO_Tooltips_HideTextTooltip() </OnMouseExit> + </Label> + + <Texture name="$(parent)TelVarIcon" textureFile="esoui/art/currency/currency_telvar.dds"> + <Dimensions y="25" x="25"/> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="450" offsetY="36"/> + </Texture> + <Label name="$(parent)TelVar" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="480" offsetY="34"/> + <Dimensions x="100" y="35"/> + <OnMouseEnter> ZO_Tooltips_ShowTextTooltip(self, RIGHT, "Tel Var") </OnMouseEnter> + <OnMouseExit> ZO_Tooltips_HideTextTooltip() </OnMouseExit> + </Label> + + <Texture name="$(parent)WritIcon" textureFile="esoui/art/currency/currency_writvoucher.dds"> + <Dimensions y="25" x="25"/> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="450" offsetY="66"/> + </Texture> + <Label name="$(parent)Writ" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="480" offsetY="64"/> + <Dimensions x="100" y="35"/> + <OnMouseEnter> ZO_Tooltips_ShowTextTooltip(self, RIGHT, "Writ Vouchers") </OnMouseEnter> + <OnMouseExit> ZO_Tooltips_HideTextTooltip() </OnMouseExit> + </Label> + + <Button name="$(parent)ListButton" clickSound="Click"> + <Anchor point="TOPRIGHT" relativeTo="$(parent)" relativePoint="TOPRIGHT" offsetX="-10" offsetY="35"/> + <Dimensions x="40" y="40"/> + <OnClicked> LeoAltholic.ShowInventoryUI() </OnClicked> + <Textures normal="/esoui/art/buttons/large_rightarrow_up.dds" mouseOver="/esoui/art/buttons/large_rightarrow_over.dds" /> + </Button> + </Controls> + </Control> + + <Control name="LeoAltholicResearchRowTemplate" virtual="true" horizontalAlignment="LEFT" verticalAlignment="CENTER"> + <Dimensions x="880" y="260"/> + <Controls> + <Backdrop name="$(parent)BG" centerColor="222222" edgeColor="444444" tier="LOW"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="2" offsetY="2"/> + <Dimensions x="880" y="260"/> + <Edge edgeSize="1"/> + </Backdrop> + + <Label name="$(parent)Alliance" mouseEnabled="true" font="ZoFontWinH3" normalColor="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="CENTER" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="10" offsetY="10"/> + <Dimensions x="60" y="75"/> + <OnMouseEnter> ZO_Tooltips_ShowTextTooltip(self, RIGHT, self.data) </OnMouseEnter> + <OnMouseExit> ZO_Tooltips_HideTextTooltip() </OnMouseExit> + </Label> + + <Label name="$(parent)Name" mouseEnabled="true" font="ZoFontWinH3" normalColor="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="80" offsetY="20"/> + <Dimensions x="180" y="30"/> + </Label> + + <Label name="$(parent)RaceClass" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="80" offsetY="50"/> + <Dimensions x="450" y="30"/> + </Label> + + <Label name="$(parent)Craft1Label" text="Level" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="250" offsetY="4"/> + <Dimensions x="150" y="35"/> + </Label> + <Label name="$(parent)Craft1Label1" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="250" offsetY="34"/> + <Dimensions x="150" y="35"/> + </Label> + <Label name="$(parent)Craft1Label2" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="250" offsetY="64"/> + <Dimensions x="150" y="35"/> + </Label> + <Label name="$(parent)Craft1Label3" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="250" offsetY="94"/> + <Dimensions x="150" y="35"/> + </Label> + <Label name="$(parent)Craft1" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="410" offsetY="4"/> + <Dimensions x="50" y="35"/> + </Label> + <Label name="$(parent)Craft1Timer1" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="410" offsetY="34"/> + <Dimensions x="50" y="35"/> + </Label> + <Label name="$(parent)Craft1Timer2" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="410" offsetY="64"/> + <Dimensions x="50" y="35"/> + </Label> + <Label name="$(parent)Craft1Timer3" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="410" offsetY="94"/> + <Dimensions x="50" y="35"/> + </Label> + + <Label name="$(parent)Craft2Label" text="Level" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="250" offsetY="124"/> + <Dimensions x="150" y="35"/> + </Label> + <Label name="$(parent)Craft2Label1" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="250" offsetY="154"/> + <Dimensions x="150" y="35"/> + </Label> + <Label name="$(parent)Craft2Label2" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="250" offsetY="184"/> + <Dimensions x="150" y="35"/> + </Label> + <Label name="$(parent)Craft2Label3" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="250" offsetY="214"/> + <Dimensions x="150" y="35"/> + </Label> + <Label name="$(parent)Craft2" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="410" offsetY="124"/> + <Dimensions x="50" y="35"/> + </Label> + <Label name="$(parent)Craft2Timer1" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="410" offsetY="154"/> + <Dimensions x="50" y="35"/> + </Label> + <Label name="$(parent)Craft2Timer2" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="410" offsetY="184"/> + <Dimensions x="50" y="35"/> + </Label> + <Label name="$(parent)Craft2Timer3" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="410" offsetY="214"/> + <Dimensions x="50" y="35"/> + </Label> + + <Label name="$(parent)Craft6Label" text="Level" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="590" offsetY="4"/> + <Dimensions x="150" y="35"/> + </Label> + <Label name="$(parent)Craft6Label1" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="590" offsetY="34"/> + <Dimensions x="150" y="35"/> + </Label> + <Label name="$(parent)Craft6Label2" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="590" offsetY="64"/> + <Dimensions x="150" y="35"/> + </Label> + <Label name="$(parent)Craft6Label3" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="590" offsetY="94"/> + <Dimensions x="150" y="35"/> + </Label> + <Label name="$(parent)Craft6" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="750" offsetY="4"/> + <Dimensions x="50" y="35"/> + </Label> + <Label name="$(parent)Craft6Timer1" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="750" offsetY="34"/> + <Dimensions x="50" y="35"/> + </Label> + <Label name="$(parent)Craft6Timer2" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="750" offsetY="64"/> + <Dimensions x="50" y="35"/> + </Label> + <Label name="$(parent)Craft6Timer3" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="750" offsetY="94"/> + <Dimensions x="50" y="35"/> + </Label> + + <Label name="$(parent)Craft7Label" text="Level" mouseEnabled="true" font="ZoFontGame" color="E8DFAF" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="590" offsetY="124"/> + <Dimensions x="150" y="35"/> + </Label> + <Label name="$(parent)Craft7Label1" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="590" offsetY="154"/> + <Dimensions x="150" y="35"/> + </Label> + <Label name="$(parent)Craft7Label2" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="590" offsetY="184"/> + <Dimensions x="150" y="35"/> + </Label> + <Label name="$(parent)Craft7Label3" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="RIGHT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="590" offsetY="214"/> + <Dimensions x="150" y="35"/> + </Label> + <Label name="$(parent)Craft7" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="750" offsetY="124"/> + <Dimensions x="50" y="35"/> + </Label> + <Label name="$(parent)Craft7Timer1" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="750" offsetY="154"/> + <Dimensions x="150" y="35"/> + </Label> + <Label name="$(parent)Craft7Timer2" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="750" offsetY="184"/> + <Dimensions x="150" y="35"/> + </Label> + <Label name="$(parent)Craft7Timer3" mouseEnabled="true" font="ZoFontWinH4" color="ffffff" inheritAlpha="true" verticalAlignment="CENTER" horizontalAlignment="LEFT" resizeToFitDescendents="false"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="750" offsetY="214"/> + <Dimensions x="150" y="35"/> + </Label> + + </Controls> + </Control> + + <TopLevelControl name="LeoAltholicInventoryWindow" mouseEnabled="true" movable="false" hidden="true" clampedToScreen="true"> + <Dimensions x="300" y="700" /> + <Anchor point="TOPLEFT" relativeTo="LeoAltholicWindow" relativePoint="TOPRIGHT" offsetX="4" offsetY="0" /> + + <Controls> + <Backdrop name="$(parent)BG" centerColor="000000" edgeColor="222222"> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" relativeTo="$(parent)"/> + <Dimensions x="300" y="700"/> + <Edge edgeSize="1"/> + </Backdrop> + <Backdrop name="$(parent)HeaderBG" centerColor="111111" edgeColor="222222"> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" relativeTo="$(parent)" offsetX="8" offsetY="5"/> + <Dimensions x="292" y="40"/> + <Edge edgeSize="1"/> + </Backdrop> + <Label name="$(parent)Title" text="Inventory List" color="39B027" font="ZoFontWinH3" wrapMode="ELLIPSIS" + verticalAlignment="CENTER" mouseEnabled="true"> + <Anchor point="TOPLEFT" relativeTo="$(parent)" relativePoint="TOPLEFT" offsetX="16" offsetY="10"/> + </Label> + <Button name="$(parent)Close" clickSound="Click"> + <Anchor point="TOPLEFT" relativePoint="TOPRIGHT" relativeTo="$(parent)BG" offsetX="-45" offsetY="4"/> + <Dimensions x="40" y="40"/> + <OnClicked> LeoAltholic.HideInventoryUI() </OnClicked> + <Controls> + <Backdrop name="$(parent)BG" centerColor="101010" edgeColor="202020"> + <AnchorFill/> + <Edge edgeSize="1"/> + </Backdrop> + <Texture name="$(parent)Texture" textureFile="esoui/art/buttons/decline_up.dds"> + <Dimensions y="25" x="25"/> + <Anchor point="128"/> + </Texture> + </Controls> + </Button> + + <Backdrop name="$(parent)List" tier="1" centerColor="000000" edgeColor="202020" hidden="true" clampedToScreen="true" movable="false" mouseEnabled="true" inherits="ZO_ScrollContainerBase"> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" relativeTo="LeoAltholicWindow" offsetX="0" offsetY="52"/> + <Dimensions x="200" y="450"/> + <Edge edgeSize="1"/> + <OnInitialized>ZO_Scroll_Initialize(self)</OnInitialized> + <Controls> + <Control name="$(parent)ScrollChild"> + <OnInitialized>self:SetParent(self:GetParent():GetNamedChild("Scroll"));self:SetAnchor(3,nil,3,0,0)</OnInitialized> + </Control> + </Controls> + </Backdrop> + </Controls> + </TopLevelControl> + </Controls> </GuiXml> diff --git a/LeoAltholicUI.lua b/LeoAltholicUI.lua index a198efb..06e4152 100644 --- a/LeoAltholicUI.lua +++ b/LeoAltholicUI.lua @@ -21,6 +21,16 @@ function LeoAltholic.RestorePosition() LeoAltholicWindow:SetAnchor(TOPLEFT, GuiRoot, TOPLEFT, left, top) end +function LeoAltholic.ShowInventoryUI() + SCENE_MANAGER:ShowTopLevel(LeoAltholicInventoryWindow) + LeoAltholicInventoryWindow:SetHidden(false) +end + +function LeoAltholic.HideInventoryUI() + SCENE_MANAGER:HideTopLevel(LeoAltholicInventoryWindow) + LeoAltholicInventoryWindow:SetHidden(true) +end + function LeoAltholic.ShowUI() SCENE_MANAGER:ShowTopLevel(LeoAltholicWindow) LeoAltholicWindow:SetHidden(false) @@ -50,583 +60,54 @@ function LeoAltholic.ShowTab(tab) control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindow' .. panel .. 'Panel') control:SetHidden(true) end - local control = WINDOW_MANAGER:GetControlByName("LeoAltholicWindow" .. tab .. "Panel") + control = WINDOW_MANAGER:GetControlByName("LeoAltholicWindow" .. tab .. "Panel") control:SetHidden(false) end function LeoAltholic.InitializeCharacterFrames() for x,char in pairs(LeoAltholic.GetCharacters()) do - local backgroundColor = {0.13,0.13,0.13,1 } - if char.bio.name == LeoAltholic.CharName then - backgroundColor = {0.18,0.18,0.18,1 } - end - - local frame = WINDOW_MANAGER:CreateControl('LeoAltholicWindowBioPanel_CharacterFrame'..x,LeoAltholicWindowBioPanelScrollChild,CT_CONTROL) - frame:SetAnchor(TOPLEFT,LeoAltholicWindowBioPanelScrollChild,TOPLEFT,0,(x - 1) * 109) - - local bg = WINDOW_MANAGER:CreateControl('LeoAltholicWindowBioPanel_Character'..x..'BG',frame,CT_BACKDROP) - bg:SetAnchor(TOPLEFT,frame,TOPLEFT,2,2) - bg:SetDimensions(898,105) - bg:SetCenterColor(unpack(backgroundColor)) - bg:SetEdgeColor(0.22,0.22,0.22,1) - bg:SetEdgeTexture('',1,1,1) - - local btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowBioPanel_Character'..x..'Alliance',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,10,35) - btn:SetDimensions(60,90) - btn:SetHorizontalAlignment(1) - btn:SetVerticalAlignment(0) - btn:SetFont('ZoFontWinH3') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowBioPanel_Character'..x..'Name',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,80,20) - btn:SetDimensions(180,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH3') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowBioPanel_Character'..x..'RaceClass',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,80,50) - btn:SetDimensions(450,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowBioPanel_Character'..x..'LevelLabel',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,250,4) - btn:SetDimensions(80,35) - btn:SetHorizontalAlignment(2) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - btn:SetText("Level: ") - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowBioPanel_Character'..x..'Level',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,340,4) - btn:SetDimensions(50,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowBioPanel_Character'..x..'AllianceRankLabel',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,250,34) - btn:SetDimensions(80,35) - btn:SetHorizontalAlignment(2) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - btn:SetText("Rank: ") - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowBioPanel_Character'..x..'AllianceRank',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,340,34) - btn:SetDimensions(150,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowBioPanel_Character'..x..'BountyLabel',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,250,64) - btn:SetDimensions(80,35) - btn:SetHorizontalAlignment(2) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - btn:SetText("Bounty: ") - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowBioPanel_Character'..x..'Bounty',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,340,64) - btn:SetDimensions(150,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowBioPanel_Character'..x..'AttributePointsLabel',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,500,4) - btn:SetDimensions(150,35) - btn:SetHorizontalAlignment(2) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - btn:SetText("Attribute Points: ") - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowBioPanel_Character'..x..'AttributePoints',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,660,4) - btn:SetDimensions(50,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowBioPanel_Character'..x..'PlayedLabel',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,500,34) - btn:SetDimensions(150,35) - btn:SetHorizontalAlignment(2) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - btn:SetText("Played: ") - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowBioPanel_Character'..x..'Played',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,660,34) - btn:SetDimensions(100,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowBioPanel_Character'..x..'RidingLabel',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,500,64) - btn:SetDimensions(150,35) - btn:SetHorizontalAlignment(2) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - btn:SetText("Riding: ") - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowBioPanel_Character'..x..'Riding',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,660,64) - btn:SetDimensions(400,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(1,1,1,1) - - frame = WINDOW_MANAGER:CreateControl('LeoAltholicWindowStatsPanel_CharacterFrame'..x,LeoAltholicWindowStatsPanelScrollChild,CT_CONTROL) - frame:SetAnchor(TOPLEFT,LeoAltholicWindowStatsPanelScrollChild,TOPLEFT,0,(x - 1) * 109) - - bg = WINDOW_MANAGER:CreateControl('LeoAltholicWindowStatsPanel_Character'..x..'BG',frame,CT_BACKDROP) - bg:SetAnchor(TOPLEFT,frame,TOPLEFT,2,2) - bg:SetDimensions(898,105) - bg:SetCenterColor(unpack(backgroundColor)) - bg:SetEdgeColor(0.22,0.22,0.22,1) - bg:SetEdgeTexture('',1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowStatsPanel_Character'..x..'Alliance',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,10,35) - btn:SetDimensions(60,90) - btn:SetHorizontalAlignment(1) - btn:SetVerticalAlignment(0) - btn:SetFont('ZoFontWinH3') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowStatsPanel_Character'..x..'Name',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,80,20) - btn:SetDimensions(180,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH3') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowStatsPanel_Character'..x..'RaceClass',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,80,50) - btn:SetDimensions(450,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowStatsPanel_Character'..x..'AttributePointsLabel',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,240,4) - btn:SetDimensions(150,35) - btn:SetHorizontalAlignment(2) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - btn:SetText("Points: ") - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowStatsPanel_Character'..x..'AttributePoints',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,400,4) - btn:SetDimensions(100,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowStatsPanel_Character'..x..'MaxAttributesLabel',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,240,34) - btn:SetDimensions(150,35) - btn:SetHorizontalAlignment(2) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - btn:SetText("Maximum: ") - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowStatsPanel_Character'..x..'MaxAttributes',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,400,34) - btn:SetDimensions(150,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowStatsPanel_Character'..x..'RecoveryAttributesLabel',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,240,64) - btn:SetDimensions(150,35) - btn:SetHorizontalAlignment(2) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - btn:SetText("Recovery: ") - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowStatsPanel_Character'..x..'RecoveryAttributes',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,400,64) - btn:SetDimensions(150,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowStatsPanel_Character'..x..'SpellPointsLabel',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,540,4) - btn:SetDimensions(140,35) - btn:SetHorizontalAlignment(2) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - btn:SetText("Spell Crit: ") - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowStatsPanel_Character'..x..'SpellPoints',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,690,4) - btn:SetDimensions(100,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowStatsPanel_Character'..x..'WeaponPointsLabel',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,540,34) - btn:SetDimensions(140,35) - btn:SetHorizontalAlignment(2) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - btn:SetText("Weapon Crit: ") - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowStatsPanel_Character'..x..'WeaponPoints',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,690,34) - btn:SetDimensions(100,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(1,1,1,1) - - - frame = WINDOW_MANAGER:CreateControl('LeoAltholicWindowSkillsPanel_CharacterFrame'..x,LeoAltholicWindowSkillsPanelScrollChild,CT_CONTROL) - frame:SetAnchor(TOPLEFT,LeoAltholicWindowSkillsPanelScrollChild,TOPLEFT,0,(x - 1) * 109) - - bg = WINDOW_MANAGER:CreateControl('LeoAltholicWindowSkillsPanel_Character'..x..'BG',frame,CT_BACKDROP) - bg:SetAnchor(TOPLEFT,frame,TOPLEFT,2,2) - bg:SetDimensions(898,105) - bg:SetCenterColor(unpack(backgroundColor)) - bg:SetEdgeColor(0.22,0.22,0.22,1) - bg:SetEdgeTexture('',1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowSkillsPanel_Character'..x..'Alliance',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,10,35) - btn:SetDimensions(60,90) - btn:SetHorizontalAlignment(1) - btn:SetVerticalAlignment(0) - btn:SetFont('ZoFontWinH3') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowSkillsPanel_Character'..x..'Name',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,80,20) - btn:SetDimensions(180,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH3') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowSkillsPanel_Character'..x..'RaceClass',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,80,50) - btn:SetDimensions(450,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - - frame = WINDOW_MANAGER:CreateControl('LeoAltholicWindowChampionPanel_CharacterFrame'..x,LeoAltholicWindowChampionPanelScrollChild,CT_CONTROL) - frame:SetAnchor(TOPLEFT,LeoAltholicWindowChampionPanelScrollChild,TOPLEFT,0,(x - 1) * 139) - - bg = WINDOW_MANAGER:CreateControl('LeoAltholicWindowChampionPanel_Character'..x..'BG',frame,CT_BACKDROP) - bg:SetAnchor(TOPLEFT,frame,TOPLEFT,2,2) - bg:SetDimensions(898,135) - bg:SetCenterColor(unpack(backgroundColor)) - bg:SetEdgeColor(0.22,0.22,0.22,1) - bg:SetEdgeTexture('',1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowChampionPanel_Character'..x..'Alliance',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,10,35) - btn:SetDimensions(60,90) - btn:SetHorizontalAlignment(1) - btn:SetVerticalAlignment(0) - btn:SetFont('ZoFontWinH3') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowChampionPanel_Character'..x..'Name',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,80,20) - btn:SetDimensions(180,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH3') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowChampionPanel_Character'..x..'RaceClass',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,80,50) - btn:SetDimensions(450,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - - local col = {} - col[ATTRIBUTE_MAGICKA] = 240 - col[ATTRIBUTE_HEALTH] = 440 - col[ATTRIBUTE_STAMINA] = 640 - for _, attribute in ipairs({ATTRIBUTE_MAGICKA, ATTRIBUTE_HEALTH, ATTRIBUTE_STAMINA}) do - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowChampionPanel_Character'..x..attribute..'Label',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,col[attribute],4) - btn:SetDimensions(150,35) - btn:SetHorizontalAlignment(2) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - if attribute == ATTRIBUTE_MAGICKA then - btn:SetText("|t24:24:esoui/art/tutorial/champion_points_magicka_icon.dds|t") - elseif attribute == ATTRIBUTE_HEALTH then - btn:SetText("|t24:24:esoui/art/tutorial/champion_points_health_icon.dds|t") - elseif attribute == ATTRIBUTE_STAMINA then - btn:SetText("|t24:24:esoui/art/tutorial/champion_points_stamina_icon.dds|t") + for _,panel in ipairs(LeoAltholic.panelList) do + local sc = WINDOW_MANAGER:GetControlByName("LeoAltholicWindow"..panel.."PanelScrollChild") + local row = CreateControlFromVirtual("LeoAltholic"..panel.."Row" .. x, sc, "LeoAltholic"..panel.."RowTemplate") + row:SetHidden(false) + local anchorY = 109; + if panel == "Champion" then + anchorY = 139 + elseif panel == "Research" then + anchorY = 262 + end + row:SetAnchor(TOPLEFT,sc,TOPLEFT,0,(x - 1) * anchorY) + if char.bio.name == LeoAltholic.CharName then + local control = row:GetNamedChild("BG") + control:SetCenterColor(unpack({0.2,0.2,0.2,1 })) + control:SetEdgeColor(0.22,0.77,0.22,1) end - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowChampionPanel_Character'..x..attribute,frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,col[attribute] + 160,4) - btn:SetDimensions(100,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(1,1,1,1) - - local row = 34 - for i = 1, GetNumChampionDisciplines() do - local dAttribute = GetChampionDisciplineAttribute(i) - if dAttribute == attribute then + if panel == "Champion" then + for i = 1, GetNumChampionDisciplines() do local dispName = GetChampionDisciplineName(i) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowChampionPanel_Character'..x..i..'DiscLabel',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,col[attribute],row) - btn:SetDimensions(150,35) - btn:SetHorizontalAlignment(2) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - btn:SetText(dispName) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowChampionPanel_Character'..x..i..'Disc',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,col[attribute] + 160,row) - btn:SetDimensions(100,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(1,1,1,1) - - row = row + 30 + local dAttribute = GetChampionDisciplineAttribute(i) + local label = row:GetNamedChild("Disc"..i.."Label") + label:SetText(dispName) + label:SetHandler('OnMouseEnter', function(self) LeoAltholic.TooltipChampionSkill(self, true, x, dAttribute, i) end) + label:SetHandler('OnMouseExit', function(self) LeoAltholic.TooltipChampionSkill(self, false) end) + end + elseif panel == "Research" then + for _,craft in pairs(LeoAltholic.craftResearch) do + local label = row:GetNamedChild("Craft"..craft.."Label") + label:SetText(GetCraftingSkillName(craft)) end end end + --[[ - frame = WINDOW_MANAGER:CreateControl('LeoAltholicWindowInventoryPanel_CharacterFrame'..x,LeoAltholicWindowInventoryPanelScrollChild,CT_CONTROL) - frame:SetAnchor(TOPLEFT,LeoAltholicWindowInventoryPanelScrollChild,TOPLEFT,0,(x - 1) * 109) - - bg = WINDOW_MANAGER:CreateControl('LeoAltholicWindowInventoryPanel_Character'..x..'BG',frame,CT_BACKDROP) - bg:SetAnchor(TOPLEFT,frame,TOPLEFT,2,2) - bg:SetDimensions(898,105) - bg:SetCenterColor(unpack(backgroundColor)) - bg:SetEdgeColor(0.22,0.22,0.22,1) - bg:SetEdgeTexture('',1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowInventoryPanel_Character'..x..'Alliance',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,10,35) - btn:SetDimensions(60,90) - btn:SetHorizontalAlignment(1) - btn:SetVerticalAlignment(0) - btn:SetFont('ZoFontWinH3') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowInventoryPanel_Character'..x..'Name',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,80,20) - btn:SetDimensions(180,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH3') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowInventoryPanel_Character'..x..'RaceClass',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,80,50) - btn:SetDimensions(450,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowInventoryPanel_Character'..x..'BagLabel',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,250,4) - btn:SetDimensions(80,35) - btn:SetHorizontalAlignment(2) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - btn:SetText("|t30:30:esoui/art/mainmenu/menubar_inventory_up.dds|t") - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowInventoryPanel_Character'..x..'Bag',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,340,4) - btn:SetDimensions(80,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowInventoryPanel_Character'..x..'SoulGemsLabel',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,250,34) - btn:SetDimensions(80,35) - btn:SetHorizontalAlignment(2) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - btn:SetText("|t20:20:esoui/art/currency/currency_seedcrystal_16.dds|t") - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowInventoryPanel_Character'..x..'SoulGems',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,340,34) - btn:SetDimensions(80,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowInventoryPanel_Character'..x..'GoldLabel',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,250,64) - btn:SetDimensions(80,35) - btn:SetHorizontalAlignment(2) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - btn:SetText("|t20:20:esoui/art/currency/currency_gold.dds|t") - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowInventoryPanel_Character'..x..'Gold',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,340,64) - btn:SetDimensions(80,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowInventoryPanel_Character'..x..'APLabel',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,400,4) - btn:SetDimensions(80,35) - btn:SetHorizontalAlignment(2) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - btn:SetText("|t24:24:esoui/art/currency/alliancepoints.dds|t") - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowInventoryPanel_Character'..x..'AP',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,490,4) - btn:SetDimensions(80,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowInventoryPanel_Character'..x..'TelVarLabel',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,400,34) - btn:SetDimensions(80,35) - btn:SetHorizontalAlignment(2) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - btn:SetText("|t24:24:esoui/art/currency/currency_telvar.dds|t") - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowInventoryPanel_Character'..x..'TelVar',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,490,34) - btn:SetDimensions(80,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowInventoryPanel_Character'..x..'WritLabel',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,400,64) - btn:SetDimensions(80,35) - btn:SetHorizontalAlignment(2) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - btn:SetText("|t24:24:esoui/art/currency/currency_writvoucher.dds|t") - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowInventoryPanel_Character'..x..'Writ',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,490,64) - btn:SetDimensions(80,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(1,1,1,1) - - - frame = WINDOW_MANAGER:CreateControl('LeoAltholicWindowResearchPanel_CharacterFrame'..x,LeoAltholicWindowResearchPanelScrollChild,CT_CONTROL) frame:SetAnchor(TOPLEFT,LeoAltholicWindowResearchPanelScrollChild,TOPLEFT,0,(x - 1) * 259) - bg = WINDOW_MANAGER:CreateControl('LeoAltholicWindowResearchPanel_Character'..x..'BG',frame,CT_BACKDROP) - bg:SetAnchor(TOPLEFT,frame,TOPLEFT,2,2) - bg:SetDimensions(898,255) - bg:SetCenterColor(unpack(backgroundColor)) - bg:SetEdgeColor(0.22,0.22,0.22,1) - bg:SetEdgeTexture('',1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowResearchPanel_Character'..x..'Alliance',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,10,35) - btn:SetDimensions(60,90) - btn:SetHorizontalAlignment(1) - btn:SetVerticalAlignment(0) - btn:SetFont('ZoFontWinH3') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowResearchPanel_Character'..x..'Name',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,80,20) - btn:SetDimensions(180,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH3') - btn:SetNormalFontColor(1,1,1,1) - - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowResearchPanel_Character'..x..'RaceClass',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT,frame,TOPLEFT,80,50) - btn:SetDimensions(450,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - local crafts = {"Blacksmithing", "Clothing", "Woodworking", "Jewelry Crafting" } for index,craft in ipairs(crafts) do - local anchorX = 280 + ((1-(index%2)) * 330) - local anchorY = 4 + ((math.floor(index/3)) * 120) - btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowResearchPanel_Character'..x..craft..'Label',frame,CT_BUTTON) - btn:SetAnchor(TOPLEFT, frame, TOPLEFT, anchorX, anchorY) - btn:SetDimensions(150,35) - btn:SetHorizontalAlignment(0) - btn:SetVerticalAlignment(1) - btn:SetFont('ZoFontWinH4') - btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) - btn:SetText(craft) for i = 1, 3 do btn = WINDOW_MANAGER:CreateControl('LeoAltholicWindowResearchPanel_Character'..x..craft..i,frame,CT_BUTTON) @@ -655,98 +136,136 @@ function LeoAltholic.InitializeCharacterFrames() btn:SetNormalFontColor(ZO_NORMAL_TEXT:UnpackRGBA()) end + ]] end end function LeoAltholic.GetTime(seconds) if seconds and seconds > 0 then - seconds = tostring(ZO_FormatTime(seconds,TIME_FORMAT_STYLE_COLONS,TIME_FORMAT_PRECISION_SECONDS)) - local ts,endtime,y={},'',0 - for x in string.gmatch(seconds,'%d+') do ts[y] = x; y = y + 1; end - if y == 4 then - if tonumber(ts[1]) < 10 then ts[1] = '0'..ts[1] end - endtime = ts[0]..'d '..ts[1]..':'..ts[2]..'h' - end - if y == 3 then - if tonumber(ts[0]) < 10 then ts[0] = '0'..ts[0] end - endtime = ts[0]..':'..ts[1]..'h' + --seconds = tostring(ZO_FormatTime(seconds,TIME_FORMAT_STYLE_COLONS,TIME_FORMAT_PRECISION_SECONDS)) + local ss = seconds % 60 + local mm = math.floor(seconds / 60) + local hh = math.floor(mm / 60) + mm = mm % 60 + local dn = math.floor(hh / 24) + local result = '' + if dn > 0 then result = tostring(dn) .. "d " .. tostring (hh - (dn*24)) .. "h" + elseif hh > 0 then result = tostring (hh) .. "h " .. tostring (mm) .. "m" + elseif mm > 0 then result = mm .. "m " .. ss .. "s" end - if y == 2 then endtime = ts[0]..'min' end - return endtime + return result else return '|cFF4020finished|r' end end +function LeoAltholic.TooltipChampionSkill(control, visible, charId, attribute, discipline) + + if visible then + if not parent then parent = control end + + control.text = InformationTooltip + InitializeTooltip(control.text,control,2,1,0,8) + + local char = LeoAltholic.GetCharacters()[charId] + local added = false + for j = 1, GetNumChampionDisciplineSkills(discipline) do + local skillName = GetChampionSkillName(discipline, j) + local points = char.champion[attribute].disciplines[discipline].skills[j] + if type(points) == 'number' and points > 0 then + control.text:AddLine("|cE8DFAF" .. skillName .. "|r " .. points) + added = true + elseif points == true then + control.text:AddLine("|cE8DFAF" .. skillName .. "|r |c21A121unlocked|r") + added = true + end + end + if added then + control.text:SetHidden(false) + else + control.text:SetHidden(true) + end + else + ClearTooltip(control.text) + control.text:SetHidden(true) + control.text = nil + end +end + function LeoAltholic.DisplayCharacterFrames() local control for _,panel in ipairs(LeoAltholic.panelList) do control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindow' .. panel .. 'PanelScrollChild') control:SetHeight(#LeoAltholic.GetCharacters() * 110) end + control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowChampionPanelScrollChild') + control:SetHeight(#LeoAltholic.GetCharacters() * 140) control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowResearchPanelScrollChild') control:SetHeight(#LeoAltholic.GetCharacters() * 260) for x,char in pairs(LeoAltholic.GetCharacters()) do for _,panel in ipairs(LeoAltholic.panelList) do - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindow' .. panel .. 'Panel_Character'..x..'Alliance') + local row = WINDOW_MANAGER:GetControlByName('LeoAltholic' .. panel .. 'Row'..x) + + control = row:GetNamedChild("Alliance") local icon = ZO_GetAllianceIcon(char.bio.alliance.id) control:SetText("|cF1FF77|t50:90:" .. icon .. "|t|r ") - control:SetMouseEnabled(true) - control:SetHandler('OnMouseEnter', function(self) ZO_Tooltips_ShowTextTooltip(self, RIGHT, char.bio.alliance.name) end) - control:SetHandler("OnMouseExit", function () ZO_Tooltips_HideTextTooltip() end) + control.data = char.bio.alliance.name - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindow' .. panel .. 'Panel_Character'..x..'Name') + control = row:GetNamedChild("Name") control:SetText(char.bio.name) - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindow' .. panel .. 'Panel_Character'..x..'RaceClass') + control = row:GetNamedChild("RaceClass") control:SetText(char.bio.race .. " " .. char.bio.class) end - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowBioPanel_Character'..x..'Level') + local row = WINDOW_MANAGER:GetControlByName('LeoAltholicBioRow'..x) + + control = row:GetNamedChild("Level") if char.bio.isChampion then control:SetText("|t24:24:esoui/art/champion/champion_icon.dds|t" .. char.bio.championPoints) else control:SetText(char.bio.level) end - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowBioPanel_Character'..x..'AllianceRank') + control = row:GetNamedChild("AllianceRank") control:SetText(GetAvARankName(char.bio.gender, char.bio.alliance.rank)) - - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowBioPanel_Character'..x..'AttributePoints') + control = row:GetNamedChild("AttributePoints") control:SetText(char.attributes.unspent) - - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowBioPanel_Character'..x..'Played') + control = row:GetNamedChild("Played") control:SetText(LeoAltholic.GetTime(char.secondsPlayed)) - - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowBioPanel_Character'..x..'Bounty') + control = row:GetNamedChild("Bounty") control:SetText(char.bounty .. " |t14:14:esoui/art/currency/currency_gold.dds|t") local riding = '|t20:20:esoui/art/mounts/ridingskill_speed.dds|t ' .. char.attributes.riding.speed .. '%' .. ' |t20:20:esoui/art/mounts/ridingskill_stamina.dds|t ' .. char.attributes.riding.stamina .. ' |t20:20:esoui/art/mounts/ridingskill_capacity.dds|t ' .. char.attributes.riding.capacity .. ' |t22:22:esoui/art/miscellaneous/timer_32.dds|t ' .. LeoAltholic.GetTime(char.attributes.riding.time - GetTimeStamp()) - - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowBioPanel_Character'..x..'Riding') + control = row:GetNamedChild("Riding") control:SetText(riding) - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowStatsPanel_Character'..x..'AttributePoints') + + + row = WINDOW_MANAGER:GetControlByName('LeoAltholicStatsRow'..x) + + control = row:GetNamedChild("AttributePoints") control:SetText("|c596cfd" .. char.attributes.magicka.points .. "|r / |cCB110E" .. char.attributes.health.points .. "|r / |c21A121" .. char.attributes.stamina.points .. "|r") - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowStatsPanel_Character'..x..'MaxAttributes') + control = row:GetNamedChild("MaxAttributes") control:SetText("|c596cfd" .. char.attributes.magicka.max .. "|r / |cCB110E" .. char.attributes.health.max .. "|r / |c21A121" .. char.attributes.stamina.max .. "|r") - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowStatsPanel_Character'..x..'RecoveryAttributes') + control = row:GetNamedChild("RecoveryAttributes") control:SetText("|c596cfd" .. char.attributes.magicka.recovery .. "|r / |cCB110E" .. char.attributes.health.recovery .. "|r / |c21A121" .. char.attributes.stamina.recovery .. "|r") - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowStatsPanel_Character'..x..'SpellPoints') + control = row:GetNamedChild("SpellPoints") control:SetText(string.format("%.1f%%", char.attributes.spell.criticalChance)) - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowStatsPanel_Character'..x..'WeaponPoints') + control = row:GetNamedChild("WeaponPoints") control:SetText(string.format("%.1f%%", char.attributes.weapon.criticalChance)) + row = WINDOW_MANAGER:GetControlByName('LeoAltholicChampionRow'..x) for _, attribute in ipairs({ATTRIBUTE_MAGICKA, ATTRIBUTE_HEALTH, ATTRIBUTE_STAMINA}) do - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowChampionPanel_Character'..x..attribute) + control = row:GetNamedChild("Attribute" .. attribute) local total = char.champion[attribute].spent + char.champion[attribute].unspent local color = '|c21A121' if char.champion[attribute].unspent > 0 then @@ -754,57 +273,60 @@ function LeoAltholic.DisplayCharacterFrames() end control:SetText(color .. char.champion[attribute].spent .. '/' .. total .. '|r') end + for i = 1, GetNumChampionDisciplines() do local dAttribute = GetChampionDisciplineAttribute(i) - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowChampionPanel_Character'..x..i..'Disc') + control = row:GetNamedChild("Disc" .. i) control:SetText(char.champion[dAttribute].disciplines[i].spent) end + row = WINDOW_MANAGER:GetControlByName('LeoAltholicInventoryRow'..x) local color = '|c21A121' if char.inventory.free <= 25 then color = '|c596cfd' end if char.inventory.free <= 10 then color = '|cCB110E' end - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowInventoryPanel_Character'..x..'Bag') + control = row:GetNamedChild("Bag") control:SetText(color .. char.inventory.used .. "|r / " .. char.inventory.size) - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowInventoryPanel_Character'..x..'SoulGems') + control = row:GetNamedChild("SoulGems") control:SetText("|c21A121" .. char.inventory.soulGemFilled .. '|r / ' .. char.inventory.soulGemEmpty) - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowInventoryPanel_Character'..x..'Gold') + control = row:GetNamedChild("Gold") control:SetText(LeoAltholic.formatNumber(char.inventory.gold)) - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowInventoryPanel_Character'..x..'AP') + control = row:GetNamedChild("AP") control:SetText(LeoAltholic.formatNumber(char.inventory.ap)) - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowInventoryPanel_Character'..x..'TelVar') + control = row:GetNamedChild("TelVar") control:SetText(LeoAltholic.formatNumber(char.inventory.telvar)) - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowInventoryPanel_Character'..x..'Writ') + control = row:GetNamedChild("Writ") control:SetText(LeoAltholic.formatNumber(char.inventory.writVoucher)) + row = WINDOW_MANAGER:GetControlByName('LeoAltholicResearchRow'..x) for _,craft in pairs(LeoAltholic.craftResearch) do local i = 1 local researching = 0 - local craftName = GetCraftingSkillName(craft) for line = 1, GetNumSmithingResearchLines(craft) do local lineName, lineIcon = GetSmithingResearchLineInfo(craft, line) for trait = 1, LeoAltholic.maxTraits do local traitType = GetSmithingResearchLineTraitInfo(craft, line, trait) local traitName = GetString('SI_ITEMTRAITTYPE',traitType) - local traitData = char.research[craftName][lineName][traitName] + local traitData = char.research[craft][line][trait] if type(traitData) == 'number' then - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowResearchPanel_Character'..x..craftName..i) + control = row:GetNamedChild("Craft"..craft.."Label"..i) control:SetText(' |t28:28:'..lineIcon..'|t ' .. traitName) control:SetHandler('OnMouseEnter', function(self) ZO_Tooltips_ShowTextTooltip(self, TOP, lineName) end) control:SetHandler("OnMouseExit", function () ZO_Tooltips_HideTextTooltip() end) - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowResearchPanel_Character'..x..craftName..i.."Timer") + control = row:GetNamedChild("Craft"..craft.."Timer"..i) control:SetText(LeoAltholic.GetTime(traitData - GetTimeStamp())) i = i + 1 researching = researching + 1 end end end - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowResearchPanel_Character'..x..craftName..'Count') - local color = '|c21A121' - if researching < char.research[craftName].max then + control = row:GetNamedChild("Craft"..craft) + color = '|c21A121' + if researching < char.research[craft].max then color = '|cCB110E' end - control:SetText(color .. researching .. '/' .. char.research[craftName].max .. '|r') + control:SetText(color .. researching .. '/' .. char.research[craft].max .. '|r') end + end end @@ -820,20 +342,18 @@ function LeoAltholic:OnUpdate() ' |t20:20:esoui/art/mounts/ridingskill_stamina.dds|t ' .. char.attributes.riding.stamina .. ' |t20:20:esoui/art/mounts/ridingskill_capacity.dds|t ' .. char.attributes.riding.capacity .. ' |t22:22:esoui/art/miscellaneous/timer_32.dds|t ' .. LeoAltholic.GetTime(char.attributes.riding.time - GetTimeStamp()) - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowBioPanel_Character'..x..'Riding') + local row = WINDOW_MANAGER:GetControlByName('LeoAltholicBioRow'..x) + control = row:GetNamedChild('Riding') control:SetText(riding) + row = WINDOW_MANAGER:GetControlByName('LeoAltholicResearchRow'..x) for _,craft in pairs(LeoAltholic.craftResearch) do local i = 1 - local craftName = GetCraftingSkillName(craft) for line = 1, GetNumSmithingResearchLines(craft) do - local lineName, lineIcon = GetSmithingResearchLineInfo(craft, line) for trait = 1, LeoAltholic.maxTraits do - local traitType = GetSmithingResearchLineTraitInfo(craft, line, trait) - local traitName = GetString('SI_ITEMTRAITTYPE',traitType) - local traitData = char.research[craftName][lineName][traitName] + local traitData = char.research[craft][line][trait] if type(traitData) == 'number' then - control = WINDOW_MANAGER:GetControlByName('LeoAltholicWindowResearchPanel_Character'..x..craftName..i.."Timer") + control = row:GetNamedChild("Craft"..craft.."Timer"..i) control:SetText(LeoAltholic.GetTime(traitData - GetTimeStamp())) i = i + 1 end @@ -841,7 +361,6 @@ function LeoAltholic:OnUpdate() end end end - end ZO_CreateStringId('SI_BINDING_NAME_LEOALTHOLIC_TOGGLE_WINDOW', "Show/Hide Main Window") diff --git a/Libs/LibFeedback/LibFeedback.txt b/Libs/LibFeedback/LibFeedback.txt deleted file mode 100755 index 42cde9a..0000000 --- a/Libs/LibFeedback/LibFeedback.txt +++ /dev/null @@ -1,11 +0,0 @@ -## Title: LibFeedback -## Author: Dolgubon -## APIVersion: 100024 100025 -## Version: 1.1 -## Description: This is a library which allows Addon Authors to easily add a feedback window to their addon -## DependsOn: LibStub - -## This Add-On is not created by, affiliated with or sponsored by ZeniMax Media Inc. or its affiliates. The Elder Scrolls® and related logos are registered trademarks or trademarks of ZeniMax Media Inc. in the United States and/or other countries. All rights reserved. - -libs/LibStub.lua -feedback.lua diff --git a/Libs/LibFeedback/feedback.lua b/Libs/LibFeedback/feedback.lua deleted file mode 100755 index 127b173..0000000 --- a/Libs/LibFeedback/feedback.lua +++ /dev/null @@ -1,250 +0,0 @@ --- Modified by Dolgubon based off code from Master Merchant with permission --- Master Merchant was written by Dan Stone (aka @khaibit) / Chris Lasswell (aka @Philgo68) - ---[[ - -Use: - -local LibFeedback = LibStub:GetLibrary('LibFeedback') --- The button is returned so you can modify the button if needed --- ExampleAddonNameSpace.feedbackButton = LibFeedback:initializeFeedbackWindow( -ExampleAddonNameSpace, -- namespace of the addon -"Example Addon", -- The title string for the feedback window and the mails it sends -parentControl, -- The parent control to anchor the feedback button(s) + label(s) to -"@AddonAuthor", -- If this parameter is no table: [1st parameter] like desribed below: - -- The destination for feedback (0 gold attachment) and donation mails, valid for all servers - -- If this parameter is a table: - -- Example: { addonVars.addonAuthorDisplayNameEU, addonVars.addonAuthorDisplayNameNA, addonVars.addonAuthorDisplayNamePTS }, - -- [1st parameter]Addon author name or character name at the EU Megaserver - -- [2nd parameter]Addon author name or character name at the NA Megaserver - -- [3rd parameter]Addon author name or character name at the PTS (Testserver) -{TOPLEFT, owningWindow, TOPLEFT, x, y}, -- The position of the mail button icon. owningWindow: Parent control for the button. x and y: Integer values for the offsets -{0,5000,50000, "https://www.genericexampleurl.com/somemoregenericiness"} -- The button info: - -- Can theoretically do any number of options, it *should* handle them - -- If this parameter is no table: [1st parameter] like desribed below: - -- If 0: Will not attach any gold, and will say 'Send Note' - -- If non zero: Will auto attach that amount of gold - -- If URL: Will show a dialog box and ask the user if they want to go to the URL. - -- If this parameter is a table: - -- Example: [index]= {[1st parameter] [2nd parameter] [3rd parameter] }, - -- [1] = { 0, localization.feedbackSendNote, false }, -- Send ingame mail - -- [2] = { 10000, localization.feedbackSendGold, true }, -- Send 10000 gold - -- [3] = { addonVars.authorPortal, localization.feedbackOpenAddonAuthorWebsite, false }, -- Open URL - -- [4] = { addonVars.FAQwebsite, localization.feedbackOpenAddonFAQ, false } -- Open URL - -- [1st parameter]Integer. When >0: Gold value to send/Integer. Gold will only be send if 3rd parameter is true. / When Integer==0: Show the 2nd parameter string as button text and send ingame mail. / When String <> "": Show the 2nd parameter string as button text and open the URL from 1st parameter in Webbrowser - -- [2nd parameter]String to show as button text. - -- [3rd parameter]Boolean send gold. True: Send mail with attached gold value from 1st parameter/False: Send normal mail without gold attached - -"If you found a bug, have a request or a suggestion, or simply wish to donate, send a mail.", -- Will be displayed as a message below the title. -600, -- The default width of the feedback window. If more than 4 buttons this should be increased. -150 -- The default height of the feedback window -150, -- The default width of the feedback window's buttons -28 -- The default height of the feedback window's buttons -) -]] - - -local libLoaded -local LIB_NAME, VERSION = "LibFeedback", 1.1 -local LibFeedback, oldminor = LibStub:NewLibrary(LIB_NAME, VERSION) -if not LibFeedback then return end -LibFeedback.debug = false - -local function SendNote(self) - - local p = self.parent - if type(self.amount)=="string" then - RequestOpenUnsafeURL(self.amount) - else - p.parentControl:SetHidden(true) - p:SetHidden(true) - SCENE_MANAGER:Show('mailSend') - zo_callLater(function() - ZO_MailSendToField:SetText(p.mailDestination) - ZO_MailSendSubjectField:SetText(p.parentAddonName) - QueueMoneyAttachment(self.amount) - ZO_MailSendBodyField:TakeFocus() end, 200) - end -end - -local function createFeedbackButton(name, owningWindow, feedbackWindowButtonWidth, feedbackWindowButtonHeight) - local button = WINDOW_MANAGER:CreateControlFromVirtual(name, owningWindow, "ZO_DefaultButton") - local b = button - b:SetDimensions(feedbackWindowButtonWidth, feedbackWindowButtonHeight) - b:SetHandler("OnClicked",function()SendNote(b) end) - b:SetAnchor(BOTTOMLEFT,owningWindow, BOTTOMLEFT,5,5) - return button -end - -local function createShowFeedbackWindow(owningWindow) - local showButton = WINDOW_MANAGER:CreateControl(owningWindow:GetName().."ShowFeedbackWindowButton", owningWindow, CT_BUTTON) - local b = showButton - b:SetDimensions(34, 34) - b:SetNormalTexture("ESOUI/art/chatwindow/chat_mail_up.dds") - b:SetMouseOverTexture("ESOUI/art/chatwindow/chat_mail_over.dds") - b:SetHandler("OnClicked", function(self) self.feedbackWindow:ToggleHidden() end ) - return showButton -end - -local function createFeedbackWindow(owningWindow, messageText, feedbackWindowWidth, feedbackWindowHeight) - local feedbackWindow = WINDOW_MANAGER:CreateTopLevelWindow(owningWindow:GetName().."FeedbackWindow") - local c = feedbackWindow - c:SetDimensions(feedbackWindowWidth, feedbackWindowHeight) - c:SetMouseEnabled(true) - c:SetClampedToScreen(true) - c:SetMovable(true) - - WINDOW_MANAGER:CreateControlFromVirtual(c:GetName().."BG", c, "ZO_DefaultBackdrop"):SetAnchorFill(c) - local l = WINDOW_MANAGER:CreateControl(c:GetName().."Label", c, CT_LABEL) - l:SetFont("ZoFontGame") - l:SetAnchor(TOP, c,TOP0, 0, 5) - l:SetHorizontalAlignment(TEXT_ALIGN_CENTER) - l:SetColor(0.83, 0.76, 0.16) - local b = WINDOW_MANAGER:CreateControl(c:GetName().."Close", c, CT_BUTTON) - b:SetAnchor(CENTER, c, TOPRIGHT, -20, 20) - b:SetDimensions(48, 48) - b:SetNormalTexture("/esoui/art/hud/radialicon_cancel_up.dds") - b:SetMouseOverTexture("/esoui/art/hud/radialicon_cancel_over.dds") - b:SetHandler("OnClicked", function(self) self:GetParent():SetHidden(true) end) - local n = WINDOW_MANAGER:CreateControl(c:GetName().."Note", c, CT_LABEL) - n:SetAnchor(TOPLEFT, c, TOPLEFT, 10, 30) - n:SetDimensions(feedbackWindowWidth - 20, feedbackWindowHeight - 30) - n:SetText(messageText) - --n:SetAnchorFill() - n:SetColor(1, 1, 1) - n:SetFont("ZoFontGame") - n:SetHorizontalAlignment(TEXT_ALIGN_CENTER) - return feedbackWindow -end - -function LibFeedback:initializeFeedbackWindow(parentAddonNameSpace, parentAddonName, parentControl, mailDestination, mailButtonPosition, buttonInfo, messageText, feedbackWindowWidth, feedbackWindowHeight, feedbackWindowButtonWidth, feedbackWindowButtonHeight) - -- Create Default settings - if parentAddonNameSpace == nil or parentAddonNameSpace == "" then - d("|cFF0000[LibFeedback] - ERROR:|r Obligatory addon namespace is missing!") - return nil - end - if parentControl == nil or parentControl.GetName == nil then - d("|cFF0000[LibFeedback] - ERROR:|r Parent control not found for addon namespace: \"|cFFFFFF" .. tostring(parentAddonName) .. "|r\"") - return nil - end - - if mailButtonPosition == nil or mailButtonPosition[2] == nil then - d("|cFF0000[LibFeedback] - ERROR:|r Mail button data is missing for addon namespace: \"|cFFFFFF" .. tostring(parentAddonName) .. "|r\"") - return nil - end - feedbackWindowHeight = feedbackWindowHeight or 150 - feedbackWindowWidth = feedbackWindowWidth or 600 - feedbackWindowButtonWidth = feedbackWindowButtonWidth or 150 - feedbackWindowButtonHeight = feedbackWindowButtonHeight or 28 - - local feedbackWindow = createFeedbackWindow(parentControl, messageText, feedbackWindowWidth, feedbackWindowHeight) - parentAddonNameSpace.feedbackWindow = feedbackWindow - feedbackWindow.parentControl = parentControl - if type(mailDestination) == "table" then - --Get the current server and get the email address from the appropriate index of mailDestination[] then - --1: EU, 2: NA, 3: PTS - local mailAtServer = "" - local world = GetWorldName() - if world == 'PTS' then - mailAtServer = mailDestination[3] or mailDestination[1] or mailDestination[2] - elseif world == 'EU Megaserver' then - mailAtServer = mailDestination[1] - else - mailAtServer = mailDestination[2] - end - -- No destination sepcified for this server, so exit. - if not mailAtServer then - return - end - feedbackWindow.mailDestination = mailAtServer - else - feedbackWindow.mailDestination = mailDestination - end - feedbackWindow.parentAddonName = parentAddonName - - feedbackWindow:SetAnchor(TOPLEFT,parentControl, TOPLEFT, 0,0) - feedbackWindow:SetHidden(true) - - feedbackWindow:SetDimensions(math.max(#buttonInfo*feedbackWindowHeight, feedbackWindowWidth) , feedbackWindowHeight) - feedbackWindow:GetNamedChild("Label"):SetText(parentAddonName) - - local buttons = {} - for i = 1, #buttonInfo do - - buttons[#buttons+1] = createFeedbackButton(feedbackWindow:GetName().."Button"..#buttons, feedbackWindow, feedbackWindowButtonWidth, feedbackWindowButtonHeight) - buttons[i]:SetAnchor(BOTTOM, feedbackWindow, BOTTOMLEFT, (i-1)*feedbackWindowHeight+70,-10) - local buttonData = buttonInfo[i] - if buttonData ~= nil then - local amount - buttons[i].SendNote = SendNote - buttons[i].parent = feedbackWindow - - local buttonText = "" - local isButtonInfoDeep = (type(buttonData) == "table") or false - if isButtonInfoDeep then - if buttonData[2] == nil then buttonData[2] = "n/a" end -- Button text - buttonData[3] = buttonData[3] or false -- Send gold - end - local isString = (not isButtonInfoDeep and (type(buttonData) == "string") or (isButtonInfoDeep and type(buttonData[1]) == "string")) or false - local sendGold = (not isButtonInfoDeep and (type(buttonData) == "number" and buttonData > 0) or (isButtonInfoDeep and buttonData[3])) or false - - if LibFeedback.debug then - d(zo_strformat("|cFF0000[LibFeedback]|r <<1>> - Button <<2>>: isButtonInfoDeep: <<3>>, isString: <<4>>, sendGold: <<5>>,", tostring(parentAddonName), tostring(i), tostring(isButtonInfoDeep), tostring(isString), tostring(sendGold))) - if isButtonInfoDeep then - d(zo_strformat("> Param1: <<1>>, Param2: <<2>>, Param3: <<3>>,", tostring(buttonData[1]), tostring(buttonData[2]), tostring(buttonData[3]))) - else - d(zo_strformat("> Value: <<1>>", tostring(buttonData))) - end - end - - --Send gold via mail - if sendGold then - if isButtonInfoDeep then - buttonText = zo_strformat(buttonData[2], buttonData[1]) - amount = buttonData[1] - else - buttonText = "Send "..tostring(buttonData).." gold" - amount = buttonData - end - else - --Open URL - if isString then - if isButtonInfoDeep then - buttonText = buttonData[2] - amount = buttonData[1] - else - buttonText = "Send $$" - amount = buttonData - end - --Show a text and open mail - else - if isButtonInfoDeep then - if buttonData[1] == 0 or buttonData[1] == "" then - buttonText = buttonData[2] - amount = buttonData[1] - end - else - if buttonData == 0 or buttonData == "" then - buttonText = "Send note" - amount = buttonData - end - end - end - end - buttons[i].amount = amount - buttons[i]:SetText(buttonText) - end - end - local showButton = createShowFeedbackWindow(parentControl) - - showButton.feedbackWindow = feedbackWindow - showButton:SetAnchor(unpack(mailButtonPosition)) - showButton:SetDimensions(40,40) - - return showButton, feedbackWindow -end - -function LibFeedback:setDebug(debugValue) - debugValue = debugValue or false - LibFeedback.debug = debugValue -end diff --git a/Libs/LibFeedback/libs/LibStub.lua b/Libs/LibFeedback/libs/LibStub.lua deleted file mode 100755 index 0e6bf67..0000000 --- a/Libs/LibFeedback/libs/LibStub.lua +++ /dev/null @@ -1,38 +0,0 @@ --- LibStub is a simple versioning stub meant for use in Libraries. http://www.wowace.com/wiki/LibStub for more info --- LibStub is hereby placed in the Public Domain Credits: Kaelten, Cladhaire, ckknight, Mikk, Ammo, Nevcairiel, joshborke --- LibStub developed for World of Warcraft by above members of the WowAce community. --- Ported to Elder Scrolls Online by Seerah - -local LIBSTUB_MAJOR, LIBSTUB_MINOR = "LibStub", 4 -local LibStub = _G[LIBSTUB_MAJOR] - -local strformat = string.format -if not LibStub or LibStub.minor < LIBSTUB_MINOR then - LibStub = LibStub or {libs = {}, minors = {} } - _G[LIBSTUB_MAJOR] = LibStub - LibStub.minor = LIBSTUB_MINOR - - function LibStub:NewLibrary(major, minor) - assert(type(major) == "string", "Bad argument #2 to `NewLibrary' (string expected)") - if type(minor) ~= "number" then - minor = assert(tonumber(zo_strmatch(minor, "%d+%.?%d*")), "Minor version must either be a number or contain a number.") - end - - local oldminor = self.minors[major] - if oldminor and oldminor >= minor then return nil end - self.minors[major], self.libs[major] = minor, self.libs[major] or {} - return self.libs[major], oldminor - end - - function LibStub:GetLibrary(major, silent) - if not self.libs[major] and not silent then - error(strformat("Cannot find a library instance of %q.", tostring(major)), 2) - end - return self.libs[major], self.minors[major] - end - - function LibStub:IterateLibraries() return pairs(self.libs) end - setmetatable(LibStub, { __call = LibStub.GetLibrary }) -end - -LibStub.SILENT = true \ No newline at end of file diff --git a/Libs/LibStub/LibStub.txt b/Libs/LibStub/LibStub.txt deleted file mode 100644 index 479f598..0000000 --- a/Libs/LibStub/LibStub.txt +++ /dev/null @@ -1,7 +0,0 @@ -## APIVersion: 100007 -## Title: LibStub -## Description: Universal Library Stub -## Credits: Kaelten, Cladhaire, ckknight, Mikk, Ammo, Nevcairiel, ported to ESO by Seerah -## Version: 1.0 r4 - -LibStub\LibStub.lua \ No newline at end of file diff --git a/Libs/LibStub/LibStub/LibStub.lua b/Libs/LibStub/LibStub/LibStub.lua deleted file mode 100644 index 0e6bf67..0000000 --- a/Libs/LibStub/LibStub/LibStub.lua +++ /dev/null @@ -1,38 +0,0 @@ --- LibStub is a simple versioning stub meant for use in Libraries. http://www.wowace.com/wiki/LibStub for more info --- LibStub is hereby placed in the Public Domain Credits: Kaelten, Cladhaire, ckknight, Mikk, Ammo, Nevcairiel, joshborke --- LibStub developed for World of Warcraft by above members of the WowAce community. --- Ported to Elder Scrolls Online by Seerah - -local LIBSTUB_MAJOR, LIBSTUB_MINOR = "LibStub", 4 -local LibStub = _G[LIBSTUB_MAJOR] - -local strformat = string.format -if not LibStub or LibStub.minor < LIBSTUB_MINOR then - LibStub = LibStub or {libs = {}, minors = {} } - _G[LIBSTUB_MAJOR] = LibStub - LibStub.minor = LIBSTUB_MINOR - - function LibStub:NewLibrary(major, minor) - assert(type(major) == "string", "Bad argument #2 to `NewLibrary' (string expected)") - if type(minor) ~= "number" then - minor = assert(tonumber(zo_strmatch(minor, "%d+%.?%d*")), "Minor version must either be a number or contain a number.") - end - - local oldminor = self.minors[major] - if oldminor and oldminor >= minor then return nil end - self.minors[major], self.libs[major] = minor, self.libs[major] or {} - return self.libs[major], oldminor - end - - function LibStub:GetLibrary(major, silent) - if not self.libs[major] and not silent then - error(strformat("Cannot find a library instance of %q.", tostring(major)), 2) - end - return self.libs[major], self.minors[major] - end - - function LibStub:IterateLibraries() return pairs(self.libs) end - setmetatable(LibStub, { __call = LibStub.GetLibrary }) -end - -LibStub.SILENT = true \ No newline at end of file