More progress
This commit is contained in:
parent
b5be52c801
commit
445d02ad0f
2 changed files with 45 additions and 7 deletions
|
@ -1,17 +1,20 @@
|
||||||
extends Node2D
|
extends Node2D
|
||||||
class_name GL_Node
|
class_name GL_Node
|
||||||
var rows : Dictionary
|
var rows : Dictionary
|
||||||
|
var uuid : int #REMEMBER TO SET THIS ON CREATION
|
||||||
|
|
||||||
# Called when the node enters the scene tree for the first time.
|
|
||||||
func _ready():
|
func _ready():
|
||||||
_init_visuals()
|
_init_visuals()
|
||||||
pass # Replace with function body.
|
pass
|
||||||
|
|
||||||
|
|
||||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
|
||||||
func _process(delta):
|
func _process(delta):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
func _create_uuid():
|
||||||
|
var rand = RandomNumberGenerator.new()
|
||||||
|
rand.seed = Time.get_unix_time_from_system()
|
||||||
|
uuid = rand.randi()
|
||||||
|
|
||||||
func _init_visuals():
|
func _init_visuals():
|
||||||
var nodeVisuals = load("res://Scenes/Nodes/Node.tscn")
|
var nodeVisuals = load("res://Scenes/Nodes/Node.tscn")
|
||||||
call_deferred("add_child",nodeVisuals)
|
call_deferred("add_child",nodeVisuals)
|
||||||
|
@ -53,5 +56,16 @@ func _create_row(name:String,input,output):
|
||||||
_update_visuals()
|
_update_visuals()
|
||||||
|
|
||||||
func _recieve_input(inputName:String,value):
|
func _recieve_input(inputName:String,value):
|
||||||
|
if rows.has(inputName):
|
||||||
|
rows[inputName]["input"] = value
|
||||||
|
|
||||||
func _send_input(inputName:String,value):
|
func _send_input(output_name: String, value):
|
||||||
|
if not rows.has(output_name):
|
||||||
|
return
|
||||||
|
|
||||||
|
var connections = rows[output_name].get("connections", [])
|
||||||
|
for conn in connections:
|
||||||
|
var target = conn.get("target", null)
|
||||||
|
var input_name = conn.get("input_name", null)
|
||||||
|
if target and input_name:
|
||||||
|
target._recieve_input(input_name, value)
|
||||||
|
|
|
@ -1,4 +1,28 @@
|
||||||
extends Node
|
extends Area2D
|
||||||
class_name GL_Node_Point
|
class_name GL_Node_Point
|
||||||
var valueName:String
|
|
||||||
|
var mainNode : GL_Node
|
||||||
@export var isOutput:bool
|
@export var isOutput:bool
|
||||||
|
|
||||||
|
var valueName:String
|
||||||
|
var dragging:bool
|
||||||
|
|
||||||
|
func _on_input_event(viewport, event, shape_idx):
|
||||||
|
if event is InputEventMouseButton and event.button_index == MOUSE_BUTTON_LEFT:
|
||||||
|
if event.pressed:
|
||||||
|
_start_drag()
|
||||||
|
else:
|
||||||
|
_finish_drag()
|
||||||
|
|
||||||
|
func _start_drag():
|
||||||
|
if (not isOutput):
|
||||||
|
return
|
||||||
|
|
||||||
|
dragging = true
|
||||||
|
|
||||||
|
|
||||||
|
func _finish_drag():
|
||||||
|
if not dragging:
|
||||||
|
return
|
||||||
|
|
||||||
|
dragging = false
|
||||||
|
|
Loading…
Add table
Reference in a new issue