首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >函数不会在命令上运行

游戏在主菜单上启动,在将鼠标悬停在start上并按enter键后,应运行淡入淡出功能,然后是black_screen功能,最后是游戏功能。但是,main_menu函数会运行,并且在按键事件中,只会运行语句中的播放声音。

代码语言:javascript
运行
AI代码解释
复制
import os
import pygame 
import pygame_menu
from pygame import mixer
from pygame.locals import *
import sys 


# Initialization

pygame.mixer.init()
pygame.init() 


 
# Center the Game Application
os.environ['SDL_VIDEO_CENTERED'] = '1'
 
# Game Resolution
width=800
height=600
screen=pygame.display.set_mode((width, height))
 
# Text Renderer
def text_format(message, textFont, textSize, textColor):
    newFont=pygame.font.Font(textFont, textSize)
    newText = newFont.render(message, 0, textColor)
 
    return newText
 
 
# Colors
white=(255, 255, 255)
black=(0, 0, 0)
gray=(50, 50, 50)
red=(255, 0, 0)
green=(0, 255, 0)
blue=(0, 0, 255)
yellow=(255, 255, 0)
AMP_PINK=(242, 145, 233)
 
# Game Fonts
hamberger = "./assets/fonts/hamberger.ttf"
 
 
# Sounds
menukeys = mixer.Sound("assets\sounds\keypress.wav")


mixer.music.load("assets\sounds\strolling.wav")
mixer.music.play(-1)


# Game Framerate
clock = pygame.time.Clock()
FPS=60



def game():
    main_menu()
    run = True
    while run:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                pygame.quit()
                exit()

        screen.fill((0,255,0))
        pygame.display.update()
        




def black_screen():
    blacc = pygame.Surface((width,height))
    blacc.fill((0,0,0))
    pygame.display.update()
    pygame.time.delay(2)
    game()


def fade(): 
    global width, height
    fade = pygame.Surface((width,height))
    fade.fill((0,0,0))
    for alpha in range(0, 300):
        fade.set_alpha(alpha)
        screen.blit(fade, (0,0))
        pygame.display.update()
        pygame.time.delay(6)
        black_screen()


# Main Menu
def main_menu():
 
    menu=True
    selected="start"
 
    while menu:
        for event in pygame.event.get():
            if event.type==pygame.QUIT:
                pygame.quit()
                quit()
            if event.type==pygame.KEYDOWN:
                if event.key==pygame.K_UP:
                    mixer.Sound.play(menukeys)
                    selected="start"
                elif event.key==pygame.K_DOWN:
                    mixer.Sound.play(menukeys)
                    selected="quit"
                if event.key==pygame.K_RETURN:
                    #Starts the game
                    mixer.Sound.play(menukeys)
                    if selected=="start":
                        fade()
                    if selected=="quit":
                        mixer.Sound.play(menukeys)
                        pygame.quit()
                        quit()
 
        # Main Menu UI
        screen.fill(AMP_PINK)
        title=text_format("SNATCHED", hamberger, 90, black)
        if selected=="start":
            text_start=text_format("START", hamberger, 75, white)
        else:
            text_start = text_format("START", hamberger, 75, black)
        if selected=="quit":
            text_quit=text_format("QUIT", hamberger, 75, white)
        else:
            text_quit = text_format("QUIT", hamberger, 75, black)
 
        title_rect=title.get_rect()
        start_rect=text_start.get_rect()
        quit_rect=text_quit.get_rect()
 
        # Main Menu Text
        screen.blit(title, (width/2 - (title_rect[2]/2), 80))
        screen.blit(text_start, (width/2 - (start_rect[2]/2), 300))
        screen.blit(text_quit, (width/2 - (quit_rect[2]/2), 360))
        pygame.display.update()
        clock.tick(FPS)
        pygame.display.set_caption("Snatched - Main Menu")


#Initialize the Game
main_menu()
pygame.quit()
quit()
EN

回答 1

Stack Overflow用户

发布于 2021-11-12 10:11:07

名称fade被使用了两次。该函数和该函数中的pygame.Surface对象都称为fade

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69557400

