38 lines
739 B
GDScript
38 lines
739 B
GDScript
extends Resource
|
|
class_name Moment
|
|
|
|
@export_range(0, 22) var hour: int # Hour alarm should go off
|
|
@export_range(0, 59) var minute: int # Minute alarm should go off
|
|
|
|
func _init(h: int = 0, m: int = 0):
|
|
hour = h
|
|
minute = m
|
|
|
|
func padded_minute() -> String:
|
|
return str(minute).pad_zeros(2)
|
|
|
|
func padded_hour() -> String:
|
|
return str(hour).pad_zeros(2)
|
|
|
|
func padded_hour_12() -> String:
|
|
return str(hour_12()).pad_zeros(2)
|
|
|
|
func hour_12() -> int:
|
|
return hour % 12
|
|
|
|
func to_seconds() -> int:
|
|
return hour * 60 * 60 + minute * 60
|
|
|
|
func am_pm() -> String:
|
|
return 'am' if is_am() else 'pm'
|
|
|
|
func is_morning() -> bool:
|
|
# 5 to 12
|
|
return hour <= 11 and hour >= 5
|
|
|
|
func is_am() -> bool:
|
|
return !is_pm()
|
|
|
|
func is_pm() -> bool:
|
|
return hour > 11
|