当前位置: 首页 > news >正文

【Python小游戏】某程序员将套圈游戏玩儿到了巅峰,好嗨哟~Pygame代码版《牛牛套圈》已上线,大人的套圈游戏太嗨了,小孩勿进。

前言

世上选择那么多。

关注栗子同学会是您最明智的选择哦。

所有文章完整的素材+源码都在👇👇

粉丝白嫖源码福利,请移步至CSDN社区或文末公众hao即可免费。

“幸运牛牛套圈圈”套住欢乐,圈住幸福,等你来挑战!

哈喽,大家上午好,我是你们的栗子同学,今天来给大家带来一款新游戏,

是不是很久没给大家更新游戏板块了呀~期不期待呢? 哈哈哈。

——忆童年

没有网络也没有智能手机的年代,现在回想起来,那么多无聊的时间,我们是怎么打发的呢?

每个“大孩子”应该都有自己的游戏回忆录,见证了那个时候的天马行空。

那个时候的我们

边玩着古董游戏机

边哼唱超级玛丽和魂斗罗的配乐

偶尔逛逛公园里

摆满玩具物件的套圈摊子

偷偷在课间翻看

风靡儿时的连环画

……

童年匆匆,没有任何仪式与记载便从我们的年华里溜走,幸好它还留下了一些天真烂漫的日子

供我们怀念。今天来给大家做了一个新款的斗牛士的套圈小游戏,希望大家喜欢哦~

当然,嫌弃牛牛的话可以换成其他的可爱的小宠物哦!

正文

一、环境配置

1)运行环境

 Python 3 、Pycharm、Pygame。其他内置模块,安装好python环境就可以了。

(win + R 输入cmd 输入安装命令 pip install 模块名 (如果你觉得安 装速度比较慢, 你可 以切换国内镜像源))

2)第三方库安装

+python安装包 安装教程视频 anaconda5.2.0等等 安装包+pycharm 社区版 专业版 及 激活码免费 (可以找我免费领取的)+pip install + 模块名 或者 带镜像源 pip install -i pypi.douban.com/simple/ +模块名

3)素材内容

二、代码展示

1)主程序

import pygame,sys
from pygame.locals import *pygame.init()canvas = pygame.display.set_mode((1000,700))pygame.display.set_caption("无敌斗牛士套圈小游戏")bg = pygame.image.load("images/bg.png")
bull_img = pygame.image.load("images/bull.png")
rope_img = pygame.image.load("images/rope.png")
win = pygame.image.load("images/win.png")
lose = pygame.image.load("images/lose.png")
bow = pygame.image.load("images/bow.png")print("测试Test")print("[测试Test:1]碰撞检测:False")state = "RUNNING"
print("[测试Test:4]state更改为RUNNING")on_off = 0def handleEvent():global on_off,statefor event in pygame.event.get():if event.type == QUIT or event.type == KEYDOWN and event.key == K_ESCAPE:print("[测试Test:2]结束测试Test")print("结束测试Test")if state == "RUNNING":raise UserWarning("[Error:1]中途退出")pygame.quit()sys.exit()if event.tye == KEYDOWN and event.key == K_SPACE:on_off = 1print("[测试Test:3]on_off更改为1")class Rope():def __init__(self,x,y,width,height,img):self.x = xself.y = yself.width = widthself.height = heightself.img = imgself.speedY = -1def paint(self):canvas.blit(self.img,(self.x,self.y))def move(self):global on_offif on_off == 1:self.y += self.speedY * 10if self.y < 400:self.speedY = 1elif self.y > 600:self.speedY = -1on_off = 0print("[测试Test:3]on_off更改为0")def hit(self,b):return self.y == b.y and self.x + 40 > b.x and self.x < b.x + 40class Bull():def __init__(self,x,y,width,height,img):self.x = xself.y = yself.width = widthself.height = heightself.img = imgdef paint(self):canvas.blit(self.img,(self.x,self.y))def move(self):self.x = self.x + 10if self.x > 1000:self.x = 0def comPaint():canvas.blit(bg,(0,0))bull.paint()rope.paint()def comMove():bull.move()rope.move()def checkHit():global on_off,stateif rope.hit(bull):print("[测试Test:1]碰撞检测:True")on_off = 0state = "SUCCESS"print("[测试Test:4]state更改为SUCCESS")print("[测试Test:5]停止运动")rope = Rope(385,600,39,52,rope_img)
print("[测试Test:6]rope创建")
bull = Bull(0,400,192,141,bull_img)
print("[测试Test:6]bull创建")
while True:if state == "RUNNING":comPaint()comMove()checkHit()elif state == "SUCCESS":comPaint()canvas.blit(win,(0,0))handleEvent()pygame.display.update()pygame.time.delay(10)

三、效果展示

