본문 바로가기
배워보자!!/플래시

[flash as3.0] 플래시 광고 만들기 ver1

by norinda 2015. 3. 28.
728x90


main.as


temp.fla



모 사이즈에서 자주 보이는 광고를 만들어봤습니다.

음..다각형 모양의 아이콘을 드래그해서 이미지의 반을 넘었을때 마우스를 떼면 실행되는 광고입니다.

아이콘 드래그 유도 모션정도는 추가적으로 작업해서 넣어보세요 ^^

package {
	import flash.display.MovieClip;
	import flash.events.MouseEvent;
	import flash.events.Event;
	public class main extends MovieClip {
		public function main() {
			nextImage.mouseEnabled = false; //광고 이미지가 아이콘보다 위에 있기 때문에 아이콘 클릭이 안되는걸 막기위해 추가했습니다.
			nextImage.alpha = 0; //나타날 광고 이미지의 투명도를 초기 0으로 설정
			icon.buttonMode = true;  //아이콘에 마우스를 댔을때 손가락 모양 표시설정
			icon.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); //아이콘 마우스 이벤트 설정 (한번클릭)
			icon.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler); //아이콘 마우스 이벤트 설정(초기상태, 클릭뗐을때)
		}
		private function mouseDownHandler(e: MouseEvent): void 
		{
			e.currentTarget.startDrag(); //아이콘 드래그 시작
		}
		private function mouseUpHandler(e: MouseEvent): void 
		{
			trace(stage.stageWidth, e.currentTarget.x, e.currentTarget.y); //스테이지 넓이 , 아이콘의 x좌표 , 아이콘의 y좌표를 표시해줍니다.
			e.currentTarget.stopDrag(); //아이콘 드래그 종료
			if(e.currentTarget.x <= stage.stageWidth / 2)  //아이콘의 x좌표가 스테이지의 반을 넘겼을때 true
			{
				adStart();  //광고 이미지를 보여주게 됩니다. adStart함수 실행
			}
		}
		private function adStart(): void {
			nextImage.addEventListener(Event.ENTER_FRAME, enterFrameHandler); //광고이미지의 enter_frame 이벤트 실행
		}
		private function enterFrameHandler(e: Event): void {
			if(nextImage.alpha < 1) {
				nextImage.alpha += 0.06; //광고이미지의 투명도가 1이 될때까지 0.06씩 더해줍니다.
			} else {
				removeEvent(); //광고이미지의 투명도가 1보다 클때 초기 설정했던 이벤트를 모두 삭제하는 함수실행
			}

		}
		private function removeEvent(): void { //이벤트를 삭제해줍니다.
			icon.buttonMode = false;
			icon.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
			icon.removeEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);
			nextImage.removeEventListener(Event.ENTER_FRAME, enterFrameHandler);
		}
	}

}


반응형

댓글