62979ea4c7
Build and Publish Mana Loop Docker Image / build-and-publish (push) Failing after 1m4s
Issue #346: Added floorHP > 0 guard to primary and equipment spell casting while loops in combat-actions.ts. Previously spells continued casting and draining mana after all enemies were dead. Issue #345 Bug A: Populated equipmentSpellStates from equipped gear in gameStore.ts combat tick setup using getActiveEquipmentSpells(). Previously equipment spell enchantments (e.g., spell_manaBolt on casters) never fired during combat because equipmentSpellStates was always empty. Issue #345 Bug B: Added deductWeaponEnchantCosts() helper in combat-damage.ts and wired it into the melee loop in combat-actions.ts. Weapon enchant spells (fireBlade, frostBlade, lightningBlade, voidBlade) now properly deduct mana per melee hit instead of providing free elemental bonus damage. All 1141 tests pass (65 test files), no regressions. Added 5 new regression tests. Files changed: - combat-actions.ts: +floorHP>0 guards, weapon enchant cost deduction - combat-damage.ts: +deductWeaponEnchantCosts() helper - gameStore.ts: +equipment spell state population from equipped gear - spell-cast-floorhp-guard.test.ts: new regression test file
13 lines
712 B
Plaintext
13 lines
712 B
Plaintext
# Circular Dependencies
|
|
Generated: 2026-06-10T09:41:41.471Z
|
|
Found: 3 circular chain(s) — these MUST be fixed before modifying involved files.
|
|
|
|
1. 1) stores/golem-combat-actions.ts > stores/golem-combat-helpers.ts
|
|
2. 2) stores/attunementStore.ts > stores/combatStore.ts > stores/combat-descent-actions.ts
|
|
3. 3) stores/attunementStore.ts > stores/combatStore.ts > stores/combat-descent-actions.ts > stores/non-combat-room-actions.ts
|
|
|
|
## How to fix
|
|
1. Identify which import in the chain can be extracted to a shared types/utils file.
|
|
2. Move the shared type or function there.
|
|
3. Both files import from the new shared module instead of each other.
|
|
4. Run: bunx madge --circular src/lib/game (should return clean) |