Я не знаю, как изменить спрайт при наведении курсора мыши на спрайт в cocos2d (python).
class cubeStar(cocos.layer.Layer):
is_event_handler = True
def __init__(self):
super().__init__()
self.sta = pyglet.image.ImageGrid(pyglet.image.load("starSprite.png"), 1, 2, item_width=124, item_height=124)#load the image, spritesheet
self.anim = pyglet.image.Animation.from_image_sequence(self.sta[1:], 0, loop=False)#loading the second part of spritesheet as default
self.cStar = cocos.sprite.Sprite(self.anim, anchor=(0, 0))
self.cStar.scale = 0.5
self.add(self.cStar)
def positionMake(self, x, y):
self.cStar.position = (x, y)
def on_mouse_motion(self, x, y, dx, dy):
if mouseOnSprite(x, y, 0, 0, self.cStar.x, self.cStar.y, self.cStar.width, self.cStar.height):
self.cStar = pyglet.image.Animation.from_image_sequence(self.sta[0:], 0, loop=False)#here is the problem. I want to change the sprite to the second part of the spritesheet when mouse moves into the box. I tested everything else but it works, its just this.
Также: если вам нужна ошибка: ее нет. остальная часть программы работает нормально, но она не изменится
spritesheet: spritesheet с 2 полями