鼠标单击后从屏幕上删除 pygame sprite [重复]
Posted
技术标签:
【中文标题】鼠标单击后从屏幕上删除 pygame sprite [重复]【英文标题】:Removing a pygame sprite from the screen after mouse click [duplicate] 【发布时间】:2021-12-12 20:43:09 【问题描述】:我开始制作 pygame 原型。每 30 帧应在随机位置生成正方形。然后,用光标单击正方形后,正方形应消失,您将获得一分。我能够制作正方形的生成器,但我被点击并消失了。我尝试在 update() 方法中使用 self.kill() 方法,但由于某种原因它不适用于我的光标碰撞检测。你能帮忙吗?如果可以,请发送完整代码,我的项目中可能有一些我没有注意到的愚蠢错误。谢谢! 代码:
import pygame
pygame.init()
screen=pygame.display.set_mode((800,600))
class Enemy(pygame.sprite.Sprite):
def __init__(self,x,y):
super().__init__()
self.image=pygame.Surface((10,10))
self.image.fill('Yellow')
self.rect=self.image.get_rect(topleft=(x,y))
def update(self):
self.remove(enemy)
return 0
enemy=pygame.sprite.Group()
enemy.add(Enemy(1,1))
pygame.display.update()
enemy.draw(screen)
while True:
pygame.display.update()
for event in pygame.event.get():
if event.type==pygame.QUIT:
pygame.quit()
exit()
enemy.update()
【问题讨论】:
请提供足够的代码,以便其他人更好地理解或重现问题。 【参考方案1】:我有个主意。您只需将精灵移出屏幕,例如pygame.draw.rect(9999,9999,width,height)
或者你可以填满屏幕?我还没有。
【讨论】:
我正在尝试这样做,以便以后可以导入图像,但这是个好主意,我会尝试在此基础上做一些事情。 好的:/随便。以上是关于鼠标单击后从屏幕上删除 pygame sprite [重复]的主要内容,如果未能解决你的问题,请参考以下文章