gdvrpn/addons/vrpn/scripts/VRPN_Button.gd

21 lines
527 B
GDScript3
Raw Normal View History

class_name VRPN_Button
extends Node
@export var vrpn_client : VRPN_Client = null
@export var button_sensor : String = "Button0"
2025-07-08 09:45:49 +02:00
@export var register_on_ready : bool = true
var state : int = 0
2025-07-08 21:25:46 +02:00
signal on_vrpn_button(data:Dictionary)
func _ready():
if not vrpn_client:
push_warning("No VRPN client for button on '%s' given." % [self.name])
2025-07-08 09:45:49 +02:00
elif register_on_ready:
vrpn_client.buttons.append(self)
func _on_vrpn(vrpn_data : Dictionary) -> void:
if vrpn_data['sensor'] == button_sensor:
2025-07-08 21:25:46 +02:00
on_vrpn_button.emit(vrpn_data)