Изменение изображения SKSpriteNode

я новичок в спрайте Kit и возникли проблемы с изменением текущего изображения SKSpriteNode.

Мой spriteNode выглядит так

mover = [SKSpriteNode spriteNodeWithTexture:Texture1];
[mover setScale:1.0];
[self addChild:mover];

тогда у меня есть этот метод, который должен изменить образ движителя, но это не так. Что я делаю неправильно?

- (void)didBeginContact:(SKPhysicsContact *)contact {
    if (contact.bodyA.categoryBitMask == worldCategory) {
        SKTexture* explodeTexture1 = [SKTexture textureWithImageNamed:@"explode"];
        explodeTexture1.filteringMode = SKTextureFilteringNearest;

        mover = [SKSpriteNode spriteNodeWithTexture:explodeTexture1];
    }
}

Ответы

Ответ 1

Вам нужно изменить свойство текстуры объекта перемещения.

Что-то вроде этого:

mover.texture = [SKTexture textureWithImageNamed:@"explode"];

Ответ 2

Этот метод фактически воссоздает объект перемещения.

mover = [SKSpriteNode spriteNodeWithTexture:explodeTexture1];

Вам просто нужно обновить текстуру с помощью

mover.texture = explodeTexture1;

Ответ 3

Быстрая версия:

mover.texture = SKTexture.textureWithImageNamed("explode")

Быстрая версия 3.0:

mover.texture = SKTexture(imageNamed: "explode")

Ответ 4

То, что сработало для меня, было на самом деле.

mover.texture = SKTexture(imageNamed: str)