-
大小: 73KB文件類型: .zip金幣: 2下載: 1 次發(fā)布日期: 2021-05-08
- 語(yǔ)言: Python
- 標(biāo)簽: Python??flappybird??
資源簡(jiǎn)介
使用了pygame和gameobject實(shí)現(xiàn)的python版的flappybird小游戲

代碼片段和文件信息
start_image_filename?=?‘start.png‘
back_image_filename?=?‘bg.jpg‘
block_image_filename?=?‘pipe.png‘
bird_image_filename?=?‘bird.png‘
import?pygame
from?pygame.locals?import?*
from?gameobjects.vector2?import?*???
import?random
import?math
SCREEN_SIZE?=?(378537)
#SCREEN_SIZE?=?(600800)
run1?=?0
run2?=?0
over?=?0
def?load_image(file?width?number):
????surface?=?pygame.image.load(file).convert_alpha()
????height?=?surface.get_height()?
????return?[surface.subsurface(
????????Rect((i?*?width?0)?(width?height))
????????)?for?i?in?range(number)]
class?object(object):#實(shí)體類
????def?__init__(selfnameposition):
????????self.name?=?name
????????self.position?=?Vector2(*position)
????????self.speed?=?0
class?Fish(pygame.sprite.Sprite):
????#_life?=?100
????images?=?[]
????def?__init__(selfr):
????????self.order?=?0
????????self.rate?=?0.2
????????self.height?=?60
????????self.number?=?3
????????self.position?=?Vector2(189269)
????????self.r?=?r
????????self.speed?=?0
????????pygame.sprite.Sprite.__init__(self)
????????self.images?=?load_image(bird_image_filename80?3)
????????self.image?=?self.images[self.order]
????????#self.rect?=?Rect(0?0?self.width?self.height)
????????#self.life?=?self._life
????????self.passed_time?=?0
?
????def?update(self?passed_time):
????????self.passed_time?+=?passed_time
????????self.order?=?(?self.passed_time?/?self.rate?)?%?self.number
????????if?self.order?==?0?and?self.passed_time?>?self.rate:
????????????self.passed_time?=?0
????????self.image?=?self.images[int(self.order)]
????def?render(selfscreen):
????????xy?=?self.position
????????x?-=?40
????????y?-=?30
????????screen.blit(self.image(int(x)int(y)))
#class?Fish(object):#小球類
????#def?__init__(selfnamepositionr):
????????#object.__init__(selfnameposition)
????????#self.r?=?r
????#def?render(selfscreen):#繪制小球自己
????????#xy?=?self.position
????????#pygame.draw.circle(screen?(25116240)?(int(x)int(y))self.r)
class?Block(object):#方塊類
????def?__init__(selfnamepositionIDimage):
????????object.__init__(selfnameposition)
????????self.ran?=?random.randint(0200)#隨機(jī)值用于開(kāi)口位置
????????self.ID?=?ID#用于標(biāo)記這是第幾個(gè)方塊,方便統(tǒng)計(jì)分?jǐn)?shù)
????????self.image?=?image
????def?render(selfscreen):#繪制上下兩個(gè)長(zhǎng)方形形成障礙物
????????xy?=?self.position???????
????????screen.blit(self.image(x250+self.ran))
????????screen.blit(self.image(xself.ran-353))
class?Button(object):#按鈕類
????def?__init__(self??positionimage):
?
????????self.position?=?position
????????self.image?=?image
?
????def?render(self?screen):
????????x?y?=?self.position
????????w?h?=?self.image.get_size()
????????screen.blit(self.image?(x-w/2?y-h/2))
?
????def?is_over(self?point):#判斷鼠標(biāo)是否在按鈕上
????????if?(SCREEN_SIZE[0]-self.image.get_size()[0])/2?????????????if?(SCREEN_SIZE[1]-self.image.get_size()[1])/2????????????
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件???????49954??2014-03-09?23:41??bg.jpg
?????文件???????12443??2014-03-09?23:40??bird.png
?????文件????????9398??2014-07-03?00:05??flappyfish1.2test.py
?????文件???????13607??2014-03-12?15:34??pipe.png
?????文件?????????158??2014-07-01?20:05??readme.txt
?????文件???????10288??2014-03-13?19:58??start.png
評(píng)論
共有 條評(píng)論