【Python教程】制作表情包游戏

零 Python教程评论81字数 1664阅读5分32秒阅读模式

所需工具:

Python

聪明的大脑文章源自灵鲨社区-https://www.0s52.com/bcjc/pythonjc/7565.html

勤劳的双手文章源自灵鲨社区-https://www.0s52.com/bcjc/pythonjc/7565.html

 文章源自灵鲨社区-https://www.0s52.com/bcjc/pythonjc/7565.html

注意:本站只提供教程,不提供任何成品+工具+软件链接,仅限用于学习和研究。文章源自灵鲨社区-https://www.0s52.com/bcjc/pythonjc/7565.html

 文章源自灵鲨社区-https://www.0s52.com/bcjc/pythonjc/7565.html

导语

微信聊天可爱表情包文章源自灵鲨社区-https://www.0s52.com/bcjc/pythonjc/7565.html

表情包”已经成为当前网友必不可少的聊天神器,如果话题突然尴尬或者冷场,一张表情包则能够很好的化解“危机”,使聊天继续畅快下去。文章源自灵鲨社区-https://www.0s52.com/bcjc/pythonjc/7565.html

而且,没有聊天话题的时候,两个人斗图也是一个不错的消遣方式。文章源自灵鲨社区-https://www.0s52.com/bcjc/pythonjc/7565.html

最近不是感觉自己体重有明显的增加吗?文章源自灵鲨社区-https://www.0s52.com/bcjc/pythonjc/7565.html

闲着的时候跟还在上小学的表弟聊天,也不知道小孩子哪儿来这么多奇奇怪怪的表情包:文章源自灵鲨社区-https://www.0s52.com/bcjc/pythonjc/7565.html

哈哈哈!这不就是传说中的嗷大喵吗?

灵感一现,反手给小表弟开发了一款嗷大喵快跑的游戏~快来看看吧!

正文

游戏规则:嗷大喵快跑这款游戏设计,主要是躲避身后的恶龙、前方的火焰。

环境安装:主要基于游戏模块pygame制作而成。基本的环境python等可直接自行安装。

首先是准备好的游戏图片素材:

 

创建游戏界面:

button = Button(upImageFilename,downImageFilename, (400,500))
interface = pygame.image.load("interface.png")

如下:

​​

一进游戏界面,音乐是要来点儿的。

def audio_init():
global hit_au,btn_au,bg_au,bullent_au
pygame.mixer.init()
hit_au = pygame.mixer.Sound("exlposion.wav")
btn_au = pygame.mixer.Sound("button.wav")
bg_au = pygame.mixer.Sound("background.ogg")
bullent_au = pygame.mixer.Sound("bullet.wav")

创建恶龙、子弹等精灵类。

bg1 = MyMap(0,0)
bg2 = MyMap(600,0)
group = pygame.sprite.Group()
group_exp = pygame.sprite.Group()
group_fruit = pygame.sprite.Group()
dragon = MySprite()
dragon.load("dragon.png", 260, 150, 3)
dragon.position = 100, 230
group.add(dragon)
explosion = MySprite()
explosion.load("explosion.png",128,128,6)
player = MySprite()
player.load("sprite.png", 100, 100, 4)
player.position = 400, 270
group.add(player)
arrow = MySprite()
arrow.load("flame.png", 40, 16, 1)
arrow.position = 800,320
group.add(arrow)

 

既然是奔跑的游戏, 那自然地图是需要一直前进滚动状态。

class MyMap(pygame.sprite.Sprite):
def __init__(self,x,y):
self.x = x
self.y = y
self.bg = pygame.image.load("background.png").convert_alpha()
def map_rolling(self):
if self.x < -600:
self.x = 600
else:
self.x -=5
def map_update(self):
screen.blit(self.bg, (self.x,self.y))
def set_pos(x,y):
self.x =x
self.y =y

....................................................................

等等等......代码很多撒,展示部分代码先。

....................................................................

​效果图:

零
  • 转载请务必保留本文链接:https://www.0s52.com/bcjc/pythonjc/7565.html
    本社区资源仅供用于学习和交流,请勿用于商业用途
    未经允许不得进行转载/复制/分享

发表评论