34 Commits

Author SHA1 Message Date
6b02c76ef3 refactor: LightController + LightSequence, протокол 85XXYY, namespace
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Has been cancelled
LightController / LightMode:
- Новый LightMode.cs: enum эффектов под протокол 85XXYY (13 эффектов + Off)
  значения enum = коды команд XX, Off=-1 генерирует просто '85'
- Новый LightController.cs: управление подсветкой платы
  * SetLight(mode, duration) → строит команду 85XXYY, возвращает LightSequence
  * Blink() / StopBlink() / SetBlinkInterval() — мигание шляпы
  * StopSequence() / StopAllEffects() — остановка эффектов
  * Все параметры (hatOn/hatOff, blinkInterval, defaultMode/Duration) в инспекторе
- Вложенный класс LightSequence — builder цепочек эффектов:
  SetLight(A,3).Then(B,3).Then(C,3).Loop()
  SetLight(A,3).Then(LightMode.Off)
  SetLight(A,5) — одиночный эффект
GameManager:
- Добавлено свойство Light (→ Plate.Light)
- GameWin   → SetLight(FinalWave, 30)
- GameOver  → SetLight(BlueWave, 30)
- NewGame   → SetLight(Rainbow, 99)
- LoadScene MainMenu → SetLight(Off) + Blink()
namespace (добавлены в файлы без namespace):
- Editor/MouseWorldPositionOverlay.cs  → RR.Common.InspectorOverrides
- UI/StatsWindowUIController.cs        → RR.Common.UI
- Utilities/AdvancedLogging_Test.cs    → RR.Common.Utility
- Utilities/DebugSettings.cs           → RR.Common.Utility
2026-02-19 16:52:59 +03:00
301e4be47d refactor: LevelFinish — выдача приза и показ QR разделены
- Добавлен LevelFinish.cs: новый компонент финиша уровня
  - выдача маленького приза через PrizeSystemManager (учитывает enableHopper)
  - настройки: enablePrizeOnFinish, prizeEnabledSettingKey, prizeDelay, debugMode
  - защита от двойной выдачи (_prizeGiven)
- PlayerController: закомментирован старый переход на следующий уровень по тегу 'Finish'
  (теперь за это отвечает LevelFinish)
- QRCodeUIController: помечен [Obsolete], QR-коды показываются только при победе
  через WinBannerController.ShowWin() -> PrizeSystemManager.GetQRCodes()
- Finish.prefab: добавлен компонент LevelFinish (enablePrizeOnFinish=true, prizeDelay=0)
- Сцена 1-1: переопределён enablePrizeOnFinish=false для финиша промежуточного уровня
- Сцена 1-3: minor update
- MainMenu: правки якорей UI-элементов и активация скрытого объекта
2026-02-19 15:15:16 +03:00
6a4c23c154 feat: Add prize status API, fix TextSplash rotation, and update game fonts
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Has been cancelled
- Добавлены публичные методы в PrizeSystem для проверки статуса выдачи приза (WasLastPrizeSuccessful, IsPrizing)
- Сохранение результата последней выдачи приза для внешнего контроля
- Исправлено вращение в TextSplash: теперь оно применяется относительно начального поворота вместо сброса до 0
- Начальное вращение сохраняется в Awake и используется как базовое для анимации покачивания
- Начата глобальная замена шрифтов в игре: добавлены BerlinSansFBCyrillic, Flatiron Casual, Flatiron Regular, RifficFree-Bold
- Заменена часть шрифтов в главном меню на новые
- Добавлены новые тайловые спрайты для фона (Forest, Hills, Sky)
- Удален лишний пробел в PlayerController.cs
- Исправлена BOM-метка в UICreditsTextController.cs
2026-02-17 13:29:26 +03:00
a66aa2cb83 feat: Add display customization for balance and main menu texts
- Добавлена система анимированных текстовых сплешей (TextSplash) с настройками масштаба, покачивания, движения и цвета
- Добавлена поддержка циклического воспроизведения анимации сплешей
- Добавлена настройка частоты покачивания для более плавной и непрерывной анимации
- Добавлено отображение валюты в компоненте BalanceDisplay (берется из настройки payment.currency)
- Добавлены поля для отображения номера поддержки и суперприза в главном меню
- Добавлена возможность форматирования текстов через string.Format в MainMenu (supportNumberFormat, superPrizeFormat)
- Валюта и тексты автоматически обновляются при изменении настроек
2026-02-12 16:58:49 +03:00
2417f58f61 feat: Add text input system and balance management with settings improvements
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Has been cancelled
- Добавлена система ввода текста через модальное окно с ячейками для аркадного автомата
- Реализован TextInputModal с поддержкой кастомных алфавитов и навигации
- Добавлен TextInputCell для ввода отдельных символов с циклической навигацией
- Создан TextInputSettingsBinder для интеграции ввода текста с системой настроек
- Реализована компактная сериализация настроек (только нужные поля в JSON)

