pygame小游戏——中国地图拼图小游戏
游戏简介
本游戏用python开发,可对中国各个省份进行拼图,设置三个模式,便于中小学生熟悉中国地图,省份及简称等。通过鼠标拖动省份到地图相应位置,寓教于乐。
游戏界面
1.打开游戏
打开游戏后进入主页。
主页显示欢迎词,历史最快完成游戏的记录,本次完成游戏的记录等,可选择简单模式、普通模式、困难模式等。点击开始游戏进入游戏,点击结束游戏关闭游戏。
2.简单模式开始游戏
简单模式游戏地图上显示各省份简称,左上角显示游戏用时。右侧显示当前拼图的省份,可点击换一换,更换省份,用鼠标点击省份,移动鼠标,到地图上相应位置,若成功则音效提示。
右上角可点击暂停,计时停止,不可进行拼图。点击主页可推出本次游戏进入主页面。
游戏完成后会记录本次游戏用时,若比记录用时短,则会更新记录用时,显示破纪录了。
3.普通模式开始游戏
普通模式地图上不显示省份信息,只显示省份轮廓,右侧提示省份简称。
4.困难模式开始游戏
困难模式地图上不显示省份轮廓,右侧不提示省份信息。
主要代码
- 计时器
# 自定义计时事件
COUNT = pygame.USEREVENT
# 每隔1秒发送一次自定义事件
pygame.time.set_timer(COUNT, 1000)
# 计时计数
counts = 0
# 计时标志
timer = False
if event.type == COUNT: # 判断事件是否为计时事件
if timer:
counts += 1
2.鼠标拖动
# 鼠标拖动
if event.type == pygame.MOUSEBUTTONDOWN: # 获取点击鼠标事件
if event.button == 1 and myprov.rect.collidepoint(event.pos): # 鼠标是否在省份内
moving = True
elif event.type == pygame.MOUSEBUTTONUP: # 获取松开鼠标事件
if event.button == 1: # 松开鼠标左键
moving = False
根据鼠标位置,显示省份图片,则具有拖动效果。
3. 随机从字典中选取一个键值
import numpy as np
key = np.random.choice(list(provinces.keys())) # 随机选择省份(获取键)
value = provinces[key] # 获取相应的值
- 遍历字典
for key, value in mydict.items(): # 获取键和值
……
for value in provincestext.values(): # 获取值
……
for key in provincestext.keys(): # 获取键
……
- 删除字典中某一个键值
del mydict[key] # 原省份中删除正确省份
- python程序转exe文件方法
命令提示符进入python程序地址(或在地址栏输入cmd打开命令提示符),使用命令pyinstaller -F -w -i favicon.ico main.py。
本命令针对当个程序文件。
其中:-i favicon.ico为设定exe文件图标。
-w为显示程序执行提示框,可不添加。遇见exe文件闪退问题时,可以在exe文件地址进入命令提示符,输入exe程序名(不带.exe)执行,即可查看报错原因。
最后main.py 为要转exe的程序文件。 - 针对python程序转exe文件后运行闪退问题的解决方法
问题原因:Intel MKL FATAL ERROR: Cannot load mkl_intel_thread.dll
解决方法:将mkl_intel_thread.dll文件复制到exe文件目录下即可。
游戏下载地址
游戏下载地址为:
https://download.csdn.net/download/weixin_39151703/12161684
附中国地图,各省份地图等。
附mkl_intel_thread.dll文件。