Welcome to Math Riddle, the ultimate brain workout game designed to elevate your cognitive abilities and keep your mind sharp! With 40+ unique math-based riddles and observation puzzles, challenge your memory, focus, and problem-solving skills. Whether you're looking to improve your IQ or simply have fun, Math Riddle offers an easy-to-use interface and multiple difficulty levels to keep you engaged. Play anytime, anywhere, as the game is fully offline playable. Get ready for an intriguing mental journey that becomes more captivating with each level!
Math Riddle features three different types of games, each offering unique challenges:
enum GameType {
numpad,
option,
imageOption,
}
Numpad | Option(abcd) | Option(abcdef) | ImageOption |
The game is built around a set of models that represent different puzzle levels:
- Numpad:
- In this type of puzzle, you will be presented with a question or a sequence that requires a numeric answer. Use the virtual numpad to input your solution and proceed to the next level.
- Its will created with
BaseLevel
class like this
BaseLevel(
id: 100, //Unique id for this puzzle
difficulty: 5, //Currently its not used
image: 100.toImagePath(), //Image path of this puzzle
answer: "40", //Numerical answer
)
- Option:
- Test your skills with multiple-choice questions. You'll be given a question along with a set of options, such as (a), (b), (c), (d), or any even number of options. Choose the correct option and move on to the next challenge.
- Its has predefine
ABCD
option or You can create your custom option likeABCDEF
or1,2,3,4
etc. - To create an "Option" puzzle, you can use the OptionLevel class like this:
OptionLevel(
id: 105,
difficulty: 5,
image: 105.toImagePath(),
answer: "B", //Answer from below optionList
optionList: [ // List of options for the puzzle
const Option(name: "A", isSelected: false), //isSelected is `false` by default
const Option(name: "B", isSelected: false),
const Option(name: "C", isSelected: false),
const Option(name: "D", isSelected: false),
],
)
- ImageOption:
- Engage in image-based puzzles with multiple-choice options. These puzzles include an image along with the corresponding options. Select the correct option based on the image content, and advance through the game.
- To create an "ImageOption" puzzle, you can use the ImageOptionLevel class like this:
ImageOptionLevel(
id: 112,
difficulty: 5,
image: 112.toImagePath(),
answer: "B", //Answer from below optionList
optionList: [ // List of options for the image-based puzzle
ImageOption(
name: "A", //Option name(which will cross check with answer)
image: 112.toOptionImagePath(type: "a"),//Image option path
),
ImageOption(
name: "B",
image: 112.toOptionImagePath(type: "b"),
),
ImageOption(
name: "C",
image: 112.toOptionImagePath(type: "c"),
),
ImageOption(
name: "D",
image: 112.toOptionImagePath(type: "d"),
),
],
)
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request