Download
(7 Kb)
Download
Updated: 12/11/23 06:43 AM
Pictures
File Info
Compatibility:
Endless Archive (9.2.5)
base-game patch (9.1.5)
Necrom (9.0.0)
Scribes of Fate (8.3.5)
Firesong (8.2.5)
Lost Depths (8.1.5)
High Isle (8.0.0)
Updated:12/11/23 06:43 AM
Created:09/15/21 03:03 PM
Monthly downloads:62
Total downloads:2,170
Favorites:3
MD5:
BSCs-UltiPoints
Version: 2.0.5
by: BloodStainCHild [More]
Libraries: No libs are needed

Simply Displays Ultimate Points on Death Recap.

New functions have been added

- UI to show if the passive is triggered to gain some extra ultimate
- UI to show your current ultimate points and color them if the tracked ultimate is ready
v 2.0.5
+ added more options, to show only when the icon when its about to run out (passive + base)
v 2.0.4
+ added tracking of base ult reg
v 2.0.3
+ improved code
+ fixed the color change on barswap if you want to track the active bar ultimate
v 2.0.2
+ added necro passive
v 2.0.1
+ fixed some UI Positioning
+ fixed UI Showing passive ability on Arcanist
v 2.0.0
+ added Setting Menu wit some settings
+ added Tracking of the Passives to gain ultimate (for example Nightblade)
+ added UI to track ultimate also can be set to track only one specific bar
Optional Files (0)


Archived Files (5)
File Name
Version
Size
Uploader
Date
2.0.3
6kB
BloodStainCHild
11/28/23 03:21 AM
2.0.2
6kB
BloodStainCHild
11/27/23 11:01 AM
2.0.1
6kB
BloodStainCHild
11/26/23 08:26 AM
2.0.0
6kB
BloodStainCHild
11/25/23 08:05 PM
1.0.0
1kB
09/15/21 03:03 PM


Post A Reply Comment Options
Unread 11/27/23, 05:59 PM  
BloodStainCHild
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 56
Uploads: 14
thanks for the hint, will update soon the improved code


Originally Posted by Baertram
Hint about code improvement for multiple if ... or ...
Lua Code:
  1. local allowedClassIds = {
  2.     [CLASSID_DRAGONKNIGHT] = true,
  3.     [CLASSID_NIGHTBLADE] = true,
  4.     [CLASSID_WARDEN] = true,
  5.     [CLASSID_ARCANIST] = true,
  6.     [CLASSID_NECROMANCER] = true,
  7. }
  8.  
  9. function BSCUDP:UpdatePssiveUI()
  10.     if allowedClassIds[classid] and BSCUDP.SV_ACC.UI_ENABLE then

Same for
Lua Code:
  1. if classid == CLASSID_DRAGONKNIGHT then
  2.                 BSCUDPointsUI:GetNamedChild("Icon"):SetTexture("esoui/art/icons/ability_dragonknight_024.dds")         
  3.             elseif classid == CLASSID_NIGHTBLADE then
  4.                 BSCUDPointsUI:GetNamedChild("Icon"):SetTexture("esoui/art/icons/passive_sorcerer_002.dds") 
  5.             elseif classid == CLASSID_WARDEN then
  6.                 BSCUDPointsUI:GetNamedChild("Icon"):SetTexture("esoui/art/icons/passive_warden_009.dds")
  7.             elseif classid == CLASSID_NECROMANCER then
  8.                 BSCUDPointsUI:GetNamedChild("Icon"):SetTexture("esoui/art/icons/passive_necromancer_011.dds")
  9.             elseif classid == CLASSID_ARCANIST then
  10.                 bCheckHotbar = false
  11.                 BSCUDPointsUI:GetNamedChild("Icon"):SetTexture("esoui/art/icons/passive_arcanist_08.dds")
  12.             end

Put the textures into a table with key = classId and let it be read from there
like
BSCUDPointsUI:GetNamedChild("Icon"):SetTexture(classid2Texture[classId] or "")

