Text Settings done
This commit is contained in:
+68
-14
@@ -43,6 +43,9 @@ func _ready() -> void:
|
||||
UI.connect("main_menu_pressed", self._on_main_menu_pressed)
|
||||
screening_desk.connect("recovery_pressed", self._on_recovery_pressed)
|
||||
|
||||
UI.connect("text_value_changed", self._on_text_value_changed)
|
||||
UI.connect("auto_value_changed", self._on_auto_value_changed)
|
||||
|
||||
#Updating Save/Load Slots Information based on Existing Saves
|
||||
update_slots()
|
||||
|
||||
@@ -73,7 +76,7 @@ func play_intro():
|
||||
TransitionScreen.transition("big", [$TextScreens, $TextScreens/MarginContainer, text_container.get_child(4), UI, UI.get_node("UI/SkipContainer")], [$DialogueScreens])
|
||||
await TransitionScreen.transition_finished
|
||||
|
||||
$DialogueScreens.start_balloon(Globals.dialogue_intro, "start")
|
||||
start_balloon("big", Globals.dialogue_intro, "start")
|
||||
await DialogueManager.dialogue_ended
|
||||
|
||||
#Starting the day
|
||||
@@ -84,6 +87,9 @@ func play_intro():
|
||||
#Starts the day
|
||||
func start_day():
|
||||
|
||||
#Hiding Menu for cinematic impact
|
||||
UI.get_node("UI/UpperContainer").hide()
|
||||
|
||||
#Transitioning to day screen
|
||||
$TextScreens/Day.text = "[center]DAY " + str(Globals.day_count) + "[/center]"
|
||||
|
||||
@@ -91,10 +97,12 @@ func start_day():
|
||||
var scenes_to_show: Array[Node] = [$TextScreens, $TextScreens/Day]
|
||||
TransitionScreen.transition("big", scenes_to_hide, scenes_to_show)
|
||||
await TransitionScreen.transition_finished
|
||||
await get_tree().create_timer(3.0).timeout
|
||||
await get_tree().create_timer(2.0).timeout
|
||||
|
||||
#Transitioning to the screening desk
|
||||
TransitionScreen.transition("big", [$TextScreens, $TextScreens/Day], [$ScreeningDesk, $ScreeningDesk.alone_controls, UI, UI.get_node("UI/UpperContainer")])
|
||||
scenes_to_hide = scenes_to_show
|
||||
scenes_to_show = [$ScreeningDesk, $ScreeningDesk.alone_controls, UI, UI.get_node("UI/UpperContainer")]
|
||||
TransitionScreen.transition("big", scenes_to_hide, scenes_to_show)
|
||||
await TransitionScreen.transition_finished
|
||||
|
||||
#Setting up new patient
|
||||
@@ -112,7 +120,7 @@ func _on_recovery_pressed():
|
||||
await TransitionScreen.transition_finished
|
||||
|
||||
#End of day dialogue
|
||||
$DialogueScreens.start_balloon(Globals.dialogue_recovery, "end_of_day_" + str(Globals.day_count))
|
||||
start_balloon("big", Globals.dialogue_recovery, "end_of_day_" + str(Globals.day_count))
|
||||
await DialogueManager.dialogue_ended
|
||||
|
||||
#Start of the next day
|
||||
@@ -157,16 +165,14 @@ func save_game(save_slot_number:int):
|
||||
#Loads save file from the selected load slot
|
||||
func load_game(load_slot_number:int):
|
||||
|
||||
#CLeaning balloons
|
||||
$DialogueScreens.clean_balloon()
|
||||
$ScreeningDesk.clean_balloon()
|
||||
#CLearing balloon
|
||||
clear_balloon()
|
||||
|
||||
#Hiding loading menus and masks
|
||||
TransitionScreen.mask.visible = false
|
||||
UI.get_node("UI/Menu").hide()
|
||||
UI.get_node("UI/UpperContainer").hide()
|
||||
UI.get_node("UI/Load").hide()
|
||||
UI.get_node("UI/LoadTitle").hide()
|
||||
|
||||
#Opening save file
|
||||
var file = FileAccess.open("res://Saves/save_" + str(load_slot_number) + ".json", FileAccess.READ)
|
||||
@@ -207,9 +213,8 @@ func _on_main_menu_pressed():
|
||||
#Removing mask
|
||||
TransitionScreen.mask.visible = false
|
||||
|
||||
#Cleaning balloons
|
||||
$DialogueScreens.clean_balloon()
|
||||
$ScreeningDesk.clean_balloon()
|
||||
#Clearing balloon
|
||||
clear_balloon()
|
||||
|
||||
#Hiding menus
|
||||
UI.get_node("UI/Menu").hide()
|
||||
@@ -232,10 +237,8 @@ func update_slots():
|
||||
#Retrieves save and load slots
|
||||
var save_slot_path = "UI/Save/MarginContainer/VBoxContainer/SaveSlot" + str(save_number)
|
||||
var load_slot_path = "UI/Load/MarginContainer/VBoxContainer/LoadSlot" + str(save_number)
|
||||
var load_title_slot_path = "UI/LoadTitle/MarginContainer/VBoxContainer/LoadSlot" + str(save_number)
|
||||
var save_slot = UI.get_node(save_slot_path)
|
||||
var load_slot = UI.get_node(load_slot_path)
|
||||
var load_title_slot = UI.get_node(load_title_slot_path)
|
||||
|
||||
#Retrieves save path
|
||||
var save_path = "res://Saves/save_" + str(save_number) + ".json"
|
||||
@@ -251,6 +254,57 @@ func update_slots():
|
||||
print(load_data)
|
||||
save_slot.text = "DAY " + str(load_data["day_count"]) + ", PATIENT " + str(load_data["patient_count"]) + "\nSAVE DATE : " + str(load_data["save_date"])
|
||||
load_slot.text = save_slot.text
|
||||
load_title_slot.text = save_slot.text
|
||||
else:
|
||||
print("Failed to parse Loading Data.")
|
||||
|
||||
|
||||
|
||||
#Starts a balloon dialogue
|
||||
func start_balloon(panel_size:String, dialogue_resource: Resource, start_title: String):
|
||||
|
||||
#Clearing previous balloon
|
||||
clear_balloon()
|
||||
|
||||
#Instantiating a custom balloon
|
||||
var Balloon: Resource = load("res://Dialogues/balloon_" + panel_size + ".tscn")
|
||||
balloon = Balloon.instantiate()
|
||||
get_tree().current_scene.add_child(balloon)
|
||||
|
||||
#Connects emotion signals if needed
|
||||
if panel_size == "small":
|
||||
DialogueManager.got_dialogue.connect($ScreeningDesk._change_emotion)
|
||||
DialogueManager.got_dialogue.connect($ScreeningDesk._recording_text)
|
||||
|
||||
#Applies text settings to the balloon
|
||||
balloon.dialogue_label.seconds_per_step = UI.text_speed
|
||||
#balloon.dialogue_line.time = UI.auto_speed
|
||||
|
||||
#Starts dialogue
|
||||
balloon.start(dialogue_resource, start_title)
|
||||
|
||||
|
||||
#Clearing balloon
|
||||
func clear_balloon():
|
||||
|
||||
#Clearing Previous Balloon
|
||||
if is_instance_valid(balloon):
|
||||
balloon.queue_free()
|
||||
|
||||
#Disconnecting emotion signals
|
||||
if DialogueManager.is_connected("got_dialogue", $ScreeningDesk._change_emotion):
|
||||
DialogueManager.disconnect("got_dialogue", $ScreeningDesk._change_emotion)
|
||||
if DialogueManager.is_connected("got_dialogue", $ScreeningDesk._recording_text):
|
||||
DialogueManager.disconnect("got_dialogue", $ScreeningDesk._recording_text)
|
||||
|
||||
|
||||
#Changes text_speed value
|
||||
func _on_text_value_changed():
|
||||
if is_instance_valid(balloon):
|
||||
balloon.dialogue_label.seconds_per_step = UI.text_speed
|
||||
|
||||
|
||||
#Changes auto_speed value
|
||||
func _on_auto_value_changed():
|
||||
if is_instance_valid(balloon):
|
||||
#balloon.dialogue_line.time = UI.auto_speed
|
||||
pass
|
||||
|
||||
Reference in New Issue
Block a user