爷青回|用Python重构【超级马里奥】制作过程+解析|快收藏起来跟小伙伴一起拯救公主吧~

  • 🔔 B站主页:https://space.bilibili.com/1707990930
  • 📣 欢迎🎉点赞👍收藏🌟评论📝如有错误请指正!
  • 💻 Python&Java领域博主
  • 😁 你们的支持是我最大的动力

大家好,我是爱丽

这个Python中的马里奥游戏代码是用PyGame库设计的图形用户界面(GUI)。

谈到游戏的玩法,这是一个单人游戏,玩家(马里奥)必须躲避从龙身上发出的火球。

每一关都有更多的困难,一旦关卡增加,区域就会变得越来越小。在这个超级马里奥Python教程中,你可以学习如何用Python制作超级马里奥游戏。

要开始用Python创建一个马里奥游戏,请确保你的电脑中安装了PyCharm IDE。

顺便说一下,如果你是Python编程的新手,你不知道什么是可以使用的Python IDE,我这里有一个适合你的零基础入门到精通的教程。可以添加CSDN官方微信免费获取:

在这里插入图片描述

在这里插入图片描述

🕹 Python 中的马里奥游戏:项目信息

项目名: 超级马里奥
使用的语言: 基于 Python (GUI)
Python 版本(推荐): 3.x
开发工具: PyCharm
数据库: 没有
版本: 0.1x

🕹 第一步:项目搭建

Step 1、新建一个项目

首先打开Pycharm IDE,然后创建一个 “项目名称”,创建好项目名称后点击 "创建 "按钮。
在这里插入图片描述

Step 2、创建一个 python 文件

创建项目名称后,“右键单击”您的项目名称,然后单击“新建”,然后单击“ python 文件”。
在这里插入图片描述

Step 3、命名你的 Python 文件

第三次创建python文件后,在点击“输入”之后命名你的python文件。
在这里插入图片描述

Step 4、实际代码。

你可以自由复制下面给出的代码并下载下面的完整源代码。

🕹 导入模块

import pygame
import sys

给出的代码正在导入所有模块。

🕹 开始游戏的代码部分

def start_game():
    canvas.fill(BLACK)
    start_img = pygame.image.load('start.png')
    start_img_rect = start_img.get_rect()
    start_img_rect.center = (WINDOW_WIDTH/2, WINDOW_HEIGHT/2)
    canvas.blit(start_img, start_img_rect)
    while True:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                pygame.quit()
                sys.exit()
            if event.type == pygame.KEYDOWN:
                if event.key == pygame.K_ESCAPE:
                    pygame.quit()
                    sys.exit()
                game_loop()
        pygame.display.update()

在这个模块中,这是超级马里奥的开始游戏部分。

输出:
在这里插入图片描述

🕹 游戏级别

def check_level(SCORE):
    global LEVEL
    if SCORE in range(0, 10):
        cactus_img_rect.bottom = 50
        fire_img_rect.top = WINDOW_HEIGHT - 50
        LEVEL = 1
    elif SCORE in range(10, 20):
        cactus_img_rect.bottom = 100
        fire_img_rect.top = WINDOW_HEIGHT - 100
        LEVEL = 2
    elif SCORE in range(20, 30):
        cactus_img_rect.bottom = 150
        fire_img_rect.top = WINDOW_HEIGHT - 150
        LEVEL = 3
    elif SCORE > 30:
        cactus_img_rect.bottom = 200
        fire_img_rect.top = WINDOW_HEIGHT - 200
        LEVEL = 4

如果你通过给定级别的挑战,则在此模块中这是游戏的级别。

🕹 主要模块

def game_loop():
    while True:
        global dragon
        dragon = Dragon()
        flames = Flames()
        mario = Mario()
        add_new_flame_counter = 0
        global SCORE
        SCORE = 0
        global  HIGH_SCORE
        flames_list = []
        pygame.mixer.music.load('mario_theme.wav')
        pygame.mixer.music.play(-1, 0.0)
        while True:
            canvas.fill(BLACK)
            check_level(SCORE)
            dragon.update()
            add_new_flame_counter += 1

            if add_new_flame
  • 4
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值