Python编程:轻松实现猜谜、数字炸弹与拼图小游戏

创始人
2024-12-22 13:58:35
0 次浏览
0 评论

python简单小游戏代码

1、Python猜谜游戏代码:2.importrandom#Randommoduleimport3,4,num=15,yin_num=06,shu_num=07,whilenum2:12,print('无法生成大于2的值')13.else:14.data=['石头','剪刀','布']15.com=random.randint(0,2)16.print(输出为{},计算机输出为{}.format(data[user],data[com]))17.ifuser==com:18.print('画')19,continue20,elif(user==0andcom==1)or(user==1andcom==2)or(user==2andcom==0):21,print('你赢了')22,yin_num+=123,否则:24.print('我输了')25,shu_num+=126,num+=127,Python数字炸弹小游戏代码:28、importrandom29、importtime30、31、bomb=random.randint(1,99)32、print(bomb)33、start=034、end=9935、while1==1:36、37、people=int(input(请输入“{}和{}:”之间的数字。
format(start,end)))38ifpeople>bomb:3。
9.print('h3ger')40,end=people41,elifpeoplebomb:52,print('更大')53,end=com54,elifcom

python可以做什么小游戏?

5,?65,?0))rect?=?remaining_time_render.get_rect()rect.left,?rect.top?=?(WIDTH-190,?15)self.screen.blit(remaining_time_render,?rect)

看看效果:

当设定的游戏时间到了,我们可以生成一些即时信息,代码如下:

while?True:for?event?in?pygame.event.get():if?event.type?==?pygame.QUIT:pygame.quit()sys.exit()if?event.type?==?pygame.KEYUP?and?event.key?==?pygame.K_r:flag?=?Trueif?flag:breakscreen.fill((255,?255,?220))text0?=?'最终得分:?%s'?%?skorteks1?=?'按?R?键重新启动'y?=?140for?idx,?text?in?enumerate([text0,?text1]):text_render?=?font.render(text,?1,?(85,?65,?0))rect?=?text_render.get_rect()if?idx?==?0:rect.left,?rect.top?=?(100,?y)elif?idx?==?1:rect.left,?rect.top?=?(100,?y)y?+=?60skrin.blit(text_render,?rect)pygame.display.update()

看看效果:

讲完了图形界面相关的部分游戏,我们看一下游戏逻辑的主要处理。

我们使用鼠标操作拼图块,因此程序需要检查是否有任何拼图块被选中。
这段代码执行如下:

def?checkSelected(self,?position):for?x?in?range(NUMGRID):for?y?in?range(NUMGRID):if?self.getGemByPos(x,?y).rect.collidepoint(*position):return?[x,?y]return?None

我们需要改变鼠标代码连续选中的拼图块的位置执行如下:

def?swapGem(self,?gem1_pos,?gem2_pos):margin?=?gem1_pos[0]?-?gem2_pos[0]?+?gem1_pos[1]?-?gem2_pos[1]if?abs(margin)?!=?1:return?Falsegem1?=?self.getGemByPos(*gem1_pos)gem2?=?self.getGemByPos(*gem2_pos)if?gem1_pos[0]?-?gem2_pos[0]?==?1:gem1.direction?=?'left'gem2.direction?=?'right'elif?gem1_pos[0]?-?gem2_pos[0]?==?-1:gem2.direction?=?'left'gem1.direction?=?'right'elif?gem1_pos[1]?-?gem2_pos[1]?==?1:gem1.direction?=?'up'gem2.direction?=?'down'elif?gem1_pos[1]?-?gem2_pos[1]?==?-1:gem2.direction?=?'向上'gem1.direction?=?'向下'gem1.target_x?=?gem2.rect.leftgem1.target_y?=?gem2.rect.topgem1.fixed?=?Falsegem2.target_x?=?gem1.rect。
leftgem2.target_y?=?gem1.rect.topgem2.fixed?=?Falseself.all_gems[gem2_pos[0]][gem2_pos[1]]?=?gem1self.all_gems[gem1_pos[0]][gem1_pos[1]]?=?gem2return?True

每次交换拼图时,我们都需要判断连续是否有三个或更多相同的拼图。
代码执行如下:

