▶ 플래시에서의 문자와 숫자의 관계
플래시에서 어떤 상황에서 문자로 인식하고 어떤 상황에서 숫자로 인식을 하는지 아래 내용을 하나씩 입력해 보면서 확인해봅시다.
// 문자열 + 문자열 = 문자열합
trace("flash" + "cs")
// 문자열 + 숫자열 = 문자열합
trace("actionScript" + 3);
// 숫자열 + 숫자열 = 숫자열합
trace(5 + 10);
trace(10 + 10 + "house");
trace(10 + "mouse" + (10+5));
trace("flash" + "cs")
// 문자열 + 숫자열 = 문자열합
trace("actionScript" + 3);
// 숫자열 + 숫자열 = 숫자열합
trace(5 + 10);
trace(10 + 10 + "house");
trace(10 + "mouse" + (10+5));
문자열 + 문자열은 문자열이 됩니다. 예를 들어 “2002” + “월드컵” 이라고 적을 경우 2002월드컵으로 나타납니다. 그러나 “2002 + 월드컵” 이라고 적을 경우 2002+월드컵 이라고 나타나게 됩니다.
문자열 + 숫자열의 경우 문자열로 인식합니다. 위에서 적은대로 “월드컵” 2002 라고 적을 경우 월드컵2002로 인식합니다.
마지막으로 숫자열 + 숫자열은 숫자열로 인식합니다. 20 + 02 라고 적을 경우 2002가 아닌 22가 됩니다.
문자열 + 숫자열의 경우 문자열로 인식합니다. 위에서 적은대로 “월드컵” 2002 라고 적을 경우 월드컵2002로 인식합니다.
마지막으로 숫자열 + 숫자열은 숫자열로 인식합니다. 20 + 02 라고 적을 경우 2002가 아닌 22가 됩니다.
③ 이동속도를 이용한 방향 바꾸기
onClipEvent(load){
speed = 2;
onClipEvent(enterFrame){
this._x = this._x +speed;
if(this._x > 500 || this._x <50){
speed = -1*speed;
this._xscale = -1*this._xscale;
}
}
speed = 2;
onClipEvent(enterFrame){
this._x = this._x +speed;
if(this._x > 500 || this._x <50){
speed = -1*speed;
this._xscale = -1*this._xscale;
}
}
위 액션스크립트는 무비클립을 매 프레임마다 speed 만큼씩 x축으로 이동시킨 것인데 만약 특정영역(50 ~ 500)을 벗어나면 자신의 속도에 -1을 곱하여 이동 방향을 바꾸게 하고 _xscale에 -1을 곱하여 방향으로 머리를 향하게 하였습니다.
speed = 2; ← 속도를 변수로 지정합니다.
this._xscale = -1*this._xscale; ← scale이 -가 되면 대칭이 됩니다.
speed = -1*speed; ← 스피드가 -가 되면 방향이 바뀝니다.
this._xscale = -1*this._xscale; ← scale이 -가 되면 대칭이 됩니다.
speed = -1*speed; ← 스피드가 -가 되면 방향이 바뀝니다.
따라서 특정 영역을 벗어나면 반대 방향으로 회전하여 이동하게 되겠죠? 여기에서 중요한 것이 if문입니다. if문 즉 조건문이라고 하는데 “~ 하면 ~하시오”라는 뜻입니다. if문은 뒤에서 따로 배우도록 하겠습니다.
예제)
예제)
//1.속도설정
xspeed = 10;
yspeed = 10;
//2.경계점설정
xPos1 = red._width/2;
xPos2 = 550 - (red._width/2);
yPos1 = red._height/2;
yPos2 = 400 - (red._height/2);
/*경계점 내에 있도록 위치이동
if(red._x < xPos1 || red._x > xPos2){
red._x = xPos1;
}*/
//3.매프레임마다 할일 정하기
red.onEnterFrame = function(){
//반사
if(this._x > xPos2 || this._x < xPos1){
xspeed = xspeed * -1;
}
if(this._y > yPos2 || this._y < yPos1){
yspeed = yspeed * -1;
}
this._x = this._x + xspeed;
this._y = this._y + yspeed;
};
xspeed = 10;
yspeed = 10;
//2.경계점설정
xPos1 = red._width/2;
xPos2 = 550 - (red._width/2);
yPos1 = red._height/2;
yPos2 = 400 - (red._height/2);
/*경계점 내에 있도록 위치이동
if(red._x < xPos1 || red._x > xPos2){
red._x = xPos1;
}*/
//3.매프레임마다 할일 정하기
red.onEnterFrame = function(){
//반사
if(this._x > xPos2 || this._x < xPos1){
xspeed = xspeed * -1;
}
if(this._y > yPos2 || this._y < yPos1){
yspeed = yspeed * -1;
}
this._x = this._x + xspeed;
this._y = this._y + yspeed;
};















































메서드







