This is a Minesweeper-like puzzle game, built using Jetpack Compose, for Android.
The objective of this game is to clear a rectangular board containing hidden "mines" or bombs without detonating any of them, with help from clues about the number of neighboring mines in each cell.
Dark mode | Light mode |
---|---|
- Zoomable and Panabel minefield
- Safe first click - The first cell is never a mine as the minefield is generated around the first click
- Multiple difficulty levels to choose from
- Haptic & Aural feedback
- Day / Night theme
- Animating gradient cell background
- Randomly generated levels
- Tap a cell to reveal it
- Long press an unrevealed cell to flag/unflag it
- Tap an already revealed cell to expose potentially solved cells
com.jayasuryat.minesweeperjc
โโโ ๐ app/ # App module
โ โโโ presentation/ # Navigation & Screens
โ โโโ theme/ # Theming
โ โโโ MinesweeperApp.kt
โ
โโโ ๐ minesweeper-engine/ # Module for driving all the logics of the game
โ โโโ controller/ # Game actions, events, game controller and action handlers
โ โ โโโ model/ # Models for actions and events
โ โโโ gridgenerator/ # Generators for the minefield
โ โโโ model/ # Models for cells and grid
โ โโโ state/ # Stateful grid and utils
โ โโโ util/
โ
โโโ ๐ minesweeper-engine-debug/ # Module for debug utils related to minesweeper-engine
โ
โโโ ๐ minesweeper-ui/ # Module for all of the UI components of the mine grid
โ โโโ composable/
โ โโโ action/ # Action listeners for Minefield interaction actions
โ โโโ cell/ # All composables related to MineCells
โ โโโ component/ # Helper composables
โ โโโ grid/ # All composables related to MineGrid
โ โโโ theme/ # Theming for Minefield UI components
โ
โโโ ๐ ui-game/ # Module for the actual MineField screen
โ โโโ composable/ # All UI components
โ โ โโโ feedback/ # Composables for handling feedback
โ โ โโโ topbar/ # Composables for game TopBar
โ โโโ feedback/ # Helper classes for performing feedback operations
โ โโโ logic/ # Game logic coordinators
โ โโโ GameScreen.kt # Actual Game-Screen
โ
โโโ ๐ ui-difficulty-selection/ # Module for difficulty selection screen
โ
โโโ ๐ util/ # Module for common utilities
All the SFX used in this project are sourced from freesound.org and are licensed under the Creative Commons 0 License.
Copyright 2021 Jaya Surya Thotapalli
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.