复制
相关文章
如何在PP中通过添加列计算移动平均?
(一) 通过添加列计算移动平均 表1 前提条件要点:日期列连续不中断 要求:计算5日平均值 1. 解题思路 计算5日平均值则只有在日期大于5日以后的,才会有5日均线 筛选出当前日期往上倒推5日的表,并
逍遥之
2020/03/24
2.1K0
如何在PP中通过添加列计算移动平均?
聊聊springboot项目数据库密码如何加密
在我们日常开发中,我们可能很随意把数据库密码直接明文暴露在配置文件中,在开发环境可以这么做,但是在生产环境,是相当不建议这么做,毕竟安全无小事,谁也不知道哪天密码就莫名其妙泄露了。今天就来聊聊在springboot项目中如何对数据库密码进行加密
lyb-geek
2022/01/07
2.8K0
聊聊springboot项目数据库密码如何加密
Linux系统平均负载是如何计算的?[通俗易懂]
关于负载的计算,它的结果是包含有小数的一个浮点数,内核中是不能使用float变量的,那么这里就采用了一个整型变量的低11位来表示小数部分。那么对于数值1来说,它就是FIXED_1,也就是需要对1进行左移11bit。实际上此时这个整型变量保存的值是1024。
全栈程序员站长
2022/10/02
2.4K0
如何使用python计算给定SQLite表的行数?
计算 SQLite 表中的行数是数据库管理中的常见任务。Python凭借其强大的库和对SQLite的支持,为此目的提供了无缝的工具。
很酷的站长
2023/08/11
6400
如何使用python计算给定SQLite表的行数?
聊聊springboot项目数据库密码如何加密
在我们日常开发中,我们可能很随意把数据库密码直接明文暴露在配置文件中,在开发环境可以这么做,但是在生产环境,是相当不建议这么做,毕竟安全无小事,谁也不知道哪天密码就莫名其妙泄露了。今天就来聊聊在springboot项目中如何对数据库密码进行加密
lyb-geek
2021/07/06
2.2K0
聊聊springboot项目数据库密码如何加密
计算平均分
/* 功能:计算平均分 日期:2013-04-01 */ #include<stdio.h> #include<stdlib.h> #include<math.h>
WindCoder
2018/09/20
7490
Android中SQLite数据库小计
用户1172465
2018/01/05
2.1K0
Qt中操作SQLite数据库
Qt SQL模块使用驱动程序插件(plugins)与不同的数据库API进行通信。由于Qt的SQL模块API与数据库无关,因此所有特定于数据库的代码都包含在这些驱动程序中。Qt提供了几个驱动程序,也可以添加其他驱动程序。提供驱动程序源代码,可用作编写自己的驱动程序的模型。
全栈程序员站长
2022/11/17
2.2K0
Qt中操作SQLite数据库
Power Pivot中如何计算具有相同日期数据的移动平均?
解释:这里需要2个条件,除了日历条件,还需要添加一个日期是否有值的条件,也就是汇总金额这里需要为非空。
逍遥之
2020/03/24
3.2K0
Power Pivot中如何计算具有相同日期数据的移动平均?
如何使用Python连接到驻留在内存中的SQLite数据库?
SQLite 是一种流行的、轻量级的、独立的数据库引擎,广泛用于各种应用程序。SQLite的独特功能之一是它能够在内存中创建数据库,这允许更快的数据访问和操作。在本文中,我们将探讨如何使用 Python 连接到内存中的 SQLite 数据库,提供分步说明、代码示例、解释和示例输出。
很酷的站长
2023/08/11
7920
如何使用Python连接到驻留在内存中的SQLite数据库?
如何在Power Pivot中通过添加列计算不连续日期移动平均?
之前我们讲了连续日期的移动平均的求法,那我们这次来看下如果不连续日期如何计算移动平均。
逍遥之
2020/03/24
2.2K0
如何在Power Pivot中通过添加列计算不连续日期移动平均?
「R」如何计算几何平均数
刚遇到一个有意思的问题,如何用R计算几何平均数。如果数字少,简单,计算很容易,直观上,先用prod函数连乘,然后开方即可。
王诗翔呀
2020/07/03
2.4K0
如何对已损坏的SQLite数据库取证分析?
SQLite是当今最流行的数据库之一,许多移动应用台式计算机以及便携式笔记本上都用它来存储数据(例如桌面工具、浏览器以及社交媒体软件等),因此SQLite在电子取证当中也扮演着举足轻重的角色。取证网络浏览器,信使和其他数字证据来源。 市面上有许多支持对SQLite数据库分析取证的工具,例如Magnet AXIOM,Belkasoft Evidence Center和BlackBag BlackLight等等。这些工具可以自动解析这些数据库,甚至可以从空闲列表和未分配空间中分割数据。此外,它们还提供了SQL
FB客服
2018/04/17
1.7K0
如何对已损坏的SQLite数据库取证分析?
sqlite数据库
比如手机程序对.db的不当操作造成. $ sqlite3 backup.sqlite sqlite> .output “_temp.tmp” sqlite> .dump sqlite> .quit
acc8226
2022/05/17
5410
【SQLite】C++链接SQLite数据库
C++链接SQLite数据库 相关参考: C++操作SQLITE获得查询结果集的几种方法总结 sqlite3: sqlite3_step 函数 SQLite3数据库API手册 好像还参考了一位老哥的文章,但是我记不清了,也有可能是我记错了。 为了更便于使用,我将它封装成了一个类。 common.h #ifndef COMMON_H__ #define COMMON_H__ #include <iostream> #include <unistd.h> #include <sqlite3.h> #in
半生瓜的blog
2023/05/13
9270
python 计算简单移动平均
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
多凡
2019/11/01
2.2K0
查看sqlite_sqlite数据库手机版
用于SQLite的数据库浏览器(DB4S)是一种高质量,可视化的开源工具,用于创建,设计和编辑与SQLite兼容的数据库文件。
全栈程序员站长
2022/09/30
1.8K0
查看sqlite_sqlite数据库手机版
sqlite3 命令创建新的 SQLite 数据库方法
SQLite 的 sqlite3 命令被用来创建新的 SQLite 数据库。您不需要任何特殊的权限即可创建一个数据。
用户9236362
2021/11/29
2K0
Python中如何求列表list的平均数[通俗易懂]
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/127125.html原文链接:https://javaforall.cn
全栈程序员站长
2022/07/25
2.2K0
点击加载更多

相似问题

在SQLite中按组计算加权平均

12

SQLITE -计算剩余项目数量

30

SQLite -计算移动平均

23

按类型计算项目数量

16

按降序计算列表中的项目数

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档