🎲 **Dice Match 3 — Swap, Match & Clear!** 🎲
Dice Match 3 is a refreshing puzzle game where you swap adjacent dice on a 6×6 grid to create matches of 3 or more. Enjoy smooth animations, combo rewards up to 3x multiplier, and helpful power-ups. Perfect for quick puzzle sessions! 🎮
🎮 Gameplay
• Tap a dice, then tap an adjacent dice to swap positions
• Match 3+ dice in a row (horizontal or vertical) to clear them
• Cleared dice trigger a chain reaction: fall down → fill gaps → check for new matches
• Each swap costs 1 move — reach 500 points in 30 moves to win
• Automatic deadlock detection: game ends when no valid swaps remain
⚡ Combo Reward System
• Consecutive clears trigger combo multipliers:
- 2 Combo: 1.5x points
- 3 Combo: 2.0x points
- 4 Combo: 2.5x points
- 5+ Combo: 3.0x points
• Real-time combo display: yellow banner shows "COMBO x2.0 (3 chains)"
• Score toast includes combo info: "+30 points! (3x COMBO)"
• Combo resets when no new matches are found
💎 Scoring System
• Base points: 3 dice → +10 | 4 dice → +25 | 5+ dice → +50
• Combo bonus: multiplier × base points (max +150 per clear with 5x combo)
• Real-time HUD: Score / Moves Left / Target (500)
🛠️ Helper Features(Watch rewarded ads to unlock)
• 💡 **Hint**: Highlights a group of matchable dice
• ↶ **Undo**: Revert the last move (stores up to 5 steps of history)
• 🔀 **Shuffle**: Randomly rearrange all dice to escape deadlocks
• ⏸️ **Pause**: Pause menu with Continue / Restart / Quit options
🎨 6-Color Dice System
• Each dice number has a unique background color for easy recognition:
- Dice 1: Light Blue (#E1F5FE)
- Dice 2: Light Green (#C5E1A5)
- Dice 3: Light Yellow (#FFE082)
- Dice 4: Light Orange (#FFAB91)
- Dice 5: Light Purple (#CE93D8)
- Dice 6: Blue (#90CAF9)
✨ Smooth Animation System
• **Tap feedback**: dice shrinks to 85% and bounces back (150ms)
• **Selection pulse**: selected dice border pulses continuously
• **Swap animation**: two dice smoothly exchange positions (250ms)
• **Elimination animation**: matched dice scale to 120% and fade out (300ms)
• **Gravity animation**: dice fall down with bounce effect (200-400ms, distance-based)
• **Combo animation**: banner scales to 1.2x when combo increases
🎮 Custom DiceGridView
• Custom View with Canvas drawing for 6×6 grid
• Supports scale, alpha, and position offset for animations
• Real-time selection highlight with stroke width pulse
• Dice drawable rendering with color-coded backgrounds
📱 6 Pages
• **Splash**: 1.5s brand showcase with fade-in animation
• **Home**: card-based layout with dice icon, start game / history / how to play / settings
• **Game**: score/moves/target HUD + combo banner + DiceGridView + hint/undo/shuffle/pause buttons
• **Settings**: sound/vibration toggles + version info (card sections with icons)
• **History**: RecyclerView list of past games (score / moves / completed / timestamp)
• **How to Play**: rules / scoring / tips sections (icons + card containers)
🖼️ Custom Dialogs
• **Game Over**: title changes based on win/loss/deadlock + final score + restart/quit options
• **Pause**: continue / restart / quit with semi-transparent backdrop
• Both dialogs use Material3 cards with 12dp rounded corners
📺 Ad Integration (TradPlus Aggregation)
• tradplus-sdk as standalone Gradle module with 12 ad networks
• Rewarded ads: Hint / Undo / Shuffle buttons
• Interstitial ads: game exit / back from game
• AdManager with session frequency control (max 1 ad per type per session)
• Graceful fallback: grants reward when ad not ready, never blocks gameplay
⚙️ Settings
• Sound Effects toggle (click / clear / win / lose sounds)
• Vibration toggle (tap feedback / clear feedback)
• Version info display
• All settings persist to SharedPreferences
✨ Technical Features
• Kotlin 100% + MVVM architecture (ViewModel + LiveData + Repository)
• Room Database with KSP for game history persistence
• Custom View (DiceGridView) with Canvas drawing + animation support
Swap dice to match lines! 3x combos, handy tools and fluent animations await.