![]() |
|
||||||||||
|
|||||
|
Регистрация: Mar 2010
Сообщений: 25
|
Цитата:
Возникла другая проблема. // Проверяем где бокс моба p.x=this.x; p.y=this.y+this.height/2+1; mobbox=stage.getObjectsUnderPoint(p); Проверяю пересечение с маркером моба (маркер нарисован программно, trace показывает что маркер тоже типа [shape]: И получаю ошибку преобразования типов: TypeError: Error #1034: Ошибка типа Coercion: невозможно преобразовать []@2a27a779 в flash.display.DisplayObject. at game::Mob/UpdateWorld() Вместо билеберды "[]@2a27a779" каждый кадр разный набор символов. Хотя обе вещи [shape] судя по ошибке это не так.. Пробывал явно указать что: public var mobbox:Shape; не помогло, только меняется ошибка: TypeError: Error #1034: Ошибка типа Coercion: невозможно преобразовать []@16cdcf59 в flash.display.Shape. at game::Mob/UpdateWorld() Подскажите как поправить? Добавлено через 29 минут Разобрался) getObjectsUnderPoint возвращает массив, надо брать [0] Добавлено через 39 минут НОВАЯ ПРОБЛЕМА: Когда один моб все нормально, он определяет свою стенку (даже если их несколько) и по ней правильно ездит. А когда добавляю второго моба начинаются ошибки: TypeError: Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null".at game::Mob/UpdateWorld() И работает только первый. Помоги пожалуйста что нетак. |
|
|||||
|
Регистрация: Mar 2010
Сообщений: 25
|
Прикладываю исходники, подскажите как сделать чтобы работало когда несколько мобов.
Вроде все через this сделано, а работает только один моб.. другие как будто не относительно себя проверку делают. |
|
|||||
|
Регистрация: Mar 2010
Сообщений: 25
|
Ошибка
TypeError: Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null". at game::Mob/UpdateWorld()\game\Mob.as:48] На строке: if(!mobbox.hitTestPoint(this.x-this.width/2,this.y+this.height/2+1,true)) Вылазиет когда больше одного моба |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Очевидно, mobbox в этой строке — null.
|
|
|||||
|
Регистрация: Mar 2010
Сообщений: 25
|
А почему? Ведь я тупо скопировал на сцене моба с платформой и поместил их рядом. То есть под ним есть эта платформа также как и там.
|
|
|||||
|
Регистрация: Mar 2006
Адрес: Odessa
Сообщений: 157
|
Ты проверяешь нижнюю точку моба. Видимо, этот моб на 0.5-2 пикселя выше стоит чем надо. Опусти моба или эту точку чуть ниже.
__________________
Не всех война убила - многих покалечила |
|
|||||
|
Регистрация: Mar 2010
Сообщений: 25
|
Спасибо заработало, почему то при простом копировании сместился моб..
|
![]() |
![]() |
Часовой пояс GMT +4, время: 13:35. |
|
|
« Предыдущая тема | Следующая тема » |
|
|