Browse Source

Aligned structure to how Armory does things.

master
Maxim Stewart 4 years ago
parent
commit
a695f10759
  1. 4
      Sources/armory/logicnode/EnhancedTransformNode.hx
  2. 22
      blender.py
  3. 5
      logicnode_definitions/__init__.py
  4. 21
      logicnode_definitions/action_enhanced_transform.py

4
Sources/armory/logicnode/EnhancedTransformNode.hx

@ -41,9 +41,9 @@ class EnhancedTransformNode extends LogicNode {
scale.z = object.transform.scale.z;
}
q.fromEuler(rot.x, rot.y, rot.z);
q.fromEuler(rot.x, rot.y, rot.z);
value.compose(loc, q, scale);
object.transform.setMatrix(value);
object.transform.setMatrix(value);
#if arm_physics
var rigidBody = object.getTrait(RigidBody);

22
blender.py

@ -1,24 +1,10 @@
from bpy.types import Node
import bpy
from bpy.props import *
from bpy.types import Node, NodeSocket
from arm.logicnode.arm_nodes import *
import arm.nodes_logic
class EnhancedTransformNode(Node, ArmLogicTreeNode):
'''EnhancedTransformNode'''
bl_idname = 'LNEnhancedTransformNode'
bl_label = 'Enhanced Transform'
bl_icon = 'GAME'
def init(self, context):
self.inputs.new('ArmNodeSocketAction', 'In')
self.inputs.new('ArmNodeSocketObject', 'Object')
self.inputs.new('NodeSocketVector', 'Location')
self.inputs.new('NodeSocketVector', 'Rotation')
self.inputs.new('NodeSocketVector', 'Scale')
self.outputs.new('ArmNodeSocketAction', 'Out')
from logicnode_definitions import *
def register():
# Add custom nodes
add_node(EnhancedTransformNode, category='Action')
# Register newly added nodes
arm.nodes_logic.register_nodes()

5
logicnode_definitions/__init__.py

@ -0,0 +1,5 @@
# Import all nodes
from os.path import dirname, basename, isfile
import glob
modules = glob.glob(dirname(__file__)+"/*.py")
__all__ = [basename(f)[:-3] for f in modules if isfile(f)]

21
logicnode_definitions/action_enhanced_transform.py

@ -0,0 +1,21 @@
import bpy
from bpy.props import *
from bpy.types import Node, NodeSocket
from arm.logicnode.arm_nodes import *
class EnhancedTransformNode(Node, ArmLogicTreeNode):
'''EnhancedTransformNode'''
bl_idname = 'LNEnhancedTransformNode'
bl_label = 'Enhanced Transform'
bl_icon = 'GAME'
def init(self, context):
self.inputs.new('ArmNodeSocketAction', 'In')
self.inputs.new('ArmNodeSocketObject', 'Object')
self.inputs.new('NodeSocketVector', 'Location')
self.inputs.new('NodeSocketVector', 'Rotation')
self.inputs.new('NodeSocketVector', 'Scale')
self.outputs.new('ArmNodeSocketAction', 'Out')
add_node(EnhancedTransformNode, category='Action')
Loading…
Cancel
Save