首页 攻略 技巧 10年前风靡全球的手游《愤怒的小鸟》是如何称霸榜单的?经典回归.

10年前风靡全球的手游《愤怒的小鸟》是如何称霸榜单的?经典回归.

更新时间:2022-10-03 4:51:24 分类:技巧 浏览:20
前言

《愤怒的小鸟》一直是我蛮喜欢的一个系列。

并不是说小鸟的每个系列游戏我都玩过,而是我一直觉得小鸟在ip的塑造上很让人有辨识度,色彩每个角色造型,都让我觉得无比亲切,而且人设饱满。所以本期的这篇文章我们做得简单点,来做一下Python版本《愤怒的小鸟》简约版。(代码见文末)为什么说是简约版?因为研究了很久,还没写出来,一个算是失败的作品,没啥游戏体验感代码也超级简单,2333 准备继续找找别的大佬写的代码做参考去了!我们先来看看这份简单的小代码吧!后来想想还是续写一个简易版跟不那么简易两个版本的吧~

正文

本文的游戏大概就是一只愤怒的小鸟左右duangduangduang来回撞!笑哭因为代码很简单我感觉可以直接给大家标上去了

一、简约版

环境安装Python3、 Pycharm 、Pygame模块。(如需安装包、激活码等直接私信我即可完成安装问题解答都可以的哈~)

第三方库的安装:pip install pygame
1)代码展示
import pygame,syspygame.init()#初始化操作#保存窗口大小width,height=600,400screen=pygame.display.set_mode([width,height])#创建游戏窗口#设置窗口标题pygame.display.set_caption("愤怒的小鸟")#加载小鸟素材player=pygame.image.load("xiaoniao.png")#获取图像矩形位置rect=player.get_rect()#声明XY运动速度的列表speed = [3,2]left_head = pygame.transform.flip(player,True,False)right_head = player#无限循环while True:    for event in pygame.event.get(): if event.type ==pygame.QUIT:     exit() if event.type ==pygame.KEYDOWN:     if event.key == pygame.K_LEFT:  player = left_head #小鸟的头向左  speed=[-2,1]     if event.key == pygame.K_RIGHT:  player = right_head #小鸟的头向左  speed=[2,1]     if event.key == pygame.K_UP:  player = left_head #小鸟的头向左  speed=[2,-1]     if event.key == pygame.K_DOWN:  player = right_head #小鸟的头向左  speed=[2,1]    rect =rect.move(speed)    if rect.right>width or rect.leftheight or rect.top<0: speed[1]=-speed[1]    screen.fill((255,255,255))    screen.blit(player,rect)    pygame.display.update()    pygame.time.delay(10)
2)效果展示

其实截图的话不怎么展示的出来效果——

​其实这个游戏可以飘了

二、不那么简约版

环境安装Python3、 Pycharm 、Pygame模块。(如需安装包、激活码等直接私信我即可完成安装问题解答都可以的哈~)

第三方库的安装:pip install pygame

1)代码展示

