2017-04-08 00:34:45 +02:00
|
|
|
import bpy
|
2020-09-08 23:21:41 +02:00
|
|
|
|
2017-04-08 00:34:45 +02:00
|
|
|
from arm.logicnode.arm_nodes import *
|
|
|
|
|
2020-09-08 23:21:41 +02:00
|
|
|
|
2020-09-08 21:16:20 +02:00
|
|
|
class ScriptNode(ArmLogicTreeNode):
|
2020-09-08 23:14:51 +02:00
|
|
|
"""Script node"""
|
2017-04-08 00:34:45 +02:00
|
|
|
bl_idname = 'LNScriptNode'
|
|
|
|
bl_label = 'Script'
|
2020-09-13 11:27:58 +02:00
|
|
|
arm_version = 1
|
2017-04-08 00:34:45 +02:00
|
|
|
|
|
|
|
@property
|
|
|
|
def property0(self):
|
2017-10-18 09:51:35 +02:00
|
|
|
return bpy.data.texts[self.property0_].as_string() if self.property0_ in bpy.data.texts else ''
|
|
|
|
|
2017-04-08 00:34:45 +02:00
|
|
|
|
2018-12-18 23:48:38 +01:00
|
|
|
property0_: StringProperty(name='Text', default='')
|
2017-04-08 00:34:45 +02:00
|
|
|
|
|
|
|
def init(self, context):
|
2020-09-13 11:27:58 +02:00
|
|
|
super(ScriptNode, self).init(context)
|
2020-09-08 21:49:02 +02:00
|
|
|
self.add_input('ArmNodeSocketAction', 'In')
|
|
|
|
self.add_input('ArmNodeSocketArray', 'Array')
|
|
|
|
self.add_output('ArmNodeSocketAction', 'Out')
|
|
|
|
self.add_output('NodeSocketShader', 'Result')
|
2017-04-08 00:34:45 +02:00
|
|
|
|
|
|
|
def draw_buttons(self, context, layout):
|
|
|
|
layout.prop_search(self, 'property0_', bpy.data, 'texts', icon='NONE', text='')
|
|
|
|
|
2020-09-09 20:48:35 +02:00
|
|
|
add_node(ScriptNode, category=PKG_AS_CATEGORY, section='haxe')
|