forked from ZestyRaraferu/OFS_Simulator3D
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathLineDrawer.gd
More file actions
29 lines (23 loc) · 924 Bytes
/
LineDrawer.gd
File metadata and controls
29 lines (23 loc) · 924 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
extends ImmediateGeometry
onready var target_position = Vector3(0, -1.875, 0)
onready var start_position_node = $"../Stroker/Top"
onready var distance_label = $"../UI/DistanceLabel"
func _process(_delta):
clear()
begin(Mesh.PRIMITIVE_LINES, null)
add_vertex(start_position_node.global_transform.origin)
add_vertex(target_position)
end()
var distance = start_position_node.global_transform.origin.distance_to(target_position)
var percentage = (distance / 2.0) * 100
distance_label.text = "%.0f%%" % percentage
var fraction = max(min((distance - 1.8) / (2.0 - 1.8), 1.0), 0.0)
if percentage > 100:
material_override.albedo_color = Color.fuchsia
distance_label.modulate = Color.purple
else:
var base_color = Color(3, 3, 3)
var target_color = Color.hotpink
var color = base_color.linear_interpolate(target_color, fraction)
distance_label.modulate = color
material_override.albedo_color = color