initial commit, hope i didnt push any keys :P
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
extends MarginContainer
|
||||
|
||||
var alarm:Alarm
|
||||
var playing := false
|
||||
|
||||
onready var time_talker = $"../time talker"
|
||||
onready var weather_api_node = $"../WeatherAPINode"
|
||||
onready var snooze_timer = $"snooze timer"
|
||||
onready var snooze_button = $VBoxContainer/HBoxContainer/snooze
|
||||
onready var sleep_mode = $"../sleep_mode"
|
||||
|
||||
var _day
|
||||
var _weather
|
||||
|
||||
func popup(alarm:Alarm):
|
||||
if !alarm.active:
|
||||
return
|
||||
self.alarm = alarm
|
||||
|
||||
sleep_mode.prevent_sleep = true
|
||||
snooze_button.visible = alarm.snooze
|
||||
snooze_timer.stop()
|
||||
time_talker.stop()
|
||||
|
||||
_weather = Constants.WEATHER.UNKNOWN
|
||||
var json = yield(weather_api_node.get_forecast(),"completed")
|
||||
var temperature = json['current']['temp_c']
|
||||
if json is Dictionary:
|
||||
_weather = Constants.code_to_weather(json['current']['condition']['code'])
|
||||
_day = Time.get_date_dict_from_system()['weekday']
|
||||
show()
|
||||
_play()
|
||||
|
||||
|
||||
func _play():
|
||||
playing = true
|
||||
if !time_talker.is_playing():
|
||||
time_talker.play(alarm.moment, _day, _weather, alarm.weather_music if alarm.override_weather_music else null, alarm.play_music, alarm.speak_time)
|
||||
|
||||
func _on_snooze_timer_timeout():
|
||||
if alarm!=null and !alarm.active:
|
||||
_on_stop_pressed()
|
||||
return
|
||||
show()
|
||||
sleep_mode.prevent_sleep = true
|
||||
if alarm != null:
|
||||
_play()
|
||||
|
||||
func _on_stop_pressed():
|
||||
sleep_mode.prevent_sleep = false
|
||||
playing = false
|
||||
alarm = null
|
||||
time_talker.stop(1.5)
|
||||
snooze_timer.stop()
|
||||
self.hide()
|
||||
|
||||
func _on_snooze_pressed():
|
||||
sleep_mode.prevent_sleep = false
|
||||
print("Ya snooze...")
|
||||
playing = false
|
||||
time_talker.stop(2.5)
|
||||
snooze_timer.start(5*60)
|
||||
self.hide()
|
||||
# snooze_timer.start(5)
|
||||
|
||||
|
||||
func _on_time_talker_finished():
|
||||
if playing and alarm != null:
|
||||
_play()
|
||||
Reference in New Issue
Block a user