2014-04-01 27 views
6

SKShapeNode'un rengini değiştirmek için SKAction'dan repeatActionForever yöntemini kullanıyorum.SKAction SKShapeNode'un rengini değiştirme

SKShapeNode *ship = [SKShapeNode node]; 
[ship setPath:CGPathCreateWithRoundedRect(CGRectMake(-15, -15, 40, 17), 6.25, 6.25, nil)]; 
ship.fillColor = [SKColor redColor]; 
ship.glowWidth = 3; 

[ship runAction:[SKAction repeatActionForever:[SKAction sequence:@[ 
[SKAction colorizeWithColor:[SKColor blueColor] colorBlendFactor:1.0 duration:0.5], 
[SKAction waitForDuration:0.3],[SKAction colorizeWithColorBlendFactor:1.0 duration:0.5], 
[SKAction colorizeWithColor:[SKColor redColor] colorBlendFactor:1.0 duration:0.5], 
[SKAction waitForDuration:0.3], 
[SKAction colorizeWithColorBlendFactor:1.0 duration:0.5], 
[SKAction waitForDuration:0.3]]]]]; 
return ship; //because it's a method 

Bana doğru bakıyor ama gemi rengini değiştirmez: İşte benim kod. Neyi yanlış yapıyorum, teşekkürler.

cevap

4

SKSpriteNode'un aksine, SKShapeNode, color özelliğine sahip değildir. Yani, colorizeWithColor: eyleminiz çalışmaz. SKShapeNode - Animate color change

:

fillColor ve strokeColor animasyon nasıl bu yazı bir göz atın