88 Commits

Author SHA1 Message Date
horooko ca2b6bb08b [Add] VHierarchy Config 2026-03-28 13:11:14 +07:00
horooko 88109aa98d [Add] VTabs 2 2026-03-28 12:57:20 +07:00
horooko 600ec5eee8 [Add] VHierachy 2 2026-03-28 12:56:54 +07:00
horooko a4f2654d0b Update HotReload 2026-03-28 12:54:41 +07:00
horooko f2173d2c73 [Add] Game Loop Playable 2026-03-28 12:53:34 +07:00
horooko 78ad76120f [Temp] UI Fix 2026-03-28 02:51:46 +07:00
horooko 537ae1ce5c [Add] GameLoop base 2026-03-18 09:13:48 +07:00
horooko c819c0d045 [Fix] Test 2026-03-09 22:34:20 +07:00
horooko 6a3d419b1e [Fix] Move files 2026-03-08 11:36:31 +07:00
horooko 8ddcfb5018 [Fix] Closest Quaternion 2026-03-08 00:45:14 +07:00
horooko 9236d66022 [Rem] Upper sum Text & upper bonus text | previewText & recordedScoreText (move to scoreText) 2026-03-08 00:34:45 +07:00
horooko dc82e93322 [Add] Dice return script 2026-03-07 14:42:31 +07:00
horooko 26dbe82f47 [Add] Master Dice 2026-03-07 05:54:25 +07:00
horooko 73b941d5eb [Add] Master Category 2026-03-06 23:29:46 +07:00
horooko 9580d76a53 [Add] Tests summary & fix scene 2026-03-05 10:21:05 +07:00
horooko 05c2619de4 [Fix] Limited Use Modifier 2026-03-05 09:52:26 +07:00
horooko 72bbdc76af [Fix] ScoringSystem 2026-03-05 09:41:23 +07:00
horooko dc901b9895 [Add] Debugger Inventory & small ui fixes 2026-03-05 09:03:19 +07:00
horooko d75dad3fa3 [Add] Coliders & max Rolls set debug 2026-03-05 07:08:19 +07:00
horooko 74c99a6ebc [Add] Game info 2026-03-05 07:02:13 +07:00
horooko 86ce7c2888 [Add] Dice Panel 2026-03-05 06:41:55 +07:00
horooko 3b464f0be1 [Add] Category UI 2026-03-04 22:58:40 +07:00
horooko 3793686dcf [Refactor] Final fix GameManager & GameController 2026-03-04 07:20:42 +07:00
horooko 3031d2e4c2 [Refactor] Fix GameController 2026-03-04 06:48:21 +07:00
horooko 244f635062 [Add] UI and fix modifiers 2026-03-04 06:39:06 +07:00
horooko f52131f755 [Fix] Refactor project 2026-03-02 12:49:12 +07:00
horooko f65976796d [Add] Dice & Refactor private names 2026-03-02 11:22:01 +07:00
horooko 4890fa946e [Fix] Add PlaceHolder 2026-03-02 08:43:49 +07:00
horooko 1d6a6b3b7a [Fix] Временный перевод на русский язык 2026-03-02 08:29:30 +07:00
horooko c51ae03032 [Add] Modifiers 2026-03-02 08:20:30 +07:00
horooko 82483442cf [Add] ModifierCatalog 2026-03-02 07:09:37 +07:00
horooko d35bfdc6b4 [Add] Place Holder 2026-03-02 06:19:00 +07:00
horooko d6b79036b7 [Fix] Conflicts 2026-03-02 05:43:11 +07:00
horooko 0cce4a74f0 Merge branch 'claude/vibrant-tereshkova'
# Conflicts:
#	Assets/Scripts/Dice/DiceCatalog.cs
#	Assets/Scripts/Dice/DiceDefinitionSO.cs
#	Assets/Scripts/Dice/DiceDefinitionSO.cs.meta
#	Assets/Scripts/Dice/DiceInstance.cs
#	Assets/Scripts/Dice/DiceRoller.cs
#	Assets/Scripts/Dice/DieDefinitionSO.cs
#	Assets/Scripts/Dice/DieDefinitionSO.cs.meta
#	Assets/Scripts/Dice/DiсeDefinition.cs
#	Assets/Scripts/Dice/DiсeDefinition.cs.meta
#	Assets/Scripts/Dice/IDice.cs
#	Assets/Scripts/Dice/StandardDiceSO.cs
#	Assets/Scripts/Dice/StandardDiceSO.cs.meta
#	Assets/Scripts/Dice/StandardDieSO.cs
#	Assets/Scripts/Dice/StandardDieSO.cs.meta
#	Assets/Scripts/Dice/StandardDiсe.cs
#	Assets/Scripts/Dice/StandardDiсe.cs.meta
#	Assets/Scripts/Player/DiceCollection.cs
#	Assets/Scripts/Shop/ShopModel.cs
#	Assets/Scripts/Tests/Editor/DiceCollectionTests.cs
#	Assets/Scripts/Tests/Editor/ScoringSystemTests.cs
#	Assets/Scripts/Tests/Editor/ShopModelTests.cs
2026-03-02 05:39:54 +07:00
horooko 13b18b0a8b [Rename] Unify Die → Dice naming across the entire project
Standardize all class, interface, file, method, event, field, and variable
names from the inconsistent "Die" form to "Dice", matching the existing
DiceManager/DiceCatalog/DiceCollection convention.

