|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 香蕉那个不拿拿 于 2022-8-19 13:12 编辑
Flappy Bird 是一款由越南视频游戏艺术家和程序员 Nguyn Hà ng 开发的手机游戏,最初于2013年5月发行,但在2014年初突然走红。这款游戏难度极高,并且十分令人上瘾,而它仅仅是通过简单的点按屏幕进行操作,来控制一个小鸟来躲避障碍物。
然而,在 Flappy Bird 大红大紫之时,也招致了很多批评的声音。美国《赫芬顿邮报》批评这款游戏是「一种令人发怒,困难且令人沮丧的游戏」。不久之后,《Flappy Bird》于 2014 年 2 月 10 日从 App Store 和谷歌 Play 主动下架,这位开发者称,他很抱歉做出了这样一款令人上瘾的应用。
今天,我根据B站上的教程制作出了一个及其简易的Flappy Bird
源码如下
https://pan.baidu.com/s/19Vvnb-7 ... 29583#list/path=%2F
提取码 nbnb
远观之,懵懵懂懂,不知其故
近观之,代码整洁如浮云,
清新出奇,可谓可远观而不可亵玩焉
细观之,却透露出了无与伦比的含蓄而残缺的美
好吧,我编不下去了
说人话就是:
一个因为作者懒而没有完善的游戏
没错,正如你所看到的。
即便是小鸟(或小鸡)进到了管子里面也会潇洒的出来
此外
- import pygame
- from random import *
- pygame.init()
- width,height = 284,512
- NB = 0
- screen = pygame.display.set_mode((width , height))
- pipes =[[200,4]]
- bird_up = pygame.image.load("images/bird_wing_up.png")
- bird_down = pygame.image.load("images/bird_wing_down.png")
- background = pygame.image.load("images/background.png")
- pipe_body = pygame.image.load("images/pipe_body.png")
- pipe_end = pygame.image.load("images/pipe_end.png")
- FBS=60
- def draw_pipes():
- global pipes
- for i in range(len(pipes)):
- for m in range(pipes[i][1]):
- screen.blit(pipe_body,(pipes[i][0],m*32))
- for m in range(pipes[i][1]+6,16):
- screen.blit(pipe_body,(pipes[i][0],m*32))
- screen.blit(pipe_end,(pipes[i][0],(pipes[i][1])*32))
- screen.blit(pipe_end,(pipes[i][0],(pipes[i][1]+5)*32))
- pipes[i][0] -=1
- def draw():
- h=height//2
- g=0.2
- v=0
- clock=pygame.time.Clock()
- while 1:
- if len(pipes)<4:
- x= pipes[-1][0]+200
- open_pos = randrange(1,9)
- pipes.append([x,open_pos])
- if pipes[0][0]<-100:
- pipes.pop(0)
- screen.blit(background,(0,0))
- global NB
- draw_pipes()
- if -1 < NB < 31:
- screen.blit(bird_up,(20,h))
- NB+=1
- if 30 < NB < 61:
- screen.blit(bird_down, (20, h))
- NB += 1
- if NB ==60:
- NB=0
- for event in pygame.event.get():
- if event.type == pygame.QUIT:
- pygame.quit()
- return
- if event.type == pygame.KEYDOWN:
- h -=40
- v=0
- v+=g
- h+=v
- pygame.display.update()
- clock.tick(FBS)
- draw()
复制代码
大家把这里g=2改成g=0.2更好一些 |
|