python如何实现吃苹果小游戏

  介绍

这篇文章主要介绍了python如何实现吃苹果小游戏,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获、下面让小编带着大家一起了解一下。

本文实例为大家分享了python实现吃苹果小游戏的具体代码,具体内容如下

1。公共类模块

import  pygame   得到pygame.rect  import 矩形   ,   ,   def  print_text(字体,,x,, y,,文字,颜色=(255,,255,,255)):   ,imgText=font.render(文本,,真的,,颜色)   ,屏幕=pygame.display.get_surface ()   ,screen.blit (imgText (x, y))   ,   class  MySprite (pygame.sprite.Sprite):   自我,def  __init__ ():   pygame.sprite.Sprite.__init__才能(自我)   self.master_image才能=没有   self.frame 才能=0   self.old_frame 才能=1   self.frame_width 才能=1   self.frame_height 才能=1   self.first_frame 才能=0   self.last_frame 才能=0   self.columns 才能=0   self.last_time 才能=1   self.direction 才能=0   self.velocity 才能=0   ,   ,def  _getx(自我):return  self.rect.x   ,def  _gety(自我):return  self.rect.y   ,   ,def  _setx(自我,,值):self.rect.x =,值   ,def  _sety(自我,,值):self.rect.y =,值   ,“““   ,描述   ,财产()函数的作用是在新式类中返回属性值。   ,   ,语法   ,以下是,财产(),方法的语法:   ,   ,class 财产([fget [, fset [, fdel [, doc]]]])   ,参数   ——,fget 获取属性值的函数   ,fset ,,设置属性值的函数   ,fdel ,,删除属性值函数   ,doc ,,属性描述信息   ,返回值   ,返回新式类属性。   ,“““=,X 属性(_getx, _setx)=,Y 属性(_gety, _sety)   ,   ,#位置属性   ,def  _getpos(自我):return  self.rect.topleft   ,def  _setpos(自我,,pos): self.rect.topleft =, pos=,position 属性(_getpos, _setpos)   ,   ,def 负载(文件名,自我,还以为,宽度,高度,,列):   self.master_image才能=pygame.image.load(文件名).convert_alpha ()   时间=self.frame_height 才能;高度   self.frame_width 才能=,宽度   时间=self.rect 才能;矩形(0,0,宽度,,高度)   时间=self.columns 才能;列   ,   时间=rect 才能;self.master_image.get_rect ()   self.last_frame 才能=,(rect.width//宽)* (rect.height//高),安康;1   ,   ,def 更新(自我,,当前时间,率=30):   #才能跟新动画帧   if 才能;current_time 祝辞,self.last_time  +,率:   ,,self.frame  +=1   ,,if  self.frame 祝辞,self.last_frame:   ,,,self.frame =self.first_frame   ,,self.last_time =当前时间   #才能仅当更改时才创建帧   if 才能;self.frame  !=, self.old_frame:   ,,frame_x =, (self.frame  %, self.columns), * self.frame_width   ,,frame_y =, (self.frame //, self.columns), * self.frame_height   ,,矩形=矩形(frame_y, frame_x,还以为,self.frame_width, self.frame_height)   ,,self.image =, self.master_image.subsurface(矩形)   ,,self.old_frame =self.frame   class 点(对象):   ,def  __init__(自我,,x,, y):   self.x 才能=,x   self.y 才能=y   自我,def  getx (): return  self.x   ,def  gety(自我):return  self.y   ,def 对于setx(自我价值):self.x=价值   ,def 调用sety(自我价值):self.y=价值   ,   ,x=属性(getx对于setx)   ,y=属性(gety调用sety)   ,   ,def  __str__(自我):   return 才能;& # 39;x: & # 39; +“{: .0f}“.format (self.x), +, & # 39; y: & # 39; +“{: .0f}“.format (self.y)

2。首先生成随机苹果,然后监听键盘移动,播放动画。精灵和苹果碰撞检测,检测是吃掉苹果

import  pygame   得到pygame.rect  import 矩形   ,   得到只import  MyLibrary   import 随机   import 系统   ,   ,   def  calc_velocity(方向,或者=1.0):=,,velocity  MyLibrary.Point (0, 0)   ,if  direction ==0: #上   velocity.y 才能=韦尔==,elif  direction  2: #右   velocity.x 才能=韦尔==,elif  direction  4: #下==,,velocity.y 或者==,elif  direction  6: #左==,,velocity.x 或者   return 速度   ,   pygame.init ()   时间=screen  pygame.display.set_mode (800600)   字体=pygame.font.Font(没有,,36)   计时器=pygame.time.Clock ()   ,   #创建精灵组   player_group=pygame.sprite.Group ()   food_group=pygame.sprite.Group ()   ,   #初始化玩家精灵组   球员=MyLibrary.MySprite ()   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

python如何实现吃苹果小游戏