- Внедрена система баланса игрока (BalanceManager)
- Баланс начисляется при оплате импульсом, списывается при начале/продолжении игры
- Добавлен InactivityManager для выхода в меню при отсутствии активности (5 минут)

- Улучшена система настроек
- Добавлены флаги shownInSettings и exposed для управления видимостью настроек
- Реализована автоматическая регистрация/отписка SettingsButtonBinder при активации/деактивации
- Исправлена загрузка настроек с проверкой типов через Sanitize()
- SettingsApplier упрощен - оставлена только поддержка AudioManager
- Добавлен ValueSelectorRow для выбора целочисленных значений с шагом

- Удалены примеры и документация из production кода (QUICK_SETUP.md, TextInputExample, AdvancedLoggingExample)
- Убран весь отладочный вывод Debug.Log из системы настроек и ввода текста
- Очищены неразрывные пробелы из файлов проекта
- Добавлены префабы UI (InputCell)
2026-02-11 16:27:33 +03:00
3944534cd0 feat: Implement balance system and fix pause bug
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Has been cancelled
- Добавлена система баланса игры (BalanceManager) для управления внутриигровой валютой
- Баланс начисляется за импульсы оплаты и списывается за начало/продолжение игры
- При старте игры весь внесенный баланс списывается, а жизни начисляются в соответствии с количеством оплат
- Добавлены проверки достаточности баланса для начала и продолжения игры
- Интегрирован BalanceManager с PaymentManager и GameManager
- Исправлен баг с возможностью снятия паузы при показе баннера проигрыша/победы
- Добавлена блокировка переключения паузы через IsActive флаг в PauseMenu
- Жизни больше не могут уйти в минус при повторной смерти во время показа баннера
- Настройки стоимости импульса, начала и продолжения игры берутся из SettingsManager
2026-02-09 11:31:34 +03:00
009152ac5b Added ValueSelectorRow option to int settings
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Has been cancelled
- Добавил новый тип отображения настроек с целочисленным значением
- У этого типа можно настраивать шаг, выглядит приятнее
2026-02-06 16:14:39 +03:00
24aaf18d4b Added new settings in settings system
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Has been cancelled
- Добавил больше настроек в систему настроек
- Пока у большинства настроек нет функционала
- Немного изменил внешний вид настроек
2026-02-06 08:43:51 +03:00
4d05d1adbb FEAT: Added new settings system
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Has been cancelled
- Добавил новую систему настроек, возможности:
    - Динамически создает список настроек
    - Сохраняет настройки в JSON-файл
    - Возможность группировать настройки
    - Широкие возможности по кастомизации
    - Применение настроек в реальном времени (частично)
