pygame.draw.rect () не использует другой прямоугольник - PullRequest
1 голос
/ 03 июля 2019

Я делаю простую графическую игру в Pygame. Я хотел нарисовать 2 прямоугольника, но он рисует только один, а не другой.

Я сделал класс рисования разных фигур. Чтобы исправить эту проблему, я удалил класс и сделал простую функцию. Я тоже не работал. Затем я просто помещаю код операторов в программу.

Последний код, который я получаю, это

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()

1 Ответ

2 голосов
/ 03 июля 2019

Левый верхний угол игрового поля (0,0), а нижний правый угол (800,500). Итак, pygame.draw.rect(gameDisplay, yellow, (0,500,110,65)) пытается нарисовать прямоугольник, который начинается с правой верхней части доски и имеет (110, 65) ширину и высоту. Ваш код хорошо рисует два прямоугольника, но выходит за рамки видимости.

...