2016-04-21 38 views
0

我設計了一個SKLabelNode對象。當我觸摸SKLabelNode對象時,我想讓它從下往上移動,然後從上往下移動。首先它將從下往上移動,然後需要從上移到下移。這是代碼..任何人都可以幫忙!我想在sprite工具包中移動我的SKLabelNode對象?

- (void)touchesBegan:(NSSet *) touches withEvent:(UIEvent *)event 
{ 
    //SKNode *helloNode = [self childNodeWithName:@"helloNode"]; 

    SKNode * helloNode=[self childNodeWithName:@"helloNode"]; 
    if ([helloNode.name isEqualToString:@"helloNode"]) 
    { 
     helloNode.name = @""; 
     SKAction *moveUp = [SKAction moveByX: 0 y: 100.0 duration: 0.5]; 
     //SKAction *zoom = [SKAction scaleTo: 2.0 duration: 0.25]; 
     SKAction *pause = [SKAction waitForDuration: 0.5]; 
     SKAction *fadeAway = [SKAction fadeOutWithDuration: 0.25]; 
     SKAction *fadeIn = [SKAction fadeInWithDuration:0.25]; 

     //SKAction *remove = [SKAction removeFromParent]; 
     SKAction *moveSequence = [SKAction sequence:@[moveUp, pause, fadeAway,fadeIn]]; 
     [helloNode runAction: moveSequence]; 
    } 
    else 
    { 
     [email protected]"helloNode"; 
     SKAction *moveUp = [SKAction moveByX: 0 y: 50.0 duration: 0.5]; 
     //SKAction *zoom = [SKAction scaleTo: 2.0 duration: 0.25]; 
     SKAction *pause = [SKAction waitForDuration: 0.5]; 
     SKAction *fadeAway = [SKAction fadeOutWithDuration: 0.25]; 
     SKAction *fadeIn = [SKAction fadeInWithDuration:0.25]; 

     //SKAction *remove = [SKAction removeFromParent]; 
     SKAction *moveSequence = [SKAction sequence:@[moveUp, pause, fadeAway,fadeIn]]; 
     [helloNode runAction: moveSequence]; 

    } 
} 

回答

0

我不確定您遇到的確切問題 。

您可以在didMoveToView或任何您想要的位置開始向上移動動作。之後,您只需在觸摸監聽器中執行向下移動操作。

如果你想切換你的移動方向(一次上,下次 下..)你需要刪除之前的行動之前,你設置新的或只是覆蓋它(使用相同的動作名稱)。

相關問題