Début de travail sur Screening Desk

This commit is contained in:
Maurane
2025-06-08 18:20:09 +02:00
parent d4f9a165dc
commit 34dd05aa07
18 changed files with 323 additions and 89 deletions
+48 -11
View File
@@ -1,39 +1,43 @@
extends Control
@export var TitleScreen: PackedScene
@export var Office: PackedScene
@export var ScreeningDesk: PackedScene
@export var Bedroom: PackedScene
@export var TextScreens: PackedScene
@export var DialogueScreens: PackedScene
var dialogue_intro = load("res://Dialogues/intro.dialogue")
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
#Adding Scenes
var title_screen = TitleScreen.instantiate()
var office = Office.instantiate()
var screening_desk = ScreeningDesk.instantiate()
var bedroom = Bedroom.instantiate()
var text_screens = TextScreens.instantiate()
var dialogue_screens = DialogueScreens.instantiate()
add_child(title_screen)
add_child(office)
add_child(screening_desk)
add_child(bedroom)
add_child(text_screens)
add_child(dialogue_screens)
#Naming Scenes
title_screen.name = "TitleScreen"
office.name = "Office"
screening_desk.name = "ScreeningDesk"
bedroom.name = "Bedroom"
text_screens.name = "TextScreens"
dialogue_screens.name = "DialogueScreens"
#Showing TitleScreen
title_screen.show()
#UI.show()
#UI.get_node("UI/SkipContainer").show()
#Connecting Signals
title_screen.connect("new_game_pressed", _on_new_game_pressed)
@@ -41,32 +45,65 @@ func _ready() -> void:
pass
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
pass
# Starts a new game
func _on_new_game_pressed():
var choice_dialog = UI.get_node("UI/ConfirmationDialog")
choice_dialog.set_ok_button_text("Yes")
choice_dialog.set_cancel_button_text("No")
choice_dialog.get_label().text = ("Do you wish to skip the introduction ?")
UI.get_node("UI/ConfirmationDialog").show()
choice_dialog.get_ok_button().pressed.connect(skip_intro, CONNECT_ONE_SHOT)
choice_dialog.get_cancel_button().pressed.connect(play_intro, CONNECT_ONE_SHOT)
#Skips the introduction
func skip_intro():
transition("big", [$TitleScreen], [$ScreeningDesk, UI, UI.get_node("UI/UpperContainer")])
await TransitionScreen.transition_finished
#Plays the entire introduction
func play_intro():
var text_container = $TextScreens/MarginContainer/IntroBoxContainer/TextContainer
transition("big", [$TitleScreen], [$TextScreens, text_container.get_child(0)])
await $TextScreens.next_slide
#Introduction first slides
transition("big", [$TitleScreen], [$TextScreens, text_container.get_child(0), UI, UI.get_node("UI/SkipContainer")])
await UI.next_slide
for i in 4:
transition("small", [text_container.get_child(i)], [text_container.get_child(i+1)])
await $TextScreens.next_slide
await UI.next_slide
transition("big", [$TextScreens, text_container.get_child(4)], [$DialogueScreens])
await $TextScreens.next_slide
#Dialogue in the Meeting Room
transition("big", [$TextScreens, text_container.get_child(4), UI, UI.get_node("UI/SkipContainer")], [$DialogueScreens])
await TransitionScreen.transition_finished
$DialogueScreens.dialogue(dialogue_intro, "start")
await DialogueManager.dialogue_ended
#Transition to the Screening Desk
transition("big", [$DialogueScreens], [$ScreeningDesk])
await UI.next_slide
# Takes care of fading transitions between scenes
func transition(size, scenes_to_hide, scenes_to_show):
func transition(fading_screen_size, scenes_to_hide, scenes_to_show):
TransitionScreen.transition(size)
TransitionScreen.transition(fading_screen_size)
await TransitionScreen.fading_finished