Как заставить Pygame обнаруживать границы вокруг изображения? - PullRequest
0 голосов
/ 15 апреля 2019

Pygame распознает только тот пиксель, из которого рисует изображение (0,0).

Я не могу найти ничего в документации по этому поводу, и я не нашел здесь ничего об этом.Поэтому я надеялся, что смогу получить некоторую информацию здесь.

import pygame

pygame.init()


windowWidth = 1280
windowHeight = 720

vel = 10.0

gameDisplay = pygame.display.set_mode((windowWidth,windowHeight))
pygame.display.set_caption('Heart Attack')

black = (0,0,0)
white = (255,255,255)

clock = pygame.time.Clock()
crashed = False
charImg = pygame.image.load('heart1.png')

#function to draw the character at a certain place
def heart(x,y):
    gameDisplay.blit(charImg, (x,y))

#stackoverflow
class Background(pygame.sprite.Sprite):
    def __init__(self, image_file, location):
        pygame.sprite.Sprite.__init__(self)  #call Sprite initializer
        self.image = pygame.image.load(image_file)
        self.rect = self.image.get_rect()
        self.rect.left, self.rect.top = location

#stackoverflow
BackGround = Background('background_image.png', [0,0])

x = 0
y = 0

gameDisplay.fill(white)
gameDisplay.blit(BackGround.image, BackGround.rect)

#collision detection for the borders, as well as moving the character around
while not crashed:
    keys = pygame.key.get_pressed()
    if keys[pygame.K_LEFT]:
        if x <= 0:
            x = x + 1
        else:
            x -= vel
    if keys[pygame.K_RIGHT]:
        if x >= windowWidth:
            x = x - 1
        else:
            x += vel
    if keys[pygame.K_UP]:
        if y <= 0:
            y = y + 1
        else:
            y -= vel
    if keys[pygame.K_DOWN]:
        if y >= windowHeight:
            y = y - 1
        else:
            y += vel
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            crashed = True
    #stackoverflow
    gameDisplay.blit(BackGround.image, BackGround.rect)
    heart(x,y)


    pygame.display.update()
    clock.tick(60)

pygame.quit()
quit()

Мне нужна программа Pygame, чтобы обнаружить границу вокруг изображения, чтобы я могла проверить, касается ли она стены или платформ.Я знаю об объекте спрайта, но я не знаю, как его использовать, и при этом я не понимаю его.Будет ли это необходимо в этом случае?

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...