mirror of
https://github.com/kristoferssolo/Tetris.git
synced 2025-10-21 20:00:35 +00:00
92 lines
2.6 KiB
Markdown
92 lines
2.6 KiB
Markdown
# Tetris
|
|
|
|
<!-- toc -->
|
|
|
|
- [Overview](#overview)
|
|
- [Prerequisites](#prerequisites)
|
|
- [Running the game](#running-the-game)
|
|
- [Settings](#settings)
|
|
* [General Settings](#general-settings)
|
|
* [Movement Settings](#movement-settings)
|
|
* [Rotation Settings](#rotation-settings)
|
|
* [Action Settings](#action-settings)
|
|
* [Volume Settings](#volume-settings)
|
|
+ [Music](#music)
|
|
+ [Sound Effects (SFX)](#sound-effects-sfx)
|
|
- [Acknowledgments](#acknowledgments)
|
|
|
|
<!-- tocstop -->
|
|
|
|
## Overview
|
|
|
|
Welcome to Tetris, a classic and timeless game implemented in Python using the [Pygame](https://www.pygame.org/) library.
|
|
|
|
## Prerequisites
|
|
Before running the Tetris game, make sure you have the following installed on your system:
|
|
- Python (version 3.11 recommended)
|
|
|
|
## Running the game
|
|
|
|
1. Clone the repository:
|
|
```bash
|
|
git clone https://github.com/kristoferssolo/Tetris
|
|
```
|
|
|
|
2. Navigate to the project directory:
|
|
```bash
|
|
cd Tetris
|
|
```
|
|
|
|
3. Install the required dependencies:
|
|
```bash
|
|
pip install .
|
|
```
|
|
|
|
4. Run the game:
|
|
```bash
|
|
python main.py
|
|
# or
|
|
python -m tetris
|
|
```
|
|
|
|
## Settings
|
|
The `settings.toml` file is a configuration file for customizing various aspects of the game.
|
|
|
|
### General Settings
|
|
- `pause`: Defines the keys to pause the game. Currently a work in progress (WIP[^WIP]).
|
|
- `quit`: Defines the key(s) to quit the game.
|
|
- `colorscheme`: Specifies the color scheme for the game interface. Options include:
|
|
- `tokyonight-night`
|
|
- `tokyonight-storm`
|
|
- `tokyonight-day`
|
|
- `tokyonight-moon`
|
|
|
|
### Movement Settings
|
|
- `left`: Defines the keys to move the tetromino[^tetromino] left.
|
|
- `right`: Defines the keys to move the tetromino right.
|
|
- `down`: Defines the keys to accelerate the tetromino's fall.
|
|
|
|
### Rotation Settings
|
|
- `cw (clockwise )`: Defines the keys to rotate the tetromino in a clockwise direction.
|
|
- `ccw (counter-clockwise)`: Defines the keys to rotate the tetromino in a counter-clockwise direction.
|
|
|
|
### Action Settings
|
|
- `hold`: Defines the keys to hold the tetromino (WIP).
|
|
- `drop`: Defines the keys to instantly drop the tetromino.
|
|
|
|
### Volume Settings
|
|
#### Music
|
|
- `enabled`: Indicates whether music is enabled.
|
|
- `level`: Specifies the volume level for the music.
|
|
|
|
#### Sound Effects (SFX)
|
|
- `enabled`: Indicates whether sound effects are enabled.
|
|
- `level`: Specifies the volume level for the sound effects.
|
|
|
|
|
|
## Acknowledgments
|
|
Thanks to [Folke](https://github.com/folke), the creator of [TokyoNight](https://github.com/folke/tokyonight.nvim) color theme.
|
|
|
|
[^WIP]: Work In Progress.
|
|
[^tetromino]: A tetromino is a geometric shape composed of four squares, connected orthogonally (i.e. at the edges and not the corners).
|