From bd298ab17edc715ea52bd5e358fa906ddc8c292d Mon Sep 17 00:00:00 2001 From: Storm Dragon Date: Tue, 16 Sep 2025 12:54:27 -0400 Subject: [PATCH] fixed a bug with nunchucks not saving weapon speed. Updated libstormgames. --- libstormgames | 2 +- src/save_manager.py | 9 ++++++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/libstormgames b/libstormgames index 8cca66d..acb899e 160000 --- a/libstormgames +++ b/libstormgames @@ -1 +1 @@ -Subproject commit 8cca66d44e694002ce5d19d130837ba6a068ac86 +Subproject commit acb899e6eb054430bae1521bc9926dbd6e43203a diff --git a/src/save_manager.py b/src/save_manager.py index 8735d57..a7ed89b 100644 --- a/src/save_manager.py +++ b/src/save_manager.py @@ -101,6 +101,7 @@ class SaveManager: "range": weapon.range, "attackSound": weapon.attackSound, "hitSound": weapon.hitSound, + "cooldown": weapon.cooldown, "attackDuration": weapon.attackDuration, "speedBonus": getattr(weapon, "speedBonus", 1.0), "jumpDurationBonus": getattr(weapon, "jumpDurationBonus", 1.0), @@ -117,18 +118,24 @@ class SaveManager: # Handle backward compatibility for old saves speedBonus = data.get("speedBonus", 1.0) jumpDurationBonus = data.get("jumpDurationBonus", 1.0) + cooldown = data.get("cooldown", 500) # Default cooldown for old saves - # For old saves, restore proper bonuses for specific weapons + # For old saves, restore proper bonuses and cooldowns for specific weapons if data["name"] == "witch_broom" and speedBonus == 1.0: speedBonus = 1.17 jumpDurationBonus = 1.25 + # Restore proper cooldown for nunchucks in old saves + if data["name"] == "nunchucks" and cooldown == 500: + cooldown = 250 + weapon = Weapon( name=data["name"], damage=data["damage"], range=data["range"], attackSound=data["attackSound"], hitSound=data["hitSound"], + cooldown=cooldown, attackDuration=data["attackDuration"], speedBonus=speedBonus, jumpDurationBonus=jumpDurationBonus,