Skip to content

Commit 6647ce5

Browse files
authored
Merge pull request #42 from LauritsS/barrier
Added barrier to compact list
2 parents 6eb3130 + 73742c0 commit 6647ce5

13 files changed

Lines changed: 87 additions & 2 deletions

File tree

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@
33
## 2025.11.21 - @m00nyONE
44
- fix the dialogs crashing GamePadUI. Thanks to @m0r for fixing this :-)
55

6+
## 2025.11.27 - @m00nyONE
7+
- adding barrier to the compact List. Thanks to @LauritsS for the PullRequest :-)
8+
69
## 2025.11.20 - @m00nyONE
710
- HOTFIX: removing LibCheck dialog for ALL Platforms until a reliable solution for displaying Dialogs without crashing console & gamepad UI is found
811

lang/de.lua

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,8 @@ local strings = {
9797
HR_MODULES_HIDEME_HIDEATRO_DESCRIPTION = "Verberge deinen Atronach von den Listen.",
9898
HR_MODULES_HIDEME_HIDESAXHLEEL_LABEL = "Verberge Saxhleel",
9999
HR_MODULES_HIDEME_HIDESAXHLEEL_DESCRIPTION = "Verberge dein Saxhleel von den Listen.",
100+
HR_MODULES_HIDEME_HIDEBARRIER_LABEL = "Verberge Barriere",
101+
HR_MODULES_HIDEME_HIDEBARRIER_DESCRIPTION = "Verberge deine Barriere von den Listen.",
100102
HR_MODULES_HIDEME_MENU_HEADER = "Hide Me Einstellungen",
101103
-- PULL
102104
HR_MODULES_PULL_FRIENDLYNAME = "Pull Countdown",

lang/en.lua

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,8 @@ local strings = {
9797
HR_MODULES_HIDEME_HIDEATRO_DESCRIPTION = "Hide your atronach from the lists.",
9898
HR_MODULES_HIDEME_HIDESAXHLEEL_LABEL = "Hide Saxhleel",
9999
HR_MODULES_HIDEME_HIDESAXHLEEL_DESCRIPTION = "Hide your saxhleel from the lists.",
100+
HR_MODULES_HIDEME_HIDEBARRIER_LABEL = "Hide Barrier",
101+
HR_MODULES_HIDEME_HIDEBARRIER_DESCRIPTION = "Hide your barrier from the lists.",
100102
HR_MODULES_HIDEME_MENU_HEADER = "Hide Me Options",
101103
-- PULL
102104
HR_MODULES_PULL_FRIENDLYNAME = "Pull Countdown",

lang/fr.lua

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,8 @@ local strings = {
9797
--HR_MODULES_HIDEME_HIDEATRO_DESCRIPTION = "Hide your atronach from the lists.",
9898
--HR_MODULES_HIDEME_HIDESAXHLEEL_LABEL = "Hide Saxhleel",
9999
--HR_MODULES_HIDEME_HIDESAXHLEEL_DESCRIPTION = "Hide your saxhleel from the lists.",
100+
--HR_MODULES_HIDEME_HIDEBARRIER_LABEL = "Hide Barrier",
101+
--HR_MODULES_HIDEME_HIDEBARRIER_DESCRIPTION = "Hide your barrier from the lists.",
100102
--HR_MODULES_HIDEME_MENU_HEADER = "Hide Me Options",
101103
-- PULL
102104
HR_MODULES_PULL_FRIENDLYNAME = "Compte à rebours avant de commencer le combat",

lang/ru.lua

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,8 @@ local strings = {
9797
HR_MODULES_HIDEME_HIDEATRO_DESCRIPTION = "Скрыть вашего атронаха из списков.",
9898
HR_MODULES_HIDEME_HIDESAXHLEEL_LABEL = "Скрыть саксхлил (Saxhleel)",
9999
HR_MODULES_HIDEME_HIDESAXHLEEL_DESCRIPTION = "Скрыть вашего саксхлил из списков.",
100+
--HR_MODULES_HIDEME_HIDEBARRIER_LABEL = "Hide Barrier",
101+
--HR_MODULES_HIDEME_HIDEBARRIER_DESCRIPTION = "Hide your barrier from the lists.",
100102
HR_MODULES_HIDEME_MENU_HEADER = "Параметры",
101103
-- PULL
102104
HR_MODULES_PULL_FRIENDLYNAME = "Pull Countdown",

lang/zh.lua

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,8 @@ local strings = {
9797
HR_MODULES_HIDEME_HIDEATRO_DESCRIPTION = "从列表中隐藏你的石头人。",
9898
HR_MODULES_HIDEME_HIDESAXHLEEL_LABEL = "隐藏Sax",
9999
HR_MODULES_HIDEME_HIDESAXHLEEL_DESCRIPTION = "从列表中隐藏你的Sax。",
100+
--HR_MODULES_HIDEME_HIDEBARRIER_LABEL = "Hide Barrier",
101+
--HR_MODULES_HIDEME_HIDEBARRIER_DESCRIPTION = "Hide your barrier from the lists.",
100102
HR_MODULES_HIDEME_MENU_HEADER = "将我隐藏选项",
101103
-- PULL
102104
HR_MODULES_PULL_FRIENDLYNAME = "开战倒计时",

modules/hideme/main.lua

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,11 @@ local moduleDefinition = {
5656
label = GetString(HR_MODULES_HIDEME_HIDESAXHLEEL_LABEL),
5757
description = GetString(HR_MODULES_HIDEME_HIDESAXHLEEL_DESCRIPTION),
5858
},
59+
[6] = {
60+
name = "hideBarrier",
61+
label = GetString(HR_MODULES_HIDEME_HIDEBARRIER_LABEL),
62+
description = GetString(HR_MODULES_HIDEME_HIDEBARRIER_DESCRIPTION),
63+
},
5964
}
6065
}
6166

modules/ult/Console/menu.lua

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -442,6 +442,17 @@ function module:GetSubMenuOptions()
442442
self.compactList:Update()
443443
end,
444444
},
445+
{
446+
type = LHAS.ST_CHECKBOX,
447+
name = "show Barrier",
448+
tooltip = "shows Barrier in the list.",
449+
default = self.compactList.svDefault.showBarrier,
450+
getFunction = function() return self.compactList.sw.showBarrier end,
451+
setFunction = function(value)
452+
self.compactList.sw.showBarrier = value
453+
self.compactList:Update()
454+
end,
455+
},
445456
{
446457
type = LHAS.ST_CHECKBOX,
447458
label = "show Slayer",

modules/ult/PC/menu.lua

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -392,6 +392,17 @@ function module:GetSubMenuOptions()
392392
self.compactList:Update()
393393
end,
394394
},
395+
{
396+
type = "checkbox",
397+
name = "show Barrier",
398+
tooltip = "shows Barrier in the list.",
399+
default = self.compactList.svDefault.showBarrier,
400+
getFunc = function() return self.compactList.sw.showBarrier end,
401+
setFunc = function(value)
402+
self.compactList.sw.showBarrier = value
403+
self.compactList:Update()
404+
end,
405+
},
395406
{
396407
type = "checkbox",
397408
name = "show Slayer",

modules/ult/list_compact.lua

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ local svDefault = {
4444
showHorn = true,
4545
showColos = true,
4646
showAtro = true,
47+
showBarrier = true,
4748
showSlayer = true,
4849
showPillager = true,
4950
showCryptCannon = true,
@@ -65,6 +66,7 @@ local svDefault = {
6566
colorSlayerBG = {1, 0, 0}, -- red
6667
colorPillagerBG = {0, 1, 0}, -- green
6768
colorCryptCannonBG = {1, 0, 1}, -- purple
69+
colorBarrierBG = {1, 0.5, 0}, -- orange
6870

6971
markOnCooldown = true,
7072
markOnCooldownColor = {1, 0, 0}, -- red
@@ -87,6 +89,7 @@ function module:CreateCompactList()
8789

8890
list.HEADER_TYPE = list:GetNextDataTypeId() -- type id for header
8991
list.ROW_TYPE_HORN = list:GetNextDataTypeId() -- type id for horn rows
92+
list.ROW_TYPE_BARRIER = list:GetNextDataTypeId() -- type id for barrier rows
9093
list.ROW_TYPE_COLOS = list:GetNextDataTypeId() -- type id for colos rows
9194
list.ROW_TYPE_ATRO = list:GetNextDataTypeId() -- type id for atro rows
9295
list.ROW_TYPE_SLAYER = list:GetNextDataTypeId() -- type id for slayer rows
@@ -159,6 +162,14 @@ function module:CreateCompactList()
159162
rowCreationWrapper(self.compactListCryptCannonRowCreationFunction)
160163
)
161164
list.logger:Debug("added cryptcannon player row type '%d' with template '%s'", list.ROW_TYPE_CRYPTCANNON, list.ROW_TEMPLATE)
165+
ZO_ScrollList_AddDataType(
166+
list.listControl,
167+
list.ROW_TYPE_BARRIER,
168+
list.ROW_TEMPLATE,
169+
list.listRowHeight,
170+
rowCreationWrapper(self.compactListBarrierRowCreationFunction)
171+
)
172+
list.logger:Debug("added barrier player row type '%d' with template '%s'", list.ROW_TYPE_BARRIER, list.ROW_TEMPLATE)
162173

163174
-- register cooldown end time tracker for pillager cooldown
164175
local function setPillagerCooldownEndTime(_, duration)
@@ -396,6 +407,31 @@ function module:compactListSlayerRowCreationFunction(rowControl, data, scrollLis
396407
self:applyCompactListValues(rowControl, data, scrollList, slayerPercentage, gainSeconds, "s")
397408
end
398409

410+
--- Barrier row creation function for compact ult list.
411+
--- @param rowControl Control
412+
--- @param data table
413+
--- @param scrollList ZO_ScrollList
414+
--- @return void
415+
function module:compactListBarrierRowCreationFunction(rowControl, data, scrollList)
416+
local list = self.compactList
417+
local sw = list.sw
418+
419+
list:ApplySupportRangeStyle(rowControl, data.tag)
420+
list:ApplyUserNameToControl(rowControl:GetNamedChild('_Name'), data.userId)
421+
list:ApplyUserIconToControl(rowControl:GetNamedChild('_Icon'), data.userId, data.classId)
422+
423+
rowControl:GetNamedChild('_BG'):SetColor(unpack(sw.colorBarrierBG))
424+
rowControl:GetNamedChild('_BG'):SetAlpha(sw.backgroundAlpha)
425+
rowControl:GetNamedChild("_UltIcon"):SetTexture(self.barrierIcon)
426+
427+
local barrierPercentage = 0
428+
if self:isBarrier(data.ult1ID) then barrierPercentage = data.ult1Percentage end
429+
if self:isBarrier(data.ult2ID) then barrierPercentage = data.ult2Percentage end
430+
431+
self:applyCompactListValues(rowControl, data, scrollList, barrierPercentage, nil, nil)
432+
end
433+
434+
399435
--- Slayer row creation function for compact ult list.
400436
--- @param rowControl Control
401437
--- @param data table
@@ -467,6 +503,7 @@ function module:UpdateCompactList()
467503
local slayerList = {}
468504
local pillagerList = {}
469505
local cryptCannonList = {}
506+
local barrierList = {}
470507

471508
local sw = compactList.sw
472509
for _, playerData in pairs(addon.playersData) do
@@ -488,6 +525,9 @@ function module:UpdateCompactList()
488525
if sw.showCryptCannon and playerData.hasCryptCannon then
489526
table.insert(cryptCannonList, playerData)
490527
end
528+
if sw.showBarrier and not playerData.hideBarrier and playerData.hasBarrier then
529+
table.insert(barrierList, playerData)
530+
end
491531
end
492532
local sortByUltPercentage = self.sortByUltPercentage
493533
table.sort(hornList, sortByUltPercentage)
@@ -496,6 +536,7 @@ function module:UpdateCompactList()
496536
table.sort(slayerList, sortByUltPercentage)
497537
table.sort(pillagerList, sortByUltPercentage)
498538
table.sort(cryptCannonList, sortByUltPercentage)
539+
table.sort(barrierList, sortByUltPercentage)
499540

500541
--- fill dataList ---
501542
-- insert Header
@@ -519,6 +560,9 @@ function module:UpdateCompactList()
519560
for _, playerData in ipairs(cryptCannonList) do
520561
table.insert(dataList, ZO_ScrollList_CreateDataEntry(compactList.ROW_TYPE_CRYPTCANNON, playerData))
521562
end
563+
for _, playerData in ipairs(barrierList) do
564+
table.insert(dataList, ZO_ScrollList_CreateDataEntry(compactList.ROW_TYPE_BARRIER, playerData))
565+
end
522566

523567
ZO_ScrollList_Commit(listControl)
524568
end

0 commit comments

Comments
 (0)