2015-05-13 3 views
0

В настоящее время у меня есть многомерный массив, который хранит каждый ответ на указанный массив. Когда объект массива, который отображается, выбран, он должен затем перейти к следующему массиву в многомерном массиве. Я смотрел несколько уроков и искал несколько ответов на это, но я до сих пор не могу понять.Отображение следующего элемента В массиве при щелчке объекта AS3 FLASH

Это мой многомерный массив:

var characterArray:Array = new Array(); 
characterArray[0] = [pirateboy, pirategirl, pig]; //pig is the ans 
characterArray[1] = [pirateboy1, pirategirl1 ,parrot1]; //pirateboy is the ans 
characterArray[2] = [pirategirl, pirateboy, pirateboy]; //pirategirl is the ans 
characterArray[3] = [parrot1, snowman, parrot1]; //snowman is the ans 

var randomnumber = Number; 
randomnumber = Math.floor(Math.random() * (characterArray.length)); 
trace(randomnumber); 

Это то, что в настоящее время происходит, когда объект щелкнули. Я просто включил это в качестве примера, поскольку они все одинаковы.

pig.addEventListener(MouseEvent.CLICK, rightanswer); 
function rightanswer (event:MouseEvent){ 
if (MovieClip(event.target) == characterArray[0][2]) 
{ 
score = score + 5; 
Score_txt.text = (score).toString(); 
setTimeout(DisplayAnswer,1000); 
} 
} 

Это моя следующая функция вопрос:

characterArray.addEventListener(MouseEvent.CLICK, nextquestion); 
function nextquestion(event:MouseEvent){ 

} 

Я не знаю, что нужно положить в функцию nextquestion для того, чтобы перейти на элемент в массиве, когда объект нажимается.

+0

Вы хотите переместить 'pig' из' characterArray [0] 'to' characterArray [1] '? – subdan

+0

Да, но в случайном порядке, если это возможно? – Chloe

+0

Да, это возможно. Что означает «случайный порядок»? – subdan

ответ

0

Во-первых, вырезать pig из массива characterArray[0].

var cuttedPig:MovieClip = characterArray[0].splice(2); 

Далее выбрать случайный массив, в котором pig будет наклеен.

var randomArray:int = Math.round((Math.random() * (characterArray.length-2))+1); // 1, 2 or 3 

Наконец, добавьте pig к началу случайного массива.

characterArray[randomArray].splice(0, 0, cuttedPig); 
+0

Хорошо, я понимаю, что ты делаешь, я попробую это. Огромное спасибо :) – Chloe

Смежные вопросы