def?isMatch(self):for?x?in?range(NUMGRID):for?y?in?range(NUMGRID):if?x?+?2-2:for?each?in?[res_match[1],?res_match[1]+1,?res_match[1]+2]:gem?=?self.getGemByPos(*[each,?start])if?start?==?res_match[2]:self.group_of_jewels.remove(珠宝)self.all_gems[each]?=?Noneelif?start?=?0:gem.target_y?+=?GRIDSIZEgem.fixed?=?Falsegem.direction?=?'down'self.all_gems[each][start+1]?=?gemelse:宝石?=?谜语le(img_path=random.choice(self.gem_imgs),?size=(GRIDSIZE,?GRIDSIZE),?position=[XMARGIN+each*GRIDSIZE,?YMARGIN-GRIDSIZE],?downlen=GRIDSIZE)self.gems_group.add(gems)self.all_gems[each][start+1]?=?gemstart?-=?1elif?res_match[0]?==?2:start?=?res_match[2]while?start-4:if?start?==?res_match[2]:for?each?in?range(0,?3):gem?=?self.getGemByPos(*[res_match[1],?start+each])self.gems_group.remove(gems)self.all_gems[res_match[1]][start+each]?=?Noneelif?start?=?0:gem?=?self.getGemByPos(*[res_match[1],?start])gem.target_y?+=?GRIDSIZE?*?3gem.fixed?=?Falsegem.direction?=?'down'self.all_gems[res_match[1]][start+3]?=?gemelse:gem?=?Puzzle(img_path=random.choice(self.gem_imgs),?size=(GRIDSIZE,?GRIDSIZE),?position=[XMARGIN+res_match[1]*GRIDSIZE,?YMARGIN+start*GRIDSIZE],?downlen=GRIDSIZE*3)self.gems_group.add(gems)self.all_gems[res_match[1]][start+3]?=?gemstart?-=?1

<然后重复这个过程,直到游戏时间用完,游戏结束。

最后我们来看看动态游戏效果。

总结

本文我们使用Python实现了一个简单的消除游戏,有兴趣的可以进一步开发游戏,比如添加关卡等。

这篇关于Python实现消小乐游戏的文章就到这里了,希望大家以后多多支持。

《Python小游戏》据说是一款恢复程度很高的小游戏。
试试吧...

大家好~欢迎大家阅读我的文章!

又到了每日游戏更新系列时间了。
看看下面的.gif,让你想起了你的童年~

贪吃蛇的流行可以说是永恒的,但游戏的一般规则是控制贪吃蛇的方向。

寻找吃东西,每吃一口都会得到一定的积分,而且蛇的身体会随着吃的越来越长,身体越长,就越难玩。

不要碰墙,不能咬自己的身体,更不能咬自己的尾巴,小心其他蛇!

你小时候是哪个版本的贪吃蛇

这个

嘿~~~

今天这个大项目将带领大家制作一个Python版本的贪吃蛇游戏!

直接粘贴代码

无论你玩得有多好,技术有多好,最终你都会听到贪蛇的尖叫声。
记住:小蛇卑微,单纯蛇欺弱怕强,大蛇聪明自保~

热门文章
1
Python编程入门:全面解析Pytho... python的基本语法基本的Python语法如下:1.变量的定义。在编程语言中,...

2
Python字典操作全解析:添加、修改、... &#65279;Pythondict字典基本操作(包括添加、修改、删除键...

3
Python错误处理与异常处理:构建稳定... 2.5错误处理与异常在编程领域,错误处理和异常处理是保证程序稳定性和健壮性的关键...

4
Python数据转换攻略:字符串、列表、... Python字典、字符串及列表的相互转换Python中数据转换的艺术:从字典和字...

5
Python列表相加与求和技巧解析 重温python基础:列表相加的方法(两个list[]加法)今天,我们来看看Py...

6
Python运行快捷键大揭秘:高效操作,... python运行按哪个键运行Python时的快捷键包括Ctrl+Shift+F1...

7
Python字符与数字互转攻略:轻松掌握... python&#160;字符与数字如何转换Python是一种功能强大且结...

8
Python字符串转列表:两种常用方法解... python怎么将字符串转换为列表Python中将字符串转换为列表的方法有多种,...

9
Python字符串转列表:两种常用方法解... python怎么将字符串转换为列表在Python中将字符串转换为列表的方法有很多...

10
Python列表转字符串全攻略:掌握四种... Python列表到字符串–如何在Python中转换列表在Python中,将列表转...