충돌검사 : hitTestObject, hitTestPoint
충돌검사는 항상 if 문을 동반하여 사용한다.
1. hitTestObject
- 객체와 객체사이의 충돌검사
- 둘러싼 사각형 사이의 충돌검사
2. hitTestPoint
- 객체와 점사이의 충돌 검사
- 세번째 옵션에 따라 정확하게 충돌여부를 체크할 수도 있다.
3. hitTestObject 와 hitTestPoint의 사용 방법
if( 객체1.hitTestObject(객체2) == true )
{
}else{
}
if( 객체.hitTestPoint(x,y,true) == true)
{
}else{
}
hitTestObject 태양과 눈사람의 충돌테스트 예제
var sun:MovieClip = sun_mc;
var snowman: MovieClip = snowman_mc;
sun.startDrag(true);
snowman.addEventListener( Event.ENTER_FRAME, onEnter);
function onEnter ( e: Event ) : void
{
if( sun.hitTestObject(snowman) == true)
{
snowman.alpha = 0.5; // alpha 값을 50%로
}else{
snowman.alpha = 1;
}
}
hitTestobject = 오브젝트 박스 영역 형태로 충돌 여부 판단
hitTestPoint = 오브젝트의 외각 라인 형태로 충돌 여부 판단
hitTestPoint 예제
var bird:MovieClip = bird_mc;
bird.addEvnetListener ( Evnet.ENTER_FRAME, onEnter );
function onEnter ( e: Event ) : void
{
if( bird.hitTestPoiint ( mouseX, mouseY, true ) == true ) // hitTestPoint 옵션을 true ==> false로 바꾸면 hitTestObject 처럼 박스형태로 인식
{
bird.scaleX = bird.scaleY = 1.2;
}else {
bir.scaleX=bird.scaleY =1;
}
}
'코딩공부 > Action Script 3.0' 카테고리의 다른 글
addChild 와 e.currentTarget 을이용한 눈내리는 애니메이션 구현 (0) | 2015.02.13 |
---|---|
Event에 대해서 ( e.currentTarget 관련 예제 ) (0) | 2015.02.13 |
1차 함수와1차함수의 응용 ( 마우스 움직임에 따라 스크롤되는 이미지 예제 ) (0) | 2015.02.13 |
슬라이드 메뉴 만들기 예제 (0) | 2015.02.12 |
객체 구조 적용 방법 (0) | 2015.02.12 |