21 lines
632 B
GDScript
21 lines
632 B
GDScript
extends Node2D
|
|
var radius := 120.0
|
|
var tint := Color("ffaa46")
|
|
var endpoint := Vector2.ZERO
|
|
var _age := 0.0
|
|
func _ready() -> void:
|
|
z_index = 26
|
|
func _process(delta: float) -> void:
|
|
_age += delta
|
|
if _age >= 0.5: queue_free()
|
|
else: queue_redraw()
|
|
func _draw() -> void:
|
|
var t := clampf(_age/0.5,0.0,1.0)
|
|
var color := Color(tint,1.0-t)
|
|
if endpoint != Vector2.ZERO:
|
|
draw_line(Vector2.ZERO,endpoint,Color(tint,(1.0-t)*0.2),9.0,true)
|
|
draw_line(Vector2.ZERO,endpoint,color,2.0,true)
|
|
else:
|
|
draw_arc(Vector2.ZERO,radius*t,0,TAU,64,color,3.0,true)
|
|
draw_arc(Vector2.ZERO,radius*t*0.8,0,TAU,64,Color(tint,(1.0-t)*0.35),5.0,true)
|