2014-04-01 17 views
6

Ich verwende die repeatActionForever Methode von SKAction um die Farbe eines SKShapeNode zu ändern. Hier ist mein Code:SKAction die Farbe eines SKShapeNode ändern

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 

Es scheint mir richtig, aber das Schiff Farbe ändert sich nicht. Was mache ich falsch, danke.

Antwort

4

Im Gegensatz zu SKSpriteNode hat eine SKShapeNode keine color Eigenschaft. So funktioniert Ihre colorizeWithColor: Aktion nicht.

Werfen Sie einen Blick auf dieses Thema, wie die fillColor und strokeColor animieren: SKShapeNode - Animate color change

Verwandte Themen