这款游戏很简单,效果做的不多啦:斗牛士动态的效果,空格移动套圈,套中游戏胜利即可    

结束。

1)界面截图

​2)套空

3)套中胜利

总结

快来!一起套圈圈~好啦,文章写到这里就结束了哈!今天来给大家来几个小段子,希望大家也

开心开心啦!

1)​这么多年了,你还是一个人吗?”“屁话!我TM的难道会变成一条狗吗!”

“不是…我不…我不是那个意思…我是说…你…你的另一条狗呢…

2)我追求女神追了3个月,女神大怒:你烦不烦啊!好,就给你次机会,离我30cm开外不借助身

体以外,的东西碰到我我就从了你!lz:此话当真?女神:是的。不过尿的不算。然后我一口粘痰吐

她一脸。

✨完整的素材源码等:可以滴滴我吖!或者点击文末hao自取免费拿的哈~

 🔨推荐往期文章——

项目4.4 【Pygame实战】这两款脑洞大开的文字剧情版游戏,99% 的人打了五星好评-《巨龙之洞》-《太空矿工》

项目4.5  【Pygamre实战】2023人气超高的模拟经营类游戏:“梦想小镇“代码版火爆全场,免费体验分享下载哦~

项目1.5  Pygame小游戏:植物大战僵尸游戏真的有“毒”?戒不掉啊~

项目1.6 【Pygame小游戏】斗地主我见多了,BUT 这款开源欢乐斗地主,最让人服气~

项目0.5   重温经典:Python版飞机大战源码,装逼神器。玩游戏就玩自己开发的~

项目0.6 【Python实战项目】做一个 刮刮乐 案例,一不小心....着实惊艳到我了。

🎁文章汇总——

Python文章合集 | (入门到实战、游戏、Turtle、案例等)

(文章汇总还有更多你案例等你来学习啦~源码找我即可免费!)            

相关文章:

【Python小游戏】某程序员将套圈游戏玩儿到了巅峰,好嗨哟~Pygame代码版《牛牛套圈》已上线,大人的套圈游戏太嗨了,小孩勿进。

前言 世上选择那么多。 关注栗子同学会是您最明智的选择哦。 所有文章完整的素材源码都在&#x1f447;&#x1f447; 粉丝白嫖源码福利&#xff0c;请移步至CSDN社区或文末公众hao即可免费。 “幸运牛牛套圈圈”套住欢乐&#xff0c;圈住幸福&#xff0c;等你来挑战&#xf…...

php的declare命令如何使用?

php中的declare结构用来设定一段代码的执行指令declare用于执行3个指令&#xff1a;ticks,encoding,strict_typesdeclare结构用于全局范围&#xff0c;影响到其后的所有代码&#xff08;但如果有declare结构的文件被其他文件包含&#xff0c;则对包含他的父文件不起作用&#x…...

嵌软工程师要掌握的硬件知识2:一文看懂什么开漏和推挽电路(open-drain / push-pull)

想了解开漏和推挽,就要先了解一下三极管和场效应管是什么,在其他章节有详细介绍,本文就不再进行赘述。 1 推挽(push pull)电路 1.1 理解什么是推挽电路 - 详细介绍 如图所示,Q3是个NPN型三极管,Q4是个PNP型三极管。 1)当Vin电压为正时,上面的N型三极管控制端有电…...

1.2.6存储结构-磁盘管理:单缓冲区与双缓冲区读取、流水线周期、计算流水线执行时间

1.2.6存储结构-磁盘管理&#xff1a;单缓冲区与双缓冲区读取、流水线周期、计算流水线执行时间流水线周期计算流水线执行时间微秒&#xff0c;时间单位&#xff0c;符号μs&#xff08;英语&#xff1a;microsecond &#xff09;&#xff0c;1微秒等于百万分之一秒&#xff08;…...

【pytest接口自动化测试】结合单元测试框架pytest+数据驱动模型+allure

api&#xff1a; 存储测试接口 conftest.py :设置前置操作 目前前置操作&#xff1a;1、获取token并传入headers&#xff0c;2、获取命令行参数给到环境变量,指定运行环境commmon&#xff1a;存储封装的公共方法 connect_mysql.py&#xff1a;连接数据库http_requests.py: 封装…...

展锐平台WIFI吞吐问题解决方案

同学,别退出呀,我可是全网最牛逼的 WIFI/BT/GPS/NFC分析博主,我写了上百篇文章,请点击下面了解本专栏,进入本博主主页看看再走呗,一定不会让你后悔的,记得一定要去看主页置顶文章哦。 一、Wi-Fi 吞吐验收标准 预置条件:屏蔽房;DUT 距离 AP 1m 左右;测试 AP 不加密;…...

全局向量的词嵌入(GloVe)

