Почему бы не создать класс Question со свойством ответов, в котором бы содержались все возможные ответы в массиве?
Затем можно было бы рандомизировать возможные ответы, запрашивая массив со случайным множителем.
Таким образом, вам не нужно будет продолжать запрашивать XML, вы получите набор вопросов, которые могут генерировать свои собственные варианты множественного числа в любое время, когда вы вызываете метод randomAnswers.
//In your Question class
private var answers:Array;
private var questionText:String;
private var currentQuestions:Array;
private function init():void
{
//Populate answers & questionText from the XML data
// Then set your current choice of questions
loadXML(xmlURL); // results in xmlLoaded...
}
private function xmlLoaded( event:Event ):void
{
//If you need 4 different answers
currentQuestions = randomAnswers(4 );
}
// Set the number of answers required as a parameter
private function randomAnswers( numAnswer:int ):Array
{
//The Array holding the set of random answers
var ans:Array = [];
//i've kept this basic for simplicity's sake
//but you could remove a question that's already been stored
//in order not to end up in some infinite loop...
for( var i:int ; i < answers.length; ++i )
{
//set a random integer
var rand:int = Math.random() * answers.length;
//if the answer is not already stored, add it
if( ans.indexOf( answers[rand] ) == -1 )
ans.push( answers[rand] );
else // otherwise try again
--i;
}
return ans;
}
Без полного изменения структуры вашей игры должна быть возможность реализовать функцию рандомизации, запускаемую пользовательским вводом, т.е. MouseEvent или любое другое событие, запускающее слайд, на который вы ссылаетесь ...
С другой стороны,Из вашего описания у меня сложилось впечатление, что ваш дизайн связан с вашим контентом, который может быть источником вашей проблемы.
Если это так, то должна быть возможность создать Объекты (класс Вопросов), которые содержат все данные XML (слайд, ответы и т. Д.), И реализовать методы для рандомизации отображаемых данных.
Для этого вам нужно будет загрузить данные XML в эти объекты, и порядок загрузки может даже не иметь значения ... Идея состоит в том, что вы не должны быть полностью привязаны кСтруктура XML.
Здесь я могу только догадываться, поскольку у меня нет полного обзора вашего приложения.