2014-07-23 47 views
2

我只是試圖在「宇宙飛船」上添加精靈「光」。正如你在下面看到的那樣,我添加了光線作爲飛船的小孩,然而,光線出現在飛船下面,如下圖所示。誰能告訴我爲什麼會發生這種情況,我該如何解決?出現在父項下的子精靈

- (void)newSpaceshipAtLocation:(CGPoint)location{ 
SKSpriteNode *hull = [[SKSpriteNode alloc]initWithImageNamed:@"Spaceship"]; 

hull.position = location; 
hull.name = @"Spaceship"; 
hull.scale = 0.5; 

SKSpriteNode *light = [self lights]; 
light.position = CGPointMake(hull.size.width/5.0, hull.size.height/5.0); 
[hull addChild:light]; 

[self addChild:hull]; 
} 

- (SKSpriteNode *)lights{ 
SKSpriteNode *light = [[SKSpriteNode alloc]initWithColor:[NSColor yellowColor] size:CGSizeMake(50.0, 50.0)]; 

SKAction *blink = [SKAction sequence:@[ 
             [SKAction fadeOutWithDuration:0.5], 
             [SKAction fadeInWithDuration:0.5], 
             ]]; 
[light runAction:[SKAction repeatActionForever:blink]]; 
light.name = @"light"; 

return light; 
} 

Yellow light under the spaceship

+0

你忘了圖片。 – RaffAl

+0

@reecon我不能直接上傳圖片,因爲我沒有足夠的聲望。它在下面的鏈接中。 – user14492

+0

Yeap,明白了。我錯過了圖片的鏈接。抱歉。 – RaffAl

回答

1

嘗試設置上lightzPosition財產。如果將其設置爲高於hull精靈的任何值,它應該可以工作。

+0

謝謝,這似乎解決了這個問題。雖然,我仍然想明白爲什麼它以前不工作。如果你能解釋這一點,那將是美好的。 – user14492

+0

嗯...不太確定。儘管你設定位置的方式有些有趣。 「船體」的比例實際上並不影響精靈的框架。如果你正在創造一大堆船舶物件,那麼在'船體'下方顯示的'light'實際上就是來自另一個'船體'的'light'。那有意義嗎? – doctorBroctor

相關問題