4 Commits

Author SHA1 Message Date
c767f88fcd feat: level two base
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 7s
Create tag and build when new code gets to main / Export (push) Successful in 5m2s
2025-06-28 17:54:57 +02:00
a51c4b82ae feat: new defeat screen and new indoors scene
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 7s
Create tag and build when new code gets to main / Export (push) Successful in 2m17s
2025-06-28 16:18:17 +02:00
aa6a5ca964 feat: wrong building scene
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 8s
Create tag and build when new code gets to main / Export (push) Successful in 2m17s
2025-06-28 14:33:47 +02:00
f365450590 feat: sound for intro
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 8s
Create tag and build when new code gets to main / Export (push) Successful in 2m19s
2025-06-28 13:02:47 +02:00
21 changed files with 2929 additions and 14 deletions

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://dcylcol0nj0pv"
path="res://.godot/imported/CIN_INTRO_Pitch mission.ogg-4b569bdb43235b38f5baa7a3f9997ccb.oggvorbisstr"
[deps]
source_file="res://assets/Audio/CIN_INTRO_Pitch mission.ogg"
dest_files=["res://.godot/imported/CIN_INTRO_Pitch mission.ogg-4b569bdb43235b38f5baa7a3f9997ccb.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

BIN
assets/garance/EGJ-BAR.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://d31fkxosknhli"
path="res://.godot/imported/EGJ-BAR.png-477f6d9b497ee174371ffda65d2826e8.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/garance/EGJ-BAR.png"
dest_files=["res://.godot/imported/EGJ-BAR.png-477f6d9b497ee174371ffda65d2826e8.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

BIN
assets/light.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

34
assets/light.webp.import Normal file
View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dna7ld7qgab32"
path="res://.godot/imported/light.webp-d35799de8fb0c49b55296f910078c3f9.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/light.webp"
dest_files=["res://.godot/imported/light.webp-d35799de8fb0c49b55296f910078c3f9.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

33
default_bus_layout.tres Normal file
View File

@ -0,0 +1,33 @@
[gd_resource type="AudioBusLayout" format=3 uid="uid://cd43qm20mmsb4"]
[resource]
bus/1/name = &"Cinematique"
bus/1/solo = false
bus/1/mute = false
bus/1/bypass_fx = false
bus/1/volume_db = 0.0
bus/1/send = &"Master"
bus/2/name = &"Character"
bus/2/solo = false
bus/2/mute = false
bus/2/bypass_fx = false
bus/2/volume_db = 0.0
bus/2/send = &"Master"
bus/3/name = &"VoiceOver"
bus/3/solo = false
bus/3/mute = false
bus/3/bypass_fx = false
bus/3/volume_db = 0.0
bus/3/send = &"Master"
bus/4/name = &"UI"
bus/4/solo = false
bus/4/mute = false
bus/4/bypass_fx = false
bus/4/volume_db = 0.0
bus/4/send = &"Master"
bus/5/name = &"Music"
bus/5/solo = false
bus/5/mute = false
bus/5/bypass_fx = false
bus/5/volume_db = 0.0
bus/5/send = &"Master"

View File

@ -62,3 +62,4 @@ copy_path="res://template"
textures/canvas_textures/default_texture_filter=0
textures/vram_compression/import_etc2_astc=true
environment/defaults/default_clear_color=Color(0, 0, 0, 1)

32
scenes/indoors/bar.gd Normal file
View File

@ -0,0 +1,32 @@
extends Node2D
@export_file("*.tscn") var golé: String
@export_file("*.tscn") var next_level: String
@export var base_mode: GUIDEMappingContext
@export var vies = 3
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
GUIDE.enable_mapping_context(base_mode)
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
pass
func _on_interactible_triggered(event_id: String) -> void:
vies -= 1
if vies == 0:
SceneLoader.load_scene(golé)
func _on_wrong_door_event_triggered(event_id: String) -> void:
SceneLoader.load_scene(golé)
func _on_right_door_event_triggered(event_id: String) -> void:
SceneLoader.load_scene(next_level) # Replace with function body.

View File

@ -0,0 +1 @@
uid://cjo7sxy5vy7bc

2417
scenes/indoors/bar.tscn Normal file

File diff suppressed because one or more lines are too long

View File

@ -13,6 +13,12 @@ signal event_triggered(event_id: String)
@onready var message_box: Label = %MessageBox
@onready var interact_box: RichTextLabel = $RichTextLabel
@export var is_item = false
@onready var confirm_button: Button = %ConfirmButton
@onready var cancel_button: Button = %CancelButton
@onready var ok_button: Button = %OkButton
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
rich_text_label.visible = false
@ -21,6 +27,11 @@ func _ready() -> void:
if not interact_text.is_empty():
interact_box.text = interact_text.to_upper()
if is_item:
confirm_button.visible = false
cancel_button.visible = false
ok_button.visible = true
func _on_body_entered(body: Node2D) -> void:
rich_text_label.visible = true
@ -31,10 +42,13 @@ func _on_body_exited(body: Node2D) -> void:
func show_confirm():
confirm_panel.visible = true
if is_item:
event_triggered.emit(event)
func _on_confirm_button_pressed() -> void:
confirm_panel.visible = false
event_triggered.emit(event)
if not is_item:
event_triggered.emit(event)
func _on_cancel_button_pressed() -> void:
confirm_panel.visible = false

View File

@ -25,6 +25,7 @@ theme_override_fonts/normal_font = ExtResource("2_u3pc4")
text = "INTERACT"
[node name="CenterContainer" type="CenterContainer" parent="."]
z_index = 1000
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
@ -54,13 +55,14 @@ grow_vertical = 2
[node name="MessageBox" type="Label" parent="CenterContainer/ConfirmPanel/VBoxContainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(256, 0)
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_font_sizes/font_size = 32
text = "ENTRER DANS LA POSTE ?"
horizontal_alignment = 1
vertical_alignment = 1
autowrap_mode = 3
[node name="CenterContainer" type="CenterContainer" parent="CenterContainer/ConfirmPanel/VBoxContainer"]
layout_mode = 2
@ -88,7 +90,16 @@ size_flags_horizontal = 3
size_flags_vertical = 3
text = "OH HELL NAH"
[node name="OkButton" type="Button" parent="CenterContainer/ConfirmPanel/VBoxContainer/CenterContainer/HBoxContainer"]
unique_name_in_owner = true
visible = false
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
text = "Whoops..."
[connection signal="body_entered" from="." to="." method="_on_body_entered"]
[connection signal="body_exited" from="." to="." method="_on_body_exited"]
[connection signal="pressed" from="CenterContainer/ConfirmPanel/VBoxContainer/CenterContainer/HBoxContainer/ConfirmButton" to="." method="_on_confirm_button_pressed"]
[connection signal="pressed" from="CenterContainer/ConfirmPanel/VBoxContainer/CenterContainer/HBoxContainer/CancelButton" to="." method="_on_cancel_button_pressed"]
[connection signal="pressed" from="CenterContainer/ConfirmPanel/VBoxContainer/CenterContainer/HBoxContainer/OkButton" to="." method="_on_cancel_button_pressed"]

View File

@ -1,5 +1,8 @@
extends Node2D
@export_file("*.tscn") var wrong_building: String
@export_file("*.tscn") var next_level: String
@export var base_mode: GUIDEMappingContext
@ -14,4 +17,8 @@ func _process(delta: float) -> void:
func _on_door_event_triggered(event_id: String) -> void:
print(event_id)
if event_id == "right":
SceneLoader.load_scene(next_level)
return
SceneLoader.load_scene(wrong_building)

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,124 @@
[gd_scene load_steps=5 format=3 uid="uid://cgql2prrr5cj7"]
[ext_resource type="PackedScene" uid="uid://bhhphcagggc1" path="res://template/scenes/credits/scrolling_credits.tscn" id="1_a1vv7"]
[ext_resource type="Script" uid="uid://bwr3tliac4mo2" path="res://scenes/text_wrappers/text_wrapper.gd" id="2_at5ku"]
[ext_resource type="PackedScene" uid="uid://bkcsjsk2ciff" path="res://addons/maaacks_menus_template/base/scenes/music_players/background_music_player.tscn" id="3_gqt46"]
[ext_resource type="Script" uid="uid://1nf36h0gms3q" path="res://addons/maaacks_menus_template/base/scripts/capture_focus.gd" id="4_uu3cc"]
[node name="WrongBuilding" instance=ExtResource("1_a1vv7")]
script = ExtResource("2_at5ku")
scene_to_trigger = "uid://ck5glr84c7e25"
[node name="BackgroundMusicPlayer" parent="." index="0" instance=ExtResource("3_gqt46")]
bus = &"Cinematique"
[node name="BackgroundColor" type="ColorRect" parent="." index="1"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
color = Color(0, 0, 0, 1)
[node name="BackgroundTextureRect" type="TextureRect" parent="." index="2"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
expand_mode = 1
stretch_mode = 5
[node name="ScrollContainer" parent="." index="3"]
visible = false
scroll_vertical = 0
[node name="CenterContainer" type="CenterContainer" parent="." index="4"]
layout_mode = 0
anchor_right = 1.0
anchor_bottom = 1.0
size_flags_horizontal = 3
size_flags_vertical = 3
mouse_filter = 2
[node name="VBoxContainer" type="VBoxContainer" parent="CenterContainer" index="0"]
custom_minimum_size = Vector2(600, 0)
layout_mode = 2
[node name="Message" type="Label" parent="CenterContainer/VBoxContainer" index="0"]
unique_name_in_owner = true
custom_minimum_size = Vector2(360, 0)
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
text = "__CALL IN PROGRESS__
---
__HANDSHAKE OVER__
__FINGERPRINT: NO-MECANIC__
/!\\ CONNEXION SECURE /!\\
---
DINO SÉRIEUX TU AS TROP FAIT LE RIGOLO, TU T'ES FAIT GOLÉ COMME UN BLEU!
"
vertical_alignment = 1
autowrap_mode = 3
[node name="CenterContainer" type="CenterContainer" parent="CenterContainer/VBoxContainer" index="1"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="HBoxContainer" type="HBoxContainer" parent="CenterContainer/VBoxContainer/CenterContainer" index="0"]
custom_minimum_size = Vector2(256, 0)
layout_mode = 2
size_flags_vertical = 3
theme_override_constants/separation = 16
script = ExtResource("4_uu3cc")
[node name="AcceptButton1" type="Button" parent="CenterContainer/VBoxContainer/CenterContainer/HBoxContainer" index="0"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
text = "GAME OVER"
[node name="AcceptButton2" type="Button" parent="CenterContainer/VBoxContainer/CenterContainer/HBoxContainer" index="1"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
text = "TRY AGAIN"
[node name="EndMessagePanel" type="Panel" parent="CenterContainer" index="1"]
unique_name_in_owner = true
visible = false
custom_minimum_size = Vector2(360, 120)
layout_mode = 2
[node name="StartConnexion" type="Timer" parent="." index="5"]
wait_time = 0.5
one_shot = true
autostart = true
[node name="FurtherConnexion" type="Timer" parent="." index="6"]
wait_time = 0.5
one_shot = true
[node name="TextStart" type="Timer" parent="." index="7"]
one_shot = true
[node name="TimeBetweenWords" type="Timer" parent="." index="8"]
wait_time = 0.15
[node name="TimeBeforeShowButtons" type="Timer" parent="." index="9"]
wait_time = 2.0
one_shot = true
[connection signal="pressed" from="CenterContainer/VBoxContainer/CenterContainer/HBoxContainer/AcceptButton1" to="." method="start_mission"]
[connection signal="pressed" from="CenterContainer/VBoxContainer/CenterContainer/HBoxContainer/AcceptButton2" to="." method="start_mission"]
[connection signal="timeout" from="StartConnexion" to="." method="_on_start_connexion_timeout"]
[connection signal="timeout" from="FurtherConnexion" to="." method="_on_further_connexion_timeout"]
[connection signal="timeout" from="TextStart" to="." method="_on_text_start_timeout"]
[connection signal="timeout" from="TimeBetweenWords" to="." method="_on_time_between_words_timeout"]
[connection signal="timeout" from="TimeBeforeShowButtons" to="." method="_on_time_before_show_buttons_timeout"]

View File

@ -1,16 +1,18 @@
[gd_scene load_steps=5 format=3 uid="uid://djmvj0uqw26dg"]
[gd_scene load_steps=6 format=3 uid="uid://djmvj0uqw26dg"]
[ext_resource type="PackedScene" uid="uid://bhhphcagggc1" path="res://template/scenes/credits/scrolling_credits.tscn" id="1_ftj6e"]
[ext_resource type="Script" uid="uid://bwr3tliac4mo2" path="res://scenes/text_wrappers/intro.gd" id="2_sbctf"]
[ext_resource type="Script" uid="uid://bwr3tliac4mo2" path="res://scenes/text_wrappers/text_wrapper.gd" id="2_sbctf"]
[ext_resource type="PackedScene" uid="uid://bkcsjsk2ciff" path="res://addons/maaacks_menus_template/base/scenes/music_players/background_music_player.tscn" id="3_pbsew"]
[ext_resource type="Script" uid="uid://1nf36h0gms3q" path="res://addons/maaacks_menus_template/base/scripts/capture_focus.gd" id="4_23spi"]
[ext_resource type="AudioStream" uid="uid://dcylcol0nj0pv" path="res://assets/Audio/CIN_INTRO_Pitch mission.ogg" id="4_mudqr"]
[node name="Intro" instance=ExtResource("1_ftj6e")]
script = ExtResource("2_sbctf")
scene_to_trigger = "uid://s1cx1gvt4bed"
[node name="BackgroundMusicPlayer" parent="." index="0" instance=ExtResource("3_pbsew")]
bus = &"Master"
stream = ExtResource("4_mudqr")
bus = &"Cinematique"
[node name="BackgroundColor" type="ColorRect" parent="." index="1"]
layout_mode = 1
@ -60,7 +62,7 @@ __FINGERPRINT: NO-MECANIC__
/!\\ CONNEXION SECURE /!\\
---
VOTRE NOM DE CODE POUR CETTE MISSION: DINO SÉRIEUX.
VOTRE BUT: REJOINDRE LAGENTE DINO LOGHORÉE QUI EST SOUS COUVERTURE DANS LA MÉGACORPORATION ONID. DEPUIS DES MOIS, ELLE CULTIVE UN RAPPORT AVEC LA CIBLE, LA CEO DE ONID, AFIN DE POUVOIR LA DISTRAIRE AUJOURD'HUI.
VOTRE BUT: REJOINDRE L AGENTE DINO LOGHORÉE QUI EST SOUS COUVERTURE DANS LA MÉGACORPORATION ONID. DEPUIS DES MOIS, ELLE CULTIVE UN RAPPORT AVEC LA CIBLE, LA CEO DE ONID, AFIN DE POUVOIR LA DISTRAIRE AUJOURD'HUI.
SUIVEZ SES INSTRUCTIONS DANS L'OREILLETTE, ET VOLEZ LES DONNÉES SAUVEGARDÉES SUR LA CIBLE. AVEC CES DONNÉES, NOUS EXPOSERONS LES MALVERSATIONS DE LA MÉGACORPORATION ONID.
@ -117,7 +119,7 @@ wait_time = 7.0
one_shot = true
[node name="TimeBetweenWords" type="Timer" parent="." index="8"]
wait_time = 0.41
wait_time = 0.4
[node name="TimeBeforeShowButtons" type="Timer" parent="." index="9"]
wait_time = 2.0

View File

@ -21,7 +21,6 @@ var text_showing = false
func _ready() -> void:
text_split = message.text.split("---")
text_fine_split = text_split[2].split(" ")
print(len(text_fine_split))
message.text = ""
accept_button_1.visible = false
@ -34,7 +33,6 @@ func _on_start_connexion_timeout() -> void:
message.text = text_split[0]
further_connexion.start()
func _on_further_connexion_timeout() -> void:
message.text = text_split[1]
text_start.start()
@ -43,9 +41,9 @@ func _on_text_start_timeout() -> void:
message.text = ""
time_between_words.start()
func _on_time_between_words_timeout() -> void:
if text_fine_split.is_empty():
time_between_words.stop()
time_before_show_buttons.start()
return

View File

@ -0,0 +1,124 @@
[gd_scene load_steps=5 format=3 uid="uid://eh3y4s4qad8m"]
[ext_resource type="PackedScene" uid="uid://bhhphcagggc1" path="res://template/scenes/credits/scrolling_credits.tscn" id="1_o8vp5"]
[ext_resource type="Script" uid="uid://bwr3tliac4mo2" path="res://scenes/text_wrappers/text_wrapper.gd" id="2_fg6t0"]
[ext_resource type="PackedScene" uid="uid://bkcsjsk2ciff" path="res://addons/maaacks_menus_template/base/scenes/music_players/background_music_player.tscn" id="3_fs5lg"]
[ext_resource type="Script" uid="uid://1nf36h0gms3q" path="res://addons/maaacks_menus_template/base/scripts/capture_focus.gd" id="5_0ltfy"]
[node name="WrongBuilding" instance=ExtResource("1_o8vp5")]
script = ExtResource("2_fg6t0")
scene_to_trigger = "uid://ck5glr84c7e25"
[node name="BackgroundMusicPlayer" parent="." index="0" instance=ExtResource("3_fs5lg")]
bus = &"Cinematique"
[node name="BackgroundColor" type="ColorRect" parent="." index="1"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
color = Color(0, 0, 0, 1)
[node name="BackgroundTextureRect" type="TextureRect" parent="." index="2"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
expand_mode = 1
stretch_mode = 5
[node name="ScrollContainer" parent="." index="3"]
visible = false
scroll_vertical = 0
[node name="CenterContainer" type="CenterContainer" parent="." index="4"]
layout_mode = 0
anchor_right = 1.0
anchor_bottom = 1.0
size_flags_horizontal = 3
size_flags_vertical = 3
mouse_filter = 2
[node name="VBoxContainer" type="VBoxContainer" parent="CenterContainer" index="0"]
custom_minimum_size = Vector2(600, 0)
layout_mode = 2
[node name="Message" type="Label" parent="CenterContainer/VBoxContainer" index="0"]
unique_name_in_owner = true
custom_minimum_size = Vector2(360, 0)
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
text = "__CALL IN PROGRESS__
---
__HANDSHAKE OVER__
__FINGERPRINT: NO-MECANIC__
/!\\ CONNEXION SECURE /!\\
---
DINO SÉRIEUX TU AS TROP FAIT LE RIGOLO, TU T'ES TROMPÉ DE BATIMENT!
"
vertical_alignment = 1
autowrap_mode = 3
[node name="CenterContainer" type="CenterContainer" parent="CenterContainer/VBoxContainer" index="1"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="HBoxContainer" type="HBoxContainer" parent="CenterContainer/VBoxContainer/CenterContainer" index="0"]
custom_minimum_size = Vector2(256, 0)
layout_mode = 2
size_flags_vertical = 3
theme_override_constants/separation = 16
script = ExtResource("5_0ltfy")
[node name="AcceptButton1" type="Button" parent="CenterContainer/VBoxContainer/CenterContainer/HBoxContainer" index="0"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
text = "GAME OVER"
[node name="AcceptButton2" type="Button" parent="CenterContainer/VBoxContainer/CenterContainer/HBoxContainer" index="1"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
text = "TRY AGAIN"
[node name="EndMessagePanel" type="Panel" parent="CenterContainer" index="1"]
unique_name_in_owner = true
visible = false
custom_minimum_size = Vector2(360, 120)
layout_mode = 2
[node name="StartConnexion" type="Timer" parent="." index="5"]
wait_time = 0.5
one_shot = true
autostart = true
[node name="FurtherConnexion" type="Timer" parent="." index="6"]
wait_time = 0.5
one_shot = true
[node name="TextStart" type="Timer" parent="." index="7"]
one_shot = true
[node name="TimeBetweenWords" type="Timer" parent="." index="8"]
wait_time = 0.15
[node name="TimeBeforeShowButtons" type="Timer" parent="." index="9"]
wait_time = 2.0
one_shot = true
[connection signal="pressed" from="CenterContainer/VBoxContainer/CenterContainer/HBoxContainer/AcceptButton1" to="." method="start_mission"]
[connection signal="pressed" from="CenterContainer/VBoxContainer/CenterContainer/HBoxContainer/AcceptButton2" to="." method="start_mission"]
[connection signal="timeout" from="StartConnexion" to="." method="_on_start_connexion_timeout"]
[connection signal="timeout" from="FurtherConnexion" to="." method="_on_further_connexion_timeout"]
[connection signal="timeout" from="TextStart" to="." method="_on_text_start_timeout"]
[connection signal="timeout" from="TimeBetweenWords" to="." method="_on_time_between_words_timeout"]
[connection signal="timeout" from="TimeBeforeShowButtons" to="." method="_on_time_before_show_buttons_timeout"]