嗨我有一个宇宙飞船的物体,我希望它改变颜色(改变图像)当我按下这里的按钮是我的对象时:
class soucoupe(pygame.sprite.Sprite):
def __init__(self, image, height, speed):
pygame.sprite.Sprite.__init__(self)
self.speed = -2
self.image = pygame.Surface([64, 34])
self.image = blus # this is the image
self.pos = image.get_rect()
self.pos.x=520
self.pos.y=680
self.rect = self.image.get_rect()
def move(self):
global dpush
global gpush
if dpush and gpush ==1 or dpush and gpush ==0:
self.pos = self.pos.move(0*self.speed, 0)
if dpush==1:
self.pos = self.pos.move(-self.speed, 0)
if gpush==1:
self.pos = self.pos.move(self.speed, 0)
按下按钮时我试过: soucoupe.image = image2 但它不起作用图像仍然是相同的,它看起来很简单,但我没有线索。
答案 0 :(得分:0)
您没有完成所有相关代码,但您说过:
soucoupe.image= image2
with会设置image
类的soucoupe
属性。
这与设置类的实例的属性不同。
某处您可能会创建soucoupe
的实例,例如
something = soucoupe(image, height, speed)
然后您必须设置image
something
属性
something.image = image2
您的代码还存在其他一些问题,但这些问题超出了此答案的范围。