본문 바로가기

FLASH/AS3.0팁

as3.0 에서 배열 섞는 방법

배열을 랜덤하게 섞는 것은 게임구현에 있어 매우 중요합니다.

게임의 불규칙성을 만들어 내려면 이런 방법을 사용하는 것이 좋습니다.

그럼 어떻게 그것을 구현할 수 있을까요.

플래시를 열고 메인 타임라인에 다음의 코드를 입력해 가면서 연습하면 좋을 것 같습니다.

다음 코드는 배열을 랜덤하게 섞는 예제입니다. 


//배열에 배열값 넣기

var tmp:Array = new Array();
for (var i:int=0; i<10; i++){
 tmp.push(i);
}
trace(tmp);

 

//랜덤하게 섞은 배열만들기

var myArray:Array = new Array();
while(tmp.length>0){
  var r:int = Math.floor(Math.random()*tmp.length); //배열의 길이에서 랜덤값을 뽑아낸다
  myArray.push(tmp[r]);  //뽑아낸 배열값을 랜덤배열에 넣는다
  tmp.splice(r,1);  //해당배열값을 없앤다
}
trace(myArray);