资源简介
python大作业.rar
代码片段和文件信息
# -*- coding: cp936 -*-
import pygamesys
from pygame.locals import *
import random
boardWidthboardHeight=(88)
gemNum=64
gemImageNum=5
gemSize=32
startX=44
startY=44
endX=556
endY=556
LEFT=1
RIGHT=2
UP=3
DOWN=4
square=[‘red.jpg‘‘green.jpg‘‘blue.jpg‘‘orange.jpg‘‘yellow.jpg‘]
gemImages=[]
class Game:
def __init__(self):
#初始化 pygame,screen ,timeclock
pygame.init()
self.bg=pygame.image.load(‘background.jpg‘)
for i in square:
gem=pygame.image.load(i)
gemImages.append(gem)
self.trans=pygame.image.load(‘trans.png‘)
#trans是一个64x64的空白方块
self.screen=pygame.display.set_mode((800600))
self.clock=pygame.time.Clock()
pygame.display.set_caption(‘Voice China‘)
#初始化整个版面的布局,列表解析,嵌套字典,每个小字典cube对应一个小方块的三个属性(key)
self.mainBoard=[[{} for i in range(boardWidth)]for j in range(boardHeight)]
for i in range(boardWidth):
for j in range(boardHeight):
cube={}
cube[‘imageColor‘]=gemImages[random.randint(04)]
cube[‘x‘]=startX+j*64
cube[‘y‘]=startY+i*64
self.mainBoard[i][j]=cube
matchedGemInit=self.FindMatchedGems()#to be continued(这是开始编写的时候留下的注释)
while matchedGemInit!=[]:
for gem in matchedGemInit:
#重置这个小块儿,然后把它从matchedGemInit中删去,让matchweGemInit继续工作
self.mainBoard[gem[0]][gem[1]][‘imageColor‘]=gemImages[random.randint(04)]
matchedGemInit.remove(gem)
matchedGemInit+=self.FindMatchedGems()
#检验是否在board内点击,鼠标点击事件是比较麻烦的,要全面考虑每次点击的位置,de各种bug...
def CheckIfInBoard(selfpos):
if(pos[0]>startX and pos[0]startY and pos[1] x=int((pos[0]-startX)/64)
y=int((pos[1]-startY)/64)
return (yx)
#开始没注意这个细节,整个程序就瘫痪了...
return None
#下落过程和最上方的更新,这个实现比较繁琐,不过好歹是想出来了
def DropGem(self):
Distance=[]
count=0
for j in range(8):
for i in range(8):
if self.mainBoard[i][j][‘imageColor‘]==self.trans:
count+=1
Distance.append(count)
count=0
#在这里加一个得分的声音get_point
get_point.play()
#对每一列的每行上的进行检查,逐一下移到line==0为止,在第一行随机补上
for col in range(8):
while(Distance[col]!=0):
for line in range(8):
if(self.mainBoard[line][col][‘imageColor‘]==self.trans):
if(line==0):
self.mainBoard[0][col][‘imageColor‘]=gemImages[random.randint(04)]
Distance[col]=Distance[col]-1
else:
self.mainBoard[line][col][‘imageColor‘]=self.mainBoard[line-1][c
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 137884 2014-12-20 11:46 python大作业\background.jpg
文件 349902 2014-12-16 15:34 python大作业\bg_music.mp3
文件 3272 2014-12-20 12:00 python大作业\blue.jpg
文件 9114 2012-07-20 03:49 python大作业\get_point.ogg
文件 17258 2014-12-20 12:03 python大作业\green.jpg
文件 3321 2014-12-20 12:04 python大作业\orange.jpg
文件 3929 2014-12-20 12:01 python大作业\red.jpg
文件 2877 2012-02-20 18:32 python大作业\trans.png
文件 50820 2012-07-19 20:36 python大作业\win.ogg
文件 3613 2014-12-20 11:58 python大作业\yellow.jpg
文件 13957 2014-12-22 22:38 python大作业\对对碰@中国好声音.py
目录 0 2014-12-27 23:30 python大作业
----------- --------- ---------- ----- ----
595947 12
- 上一篇:PythonOCC应用
- 下一篇:Python编写的课堂管理系统
相关资源
- CpuMemSets在Linux操作系统中的实现
- Python学习全系列教程永久可用
- 蓝奏云批量上传工具.zip
- python书籍 PDF
- 老男孩python项目实战
- Python.rar99111
- decision_tree_v2.py
- Python绝技运用Python成为顶级黑客.pdf
- python小波包文档及论文.zip
- Python黑帽子(黑客与渗透测试编程之
- FlaskWeb开发:基于Python的Web应用开发实
- Python基础教程第3版中英文源码.rar
- python数据结构与算法中文版.zip
- Python-冲顶大会芝士超人西瓜视频头脑
- time_series_forecasting_with_python.zip
- Python基础教程第三版PDF高清可复制.
- python编程从入门到实践.zip237878
- FlaskWeb开发:Python基于Web应用开发实战
- pythonBCRMDSJ.mobi
- 量化交易之路用Python做股票量化分析
- PYTHON自然语言处理中文版.pdf
- Python基础教程(第3版).rar
- GRAYHATPYTHON高清.英文.书签版.pdf
- Python简明教程第四版.rar
- Python编程:从入门到实践带书签完整
- Python基础教程(第3版).pdf109608
- vamei-从Python开始学编程.pdf
- 利用Python进行数据分析.pdf
- 小甲鱼零基础学python课后习题和答案
- Python编程:从入门到实践-PythonCrashC
评论
共有 条评论