armory/blender/arm/logicnode/native/LN_script.py

29 lines
851 B
Python
Raw Normal View History

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
class ScriptNode(ArmLogicTreeNode):
2020-10-05 19:55:56 +02:00
"""Executes the given script."""
2017-04-08 00:34:45 +02:00
bl_idname = 'LNScriptNode'
bl_label = 'Script'
2020-10-27 19:44:37 +01:00
arm_section = 'haxe'
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):
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='')