Использование существования объекта в операторе if в Haxe
Общий вопрос: можете ли вы использовать существование объекта как условие оператора if в Haxe? Если так, то как?
Конкретный вопрос: я изучаю разработку игр Haxe и использую библиотеку / фреймворк / движок игры HaxePunk. Существует не так много учебников по его использованию, но следовать учебникам по FlashPunk (библиотека, движок / фреймворк ActionScript, на котором он основан) было достаточно легко. Тем не менее, способ обнаружения столкновений работает в HaxePunk: если происходит столкновение, метод collide возвращает объект, с которым столкнулся.
var b : Bullet = collide("bullet", x, y);
if (b) {
b.destroy();
}
Я пытался протестировать его с типом Null, но, похоже, это не сработало.
1 ответ
Как упоминается в комментариях кириллоид, попробуйте проверить, b
не является нулевым:
var b : Bullet = collide("bullet", x, y);
if (b != null) {
b.destroy();
}
Для Хэйкс было решено не иметь if(b)
синтаксис по ряду причин. Вы можете найти обсуждение по теме в Google Groups: Test, если существует.