효과♡음향방

onClipEvent(enterFrame) 과 if() 를 함께 사용해보자.

탤런트 2007. 1. 22. 22:26

onClipEvent(load){
mrate = 22;
m_height = 240;
d_position = -50;
}

onClipEvent(enterFrame){
if(this._y <= m_height){
this._y += mrate;
}
else if(this._y > m_height){
this._y = d_position;
}
}
여기서 첫 부분에

onClipEvent(load){
mrate = 22;
m_height = 240;
d_position = -50;
}

는 무비클립이 로드되면서 몇개의 변수값을 설정해 줍니다.
mrate는 이동속도가 될것이고, m_height 는 높이를 설정해 주고, d_position는 초기위치를 설정하는 변수입니다.

이처럼 우선 필요한 변수 몇개를 설정해 줍니다.
꼭, 이처럼 변수를 먼저 설정하지 않아도 되지만 이렇게 변수를 설정해 주면 차후에 수정이 필요할 경우 두번 손을 쓰지 않고 변수 수정 한번으로 끝낼 수 있습니다.

그리고

onClipEvent(enterFrame){
if(this._y <= m_height){
this._y += mrate;
}
else if(this._y > m_height){
this._y = d_position;
}
}

이 부분은 무비클립의 현재 y축의 위치가 위에서 설정한 변수 m_height 보다 작거나 같으면 mrate 만큼 이동시켜 주고, 그렇지 않고 무비클립의 현재 y축의 위치가 m_height 보다 크면 초기위치로 이동시켜 주라는 명령입니다.

즉, 화살표는 자신의 현재 위치에 따라서 아래로 이동할 것인지 아니면 초기위치로 갈 것인지를 결정하게 되는것입니다.

위에서도 잠깐 언급했지만 m_height 과 같은 변수를 설정하지 않고 바로 240 이라는 숫자를 적었다면 차후에 수정할 때 두곳을 수정해야 한다. 하지만 변수를 설정함을써 한번의 수정으로 가능해 진다.