38 lines
771 B
GDScript
38 lines
771 B
GDScript
class_name Waypoint extends Control
|
|
|
|
var event : Quest.Event = null
|
|
var percent : float = 0
|
|
var filled: bool
|
|
var blink_tween : Tween
|
|
var blinking : bool = false
|
|
var fill: bool :
|
|
get:
|
|
return filled
|
|
set(value):
|
|
if value != filled:
|
|
set_fill(value)
|
|
|
|
func blink(blnk : bool) -> void:
|
|
if blinking == blnk:
|
|
return
|
|
blinking = blnk
|
|
if blinking:
|
|
blink_tween = create_tween()
|
|
blink_tween.tween_property($Dot,"modulate:a", 0, .5)
|
|
blink_tween.tween_property($Dot,"modulate:a", 1, .5)
|
|
blink_tween.set_loops(-1)
|
|
else:
|
|
blink_tween.stop()
|
|
blink_tween = null
|
|
|
|
func set_fill(value : bool) -> void:
|
|
filled = value
|
|
if value and !blinking:
|
|
$Dot.visible = true
|
|
$Fill.modulate = Color.SEA_GREEN
|
|
else:
|
|
$Dot.visible = false
|
|
$Fill.modulate = Color.BLACK
|
|
|
|
|