|
|
|||||
Регистрация: Sep 2010
Адрес: Moscow
Сообщений: 473
|
полностью не удаляется спрайт
В игре героя атакует враг, когда у героя жизней <= 0, нужно его убить и удалить..
но в чем, суть, трейс показывает ,что количество объектов на сцене уменьшилось, но враг продолжает бить какого то героя, хотя его на сцене нет, и в чем суть в режиме отладки показывается, что продолжает уменьшаться количество жизней и объект еще существует |
|
|||||
Регистрация: Sep 2010
Адрес: Moscow
Сообщений: 473
|
А что можно сделатЬ?
|
|
|||||
Нужно смотреть как у Вас организованна логика, как создается объект, где прописывается ссылка на него и соответсвено с removeChild удалять объект от туда где он сохранён.
__________________
return this... |
|
|||||
Регистрация: Sep 2010
Адрес: Moscow
Сообщений: 473
|
ну я его так добавляю
еще пушу его в массив всех Entity чтоб можно было получать к нему доступ из класса врага
Добавлено через 15 минут Я поставил утилитку для наблюдения за ресурсами памяти, и вот при удалении память освобождается, но враг все равно атакует |
|
|||||
Регистрация: Sep 2010
Адрес: Moscow
Сообщений: 473
|
А почему так? это ж вроде как одна ссылка на один экземпляр
|
|
|||||
Потому что выполнив addChild или addChildAt вы не передаете объект целиком. Вы всего лишь говорите плееру что этот объект следует отображать.
Добавлено через 16 минут соответственно когда Вы используете removeChild / removeChildAt вы не удаляете объект, а просто сообщаете что нужно удалить этот объект с списка отображаемых плеером объектов.
__________________
return this... |
|
|||||
Регистрация: Aug 2012
Сообщений: 297
|
Цитата:
|
|
|||||
Цитата:
Цитата:
Самый разумный способ - это в классе Hero сделать метод, в котором все, что он насоздавал внутри, уничтожается, и зануляются все ссылки на внешние объекты (если таковые имеются) И дальше уничтожение свелось бы к такой логике: |
Часовой пояс GMT +4, время: 02:52. |
|
« Предыдущая тема | Следующая тема » |
Опции темы | |
Опции просмотра | |
|
|