У меня есть объект Array of Character Character (расширяет Sprite).Лучший способ повторного использования элемента из массива?
public static var charlist:Array;
Когда персонаж умирает, я устанавливаю флаг для указания этого.
char.die = true;
Когда я создаю нового игрока, я проверяю этот флаг, чтобы повторно использовать слот. Здесь возникает проблема. Каков наилучший способ сделать это? На самом деле у меня есть такой подход:
char = new Char();
/* ... */
for (var i:Number = 0; i < Char.charlist.length; i++) {
if (Char.charlist[i].death) {
Char.charlist[i] = char;
return;
}
}
Но проблема в том, что я родом из C++, и я думаю, что для расчета индекса каждой итерации является расточительным.
Я хотел бы сделать это, но это не работает в AS3, так как я не могу получить доступ по ссылке пункт:
char = new Char();
/* ... */
for (var i:Number = 0; i < Char.charlist.length; i++) {
var char_it:Char = Char.charlist[i];
if (char_it.death) {
char_it = char;
return;
}
}
Просто примечание: charlist является статическим членом класса Char.
У вас есть идеи или лучшие подходы?
Спасибо!
Великих документации, когда я приду Вернемся к этому проекту, я проверю эту информацию. – Veehmot