背景

本系列文章,应用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, git2. git clone https://gitee.com/zhoutk/ptetris (or download and unzip source code)3. cd ptetris4. python3 tetrisThis project surpport windows, linux, macOson linux, you must install tkinter first, use this command:  sudo apt install python3-tk

相干我的项目

曾经实现了C++版,我的项目地址:

https://gitee.com/zhoutk/qtetris