2011-12-27 7 views
0

すべて、スプライトが19ピクセルのジャークで1つの位置から別の位置に移動するゲームを作っていますが、基本的にスタッカオンラインと同じようにゲームを作りたいと思います。アプリストアでは、このゲームではボックスは19 piexelのジャークを通って移動しており、オブジェクトが移動されたグリッドであり、私は、コードを次しているが、私は私が考えてくれジャーク運動スプライトモーションでジャークをする方法

-(void)actionLayer 
{ 
isRunning = 0; 

addPixedlValue += 19; 
id actionMove = [CCMoveTo actionWithDuration:6 position:ccp(50,109)]; //300,100 


id actionMoveDone = [CCCallFuncN actionWithTarget:self selector:@selector(LayerAction:)]; 

animateAction = [CCSequence actions:actionMove, actionMoveDone, nil]; 


NSLog(@"pixel value %d",addPixedlValue); 



[boxSprite runAction:animateAction];  

} 


-(void)LayerAction:(id)sender 
{ 
addPixedlValue +=19; 
id actionMove = [CCMoveTo actionWithDuration:6 position:ccp(270,109)]; //300,100 


id actionMoveDone = [CCCallFuncN actionWithTarget:self selector:@selector(actionLayer)]; 

animateAction = [CCSequence actions:actionMove, actionMoveDone, nil]; 

[boxSprite runAction:animateAction]; 
} 

答えて

0

を与えませんあなたの問題は並べ替えることができます。時間間隔のセレクタをスケジューリングすることによって、0.1とあなたは自己に応じて位置を更新することができます。

-(void)moveSprite 
{ 
    sprite.position = ccp (sprite.position.x + 5 , sprite.position.y); 
} 

スプライトを停止するために必要なときにセレクタのスケジュールを解除します。

[self unschedule : @selector (moveSprite)]; 

メイクけいれん運動でこのヘルプあなたのスケジュール解除するためのセレクタ

[self schedule : @selector (moveSprite) interval : 0.1]; 

をスケジュールするための

+0

返信の場合は@Harronですが、このコードをどこに挿入すればいいですか? – Developer

+0

シーンロードとしてスプライトを移動したい場合は、[self schedule:@selector(moveSprite)interval:0.1]; initメソッドで使用するか、または何らかのアクションでそれを使用する場合は、このコードをアクションセレクターに追加する必要があります。 – Haroon

+0

thnx、私は境界を挿入したいと思います。この軸を介してレンガはその境界に移動します – Developer