45 lines
1.1 KiB
GDScript3
45 lines
1.1 KiB
GDScript3
extends KinematicBody
|
|
|
|
# Declare member variables here. Examples:
|
|
# var a = 2
|
|
# var b = "text"
|
|
var mouse_left = false
|
|
var mouse_right = false
|
|
onready var ik_target = get_node("IK-arm-l-target")
|
|
|
|
# Called when the node enters the scene tree for the first time.
|
|
func _ready():
|
|
#pass # Replace with function body.
|
|
var ik = get_node("Armature/IK-arm-l")
|
|
ik.start()
|
|
|
|
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
|
func _process(delta):
|
|
|
|
if mouse_left and ik_target.translation[2] < 5:
|
|
ik_target.translate(Vector3(0, 0, -delta * 2))
|
|
|
|
elif mouse_right and ik_target.translation[2] > -5:
|
|
ik_target.translate(Vector3(0, 0, (delta * 2)))
|
|
|
|
func _input(event):
|
|
|
|
if event is InputEventMouse:
|
|
|
|
if event is InputEventMouseMotion:
|
|
|
|
#print(event.relative)
|
|
ik_target.translate(Vector3(event.relative[0] / 100, -event.relative[1] / 100, 0))
|
|
#print(ik_target.translation)
|
|
|
|
if event is InputEventMouseButton:
|
|
|
|
print("button event:")
|
|
print(event)
|
|
|
|
match event.button_index:
|
|
BUTTON_LEFT:
|
|
mouse_left = event.pressed
|
|
|
|
BUTTON_RIGHT:
|
|
mouse_right = event.pressed |