2012-11-26 4 views
0

actionscript 3에서 변수와 함께이 작업을하고 싶습니다. randomNumber 함수를 무시할 수 있습니다. 그냥 내가 뭘하는지에 대한 내 질문에 좀 더 명확하게하는 것 : 어떻게 이런 변수를 사용할 수 있습니까?

function randomNumber(low:Number=0, high:Number=1):Number { 
return Math.floor(Math.random() * (1+high-low)) + low; 
} 

randomNumber(1, 3) 

var selection:int = randomNumber; 

mymovieclip.insideclip(selection); 

그래서 나는 기본적으로 특정 무비 클립을 선택하는 변수의 내용을 사용하고 싶습니다. 여러 개의 내부 클립이 있다고 상상할 수 있습니다. insideclip1, insideclip2, insideclip3과 같은 것입니다. 임의로 번호를 선택하여 선택이라는 변수에 넣은 다음 변수가 저장하는 번호에 따라 mymovieclip.insideclip1, 2 또는 3을 사용하려고합니다.

누군가가 나를 알아낼 수있는 방법이 있다고 확신합니다.

+0

비슷한 것을 찾고있는 사람에게 비틀 거리는 다른 사람을 명확히 밝히기 만하면됩니다. 배열을 만들었습니다 : movieclipArray : Array = [movieclip.insideclip1, movieclip.insideclip2, etc.]; 그리고 위에 게시 한 임의 함수를 사용하여 다음과 같이했습니다. var selection = randomNumber (0, 3); 마침내 내가 원했던 결과를 얻을 수있었습니다. movieclipArray [선택] –

답변

2

많은 방법으로 원하는대로 선택할 수 있습니다. 한 가지 방법은 모든 "내부 클립"을 배열에 저장 한 다음 임의의 인덱스를 선택할 수 있습니다.

+0

제안을 주셔서 감사합니다. 저는 아직 초보자이므로 배열 사용에 대한 경험이 없지만 얻을 것입니다! 그냥 호기심에서, 나는 배열을 사용하여 작동 확신하지만 나는 또한 일반적으로 같은 목표를 달성하기 위해 다른 방법을 알고 싶습니다. 물론 배열을 배열하면 다시 게시 할 것입니다. –

+0

이 경우 배열은 클립을 저장하는 방법이며 각 무비 클립의 '매핑'또는 인덱스를 숫자로 사용하는 데 사용됩니다. 이 매핑을 다른 방법으로 만들 수 있습니다. 예를 들어 '1'을 클립 1로, '2'를 클립 2로 표시 한 다음 배열을 피하려면 long if/else if 또는 switch 문을 사용합니다. 가지고있는 클립의 수에 따라 코드가 중복되고 유지 관리가 더 어려워 질 것이라고 권장합니다. – mitim

+0

아, 그래, 지금 알아 냈어 도움 mitim 주셔서 감사합니다. 나는 배열에 "insideclips"를 넣었고 어떤 것을 사용할지 선택을 무작위로 바꿀 수 있었고 내가 원하는 것을 할 수있었습니다. 하하와 네, 당신이 언급 한 다른 방법에 대해 생각하고 있었고 여기에 오기 전에 먼 길을 간구하려고 생각했습니다. 다행히 다행히 결정했습니다. –

0
var selection:int = randomNumber(1, 3);//randomNumber(1, mymovieclip.numChildren) 
var myMovie = mymovieclip.getChildByName("insideclip" + selection); 

또는 이름을 제거하려면 해당 깊이로 액세스 할 수 있습니다.

var selection:int = randomNumber(1, mymovieclip.numChildren); 
var myMovie = mymovieclip.getChildByDepth(selection); 
+0

대답에 대한 고마워요, 흥미로운 접근 방식을 주셔서 감사합니다. 나는 클립을 잡아 줄 어레이를 만드는 것으로 끝났지 만 제안에 감사드립니다. –

관련 문제