23 lines
818 B
GDScript
23 lines
818 B
GDScript
class_name CircusTrim
|
|
extends Control
|
|
## Filo di bandierine decorativo riutilizzabile.
|
|
|
|
@export var flag_count := 11
|
|
@export var span := 440.0
|
|
|
|
|
|
func _ready() -> void:
|
|
mouse_filter = Control.MOUSE_FILTER_IGNORE
|
|
queue_redraw()
|
|
|
|
|
|
func _draw() -> void:
|
|
var colors := [Color("#a9403e"), Color("#d5a83f"), Color("#397b76")]
|
|
var start_x := (size.x - span) * 0.5
|
|
draw_line(Vector2(start_x - 10, 8), Vector2(start_x + span + 10, 8), Color("#63361f"), 3.0, true)
|
|
for index in flag_count:
|
|
var x := start_x + index * (span / float(flag_count - 1)) - 16.0
|
|
var points := PackedVector2Array([Vector2(x, 7), Vector2(x + 32, 7), Vector2(x + 16, 31)])
|
|
draw_colored_polygon(points, colors[index % colors.size()])
|
|
draw_polyline(PackedVector2Array([points[0], points[1], points[2], points[0]]), Color("#6b341c"), 1.5, true)
|