Python小游戏--扫雷

标签:
python游戏扫雷代码it |
分类: 程序人生 |
最近在学习python,闲来有空想看看自己的学习成果,做了一个简易的扫雷游戏。效果如下图:
游戏运作流程:首先是绘制一个8X8矩阵,所有雷区地块初始显示为1,表示没有清扫。用户输入要清扫的雷区地块x,y坐标。程序进行检测,如果没有雷,雷区地块显示改为0,表示已经清扫了,否则显示改为X,然后绘制出已经清扫的雷区地块和全部有雷地块,并计算出用户得分。
游戏数据结构与逻辑:游戏的数据保存使用了list构造出一个8X8矩阵存储。 list中的值只要3种,0-没有地雷;1-有地雷;2-已经清扫。每次用户输入x,y坐标后,都进行修改list中的值。游戏乐趣的关键点在于地雷的随机分布设计。我采用了random函数,雷的最大个数为15个,每次游戏开始前,程序对地雷进行随机分布。好了,说了这么多,还是读者自己看程序代码吧,程序不太复杂,一看就明白。
------------------------------------begin--------------------------------------------------
# -*- coding: utf-8 -*-
'''@author: Rayment
@version: 1.0
@note: 实现扫雷游戏(2011-9-20)
测试环境:python2.5.2
'''
import sys
import random
import string
class MineSweeping():
'''扫雷主程序
'''
def
__init__(self):
'''初始化函式
'''
self.ROW = 8
self.LINE = 8
self.SCORE = 0 #扫雷得分
self.MineNum = 15 #地雷总数
self.xy_list= [[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0]]
游戏运作流程:首先是绘制一个8X8矩阵,所有雷区地块初始显示为1,表示没有清扫。用户输入要清扫的雷区地块x,y坐标。程序进行检测,如果没有雷,雷区地块显示改为0,表示已经清扫了,否则显示改为X,然后绘制出已经清扫的雷区地块和全部有雷地块,并计算出用户得分。
游戏数据结构与逻辑:游戏的数据保存使用了list构造出一个8X8矩阵存储。 list中的值只要3种,0-没有地雷;1-有地雷;2-已经清扫。每次用户输入x,y坐标后,都进行修改list中的值。游戏乐趣的关键点在于地雷的随机分布设计。我采用了random函数,雷的最大个数为15个,每次游戏开始前,程序对地雷进行随机分布。好了,说了这么多,还是读者自己看程序代码吧,程序不太复杂,一看就明白。
------------------------------------begin--------------------------------------------------
# -*- coding: utf-8 -*-
'''@author: Rayment
'''
import sys
import random
import string
class MineSweeping():