2012-12-19 8 views
0

버튼을 누를 때마다 스프라이트에서 애니메이션을 실행하려고합니다.Cocos2d 한 번만 실행됩니다.

하지만 액션은 한 번만 실행되며 필요에 따라 다시 실행되지 않습니다.

내 행동이 도움이된다면 나의 행동입니다. 나의 행동은 id 인스턴스 변수로 선언됩니다.

moveUp = [CCMoveTo actionWithDuration:3 position:ccp(60,self.position.y+200)]; 
+0

스프라이트는 첫 번째 클릭에서 이미 (60, self.position.y + 200) 위치로 이동 ... 어떻게 다음 클릭을 할 것인가 ?? –

+0

액션 인스턴스 생성시 더 많은 코드를 게시하고 실행할 수 있습니까? 또한 올바른 스프라이트를 움직이고 있는지, 버튼 이벤트가 항상 잡히지 않았습니까? – yannicuLar

답변

1

동일한 작업을 다시 사용하려고합니까? 좋아요 :

moveUp = [CCMoveTo actionWithDuration:3 position:ccp(60,self.position.y+200)]; 
[self runAction:moveUp]; 

// some time later … 

[self runAction:moveUp]; 

그러면 작동하지 않습니다. 다음과 같이 매번 새로운 동작을 만들어야합니다 :

CCAction* moveUp = [CCMoveTo actionWithDuration:3 position:ccp(60,self.position.y+200)]; 
[self runAction:moveUp]; 

// some time later … 

CCAction* moveUp = [CCMoveTo actionWithDuration:3 position:ccp(60,self.position.y+200)]; 
[self runAction:moveUp]; 
관련 문제