mirror of
https://github.com/parnic/ice-hud.git
synced 2025-06-16 06:40:13 -05:00
- very minor perf gain by not doing the per-frame update on invisible modules
- nuked the primary offender of garbage generation. there is more to get rid of but finding it is a tedious process
This commit is contained in:
@ -1229,6 +1229,9 @@ function IceBarElement.prototype:Update()
|
||||
end
|
||||
|
||||
function IceBarElement.prototype:MyOnUpdate()
|
||||
if not self:IsVisible() then
|
||||
return
|
||||
end
|
||||
self:SetScale(self.DesiredScale)
|
||||
end
|
||||
|
||||
|
@ -690,7 +690,9 @@ function IceCore.prototype:HandleUpdates()
|
||||
end
|
||||
|
||||
function IceCore.prototype:RequestUpdates(frame, func)
|
||||
self.updatees[frame] = func
|
||||
if self.updatees[frame] ~= func then
|
||||
self.updatees[frame] = func
|
||||
end
|
||||
|
||||
local count = 0
|
||||
for k,v in pairs(self.updatees) do
|
||||
|
@ -48,7 +48,9 @@ end
|
||||
|
||||
function IceCustomBar.prototype:ConditionalSubscribe()
|
||||
if self:ShouldAlwaysSubscribe() then
|
||||
IceHUD.IceCore:RequestUpdates(self.frame, function() self:UpdateCustomBar() end)
|
||||
if not IceHUD.IceCore:IsUpdateSubscribed(self.frame) then
|
||||
IceHUD.IceCore:RequestUpdates(self.frame, function() self:UpdateCustomBar() end)
|
||||
end
|
||||
else
|
||||
IceHUD.IceCore:RequestUpdates(self.frame, nil)
|
||||
end
|
||||
|
@ -436,7 +436,9 @@ function IceCustomCDBar.prototype:EnableUpdates(enable_update)
|
||||
end
|
||||
|
||||
if enable_update then
|
||||
IceHUD.IceCore:RequestUpdates(self.frame, function() self:UpdateCustomBar(true) end)
|
||||
if not IceHUD.IceCore:IsUpdateSubscribed(self.frame) then
|
||||
IceHUD.IceCore:RequestUpdates(self.frame, function() self:UpdateCustomBar(true) end)
|
||||
end
|
||||
else
|
||||
IceHUD.IceCore:RequestUpdates(self.frame, nil)
|
||||
end
|
||||
|
Reference in New Issue
Block a user