7c7869494e
Add methods to the states/allstates table that helps with creating,
updating or remove states in an optimized way
## Advantage of using this function instead of doing a states[key] = {
... }
- If already created, update existing state, and return true if any
value was changed, this can help reduce amount of resources an aura use
- Automatically `return true` when using these functions and any change
was made
## Examples
```Lua
function(states, event, ...)
if event == "PLAYER_TARGET_CHANGED" then
if UnitExists("target") then
-- if state exists it's updated, not replaced
-- show & changed fields can be skipped
states:Update("", {
name = UnitName("target"),
duration = 5,
expirationTime = GetTime() + 5,
progressType = "timed",
autoHide = true
})
else
-- wipe
states:RemoveAll()
end
end
-- no need to return true
end
```
with clones
```Lua
function(states, event, ...)
local currentEssence = UnitPower("player", Enum.PowerType.Essence)
local maxEssence = UnitPowerMax("player", Enum.PowerType.Essence)
for i = 1, 6 do
if i > maxEssence then
states:Remove(i) -- wipe allstates[6]
else
local value = currentEssence >= i and 1 or 0
local newState = {
progressType = "static",
value = value,
total = 1
}
states:Update(i, newState)
end
end
-- no need to return true
end
```
35 lines
712 B
Lua
35 lines
712 B
Lua
if not WeakAuras.IsLibsOK() then return end
|
|
|
|
local AddonName = ...
|
|
local OptionsPrivate = select(2, ...)
|
|
|
|
OptionsPrivate.changelog = {
|
|
versionString = '5.19.3',
|
|
dateString = '2025-02-24',
|
|
fullChangeLogUrl = 'https://github.com/WeakAuras/WeakAuras2/compare/5.19.2...5.19.3',
|
|
highlightText = [==[
|
|
- Remove left-over debug output]==], commitText = [==[InfusOnWoW (2):
|
|
|
|
- Update Discord List
|
|
- Update Atlas File List from wago.tools
|
|
|
|
Stanzilla (1):
|
|
|
|
- Update WeakAurasModelPaths from wago.tools
|
|
|
|
anon1231823 (1):
|
|
|
|
- Add esMX to toc files
|
|
|
|
emptyrivers (1):
|
|
|
|
- deduplicate localization phrases
|
|
|
|
mrbuds (2):
|
|
|
|
- Allstates helper methods (#5195)
|
|
- Cleanup leftover debug print in item in range condition
|
|
|
|
]==]
|
|
}
|