15 lines
445 B
GDScript
15 lines
445 B
GDScript
class_name ClockProgress
|
|
extends Node2D
|
|
|
|
var progress: float = 1.0 # 0.0 到 1.0
|
|
var radius: float = 8.0 # 时钟半径
|
|
var thickness: float = 4.0 # 边框粗细
|
|
var color := Color(1, 1, 1, 0.8)
|
|
|
|
func _draw() -> void:
|
|
# 绘制背景圆
|
|
draw_arc(Vector2.ZERO, radius, 0, TAU, 32, Color(0.2, 0.2, 0.2, 0.5), thickness)
|
|
# 绘制进度
|
|
if progress > 0:
|
|
draw_arc(Vector2.ZERO, radius, -PI/2, -PI/2 + TAU * progress, 32, color, thickness)
|