背景
本系列文章,应用 Python3 一步步记录 Tetris 游戏的编写全过程,游戏性能包含手动游戏、游戏回放(数据库操作)、主动游戏(AI 机器人)。曾经实现 C ++ 版本,Qt5 之 QGraphicsItem 编写 Tetris 俄罗斯方块游戏。
布局
- 我的项目构造与界面设计
- block 类,最小方块定义
- tetris 类,俄罗斯方块定义
- tetris 方块的挪动与旋转
- game 类,游戏流程管制
- 实现游戏基本功能,反对游戏暂停
- 为数据查问封装 json
- 设计通用数据库操作封装,首先应用 sqlite3
- 设计 ORM 实现主动查问
- 存储历史数据,实现游戏回放
- 简略 AI
- 机器学习,改良 AI
设计思路
该游戏尽量不应用第三方库,次要重视算法,因而界面库抉择 python 内置的 tkinter。设计思维也采纳传统的形式,用一个二维数组来管制游戏空间,相似迷宫的形式。抉择这种形式有一个益处是,游戏的数据直观存在,容易获取。
效果图
我的项目地址
https://gitee.com/zhoutk/ptetris
或
https://github.com/zhoutk/ptetris
运行办法
1. install python3, git
2. git clone https://gitee.com/zhoutk/ptetris (or download and unzip source code)
3. cd ptetris
4. python3 tetris
This project surpport windows, linux, macOs
on linux, you must install tkinter first, use this command:
sudo apt install python3-tk
相干我的项目
曾经实现了 C ++ 版,我的项目地址:
https://gitee.com/zhoutk/qtetris