【pygame游戏】Python实现蔡徐坤大战篮球游戏【附源码】

news2024/11/27 14:40:21

前言

话说在前面,我不是小黑子~😏

本文章纯属技术交流~娱乐

前几天我获得了一个坤坤打篮球的游戏,也给大家分享一下吧~

好吧,其实并不是这样的游戏,往下慢慢看吧。

准备工作

开发环境

Python版本:3.7.8

相关模块:

requests模块;

tqdm模块;

pyfreeproxy模块;

pyecharts模块;

以及一些python自带的模块。


完整源码等直接加V:python5180 免费领


效果预览

开始界面

游戏规则

wasd 控制人物的移动,空格启动律师函炸毁全部篮球。

结束游戏

代码实现

( 代码有点多,就没有全部粘贴出来,完整源码等直接加V:python5180 免费领找小姐姐领取呀~ )

导入模块

import pygame
import sys
import traceback
import os
import CXK
import enemy
import bullet
import supply
from pygame.locals import *
from random import *

游戏主界面

#游戏主界面
def ui():
    #循环播放背景音乐
    pygame.mixer.music.play(-1)

    #初始化界面按键图片并获取图片的矩形位置
    start_game_image = pygame.image.load("images/start_game.png").convert_alpha()
    start_game_image_rect = start_game_image.get_rect()
    game_rules_image = pygame.image.load("images/game_rules.png").convert_alpha()
    game_rules_image_rect = game_rules_image.get_rect()
    game_quit_image = pygame.image.load("images/game_quit.png").convert_alpha()
    game_quit_image_rect = game_quit_image.get_rect()

    #初始化游戏规则图片并获取图片的矩形位置
    rules_image = pygame.image.load("images/游戏玩法.png").convert_alpha()
    back_image = pygame.image.load("images/back.png").convert_alpha()
    back_image_rect =  back_image.get_rect()

    #标志是否在主界面
    is_ui = True

    #帧率
    clock = pygame.time.Clock()

    #主界面循环
    while True:
        #获取事件信息
        for event in pygame.event.get():
            #如果点击右上角退出
            if event.type == QUIT:
                #退出程序
                pygame.quit()
                sys.exit()

        #如果是主界面
        if is_ui:
            #绘制背景
            screen.blit(background,(0,0))

            #更改主界面按键图片的矩形位置并绘制主界面按键
            start_game_image_rect.left,start_game_image_rect.top = (width - start_game_image_rect.width)//2,height - 500
            screen.blit(start_game_image,start_game_image_rect)

            game_rules_image_rect = game_rules_image.get_rect()
            game_rules_image_rect.left,game_rules_image_rect.top = (width - game_rules_image_rect.width)//2,start_game_image_rect.bottom+50
            screen.blit(game_rules_image,game_rules_image_rect)

            game_quit_image_rect.left,game_quit_image_rect.top = (width - game_quit_image_rect.width)//2, game_rules_image_rect.bottom+50
            screen.blit(game_quit_image,game_quit_image_rect)

            #检测用户的鼠标操作
            #如果用户按下鼠标左键
            if pygame.mouse.get_pressed()[0]:
                #获取鼠标坐标
                pos = pygame.mouse.get_pos()
                #如果用户点击”开始游戏“
                if start_game_image_rect.left < pos[0] < start_game_image_rect.right and start_game_image_rect.top < pos[1] < start_game_image_rect.bottom:
                    #调用主函数
                    main()
                #如果用户点击”退出游戏“
                if game_quit_image_rect.left < pos[0] < game_quit_image_rect.right and game_quit_image_rect.top < pos[1] < game_quit_image_rect.bottom:
                    pygame.quit()
                    sys.exit()
                #如果用户点击”游戏规则“
                if game_rules_image_rect.left < pos[0] < game_rules_image_rect.right and game_rules_image_rect.top < pos[1] < game_rules_image_rect.bottom:
                    #离开主界面
                    is_ui = False

尾语

感谢你观看我的文章呐~本次航班到这里就结束啦 🛬

希望本篇文章有对你带来帮助 🎉,有学习到一点知识~

躲起来的星星🍥也在努力发光,你也要努力加油(让我们一起努力叭)。

最后,宣传一下呀~👇👇👇更多源码、资料、素材、解答、交流皆点击下方名片获取呀👇👇👇

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/383159.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PhotoShop基础使用