诸如词-词共现计数的全局语料库统计可以来解释跳元模型。 交叉熵损失可能不是衡量两种概率分布差异的好选择&#xff0c;特别是对于大型语料库。GloVe使用平方损失来拟合预先计算的全局语料库统计数据。 对于GloVe中的任意词&#xff0c;中心词向量和上下文词向量在数学上是等…...

华为OD机试 - 特异性双端队列(Python),真题含思路

特异性双端队列 题目 有一个特异性的双端队列,该队列可以从头部到尾部添加数据,但是只能从头部移除数据。 小 A 一次执行 2 n 2n 2n 个指令往队列中添加数据和移除数据, 其中 n n n 个指令是添加数据(可能从头部也可以从尾部添加) 依次添加 1 到...

【Linux】操作系统进程概念

文章目录1. 冯诺依曼体系结构2. 操作系统3. 进程进程的基本概念查看进程和杀死进程父进程和子进程通过系统调用创建子进程1. 冯诺依曼体系结构 冯诺依曼结构也称普林斯顿结构&#xff0c;是一种将程序指令存储器和数据存储器合并在一起的存储器结构。数学家冯诺依曼提出了计算…...

C语言const的用法详解

有时候我们希望定义这样一种变量&#xff0c;它的值不能被改变&#xff0c;在整个作用域中都保持固定。例如&#xff0c;用一个变量来表示班级的最大人数&#xff0c;或者表示缓冲区的大小。为了满足这一要求&#xff0c;可以使用const关键字对变量加以限定&#xff1a;constin…...

Day886.MySQL的“饮鸩止渴”提高性能的方法 -MySQL实战

MySQL的“饮鸩止渴”提高性能的方法 HI&#xff0c;我是阿昌&#xff0c;今天学习记录的是关于MySQL的“饮鸩止渴”提高性能的方法的内容。 不知道在实际运维过程中有没有碰到这样的情景&#xff1a; 业务高峰期&#xff0c;生产环境的 MySQL 压力太大&#xff0c;没法正常响…...

08- 数据升维 (PolynomialFeatures) (机器学习)

在做数据升维的时候&#xff0c;最常见的手段就是将已知维度进行相乘&#xff08;或者自乘&#xff09;来构建新的维度 使用 np.concatenate()进行简单的&#xff0c;幂次合并&#xff0c;注意数据合并的方向axis 1 数据可视化时&#xff0c;注意切片&#xff0c;因为数据升维…...

2023备战金三银四,Python自动化软件测试面试宝典合集(二)

马上就又到了程序员们躁动不安&#xff0c;蠢蠢欲动的季节~这不&#xff0c;金三银四已然到了家门口&#xff0c;元宵节一过后台就有不少人问我&#xff1a;现在外边大厂面试都问啥想去大厂又怕面试挂面试应该怎么准备测试开发前景如何面试&#xff0c;一个程序员成长之路永恒绕…...

笔试题-2023-紫光展锐-数字芯片设计【纯净题目版】

回到首页:2023 数字IC设计秋招复盘——数十家公司笔试题、面试实录 推荐内容:数字IC设计学习比较实用的资料推荐 题目背景 笔试时间:2022.08.24应聘岗位:数字芯片设计工程师笔试时长:90min笔试平台:nowcoder牛客网题目类型:单选题(18道)、不定项选择题(22道)题目评…...

WordPress网站日主题Ri主题RiProV2主题开启了验证码登录但是验证码配置不对结果退出登录后进不去管理端了

背景 WordPress网站日主题Ri主题RiProV2主题开启了验证码登录但是验证码配置不对结果退出登录后进不去管理端了;开启了腾讯云验证码防火墙但APPID,APPSecret没配置,结果在退出登录后,由于验证码验证失败管理端进不去了 提示如下:...

自动驾驶感知——毫米波雷达

文章目录1. 雷达的基本概念1.1 毫米波雷达分类1.2 信息的传输1.3 毫米波雷达的信号频段1.4 毫米波雷达工作原理1.4.1 毫米波雷达测速测距的数学原理1.4.2 毫米波雷达测角度的数学原理1.4.3 硬件接口1.4.4 关键零部件1.4.5 数据的协议与格式1.5 车载毫米波雷达的重要参数1.6 车载…...

取电芯片全协议都可兼容

乐得瑞PD协议芯片/PD取电芯片/PD受电端协议芯片 支持5/9/12/15/20v定制 1、概述 LDR6328S 是乐得瑞科技有限公司开发的一款兼容 USB PD、QC 和 AFC 协议的 Sink 控制器。 LDR6328S 从支持 USB PD、QC 和 AFC 协议的适配器取电&#xff0c;然后供电给设备。比如可以配置适配器输…...

自己总结优化代码写法

