armory/Sources/armory/logicnode/ObjectNode.hx
2019-12-19 23:54:08 +01:00

29 lines
649 B
Haxe

package armory.logicnode;
import iron.object.Object;
class ObjectNode extends LogicNode {
public var objectName: String;
public var value: Object = null;
public function new(tree: LogicTree, objectName: String = "") {
this.objectName = objectName;
super(tree);
}
override function get(from: Int): Dynamic {
if (inputs.length > 0) return inputs[0].get();
if (value == null) value = objectName != "" ? iron.Scene.active.getChild(objectName) : tree.object;
return value;
}
override function set(value: Dynamic) {
if (inputs.length > 0) inputs[0].set(value);
else {
objectName = value.name;
this.value = value;
}
}
}