import pygameimport sysfrom pygame.locals import *from random import randintpygame.init()pygame.mixer.init()pygame.mixer.music.load('愤怒的小鸟背景音效.wav')pygame.mixer.music.set_volume(0.2)pygame.mixer.music.play(loops=-1)bg = pygame.image.load('愤怒的小鸟背景图3.jpg')bg_position = bg.get_rect()size = width, height = 1000, 570screen = pygame.display.set_mode(size)pygame.display.set_caption('愤怒的小鸟!')def main():    class Bird(pygame.sprite.Sprite): def __init__(self):     pygame.sprite.Sprite.__init__(self)     position=100,100     self.image=pygame.image.load('愤怒的小鸟里的小鸟.png')     self.rect=self.image.get_rect()     self.rect.center=position def move_left(self):     self.speed=[-5,0]     if self.rect.left=1000:  self.rect.right=1000     else:  self.rect=self.rect.move(self.speed) def move_up(self):     self.speed=[0,-5]     if self.rect.top=570:  self.rect.bottom=570     else:  self.rect=self.rect.move(self.speed)    class Pig(pygame.sprite.Sprite): def __init__(self):     pygame.sprite.Sprite.__init__(self)     y=randint(0,570)     position=[1000,y]     self.image=pygame.image.load('愤怒的小鸟里的小猪.png')     self.rect=self.image.get_rect()     self.rect.center=position     self.speed=[-4,0] def move(self):     self.rect=self.rect.move(self.speed)    bird=Bird()    i=0    group=pygame.sprite.Group()    state=True    while state: for event in pygame.event.get():     if event.type == pygame.QUIT:  sys.exit() key=pygame.key.get_pressed() if key[K_LEFT]:     bird.move_left() if key[K_RIGHT]:     bird.move_right() if key[K_UP]:     bird.move_up() if key[K_DOWN]:     bird.move_down() screen.blit(bg, bg_position) screen.blit(bird.image,bird.rect) i=i+1 if i%10==0:     pig=Pig()     group.add(pig) for p in group.sprites():     p.move()     screen.blit(p.image,p.rect)     if pygame.sprite.collide_mask(bird,p):  state=False  pause() pygame.display.flip() pygame.time.Clock().tick(60)def pause():    bg_go = pygame.image.load('愤怒的小鸟gameover图.jpg')    bg_go_pos = bg_go.get_rect()    size = width, height = 1000, 570    screen = pygame.display.set_mode(size)    pygame.display.set_caption('GameOver!')    while True: for event in pygame.event.get():     if event.type == pygame.QUIT:  sys.exit() img_src=pygame.image.load('重玩按钮.jpg') img_src_pos=img_src.get_rect() mouse_press=pygame.mouse.get_pressed() mouse_pos=pygame.mouse.get_pos() left=img_src_pos.left right=img_src_pos.right top=img_src_pos.top bottom=img_src_pos.bottom if left+100<mouse_pos[0]<right+100 and top+185<mouse_pos[1]<bottom+185:     img_src=pygame.image.load('重玩按钮2.jpg')     if mouse_press[0]:  main() img_src_pos = img_src.get_rect().center = 100, 185 screen.blit(bg_go, bg_go_pos) screen.blit(img_src,img_src_pos) pygame.display.flip()main()
2)效果展示

游戏界面:(游戏运行之后都是有音效的哦,游戏规则就是躲避右边的小猪啦)

​​游戏结束!

​​

总结

时隔多年,小编写代码的水平都飞起来了,说明技术还是提升了的,大家放心观看!往期还有很多源码等着你们自己拿自己看呢!

✨完整的素材等:私信小编06即可的啦~往期推荐阅读——

项目1.6 【Pygame小游戏】斗地主我见多了,BUT 这款开源欢乐斗地主,最让人服气~项目2.2【Pygame小游戏】扫雷游戏50多岁了,但这款我能玩一年~(三个版本集合)项目0.5 【视频倒放神器】超级玩法:千万不要倒放视频,太魔性了根本停不下来......项目0.6 【Python小程序】隐藏表白图:“你永远都不知道我喜欢你”(建议保存)项目0.4 ​​​​​​ Python教程:去除背景,我保证不动她一根头发(附多种方式)

文章汇总——

汇总: Python文章合集 | (入门到实战、游戏、Turtle、案例等)(文章汇总还有更多你案例等你来学习啦!)