Renamed files (7 + meta): IDie→IDice, DieInstance→DiceInstance,
DieDefinitionSO→DiceDefinitionSO, StandardDieSO→StandardDiceSO,
DieValueCondition→DiceValueCondition, AddPerDieEffect→AddPerDiceEffect,
MultiplyPerDieEffect→MultiplyPerDiceEffect.

Updated all 31 consumer and test files with matching reference changes.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 05:37:12 +07:00
horooko 29ee43807e [Add] Data 2026-03-02 05:25:05 +07:00
horooko 06a75436fe Merge branch 'claude/vibrant-tereshkova'
# Conflicts:
#	Assets/Scripts/Dice/DiceRoller.cs
2026-03-01 21:30:39 +07:00
horooko ddc3b4af47 [Refactor] Replace [SerializeField] + getter with [field: SerializeField] auto-properties 2026-03-01 21:29:47 +07:00
horooko f6c354d41c [Refactor] Replace [SerializeField] + getter with [field: SerializeField] auto-properties
Convert serialized private fields with public arrow getters to
[field: SerializeField] auto-properties across ScriptableObjects
(DieDefinitionSO, CategoryDefinition, ModifierDefinition, Effect,
ModifierBehavior, SumOfValueCategory) and select MonoBehaviours
(DiceRoller, Dice.Entry struct). Fields with type-changing getters
(List→IReadOnlyList) or computed getters are intentionally kept as-is.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 21:28:48 +07:00
horooko 30f9532fd7 [Add] Meta 2026-03-01 21:12:51 +07:00
horooko fcceb0ce45 Rework shop to support multiple item types and add unified PlayerModel
Generalize the shop from selling only ModifierDefinition to any IShopItem
(modifiers + dice). Add purchase condition checks, hover tooltips, and
fixed prices. Introduce PlayerModel as a facade over CurrencyBank,
InventoryModel, and DiceCollection for centralized state and save/load.

New files:
- IShopItem interface for purchasable items
- ShopCatalog SO (unified catalog for all item types)
- ShopTooltipView (description on hover)
- PlayerModel (aggregates player state)
- DiceCollection (owned dice tracking)
- DiceCatalog SO (dice definition registry)
- DiceCollectionTests

Modified:
- ModifierDefinition/DieDefinitionSO implement IShopItem
- ShopModel/ShopView/ShopItemView/ShopController use IShopItem
- SaveData v3 with OwnedDiceIds
- GameController uses PlayerModel for save/load
- GameLifetimeScope registers new services

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 21:04:34 +07:00
horooko 62864dc103 [Refactor] Replace [SerializeField] + getter with [field: SerializeField] auto-properties
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 16:33:15 +07:00
horooko 85d639aa70 [Fix] Name & add meta 2026-03-01 16:23:41 +07:00
horooko 3c50415111 Extend VContainer DI: eliminate manual composition and duplicate references
- Register InventoryModel, ShopModel as container-managed singletons
- Register GameController, ShopController, InventoryController via RegisterComponent
- Replace [SerializeField] with [Inject] for service dependencies in controllers
- Move maxActiveModifierSlots config to GameLifetimeScope (composition root)
- Remove manual model creation and Initialize() calls from GameController
- Add ToggleVisibility() to ShopController/InventoryController, removing GetComponentInChildren
- Move event subscriptions from Awake to Start for safe VContainer injection order
- Transfer game startup orchestration to GameController.Start()

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 16:14:44 +07:00
horooko 6c10a35bf9 [Fix] Naming 2026-03-01 11:52:15 +07:00
horooko 0f9b162061 [Refactor] Replace hardcoded categories with data-driven SO system and abstract dice
- Add abstract dice system (IDie interface, DieDefinitionSO, StandardDieSO, DieInstance)
  to support future custom dice types while keeping backward compat via int[] DiceValues
- Replace YachtCategory enum and CategoryScorer switch with CategoryDefinitionSO hierarchy:
  SumOfValueCategorySO, NOfAKindCategorySO, FullHouseCategorySO, StraightCategorySO, SumAllCategorySO
- Add CategoryCatalogSO for ordered category collections and DiceCheckUtility for shared logic
- Refactor ScoringSystem, Views, GameManager, GameController to use SO references
- Update CategoryCondition modifier to use SO reference instead of enum
- Update all editor tests to use SO-based categories and DieInstance

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 11:46:50 +07:00
horooko 6a48d68f75 Delete Editor.meta 2026-03-01 06:32:50 +07:00
horooko 549fffd69e [Fix] DI 2026-03-01 06:31:21 +07:00
horooko 10a9417039 [Fix] 2026-03-01 06:29:09 +07:00
horooko 85aedc6def [Add] Meta 2026-03-01 06:25:06 +07:00