我正在制作游戏,但在使用图像方面遇到了一些问题。
我加载了一些图片。加载它们并使用screen.blit()
就像下面一样:
img1 = pygame.image.load("leaf.png")
img1 = pygame.transform.scale(img1, (25,25))
leaf = img1.get_rect()
leaf.x = random.randint(0, 570)
leaf.y = random.randint(0, 570)
但我不知道如何在if语句中删除它们,例如:
if count == 1:
...
我可能没有办法,我应该在图像上画一个矩形消失它。此外,我不知道如何使用screen.fill()
,而我不希望其他图像消失。还有其他办法吗?
答案 0 :(得分:0)
您可以填充单个图像,因为它们是pygame Surfaces。
首先,我要做的是在定义叶子的x / y之后我会放这样的东西:
leaf.image = img1
然后,我将创建一个名为transparent
的颜色变量:
transparent = (0, 0, 0, 0)
您可能知道,前3个数字代表RGB颜色值。最后一个数字是颜色的alpha(透明度)值。 0是完全不可见的。
最后,我会添加此代码以使叶子完全透明:
leaf.image.fill(transparent)
这使得树叶透明,而不会使窗口中的每个其他图像消失。希望这有帮助!