Показать сообщение отдельно
Старый 27.11.2012, 15:34
AlexLucas вне форума Посмотреть профиль Отправить личное сообщение для AlexLucas Найти все сообщения от AlexLucas
  № 8  
Ответить с цитированием
AlexLucas
 
Аватар для AlexLucas

Регистрация: Feb 2011
Сообщений: 431
То есть по сути - Zombie это один объект, вы заполняете массив ссылками на один и тот же объект, потому и появляется всего один зомби
Код AS3:
//если 
var Zombie:MovieClip = new zombie1();
//......
//тогда
for (var i = 0; i < count; i++) {
		Zombies[i] = Zombie;
//.....
}
//заполнит ваш массив, и в нём будет count ссылок на один и тот же объект
, потом удаляете одну ссылку, но остальные всё равно указывают на тот же объект который вы удалили, и выскакивает ошибка.
Надо создавать нового зомби для каждого элемента массива.
И ещё - вы 2 раза проверяете hitTest - в collisions, и в knowzombie - зачем ? Немного не понимаю почему всё же выдаёт hitTest. Сделайте трейс
Код AS3:
removeChild(Bullets[i]);
Bullets.splice(i, 1);
//тут трейс
removeChild(Zombies[temp]);
и проверьте если он выдаст вам трейс перед ошибкой, когда вы стреляете второй раз.