49&#xff1a;图片分类 1&#xff1a;像素图 特点&#xff1a;放大后可见&#xff0c;右一个个色块&#xff08;像素&#xff09;组合而成。 优点&#xff1a;容量小&#xff0c;纯天然 JPG、JPEG、png、GIF 2&#xff1a;矢量图 面向对象图像 绘图图像 特点&#xff1a;不…

动态网站开发讲课笔记03:HTTP协议

文章目录零、本节学习目标一、HTTP概述&#xff08;一&#xff09;HTTP的概念1、HTTP的概念2、HTTP协议的特点&#xff08;1&#xff09;C/S模式&#xff08;2&#xff09;简单快速&#xff08;3&#xff09;灵活&#xff08;4&#xff09;无状态&#xff08;二&#xff09;HTT…

VS Code 配置 Python + 配置 Flask 环境及其虚拟环境

本文目录一、Python的下载二、拓展库安装三、编写案例运行调试四、部分使用优化五、配置 Flask 环境总结&#xff1a;一些小技巧1、找到原来安装过的python路径位置一、Python的下载 这里推荐使用国内源进行下载&#xff0c;国外源一般都比较慢。 跳转链接&#xff1a;https:…

redis 未授权访问漏洞

redis 未授权访问漏洞 目录 redis 未授权访问漏洞 漏洞描述 漏洞原因&#xff1a; 漏洞危害 漏洞复现&#xff1a; 漏洞复现 写webshell: 写计划任务&#xff1a;centos默认在/var/spool/cron 写ssh公钥实现ssh登录&#xff1a; 漏洞描述&#xff1a; Redis默认情况下…

UNet-肝脏肿瘤图像语义分割

目录 一. 语义分割 二. 数据集 三. 数据增强 图像数据处理步骤 CT图像增强方法 &#xff1a;windowing方法 直方图均衡化 获取掩膜图像深度 在肿瘤CT图中提取肿瘤 保存肿瘤数据 四. 数据加载 数据批处理 ​编辑​编辑 数据集加载 五. UNet神经网络模型搭建 单张图片…

【优化】性能优化Springboot 项目配置内置Tomcat使用Http11AprProtocol(AIO)

Springboot 项目配置内置tomcat使用Http11AprProtocol(AIO) Windows版本 1.下载Springboot对应版本tomcat包 下载地址 Apache Tomcat - Apache Tomcat 9 Software Downloads 找到bin目录下 tcnative-1.dll 文件 2 放到jdk的bin目录下 Linux版本 在Springboot中内嵌的Tomcat默…

实验三、数字PID控制器的设计

实验三、数字PID控制器的设计 --- 直流闭环调速实验 一、实验目的 1&#xff0e;理解晶闸管直流单闭环调速系统的数学模型和工作原理;. 2. 掌握PID控制器参数对控制系统性能的影响; 3. 能够运用MATLAB/Simulink软件对控制系统进行正确建模并对模块进行正确的参数设置; 4.…

如何获取或设置CANoe以太网网卡信息(GET篇)

CAPL提供了一系列函数用来操作CANoe网卡。但是,但是,首先需要明确一点,不管是获取网卡信息,还是设置网卡信息,只能访问CAPL程序所在的节点下的网卡,而不是节点所在的以太网通道下的所有网卡 关于第一张图中,Class节点下,有三个网卡:Ethernet1、VLAN 1.100、VLAN 1.200…

Malware Dev 02 - Windows SDDL 后门利用之 SCManager

写在最前 如果你是信息安全爱好者&#xff0c;如果你想考一些证书来提升自己的能力&#xff0c;那么欢迎大家来我的 Discord 频道 Northern Bay。邀请链接在这里&#xff1a; https://discord.gg/9XvvuFq9Wb我拥有 OSCP&#xff0c;OSEP&#xff0c;OSWE&#xff0c;OSED&…

关于tf.gather函数batch_dims参数用法的理解

关于tf.gather函数batch_dims参数用法的理解0 前言1. 不考虑batch_dims2. 批处理(考虑batch_dims)2.1 batch_dims12.2 batch_dims02.3 batch_dims>22.4 batch_dims再降为12.5 再将axis降为12.6 batch_dims<02.7 batch_dims总结3. 补充4. 参数和返回值5. 其他相关论述6. 附…

