haxeflixel Есть ли другой способ проверки столкновения без FlxG.collision?
Я делаю игру с игровым движком haxe и haxeflixel и реализую столкновение.
Я нашел способ проверки столкновения в шестигранном листе.
FlxG.overlap(ObjectOrGroup1, ObjectOrGroup2, myCallback);
private function myCallback(Object1:FlxObject, Object2:FlxObject):Void
{
}
Но мне не нравится этот стиль. это заставляет код работать.
Я хочу кодировать, как это.
FlxG.overlap(ObjectOrGroup1, ObjectOrgroup2, function(){
//do something
}
Я видел этот стиль в javascript, или что-то в этом роде, но я точно не знаю, что это такое. есть ли способ кодировать, как это?
и мне нужен этот код, как это:
if(FlxG.collide(Object1, Object2){
//do something
}
Он должен возвращать значение (true или false) и обрабатывается оператором if.
1 ответ
Решение
Ваш фрагмент кода для анонимной функции почти правильный, но функция обратного вызова для FlxG.overlap()
ожидает два аргумента (объекты, которые столкнулись). Попробуй это:
FlxG.overlap(ObjectOrGroup1, ObjectOrGroup2, function(object1:FlxObject, object2:FlxObject) {
// do something with object1 and object2
});