版权声明: 本站内容部分来源网络,版权归作者所有,如有侵权,请联系我们删除!
相关文章
panda杀毒 网络
随着互联网的普及,电脑病毒的威胁也越来越严重。为了保护用户的电脑安全,各种杀毒软件层出不穷。其中,panda杀毒软件备受用户青睐,成为了许多人下载的首选。 一、panda杀毒软件介绍 panda杀毒软件是一款功能强大、操作简单的电脑安全软件。它能够及时发现并清除计算机中的病毒、木马、恶意软件等威胁,从而保护用户的个人信息和计算机系统安全。 二、panda杀毒软件下载流程 打开浏览器,在搜索引擎中输…
管理 2023-03-31 02:59:14
果冻爆爆乐 网络
随着智能手机的普及,越来越多的人开始喜欢玩各种手机游戏。而果冻爆爆乐就是其中一款备受欢迎的休闲游戏。那么,如何下载果冻爆爆乐呢?下面就为大家介绍一下。 一、应用商店下载 在手机应用商店中搜索“果冻爆爆乐”或“Jelly Blast”。 找到对应游戏图标,点击进入。 进入游戏详情页后,点击“下载”按钮进行下载安装。 二、官方网站下载 打开浏览器,在搜索引擎中输入“果冻爆爆乐官网”。 进入官网后,找到…
管理 2023-03-31 02:56:14
qq安装2018最新版 网络
摘要:本文将为大家介绍QQ下载安装2018最新版,包括下载、安装、使用等方面的详细步骤和注意事项。 一、下载QQ软件的途径(1) 官方网站:用户可在腾讯官网上直接下载QQ软件,保证软件的安全性和稳定性。 第三方软件下载站:用户也可以通过一些第三方软件下载站来获取QQ软件,但需要注意选择正规的下载站点,以免因为不良的下载环节导致电脑感染病毒或者安装失败。 二、QQ软件的安装(2) 打开下载好的QQ软…
管理 2023-03-31 02:54:49
led设计软件 网络
摘要: 本文主要介绍了led设计软件的下载方式和使用方法,帮助读者更好地进行led灯设计。 一、什么是LED设计软件 LED设计软件的定义 LED设计软件的分类 二、LED设计软件的下载 常见的LED设计软件 LED设计软件下载渠道 三、LED设计软件的使用方法 LED灯珠参数设置 灯具参数设置 电源参数设置 四、常见问题解决方法 五、总结 正文: 一、什么是LED设计软件 LED设计软件的定义:…
管理 2023-03-31 02:53:02
热血三国辅助工具 网络
随着游戏市场的不断扩大,越来越多的玩家加入了游戏的行列。其中,热血三国是一款备受欢迎的游戏。但是,在游戏中,有些任务需要耗费大量时间和精力才能完成。为了帮助玩家更好地享受游戏,现在有一些辅助工具可以帮助玩家提高效率。本文将介绍热血三国辅助工具下载。 一、热血三国辅助工具下载的必要性 1.1 提高效率 在热血三国中,有很多任务需要耗费大量时间和精力才能完成。而使用辅助工具可以帮助玩家提高效率,快速完…
管理 2023-03-31 02:51:23
九州神途 网络
摘要:九州神途是一款备受玩家喜爱的仙侠类手游,其精美的画面、丰富的玩法和深度的情节深受广大玩家的追捧。本文将从游戏特色、玩法介绍、剧情分析等方面为大家详细介绍九州神途。 一、游戏特色 精美画面:九州神途采用了最新的3D引擎技术,打造出了一个充满仙侠气息的虚拟世界。无论是人物角色还是场景背景,都极具细节和质感,让玩家仿佛置身于一个真实的仙侠世界之中。 多样玩法:九州神途拥有众多丰富多彩的玩法,包括主…
管理 2023-03-31 02:49:21
大通证券网上交易 网络
摘要:本文主要介绍大通证券网上交易下载的相关内容,包括网上交易下载的步骤、注意事项以及使用方法等。 一、什么是大通证券网上交易下载? 1.1 大通证券网上交易简介 大通证券是一家综合性金融服务公司,提供股票、基金、债券等多种投资产品,并且支持网上交易。大通证券的网上交易平台可以让客户随时随地进行股票买卖,方便快捷。 1.2 大通证券网上交易下载的定义 大通证券网上交易下载是指客户在使用大通证券网上…
管理 2023-03-31 02:47:54
植物大战僵尸王国版 网络
摘要:植物大战僵尸王国版是一款非常受欢迎的游戏,现在已经可以免费下载。这篇文章将介绍该游戏的特点和下载方法。 一、游戏特点 精美的画面和音效,让玩家沉浸在游戏世界中。 多种植物和僵尸角色,玩家可以自由选择组合进行作战。 丰富的关卡和挑战模式,保证玩家不会感到无聊。 每个角色都有独特的技能和属性,需要玩家根据情况进行合理搭配。 二、下载方法 在应用商店或者游戏平台搜索“植物大战僵尸王国版”。 点击“…
管理 2023-03-31 02:45:59
海通证券二期 网络
摘要:海通证券二期下载是海通证券客户端的升级版本,提供了更加便捷的交易功能和更加丰富的投资品种。本文将介绍海通证券二期下载的主要特点和使用方法。 一、海通证券二期下载的主要特点 更加便捷的交易功能 海通证券二期下载提供了更加便捷的交易功能,包括快速下单、自定义界面、智能提示等。用户可以根据自己的需求进行设置,从而提高交易效率。 更加丰富的投资品种 海通证券二期下载提供了更加丰富的投资品种,包括股票…
管理 2023-03-31 02:44:05
msvcrtddll 网络
摘要:本文将介绍msvcrtddll下载的相关知识,帮助读者了解该文件的作用、下载方式以及常见问题解决方法。 什么是msvcrtddll文件 msvcrtddll文件的作用 如何下载msvcrtddll文件 常见问题解决方法 总结 什么是msvcrtddll文件 msvcrtddll文件是Microsoft Visual C++运行库中的一个动态链接库,其全称为Microsoft Visual C…
管理 2023-03-31 02:42:54