我想每当我单击它时将苹果图像移动到一个随机位置。第一次单击它时,它运行良好,但是下次我尝试执行此操作时,它没有响应。
这是代码:
import pygame
pygame.init()
foodimg=pygame.image.load("food.png")
foodrect=foodimg.get_rect()
white = (255,255,255)
#Game Display
display_width = 1080
display_height = 720
gameDisplay = pygame.display.set_mode((display_width,display_height))
pygame.display.set_caption('Click It! ~ Snapnel Productions')
gameDisplay.fill((white))
running=True
while running:
gameDisplay.fill((white))
for event in pygame.event.get():
if event.type==pygame.QUIT:
running=False
pygame.quit()
quit()
if event.type == pygame.MOUSEBUTTONDOWN:
# Set the x, y postions of the mouse click
x, y = event.pos
if foodimg.get_rect().collidepoint(x, y):
foodrect.center=(random.randint(5,1060),random.randint(5,700))
print "Hi",
continue
gameDisplay.blit(foodimg,foodrect)
pygame.display.flip()
换线
if foodimg.get_rect().collidepoint(x, y):
至
if foodrect.collidepoint(x, y):
您的代码无效,因为图片的矩形永远不会移动,而总是会移动<rect(0, 0, 30, 30)>
。Foodrect实际上代表矩形的位置,是运行时更改的rect whos值foodrect.center =
。您要检查鼠标单击是否与实际矩形(而不是图像的矩形)发生冲突。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句