SleepyClock/clock.gd
2026-05-29 02:00:57 +10:00

47 lines
1.6 KiB
GDScript

extends Control
var taskbar_height : int = 50
@export var bar: TextureProgressBar
@export var label: Label
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
position.y = 0
var screen_size : Vector2i = DisplayServer.screen_get_size()
#DisplayServer.window_set_size(Vector2i(screen_size.x, 10))
#size.x = screen_size.x
#size.y = 10
#DisplayServer.window_set_min_size(Vector2i(1,1))
get_window().min_size = Vector2i(1,1)
get_window().size = Vector2i(screen_size.x, 10)
DisplayServer.window_set_position(Vector2i(0,screen_size.y-10-taskbar_height))
position.y = 0
#position = Vector2i(0,screen_size.y-10-taskbar_height)
#get_window().size = Vector2i(screen_size.x, 10)
pass # Replace with function body.
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
var days : float = (Time.get_unix_time_from_system() + (60*60*10)) / 86400
var offset : float = 0.5 # 0 = midday, 12 = midnight
# bar should fill from 11:30pm (11.5) -> 1:30am (13.5)
var current_day : float = fmod(days + offset,1)
var mini_hour : float = 1.0/24.0
bar.max_value = mini_hour * 13.5
bar.min_value = mini_hour * 11.5
bar.value = current_day
#label.text = Time.get_datetime_string_from_system()
#Time.
#print(current_day)
if (bar.value >= 0.50):
bar.modulate = Color.RED
else:
bar.modulate = Color.DODGER_BLUE
#var screen_size : Vector2i = DisplayServer.screen_get_size()
#DisplayServer.window_set_size(Vector2i(screen_size.x, 10))
#get_window().size = Vector2i(screen_size.x, 10)
pass