python - pygame.draw.rect() 没有绘制另一个矩形
问题描述
我正在pygame中制作一个简单的图形游戏。我想画两个矩形,但它只画一个而不画另一个。
我做了一类画不同的人物。为了解决这个问题,我删除了这个类并做了一个简单的函数。身份证也没用。然后我只是把函数语句的代码放在程序中。
我得到的最终代码是这个
import pygame
black = (0,0,0)
yellow = (200,200,0)
def drawShopButton():
pygame.draw.rect(gameDisplay, black, (690,435,110,65))
pygame.display.update()
pygame.draw.rect(gameDisplay, yellow, (0,500,110,65))
pygame.display.update()
pygame.init()
gameDisplay = pygame.display.set_mode((800, 500))
gameDisplay.fill((40, 120, 0))
pygame.display.update()
pygame.draw.rect(gameDisplay, black, (690,435,110,65))
pygame.display.update()
clock = pygame.time.Clock()
clock.tick(40)
pygame.draw.rect(gameDisplay, yellow, (0,500,110,65))
pygame.display.update()
mouse = pygame.mouse.get_pos()
click = pygame.mouse.get_pressed()
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
quit()
pygame.display.update()
解决方案
游戏板的左上角是 (0,0),右下角是 (800,500)。因此,pygame.draw.rect(gameDisplay, yellow, (0,500,110,65))
正在尝试绘制一个从棋盘右上方开始的矩形,宽度和高度为 (110, 65)。您的代码可以绘制两个矩形,但超出了可见性范围。
推荐阅读
- matlab - 通过 Matlab 读取 .log 文件的最后两行
- android - 为什么从 playstore 下载的应用程序和 Apkpure 的指纹相同?
- c++ - 我正在使用嵌套的 while 循环来解析具有多行的文本文件,但由于某种原因,它只通过第一行,我不知道为什么
- sql - SQL 触发器在 Azure Elastic DB 中不起作用
- bash - BASH OR 语句
- java - Android - 暂停活动并等待用户输入
- python-3.x - 第 140 行的块标记无效:'wagtailuserbar'。您是否忘记注册或加载此标签?鹡鸰错误
- javascript - 如果提到机器人,我如何让我的命令返回?
- ios - Swift 从今天扩展中的按钮打开特定的视图控制器
- python - python中的逆正态随机数生成?