jdk1.7新特性详解 开发期间略知jdk1.7的一些特性&#xff0c;没有真正的一个一个得展开研究&#xff0c;而是需要说明再去查&#xff0c;导致最整个新特性不是特别的清楚&#xff0c;这种情况以后得需要改变了&#xff0c;否则就会变成代码的奴隶。现在正好有时间可以细细的研…...

Java体系最强干货分享—挑战40天准备Java面试,最快拿到offer!

如何准备java面试&#xff0c;顺利上岸大厂java岗位&#xff1f; 主攻Java的人越来越多&#xff0c;导致行业越来越卷&#xff0c;最开始敲个“hello world”都能进大厂&#xff0c;现在&#xff0c;八股、全家桶、算法等等面试题横行&#xff0c;卷到极致&#xff01;就拿今年…...

云计算|OpenStack|错误记录和解决方案(不定时更新)

前言&#xff1a; openstack的部署和使用是难度比较大的&#xff0c;难免会出现各种各样的问题&#xff0c;因此&#xff0c;本文将把一些在部署和使用openstack社区版时出现的错误做一个记录&#xff0c;并就每一个错误分析和解决问题。&#xff08;尽量记录比较经典的错误&a…...

定时器任务——若依源码分析

分析util包下面的工具类schedule utils&#xff1a; ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类&#xff0c;封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz&#xff0c;先构建任务的 JobD…...

成都鼎讯硬核科技!雷达目标与干扰模拟器,以卓越性能制胜电磁频谱战

在现代战争中&#xff0c;电磁频谱已成为继陆、海、空、天之后的 “第五维战场”&#xff0c;雷达作为电磁频谱领域的关键装备&#xff0c;其干扰与抗干扰能力的较量&#xff0c;直接影响着战争的胜负走向。由成都鼎讯科技匠心打造的雷达目标与干扰模拟器&#xff0c;凭借数字射…...

云原生玩法三问:构建自定义开发环境

云原生玩法三问&#xff1a;构建自定义开发环境 引言 临时运维一个古董项目&#xff0c;无文档&#xff0c;无环境&#xff0c;无交接人&#xff0c;俗称三无。 运行设备的环境老&#xff0c;本地环境版本高&#xff0c;ssh不过去。正好最近对 腾讯出品的云原生 cnb 感兴趣&…...

Java + Spring Boot + Mybatis 实现批量插入

在 Java 中使用 Spring Boot 和 MyBatis 实现批量插入可以通过以下步骤完成。这里提供两种常用方法&#xff1a;使用 MyBatis 的 <foreach> 标签和批处理模式&#xff08;ExecutorType.BATCH&#xff09;。 方法一&#xff1a;使用 XML 的 <foreach> 标签&#xff…...

PAN/FPN

import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...

免费数学几何作图web平台

光锐软件免费数学工具&#xff0c;maths,数学制图&#xff0c;数学作图&#xff0c;几何作图&#xff0c;几何&#xff0c;AR开发,AR教育,增强现实,软件公司,XR,MR,VR,虚拟仿真,虚拟现实,混合现实,教育科技产品,职业模拟培训,高保真VR场景,结构互动课件,元宇宙http://xaglare.c…...

Ubuntu系统复制(U盘-电脑硬盘)

所需环境 电脑自带硬盘&#xff1a;1块 (1T) U盘1&#xff1a;Ubuntu系统引导盘&#xff08;用于“U盘2”复制到“电脑自带硬盘”&#xff09; U盘2&#xff1a;Ubuntu系统盘&#xff08;1T&#xff0c;用于被复制&#xff09; &#xff01;&#xff01;&#xff01;建议“电脑…...

基于单片机的宠物屋智能系统设计与实现(论文+源码)

本设计基于单片机的宠物屋智能系统核心是实现对宠物生活环境及状态的智能管理。系统以单片机为中枢&#xff0c;连接红外测温传感器&#xff0c;可实时精准捕捉宠物体温变化&#xff0c;以便及时发现健康异常&#xff1b;水位检测传感器时刻监测饮用水余量&#xff0c;防止宠物…...

用递归算法解锁「子集」问题 —— LeetCode 78题解析

文章目录 一、题目介绍二、递归思路详解&#xff1a;从决策树开始理解三、解法一&#xff1a;二叉决策树 DFS四、解法二&#xff1a;组合式回溯写法&#xff08;推荐&#xff09;五、解法对比 递归算法是编程中一种非常强大且常见的思想&#xff0c;它能够优雅地解决很多复杂的…...

JS红宝书笔记 - 3.3 变量

要定义变量&#xff0c;可以使用var操作符&#xff0c;后跟变量名 ES实现变量初始化&#xff0c;因此可以同时定义变量并设置它的值 使用var操作符定义的变量会成为包含它的函数的局部变量。 在函数内定义变量时省略var操作符&#xff0c;可以创建一个全局变量 如果需要定义…...