3.2 http协议

一.HTTP协议1.概述是计算机网络的核心概念,是一种网络协议网络协议种类非常多,其中IP,TCP,UDP...其中还有一个应用非常广泛的协议.HTTPHTTP协议是日常开发中用的最多的协议HTTP处在TCP/IP五层协议栈的应用层HTTP在传输层是基于TCP的,(http/1 HTTP/2是基于TCP,最新版本的HTTP/3是…

交换机电口、光口、网络速率的基本概念总结

电口和光口千兆网 & 万兆网&#xff1a;POE&#xff1a;包转发率&#xff1a;背板带宽/交换容量&#xff1a;)电口和光口 电口&#xff1a; 电口也即RJ45口&#xff0c;插双绞线的端口&#xff08;网线&#xff09;&#xff0c;一般速率为10M或100M&#xff0c;即为百兆工…

[数据结构]:09-二分查找(顺序表指针实现形式)(C语言实现)

目录 前言 已完成内容 二分查找实现 01-开发环境 02-文件布局 03-代码 01-主函数 02-头文件 03-PSeqListFunction.cpp 04-SearchFunction.cpp 结语 前言 此专栏包含408考研数据结构全部内容&#xff0c;除其中使用到C引用外&#xff0c;全为C语言代码。使用C引用主要…

2023年3月北京/上海/广州/深圳DAMA数据管理认证CDGA/CDGP

弘博创新是DAMA中国授权的数据治理人才培养基地&#xff0c;贴合市场需求定制教学体系&#xff0c;采用行业资深名师授课&#xff0c;理论与实践案例相结合&#xff0c;快速全面提升个人/企业数据治理专业知识与实践经验&#xff0c;通过考试还能获得数据专业领域证书。 DAMA认…

【JavaWeb】数据链路层协议——以太网 + 应用层协议——DNS

以太网 以太网不是一个具体的网络&#xff0c;而是一个技术标准&#xff0c;主要应用于数据链路层和物理层。 以太网数据帧结构 以太网的数据帧结构由三部分构成&#xff1a; 帧头 载荷 帧尾 其中的MAC地址是六位&#xff0c;这样就比IPV4所表示的地址大很多&#xff0c;…

Idea git 回滚远程仓库版本

目标 回滚远程仓库到特定版本。 将【添加test03】版本回滚到【行为型模式】版本。 回滚前的效果图 步骤 ①复制需要回滚到的版本的版本号 ②右键项目&#xff0c;选择Git-Repository-Reset Head ③Reset Type选择Hard&#xff1b;To Commit填入步骤①复制的版本号&#xff…

【Flutter·学习实践】运行项目及解决各种报错

文章目录 简介 项目目录介绍 运行报错&#xff1a;Exception: Gradle task assembleDebug failed with exit code 1 简介 我As的版本信息&#xff1a;Android Studio Dolphin | 2021.3.1 Patch 1 上一张搭建好了开发环境我们就开始运行程序检验项目是否存在问题。 项目目…

《分布式技术原理与算法解析》学习笔记Day27

故障隔离 什么是故障隔离&#xff1f; 故障隔离&#xff0c;就是采用一定策略&#xff0c;以实现当某个模块发生故障时&#xff0c;不会影响其他模块继续提供服务&#xff0c;以保证整个系统的可用性&#xff0c;它可以避免分布式系统出现大规模的故障&#xff0c;甚至是瘫痪…

spark history文件占用磁盘过高问题解决

我们目前用的spark版本还是2.x spark的history事件是保存在hdfs上的&#xff0c;通过spark.history.fs.logDirectory指定保存的hdfs目录 使用中发现history日志文件占用磁盘还挺高的 于是写了一个脚本来定期进行清理&#xff0c;只保留一定时间的文件 对于spark离线任务来说…

开学季哪个电容笔好?2023口碑最好电容笔推荐

虽说苹果原装的电容笔非常好用&#xff0c;性能也非常不错&#xff0c;但由于价格昂贵&#xff0c;普通的学生是没办法购买的&#xff0c;再加上重量比较大&#xff0c;使用时间长了&#xff0c;难免会让人感觉到疲劳。如果仅仅是为了学习记笔记&#xff0c;那就没必要再去购买…