- Добавил префабы для новых элементов настроек
- Изменил поведение игры исходя из нового формата настроек
2026-02-04 14:32:15 +03:00
5f339c6bd0 Add payment required text to main menu and improve payment handling logic
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Has been cancelled
2026-01-23 16:12:34 +03:00
2957901cde Исправил баги, добавил мышек
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Has been cancelled
- Исправил баг, что при бесплатной игре все равно требовалась оплата для продолжения игры
- ТЕПЕРЬ ВМЕСТО БАТАРЕЕК ЛЕТУЧИЕ МЫШКИ, УРААА
- Добавил моргание шапки автомата до начала игры
- Исправил мелкие баги с оплатой для продолжения игры
2026-01-22 16:39:46 +03:00
b0a9b433c1 Added arcade machine hat blinking
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Has been cancelled
- Добавил моргание шапки автомата, пока игра не началась
- Исправил баг, что при бесплатной игре для продолжения требовалась оплата
2026-01-22 09:59:17 +03:00
dc18ca9ff3 added WinBannerController and LoseBannerController, implemented game end UI logic 2025-12-16 17:00:39 +03:00
6b4d1d8923 added freeze and unfreeze player actions, updated method signatures for consistency 2025-12-10 16:55:36 +03:00
3fce87edb4 particles and fixes, level selection
- добавил частицы при смерти игрока
- Временно включил функцию выбора уровня
2025-12-05 17:02:56 +03:00
92bd2d36b9 VFX Pool, new VFX, small fixes etc
- Исправил мелкие баки в поведенчеких скриптах
- Добавил CreatureAnimationEvents.cs для унификации поведения анимационных ивентов игровых сущностей
- Добавил VFX для смерти врагов
- Добавил пул VFX, пока много багов, UNSTABLE
- Настроил исользование пула в анимационных скриптах
2025-12-05 08:37:00 +03:00
0718c7805b feat(stats): add stats window UI and functionality for displaying game statistics 2025-11-26 17:03:34 +03:00
05a1469725 feat(platforms): add new platform types and implement lever functionality 2025-11-24 16:57:20 +03:00
a4ebcd4d6f feat(platforms): add new platform prefabs and update player prefab references 2025-11-21 16:56:56 +03:00
47b43cf122 feat(platforms): add new platform types and enhance player interactions 2025-11-19 16:59:50 +03:00
93e466ebcf feat(qr): add QR code generation and phone number validation utilities 2025-11-14 17:06:07 +03:00
0f3a4d6191 feat(payment): enhance payment system and UI interactions 2025-11-12 16:58:24 +03:00
9555479967 feat(game): implement payment system and UI improvements
- Added PaymentManager integration with GameManager
- Implemented credit-based lives increment system
- Updated UI layout and anchor positions in MainMenu scene
- Added AddCredit input action bindings for keyboard and gamepad
- Refactored GameManager to use StartingLives, MaxLives properties
- Added UICreditsTextController for displaying credits and lives- Fixed prefab initialization order and component dependencies
- Updated ComWrapper serialization and prize checking logic
- Removed obsolete setLivesToDefaultAfterFirstLose setting
- Improved scene loading and player spawn management
2025-11-11 17:51:51 +03:00
3ca9a4eb41 feat(ui): add UIPointer and ScrollSelectionFollower for improved UI navigation 2025-11-10 17:04:55 +03:00
f84f868c82 feat(settings): implement settings UI with event handling and update methods 2025-11-07 17:04:48 +03:00
98d5285b46 feat(logging): add advanced logging example with file output
- Created AdvancedLoggingExample class demonstrating composite and file loggers
- Implemented multi-file logging setup with separate error and full logs
- Added game event and performance logging methods
- Included key input handling for log operations (flush, clear)
- Setup proper resource disposal on application quit
2025-11-07 14:12:50 +03:00
2f2d100eae feat(inputs): remove obsolete COM input system and update dependencies
- Removed deprecated ButtonPinMapping enum and related COM input classes- Updated ComInputToInputSystemAdapter with improved binding logic- Refactored GameManager to use new globals prefab path
- Enhanced GameEndUIController with event system focus management
- Modified Globals prefab to use pin-based input bindings
- Cleaned up obsolete COM system wrapper and native wrapper classes
- Adjusted input adapter to support pin bindings over action bindings
- Updated manufacturer name in virtual gamepad description
2025-11-04 17:06:51 +03:00
868089344b Added COM controller support. Added bridge between COM and InputSystem. Rewritten some code by _sega 2025-11-03 17:08:00 +03:00
152066e9a3 feat(game): implement win/lose events and UI updates- Added GameOverEvent and GameWonEvent with total play time
- Updated ContinueGame method to reset lives and coins- Modified GameOver and GameWin methods to invoke events
- Adjusted stage count per world from5 to 3
- Added win banner UI with header text and layout changes
- Updated canvas elements positioning and sizing
- Included new UI elements for win/lose states- Reorganized UI hierarchy in Level UI scene
- Added menu and continue buttons in win panel
- Fixed text components naming and alignment
- Added game start time tracking for play duration
2025-10-31 17:03:20 +03:00
5bafc385da feat(audio): increase SFX pool size and preload audio data
- Increased SFX pool size from 8 to 16 in AudioManager
- Enabled preloadAudioData for multiple SFX files
- Removed unused VisualScripting import from Checkpoint script
- Reordered using statements in several scripts for consistency
- Added CoinCollectible component to Coin prefab with pickup effects
- Updated sorting layers and mesh LOD settings in Coin prefabs
- Fixed typo in Interfaces.cs: optionaAttachPoint to optionalAttachPoint
- Modified AddCoin method to accept count parameter and handle coin overflow
- Moved projectile scripts (BasicProjectile, EnemyBasicProjectile, PhysicsProjectile, PickableProjectile)
- Cleaned up unused namespaces and imports across various scripts
2025-10-30 16:39:15 +03:00
71c4d1123b Add MusicController and related assets; implement music playback features with crossfade option 2025-10-27 15:58:27 +03:00
09f10bd5be integrated Audio system in player and enemies scripts; made ScriptableObjects for SFX Assets; modified AudioManager.cs by _sega to play random SFX from SFX Asset 2025-10-24 16:54:12 +03:00
4a750d9404 Add AudioManager and PlayerAnimationEvents; refactor namespaces to Managers 2025-10-23 17:07:23 +03:00
d821e7c1df Project refactoring pt.2 2025-10-08 10:24:56 +03:00