From 6315c0c90debf5b58c7b91de05beda6589763a33 Mon Sep 17 00:00:00 2001 From: mx57 <38256814+mx57@users.noreply.github.com> Date: Tue, 25 Aug 2026 05:21:52 +0000 Subject: [PATCH] feat: add procedural animations for playing and shaking states Implement missing procedural transformations for 'playing' (playful wiggling and bouncing) and 'shaking' (intense shaking and dynamic scaling) in AnimationManager.update_frame. Add unit test coverage for both states. --- src/core/animation_manager.py | 11 ++++++++ tests/test_utils.py | 30 +++++++++++++++++++++ verification/screenshots/stats_history.png | Bin 22831 -> 22788 bytes 3 files changed, 41 insertions(+) diff --git a/src/core/animation_manager.py b/src/core/animation_manager.py index faa829b..b9d5c2b 100644 --- a/src/core/animation_manager.py +++ b/src/core/animation_manager.py @@ -157,6 +157,17 @@ def update_frame(self): elif self.current_state == "thinking": # Наклон + покачивание painter.rotate(10 + 5 * math.sin(self.frame_counter * 0.2)) + elif self.current_state == "playing": + # Покачивание и подпрыгивание + angle = 8 * math.sin(self.frame_counter * 0.6) + jump = -abs(8 * math.sin(self.frame_counter * 0.6)) + painter.translate(0, jump) + painter.rotate(angle) + elif self.current_state == "shaking": + # Сильное встряхивание с динамическим изменением масштаба + scale_var = 1.0 + 0.08 * math.sin(self.frame_counter * 1.2) + painter.scale(scale_var, scale_var) + painter.translate(random.randint(-5, 5), random.randint(-5, 5)) painter.translate(-size.width() / 2, -size.height() / 2) diff --git a/tests/test_utils.py b/tests/test_utils.py index 1a72e44..1e6062c 100644 --- a/tests/test_utils.py +++ b/tests/test_utils.py @@ -412,6 +412,36 @@ def test_animation_manager_current_fps(self): am.current_fps = 15 self.assertEqual(am.current_fps, 15) + def test_animation_manager_playing_and_shaking_procedural_transforms(self): + os.environ["QT_QPA_PLATFORM"] = "offscreen" + from PySide6.QtWidgets import QApplication, QLabel + from src.core.animation_manager import AnimationManager + + app = QApplication.instance() or QApplication([]) + label = QLabel() + label.resize(100, 100) + config = ConfigManager(self.config_path) + am = AnimationManager(label, config) + + # Переключаем на SVG скин для тестирования процедурного SVG движка + am.set_skin("ginger") + + # Проверка состояния playing + am.play_state("playing") + self.assertEqual(am.current_state, "playing") + self.assertEqual(am.current_fps, 12) + am.update_frame() + self.assertIsNotNone(label.pixmap()) + self.assertFalse(label.pixmap().isNull()) + + # Проверка состояния shaking + am.play_state("shaking") + self.assertEqual(am.current_state, "shaking") + self.assertEqual(am.current_fps, 20) + am.update_frame() + self.assertIsNotNone(label.pixmap()) + self.assertFalse(label.pixmap().isNull()) + def test_sound_manager_fallback(self): from src.utils.sound_manager import SoundManager from PySide6.QtMultimedia import QSoundEffect diff --git a/verification/screenshots/stats_history.png b/verification/screenshots/stats_history.png index 1fa59b4d5793668869a36bebd63e723b22c6927b..7117b8eb92b2ab09d4bd71d80cabb467a625ed63 100644 GIT binary patch literal 22788 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

    ~#Z^ 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