VectorNode.hx 725 B

123456789101112131415161718192021222324252627282930313233
  1. package arm.logicnode;
  2. import armory.logicnode.LogicNode;
  3. import armory.logicnode.LogicTree;
  4. import armory.math.Vec4;
  5. class VectorNode extends LogicNode {
  6. var value = new Vec4();
  7. public function new(tree:LogicTree, x:Null<Float> = null, y:Null<Float> = null, z:Null<Float> = null) {
  8. super(tree);
  9. if (x != null) {
  10. addInput(new FloatNode(tree, x), 0);
  11. addInput(new FloatNode(tree, y), 0);
  12. addInput(new FloatNode(tree, z), 0);
  13. }
  14. }
  15. override function get(from:Int):Dynamic {
  16. value.x = inputs[0].get();
  17. value.y = inputs[1].get();
  18. value.z = inputs[2].get();
  19. return value;
  20. }
  21. override function set(value:Dynamic) {
  22. inputs[0].set(value.x);
  23. inputs[1].set(value.y);
  24. inputs[2].set(value.z);
  25. }
  26. }