41 lines
688 B
GDScript
41 lines
688 B
GDScript
@tool
|
|
extends Marker2D
|
|
|
|
@onready var number = $Number
|
|
@onready var number_label = $Number/Label
|
|
|
|
@export_range(0, 12, 1, "o'clock") var part : float:
|
|
set(value):
|
|
part = value
|
|
set_part(part)
|
|
|
|
@export var value : int:
|
|
set(new_value):
|
|
value = new_value
|
|
await ready
|
|
set_value(value)
|
|
|
|
var _part: float
|
|
var _value: int
|
|
|
|
func _process(delta):
|
|
number.rotation = -rotation
|
|
|
|
func set_part(value):
|
|
_part = value
|
|
var new_rotation = 2*PI * value / 12
|
|
rotation = new_rotation
|
|
|
|
func get_part():
|
|
return _part
|
|
|
|
func set_value(new_value):
|
|
_value = new_value
|
|
number_label.text = str(new_value)
|
|
|
|
func get_value():
|
|
return _value
|
|
|
|
func get_number_position():
|
|
return number.global_position
|