发布时间:2022-11-30 文章分类:编程知识 投稿人:王小丽 字号: 默认 | | 超大 打印

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

我是超级大黑子?

表弟大周末的跑来我家,没事干天天骚扰我,搞得我都不能跟小姐姐好好聊天了,于是为了打发表弟,我决定用Python做一个小游戏来消耗一下他的精力,我思来想去,决定把他变成小黑子,于是做了一个坤坤打篮球的游戏,没想到他还挺爱玩的~

终于解放了,于是我把游戏写下来,也给大家分享一下吧~

【pygame游戏】用Python实现一个蔡徐坤大战篮球的小游戏,可还行?【附源码】
好吧,其实并不是这样的游戏,往下慢慢看吧。

准备工作

开发环境

Python版本:3.7.8

相关模块:
requests模块;
tqdm模块;
pyfreeproxy模块;
pyecharts模块;
以及一些python自带的模块。

效果预览

开始界面

【pygame游戏】用Python实现一个蔡徐坤大战篮球的小游戏,可还行?【附源码】

游戏规则

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

【pygame游戏】用Python实现一个蔡徐坤大战篮球的小游戏,可还行?【附源码】

【pygame游戏】用Python实现一个蔡徐坤大战篮球的小游戏,可还行?【附源码】

结束游戏

【pygame游戏】用Python实现一个蔡徐坤大战篮球的小游戏,可还行?【附源码】

代码实现

导入模块

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
# 代码有点多,就没有全部粘贴出来,直接在这个君羊708525271领取就好了

代码有点多,就没有全部粘贴出来,可以在文末名片自取哈~

【pygame游戏】用Python实现一个蔡徐坤大战篮球的小游戏,可还行?【附源码】