armory/blender/arm/logicnode/input/LN_touch.py
Moritz Brückner 96aa0ee890 Use custom sockets for default data types
This allows to listen for socket updates for the live patch system
2021-07-10 21:46:44 +02:00

28 lines
966 B
Python

from arm.logicnode.arm_nodes import *
class SurfaceNode(ArmLogicTreeNode):
"""Activates the output on the given touch event."""
bl_idname = 'LNMergedSurfaceNode'
bl_label = 'Touch'
arm_section = 'surface'
arm_version = 1
property0: HaxeEnumProperty(
'property0',
items = [('started', 'Started', 'The screen surface starts to be touched'),
('down', 'Down', 'The screen surface is touched'),
('released', 'Released', 'The screen surface stops being touched'),
('moved', 'Moved', 'Moved')],
name='', default='down')
def init(self, context):
super(SurfaceNode, self).init(context)
self.add_output('ArmNodeSocketAction', 'Out')
self.add_output('ArmBoolSocket', 'State')
def draw_buttons(self, context, layout):
layout.prop(self, 'property0')
def draw_label(self) -> str:
return f'{self.bl_label}: {self.property0}'