30 lines
682 B
Haxe
30 lines
682 B
Haxe
package leenkx.logicnode;
|
|
|
|
#if lnx_navigation
|
|
import leenkx.trait.navigation.Navigation;
|
|
import leenkx.trait.NavMesh;
|
|
#end
|
|
|
|
import iron.object.Object;
|
|
import iron.math.Vec4;
|
|
|
|
class AroundNavigableLocationNode extends LogicNode {
|
|
|
|
public function new(tree: LogicTree) {
|
|
super(tree);
|
|
|
|
}
|
|
|
|
override function get(from: Int): Dynamic {
|
|
#if lnx_navigation
|
|
var activeNavMesh: NavMesh = Navigation.active.navMeshes.get(inputs[0].get());
|
|
var position: Vec4 = inputs[1].get();
|
|
var radius: Float = inputs[2].get();
|
|
|
|
assert(Error, activeNavMesh != null, "No Navigation Mesh Present");
|
|
return activeNavMesh.getRandomPointAround(position, radius);
|
|
#end
|
|
return null;
|
|
}
|
|
}
|