btw UpdatePssiveUI is missing the a in Passive


Idea for that:
Lua Code:
  1. if size > 54 then new_size = 54 end
  2.     if size > 48 and size < 54 then new_size = 48 end
  3.     if size > 40 and size < 48 then new_size = 40 end
  4.     if size > 36 and size < 40 then new_size = 36 end
  5.     if size > 34 and size < 36 then new_size = 34 end
  6.     if size > 32 and size < 34 then new_size = 32 end
  7.     if size > 30 and size < 32 then new_size = 30 end
  8.     if size > 28 and size < 30 then new_size = 28 end
  9.     if size > 26 and size < 28 then new_size = 26 end

Use zo_clamp(value, min, max) instead and if values are only allowed to be 2 points steps check with modular 2 and if returned value is not 0 add +1, and tehn put it into zo_clamp to get min/max.
Report comment to moderator  
Reply With Quote
Unread 11/27/23, 11:37 AM  
Baertram
Super Moderator
 
Baertram's Avatar
ESOUI Super Moderator
AddOn Author - Click to view AddOns

Forum posts: 4913
File comments: 5990
Uploads: 78
Hint about code improvement for multiple if ... or ...
Lua Code:
  1. local allowedClassIds = {
  2.     [CLASSID_DRAGONKNIGHT] = true,
  3.     [CLASSID_NIGHTBLADE] = true,
  4.     [CLASSID_WARDEN] = true,
  5.     [CLASSID_ARCANIST] = true,
  6.     [CLASSID_NECROMANCER] = true,
  7. }
  8.  
  9. function BSCUDP:UpdatePssiveUI()
  10.     if allowedClassIds[classid] and BSCUDP.SV_ACC.UI_ENABLE then

Same for
Lua Code:
  1. if classid == CLASSID_DRAGONKNIGHT then
  2.                 BSCUDPointsUI:GetNamedChild("Icon"):SetTexture("esoui/art/icons/ability_dragonknight_024.dds")         
  3.             elseif classid == CLASSID_NIGHTBLADE then
  4.                 BSCUDPointsUI:GetNamedChild("Icon"):SetTexture("esoui/art/icons/passive_sorcerer_002.dds") 
  5.             elseif classid == CLASSID_WARDEN then
  6.                 BSCUDPointsUI:GetNamedChild("Icon"):SetTexture("esoui/art/icons/passive_warden_009.dds")
  7.             elseif classid == CLASSID_NECROMANCER then
  8.                 BSCUDPointsUI:GetNamedChild("Icon"):SetTexture("esoui/art/icons/passive_necromancer_011.dds")
  9.             elseif classid == CLASSID_ARCANIST then
  10.                 bCheckHotbar = false
  11.                 BSCUDPointsUI:GetNamedChild("Icon"):SetTexture("esoui/art/icons/passive_arcanist_08.dds")
  12.             end

Put the textures into a table with key = classId and let it be read from there
like
BSCUDPointsUI:GetNamedChild("Icon"):SetTexture(classid2Texture[classId] or "")

btw UpdatePssiveUI is missing the a in Passive


Idea for that:
Lua Code:
  1. if size > 54 then new_size = 54 end
  2.     if size > 48 and size < 54 then new_size = 48 end
  3.     if size > 40 and size < 48 then new_size = 40 end
  4.     if size > 36 and size < 40 then new_size = 36 end
  5.     if size > 34 and size < 36 then new_size = 34 end
  6.     if size > 32 and size < 34 then new_size = 32 end
  7.     if size > 30 and size < 32 then new_size = 30 end
  8.     if size > 28 and size < 30 then new_size = 28 end
  9.     if size > 26 and size < 28 then new_size = 26 end

Use zo_clamp(value, min, max) instead and if values are only allowed to be 2 points steps check with modular 2 and if returned value is not 0 add +1, and tehn put it into zo_clamp to get min/max.
Last edited by Baertram : 11/27/23 at 11:41 AM.
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: