아래의 평상시, 엘니뇨, 라니냐 버튼을 누르면 각각 상황의 화면으로 바뀐다.
단, 내가 개인적으로 이해한 대로 만든 것이니 틀릴 수도 있음.

엘니뇨(El Niño)와 라니냐(La Niña) 현상에대해 배우다.
명칭은 스페인어로 각각' 남자아이'와 '여자아이'.
남동 무역풍이 약해지거나 강해져 발생하는 동태평양 적도부근에서의 해수 온도 이상현상.

원래 이지역엔 남동 무역풍(남동쪽에서 북서쪽으로 부는 바람)이 불어 동태평양의 따뜻한 해수가 서태평양쪽으로 흐른다. 하여 동태평양쪽 해수면이 낮아지고 서태평양쪽 해수면은 높아지며 바다 아래 차가운 바닷물들은 낮아진 동태평양쪽 밑에서 위로 올라가는 현상이 일어난다.
이로 인해 동태평양쪽은 차가운 바닷물, 맑고 건조한 기후가, 서태평양쪽은 따듯한 바닷물, 비가 자주 내리는 기후가 형성되는 것.

한데 남동 무역풍이 약해지면 이 흐름이 약해져 동태평양쪽이 따뜻한 바닷물, 비가 자주 내리는 기후, 서태평양쪽이 차가운 바닷물, 맑고 건조한 기후가 형성되는데 이런 현상에 의해 해수면 온도가 평소에 비해 0.5도 이상 차이나는 기간이 5개월 이상 지속되면 엘니뇨라 부르고 반대로 남동 무역풍이 강해져 동태평양이 더 차갑고 건조한 기후, 서태평양이 더 뜨겁고 강우량이 늘어나는 현상을 라니냐라 부른다고 한다.

한국과의 관계는 엘니뇨 현상이 발생되면 한국 남쪽 태평양 해수면 온도가 올라가기에 기온이 올라가는 현상이 발생하는 듯. 올 겨울도 엘니뇨가 제법 강해 평년에 비해 따뜻한 날씨가 많은 전반적으로 따스한 겨울이었다.

* 위의 플래시는 엘니뇨, 라니냐에대해 배운걸 토대로 Flash CS4 + AS 3.0으로 만들어 본 것.

= 동적으로 라이브러리의 익스포트명으로 무비클립 불러와 화면에 붙이기 처리.

= 스테이지상에 addChild된 무비클립들을 제거하는 방법을 찾아 헤메다. - 한 개의 배경 무비클립에 보여줄 무비클립들을 띄우고 다른 무비클립을 불러오기 전에 배경 무비클립에 띄워둔 자식 무비클립들을 모두 지운 뒤 불러오는 방식으로 처리.

16/2/20 토

* 화면상에 'but01M', 'but02M', 'but03M'란 이름의 버튼용 무비클립 3개, 변경되는 화면들을 담을 'blackBackM'이란 이름의 검은색 무비클립을 만들어 두고 라이브러리에 보여질 화면들 'SeaNormal', 'seaElNino', 'SeaLaNina'란 Export명의 무비클립들을 만들어 뒀다.

var sea:MovieClip;
var views = blackBackM; //변경되는 바다 무비클립 담을 무비클립

var but01 = but01M; //첫번째 버튼 무비클립
var but02 = but02M; //두번째 버튼 무비클립
var but03 = but03M; //세번째 버튼 무비클립
var butArr:Array = [but01, but02, but03];

function init(){ 
	showMov(new SeaNormal());
	for(var i=0; i < butArr.length; i++){
		butArr[i].addEventListener(MouseEvent.CLICK, mClick);
		butArr[i].addEventListener(MouseEvent.MOUSE_OVER, mOver);
		butArr[i].addEventListener(MouseEvent.MOUSE_OUT, mOut);
	}
}
function mOver(e:MouseEvent){ e.target.gotoAndStop(2); }
function mOut(e:MouseEvent){ e.target.gotoAndStop(1); }
function mClick(e:MouseEvent){
	graphics.clear();
	switch(e.target.name){
		case("but01M"): showMov(new SeaNormal()); break;
		case("but02M"): showMov(new SeaElNino()); break;
		case("but03M"): showMov(new SeaLaNina()); break;
	}
}
function showMov(mov:MovieClip=null){
	delAllChild(views);
	views.addChild(mov);
	mov.x = 8, mov.y = 8;
}
function delAllChild(mov:MovieClip){
	while(mov.numChildren){
		mov.removeChildAt(0);
	}
}

init();