Commit Graph
7 Commits
Author SHA1 Message Date
shaga 72ab7c8aa5 Throw the whole totem set on one press
OctoWoW gives each totem element its own global cooldown category
(Fire 105, Earth 106, Water 107, Air 108), so one totem per element can
be cast at the same time. ThrowSet still stopped after the first totem
it cast, as it had to when all totems shared one global cooldown, so
"/coe throwset" dropped one totem per key press.

- ThrowSet casts every ready, not yet thrown totem of the active set.
- A second press within 1 second skips totems whose cast is not yet
  confirmed, so a double press does not drop them again.
  "/coe restartset" clears this.
- Each element gets its own pending timeout. They shared one name, so
  casting several at once replaced the earlier timeouts.
2026-10-15 07:05:15 +00:00
shaga 999445c78b Fix totem casts erroring when a totem's cooldown was never read
GetTotemDurationAndHealth reads the totem description from tooltip line 5.
When that line was empty it returned only duration and health, so the
three-value assignment in ScanTotems left the rank's Cooldown nil, and
dropping that totem failed in ActivateTotem with
"COE_TotemLogic.lua:776: attempt to compare number with nil".

- Always return duration, health and cooldown.
- When line 5 is empty, read the description from the last tooltip line.
  It moves up when the tooltip is shorter, e.g. without the "Tools:" line
  while the totem item is not in the item cache.
- Clear line 5 before SetSpell so a shorter tooltip cannot reuse the
  previous totem's text.
2026-10-13 06:34:02 +00:00
shaga 04de23b2c9 Fix totem casts erroring when the item cache is empty
ScanTotems reads each totem's element from the "Tools: <Element> Totem"
tooltip line. That line names the totem item, so it stays incomplete until
the item is in the client's item cache (WDB). The OctoWoW launcher clears
WDB on every launch by default, so the login scan left every element empty
and casting any totem failed in SetPendingTotem with
"COE_TotemLogic.lua:645: attempt to index field '?' (a nil value)".

- Fall back to a table of the English totem names when the tooltip gives
  no element.
- Leave out spells that only have "Totem" in their name and no element
  (e.g. "Change Appearance: Mark of the Grim Totem"); they were treated as
  totems and hit the same error even with a warm cache.
- SetPendingTotem skips a totem without a known element instead of erroring.
2026-10-05 19:29:10 +00:00
MDGitHubRepo fc2c7dab7f Added exception for totemic slam spell 2025-01-02 10:15:40 -05:00
MDGitHubRepo 8d904ad02d Updated pending totem logic
Pending totem logic was only storing the latest pending totem. Refactored it to have a pending totem for each element type so that they do not overwrite when using throwset.
2024-12-14 14:04:16 -05:00
MDGitHubRepo 3076660609 Fixes #4 - missing totems
Added formatter file, removed whitespaces, fixed issue with tremor totem missing.
2024-12-08 22:35:22 -05:00
MDGitHubRepo 233acdbaaa Add files via upload
Updated totemdata.lua to ignore spellname "Totemic Recall" when building the totems.
2024-11-29 13:25:01 -05:00