StreamOverlay/lib/debug_draw.gd

32 lines
899 B
GDScript3
Raw Permalink Normal View History

extends Node2D
class_name DebugDraw
var points: PackedVector2Array
var polygon: PackedVector2Array
func _draw() -> void:
points = Globals.get_exception_points()
var i := 0
while i < points.size():
var slice := points.slice(i, i+4)
draw_line(slice[0], slice[1], Color.GREEN, 1.0, true)
draw_line(slice[1], slice[2], Color.GREEN, 1.0, true)
draw_line(slice[2], slice[3], Color.GREEN, 1.0, true)
draw_line(slice[3], slice[0], Color.GREEN, 1.0, true)
i += 4
polygon = Globals.get_polygon_points()
for j in polygon.size():
if j+1 > polygon.size()-1:
draw_line(polygon[j], polygon[0], Color.RED, 1.0, true)
else:
draw_line(polygon[j], polygon[j+1], Color.RED, 1.0, true)
func _process(_d: float) -> void:
var current := Globals.get_exception_points()
if current != points:
queue_redraw()
current = Globals.get_polygon_points()
if current != polygon:
queue_redraw()