1

我正在用 python 制作游戏,我试图在屏幕上显示某些东西的 x 和 y 值。

我作为示例制作的代码是,

def runGame():
    self.RocketImage = pygame.image.load('LaserBase.png')
    self.screen.blit(self.RocketImage, (112, 650))
    pygame.display.flip()
    self.getPos()

def getPos(self, posx, posy):
    print("The position is", posx)

我的问题是如何获得在屏幕上显示/显示的 RocketImage 的 x 和 y 坐标。

任何信息都会对如何做到这一点有所帮助/代码。

谢谢

4

2 回答 2

0

据我所知,Pygame 中没有这样的方法。

但是您可以为此目的编写自己的方法。它应该如何工作:

  1. 获取图像的像素颜色(在您的情况下为“LaserBase.png”)
  2. 在屏幕上搜索相同的像素颜色
  3. 如果像素匹配,这意味着您找到了您的图像
于 2015-12-17T14:58:04.507 回答
0

这实际上很简单,但只需要 Python,Pygame 中没有方法。只需使用 2 个变量(或 2 个元素数组)来跟踪火箭的位置。不要移动图像,而是更改变量,然后在这些坐标处对表面进行 blit。没有简单的方法来检测已经被分块的图像的位置。

于 2015-12-18T16:47:24.297 回答