무비클립을 부드럽게 이동하는 방법입니다.
fps는 30정도 입력하고 프레임에 액션을 입력합니다.
x_m=500;
_root.onEnterFrame = function(){ // 반복하기
my_movie._x = my_movie._x+(x_m-my_movie._x)/6;
}//반복문의 끝
이렇게 하면 my_movie 무비클립이 x좌표 500으로 이동합니다.
그런데 흠이 하나 있습니다.
목표값까지 완전하게 도달하지 못하고 소수자리가 부족합니다.
드문 경우지만 저는 그것이 큰(?) 문제가 됬기 떄문에 해결책이 필요했었습니다.
그럼 이제 깔끔하게 완료하는 액션을 추가해줍니다.
if(Math.abs(my_movie._x-x_m)<1) my_movie._x=x_m; else
//목표값(x_m)과 무비클립(my_movie)의 거리가 1픽셀 이하가 된 경우 무비클립 위치는 목표값
위 액션을 my_movie._x = my_movie._x+(x_m-my_movie._x)/6; 앞에 넣어주면 됩니다.
즉, 거리가 1픽셀 이하일때는 무비클립 위치를 목표값과 같게하고, 그렇지 않을경우 무비클립이 목표값으로 따라갑니다.
이제 목표까지 깔끔하게 이동합니다.
수고하셨습니다^^
댓글 없음:
댓글 쓰기