4

我正在制作一个基本级别的游戏,如果我点击一张卡片,就会显示一张图片。图片是随机选择的。到目前为止,我已经为一张卡片分配了随机图片,并且卡片正面朝下。因此,如果我单击卡片,我希望显示分配的图片(在字典中)。

我想知道如何检测我是否单击了(卡片的)图像,因为图像的 x,y 坐标位于左上角。现在,我正在尝试找出一种方法来使用鼠标单击的 xy 坐标来检测图像是否已被单击。有没有办法我可以使用“碰撞”或者这让事情变得太复杂了?我是初学者程序员,所以我仍在努力学习 python 和 pygame :|

4

1 回答 1

2

代替硬编码坐标/使用范围,使用碰撞函数:

while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            sys.exit()
        if event.type == pygame.MOUSEBUTTONDOWN:
            # Set the x, y postions of the mouse click
            x, y = event.pos
            if ball.get_rect().collidepoint(x, y):
                # do swap 
于 2013-05-21T19:54:07.587 回答