Gabriel Kaszewski
321905e68e
refactor: fix bugs and improve architecture
...
- Fix double-execution bug in LevelStateHandler (coins/skills were committed twice per level)
- Fix DamageComponent to track multiple targets via HashSet instead of single node
- Fix HealthComponent: update health immediately, decouple from PlayerController via signal wiring in PlayerController
- Remove dead loop in SkillManager.RemoveSkill; simplify O(n²) throw skill loop
- Replace GetNode<T>(path) with .Instance across managers; add Instance to StatisticsManager/SpeedRunManager
- GameManager.GetPlayer() now uses EventBus.PlayerSpawned instead of scanning all scene nodes
- UIManager.UiStack: remove [Export], use private List<Control>
- PlayerState: extract DefaultLives constant, simplify CreateDefault()
2026-03-19 01:41:14 +01:00
..
2025-09-13 01:52:07 +02:00
2025-08-15 00:45:57 +02:00
2025-08-15 00:45:57 +02:00
2026-02-01 11:47:40 +00:00
2025-08-31 15:17:11 +02:00
2026-02-01 11:47:40 +00:00
2025-08-31 15:17:11 +02:00
2026-02-01 11:47:40 +00:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2026-01-31 13:06:43 +00:00
2026-01-31 13:06:43 +00:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2026-02-02 12:45:48 +01:00
2025-08-15 00:45:57 +02:00
2026-03-19 01:41:14 +01:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2026-02-01 11:47:40 +00:00
2025-08-31 15:17:11 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-09-13 13:53:40 +02:00
2025-09-13 13:53:40 +02:00
2026-02-01 11:47:40 +00:00
2025-08-15 00:45:57 +02:00
2025-08-31 02:08:35 +02:00
2025-08-31 02:08:35 +02:00
2026-02-01 11:47:40 +00:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2026-01-31 13:06:43 +00:00
2026-01-31 13:06:43 +00:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-09-13 05:19:37 +02:00
2025-09-13 05:19:37 +02:00
2025-09-13 01:52:07 +02:00
2025-09-13 01:52:07 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2026-02-01 11:47:40 +00:00
2025-08-31 15:17:11 +02:00
2025-09-11 05:09:24 +02:00
2025-09-11 05:09:24 +02:00
2026-01-31 13:06:43 +00:00
2025-08-15 00:45:57 +02:00
2026-03-19 01:41:14 +01:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-09-13 05:19:37 +02:00
2025-09-13 05:19:37 +02:00
2025-09-13 05:19:37 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-09-11 05:09:24 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2026-02-01 11:47:40 +00:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2026-02-01 11:47:40 +00:00
2025-08-15 00:45:57 +02:00
2025-09-13 14:43:58 +02:00
2025-09-13 14:43:58 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-09-13 01:52:07 +02:00
2025-09-13 01:52:07 +02:00
2025-09-13 01:52:07 +02:00
2025-09-13 01:52:07 +02:00
2025-09-13 01:52:07 +02:00
2025-09-13 01:52:07 +02:00
2025-08-31 02:08:35 +02:00
2025-08-31 02:08:35 +02:00
2025-09-13 14:18:43 +02:00
2025-08-15 00:45:57 +02:00
2026-03-19 01:41:14 +01:00
2025-08-15 00:45:57 +02:00
2026-02-01 11:47:40 +00:00
2025-08-15 00:45:57 +02:00
2025-08-31 01:14:00 +02:00
2025-08-31 01:14:00 +02:00
2025-08-30 23:06:12 +02:00
2025-08-30 23:06:12 +02:00
2025-08-31 02:56:33 +02:00
2025-08-31 02:56:33 +02:00
2025-08-27 01:12:26 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-09-13 14:18:43 +02:00
2025-09-13 14:18:43 +02:00
2026-02-01 13:11:14 +01:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2026-02-01 11:47:40 +00:00
2026-02-01 11:47:40 +00:00
2026-02-01 11:47:40 +00:00
2025-08-27 01:12:26 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-30 23:06:12 +02:00
2025-08-30 23:06:12 +02:00
2025-09-13 14:18:43 +02:00
2025-09-13 14:18:43 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2025-08-31 15:17:11 +02:00
2025-08-15 00:45:57 +02:00
2026-02-01 13:11:14 +01:00
2025-08-15 00:45:57 +02:00
2025-08-31 02:08:35 +02:00
2025-08-31 02:08:35 +02:00
2026-02-01 11:47:40 +00:00
2025-08-31 15:17:11 +02:00