add background music support

This commit is contained in:
Arnaud Vergnet 2021-04-23 15:59:32 +02:00
parent cff154d14c
commit 444a0ec1d5
24 changed files with 200 additions and 7 deletions

View file

@ -1 +1 @@
{"glossary":[{"extra":"","id":"1618913698-364","name":"fermer","text":"Utilisateur habitué à cette fonctionnalité. Il nest pas déboussolé face à une nouveauté.","title":"Téléphone verrouillé","type":1},{"extra":"","id":"1618913732-731","name":"ouvert","text":"Donne à lentreprise une image moderne et éco-responsable. Possibilité de fidéliser des clients qui dépensent plus habituellement.","title":"Téléphone déverrouillé","type":1}],"variables":[{"id":"1618954308-648","name":"jauge_travail","type":0,"value":"0"},{"id":"1618954325-787","name":"jauge_education","type":0,"value":"0"},{"id":"1618954333-366","name":"jauge_financier","type":0,"value":"0"},{"id":"1618954344-146","name":"jauge_ecologie","type":0,"value":"0"},{"id":"1618954357-918","name":"jauge_social","type":0,"value":""},{"id":"1618954386-970","name":"relation_jm","type":0,"value":"0"},{"id":"1618954375-483","name":"relation_evelyne","type":0,"value":"0"},{"id":"1616657225-648","name":"choix_tel_ouvert","type":0,"value":"0"}]}
{"glossary":[{"extra":"","id":"1618913698-364","name":"fermer","text":"Utilisateur habitué à cette fonctionnalité. Il nest pas déboussolé face à une nouveauté.","title":"Téléphone verrouillé","type":1},{"extra":"","id":"1618913732-731","name":"ouvert","text":"Donne à lentreprise une image moderne et éco-responsable. Possibilité de fidéliser des clients qui dépensent plus habituellement.","title":"Téléphone déverrouillé","type":1}],"variables":[{"id":"1618954308-648","name":"jauge_travail","type":0,"value":"0"},{"id":"1618954325-787","name":"jauge_education","type":0,"value":"0"},{"id":"1618954333-366","name":"jauge_financier","type":0,"value":"0"},{"id":"1618954344-146","name":"jauge_ecologie","type":0,"value":"0"},{"id":"1618954357-918","name":"jauge_social","type":0,"value":""},{"id":"1618954386-970","name":"relation_jm","type":0,"value":"0"},{"id":"1618954375-483","name":"relation_evelyne","type":0,"value":"0"},{"id":"1616657225-648","name":"choix_tel_ouvert","type":0,"value":"0"},{"id":"1619183465-648","name":"current_phase","type":0,"value":"0"}]}

View file

@ -1 +1 @@
{"events":[{"background":"res://backgrounds/coffeeRoom.jpg"},{"action":"join","character":"character-1616658373.json","portrait":"","position":{"0":false,"1":true,"2":false,"3":false,"4":false}},{"character":"character-1616658373.json","portrait":"","text":"Coucou ! Moi cest Evelyne, je suis dans ton service!\nJai hâte de travailler avec toi, nous allons faire de belles choses ensemble !\nJai entendu que le boss tavais mis sur le projet du nouveau téléphone. Cest un gros projet pour commencer."},{"character":"character-1616658355.json","portrait":"","text":"Oui cest super mais ça me met la pression. En plus je dois essayer de me démarquer des téléphones des autres entreprises en ajoutant de nouvelles fonctionnalités."},{"character":"character-1616658373.json","portrait":"","text":"Justement , tu pourrais laisser la possibilité à lutilisateur de pouvoir ouvrir le téléphone. "},{"character":"character-1616658373.json","options":[],"portrait":"","question":"Si tu veux je peux te donner plus dinformations, je connais bien ce sujet."},{"choice":"Pourquoi pas","condition":"","definition":"","value":""},{"character":"character-1616658355.json","portrait":"","text":"Dis moi tout !"},{"character":"character-1616658373.json","portrait":"","text":"Si tu as un problème sur une certaine pièce, comme la batterie, tu peux simplement la changer au lieu den racheter un nouveau. \nTu peux imaginer léconomie que tu fais non seulement pour ton porte-monnaie, mais aussi pour la planète. \nSi tu lappliques pour ton projet ça permettrait de donner une image éco-responsable à lentreprise mais aussi de te démarquer de toutes ces marques qui poussent à la surconsommation."},{"choice":"Jai du travail","condition":"","definition":"","value":""},{"character":"character-1616658355.json","portrait":"","text":"Je nai pas vraiment le temps, il faut que je retourne travailler."},{"character":"character-1616658373.json","options":[],"portrait":"","question":"Ça ne durera pas longtemps, promis !"},{"choice":"Je técoute !","condition":"","definition":"","value":""},{"character":"character-1616658355.json","portrait":"","text":"Ok, dis-moi tout."},{"character":"character-1616658373.json","portrait":"","text":"Si tu as un problème sur une certaine pièce, comme la batterie, tu peux simplement la changer au lieu den racheter un nouveau. \nTu peux imaginer léconomie que tu fais non seulement pour ton porte-monnaie, mais aussi pour la planète. "},{"choice":"Je nai vraiment pas le temps.","condition":"","definition":"","value":""},{"character":"character-1616658355.json","portrait":"","text":"Excuse moi, mais je nai vraiment pas le temps. Je retourne travailler, à la prochaine."},{"character":"character-1616658373.json","portrait":"","text":"Daccord, bon courage."},{"endbranch":""},{"endbranch":""},{"action":"join","character":"character-1616658435.json","mirror":false,"portrait":"Default","position":{"0":false,"1":false,"2":false,"3":true,"4":false}},{"character":"character-1616658435.json","portrait":"","text":"Salut toi ! Bienvenue parmi nous. Tu viens doù mon ami ?"},{"character":"character-1616658355.json","portrait":"","text":"Oh rien doriginal jarrive tout droit de la région parisienne et toi ?"},{"character":"character-1616658435.json","portrait":"","text":"Alors … Cest compliqué … Je crois que je suis suisse."},{"character":"character-1616658355.json","portrait":"","text":"Tu crois ?"},{"character":"character-1616658435.json","portrait":"","text":"Je ne suis pas sûr… Bienvenue parmi nous !"},{"action":"leaveall","character":"[All]"},{"wait_seconds":1},{"change_timeline":"timeline-1618912317.json"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1616657347.json","name":"1_1_info-cafe"}}
{"events":[{"background":"res://backgrounds/coffeeRoom.jpg"},{"action":"join","character":"character-1616658373.json","portrait":"","position":{"0":false,"1":true,"2":false,"3":false,"4":false}},{"character":"character-1616658373.json","portrait":"","text":"Coucou ! Moi cest Evelyne, je suis dans ton service!\nJai hâte de travailler avec toi, nous allons faire de belles choses ensemble !\nJai entendu que le boss tavais mis sur le projet du nouveau téléphone. Cest un gros projet pour commencer."},{"character":"character-1616658355.json","portrait":"","text":"Oui cest super mais ça me met la pression. En plus je dois essayer de me démarquer des téléphones des autres entreprises en ajoutant de nouvelles fonctionnalités."},{"character":"character-1616658373.json","portrait":"","text":"Justement , tu pourrais laisser la possibilité à lutilisateur de pouvoir ouvrir le téléphone. "},{"character":"character-1616658373.json","options":[],"portrait":"","question":"Si tu veux je peux te donner plus dinformations, je connais bien ce sujet."},{"choice":"Pourquoi pas","condition":"","definition":"","value":""},{"character":"character-1616658355.json","portrait":"","text":"Dis moi tout !"},{"character":"character-1616658373.json","portrait":"","text":"Si tu as un problème sur une certaine pièce, comme la batterie, tu peux simplement la changer au lieu den racheter un nouveau. \nTu peux imaginer léconomie que tu fais non seulement pour ton porte-monnaie, mais aussi pour la planète. \nSi tu lappliques pour ton projet ça permettrait de donner une image éco-responsable à lentreprise mais aussi de te démarquer de toutes ces marques qui poussent à la surconsommation."},{"choice":"Jai du travail","condition":"","definition":"","value":""},{"character":"character-1616658355.json","portrait":"","text":"Je nai pas vraiment le temps, il faut que je retourne travailler."},{"character":"character-1616658373.json","options":[],"portrait":"","question":"Ça ne durera pas longtemps, promis !"},{"choice":"Je técoute !","condition":"","definition":"","value":""},{"character":"character-1616658355.json","portrait":"","text":"Ok, dis-moi tout."},{"character":"character-1616658373.json","portrait":"","text":"Si tu as un problème sur une certaine pièce, comme la batterie, tu peux simplement la changer au lieu den racheter un nouveau. \nTu peux imaginer léconomie que tu fais non seulement pour ton porte-monnaie, mais aussi pour la planète. "},{"choice":"Je nai vraiment pas le temps.","condition":"","definition":"","value":""},{"character":"character-1616658355.json","portrait":"","text":"Excuse moi, mais je nai vraiment pas le temps. Je retourne travailler, à la prochaine."},{"character":"character-1616658373.json","portrait":"","text":"Daccord, bon courage."},{"endbranch":""},{"endbranch":""},{"action":"leaveall","character":"[All]"},{"wait_seconds":0.5},{"action":"join","character":"character-1616658435.json","mirror":false,"portrait":"Default","position":{"0":false,"1":false,"2":false,"3":true,"4":false}},{"character":"character-1616658435.json","portrait":"","text":"Salut toi ! Bienvenue parmi nous. Tu viens doù mon ami ?"},{"character":"character-1616658355.json","portrait":"","text":"Oh rien doriginal jarrive tout droit de la région parisienne et toi ?"},{"character":"character-1616658435.json","portrait":"","text":"Alors … Cest compliqué … Je crois que je suis suisse."},{"character":"character-1616658355.json","portrait":"","text":"Tu crois ?"},{"character":"character-1616658435.json","portrait":"","text":"Je ne suis pas sûr… Bienvenue parmi nous !"},{"action":"leaveall","character":"[All]"},{"wait_seconds":1},{"change_timeline":"timeline-1618912317.json"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1616657347.json","name":"1_1_info-cafe"}}

View file

@ -1 +1 @@
{"events":[{"change_timeline":"timeline-1618911641.json"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1616659306.json","name":"0_start"}}
{"events":[{"change_timeline":"timeline-1619185676.json"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1616659306.json","name":"00_start"}}

View file

@ -1 +1 @@
{"events":[{"wait_seconds":1},{"character":"","portrait":"","text":"Fin de la démo, merci d'avoir joué !"},{"action":"leaveall","character":"[All]"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1616662258.json","name":"0_end"}}
{"events":[{"wait_seconds":1},{"character":"","portrait":"","text":"Fin de la démo, merci d'avoir joué !"},{"action":"leaveall","character":"[All]"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1616662258.json","name":"00_end"}}

View file

@ -1 +1 @@
{"events":[{"background":"res://backgrounds/bureauGroupe-2.jpg"},{"character":"character-1618911589.json","portrait":"","text":"Votre entretien sest bien passé et vous avez eu le poste dans lentreprise.\nLe premier projet que votre patron vous confie est de participer à la création dun nouveau téléphone. \nVous allez travailler en collaboration avec trois de vos collègues : Jean-Michel, Evelyne et Patrick. "},{"character":"character-1616658355.json","portrait":"","text":"Il est 10h cest lheure de la pause !"},{"change_timeline":"timeline-1616657347.json"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1618911641.json","name":"1_1_intro"}}
{"events":[{"background":"res://backgrounds/bureauGroupe-2.jpg"},{"definition":"1619183465-648","operation":"=","set_value":"1"},{"emit_signal":"play_music"},{"character":"character-1618911589.json","portrait":"","text":"Votre entretien sest bien passé et vous avez eu le poste dans lentreprise.\nLe premier projet que votre patron vous confie est de participer à la création dun nouveau téléphone. \nVous allez travailler en collaboration avec trois de vos collègues : Jean-Michel, Evelyne et Patrick. "},{"character":"character-1616658355.json","portrait":"","text":"Il est 10h cest lheure de la pause !"},{"change_timeline":"timeline-1616657347.json"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1618911641.json","name":"1_1_intro"}}

View file

@ -1 +1 @@
{"events":[{"background":"res://backgrounds/bureauPerso.jpg"},{"action":"join","character":"character-1616658471.json","mirror":false,"portrait":"Default","position":{"0":false,"1":false,"2":true,"3":false,"4":false}},{"character":"character-1616658471.json","options":[],"portrait":"","question":"Nouveau mail du Boss ! Le lire ?"},{"choice":"Oui","condition":"","definition":"","value":""},{"character":"character-1616658471.json","portrait":"","text":"Bonjour, Jespère que tout se passe bien pour vous au sein de notre entreprise. \nJe viens vers vous pour vous rappeler que votre premier projet est le développement dun nouveau téléphone portable. \nCe projet est dune très grande importance et représente un gros investissement."},{"character":"character-1616658471.json","options":[],"portrait":"","question":"En effet, il sera difficile pour lentreprise de survivre à léchec commercial de ce produit. "},{"choice":"Super, déjà des responsabilités !","condition":"","definition":"","value":""},{"character":"character-1616658471.json","portrait":"","text":"Ainsi, dès lors que le téléphone deviendra obsolète, ou si ses composants sabîment, nos clients n'hésiteront pas à racheter nos produits. \nJespère que vous mesurez limportance de la réussite de ce projet et de limpact que cela pourrait avoir sur le chiffre d'affaires de lentreprise.\nCordialement, The boss."},{"choice":"La pression... mieux vaut arrêter de lire","condition":"","definition":"","value":""},{"character":"character-1616658355.json","portrait":"","text":"Plus tard les mails"},{"endbranch":""},{"choice":"Non","condition":"","definition":"","value":""},{"character":"character-1616658355.json","options":[],"portrait":"","question":"C'est quand même un mail du boss..."},{"choice":"Oui mieux vaut le lire","condition":"","definition":"","value":""},{"character":"character-1616658471.json","portrait":"","text":"Bonjour, Jespère que tout se passe bien pour vous au sein de notre entreprise. \nJe viens vers vous pour vous rappeler que votre premier projet est le développement dun nouveau téléphone portable. \nCe projet est dune très grande importance et représente un gros investissement."},{"character":"character-1616658471.json","options":[],"portrait":"","question":"En effet, il sera difficile pour lentreprise de survivre à léchec commercial de ce produit. "},{"choice":"Super, déjà des responsabilités !","condition":"","definition":"","value":""},{"character":"character-1616658471.json","portrait":"","text":"Ainsi, dès lors que le téléphone deviendra obsolète, ou si ses composants sabîment, nos clients n'hésiteront pas à racheter nos produits. \nJespère que vous mesurez limportance de la réussite de ce projet et de limpact que cela pourrait avoir sur le chiffre d'affaires de lentreprise.\nCordialement, The boss."},{"choice":"La pression... mieux vaut arrêter de lire","condition":"","definition":"","value":""},{"character":"character-1616658355.json","portrait":"","text":"Plus tard les mails"},{"endbranch":""},{"choice":"Ce nest pas le moment","condition":"","definition":"","value":""},{"character":"character-1616658355.json","portrait":"","text":"Plus tard les mails"},{"endbranch":""},{"endbranch":""},{"change_timeline":"timeline-1616659917.json"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1618912317.json","name":"1_1_mail_boss"}}
{"events":[{"background":"res://backgrounds/bureauPerso.jpg"},{"action":"join","character":"character-1616658471.json","mirror":false,"portrait":"Default","position":{"0":false,"1":false,"2":true,"3":false,"4":false}},{"character":"character-1616658471.json","options":[],"portrait":"","question":"Nouveau mail du Boss ! Le lire ?"},{"choice":"Oui","condition":"","definition":"","value":""},{"character":"character-1616658471.json","portrait":"","text":"Bonjour, Jespère que tout se passe bien pour vous au sein de notre entreprise. \nJe viens vers vous pour vous rappeler que votre premier projet est le développement dun nouveau téléphone portable. \nCe projet est dune très grande importance et représente un gros investissement."},{"character":"character-1616658471.json","options":[],"portrait":"","question":"En effet, il sera difficile pour lentreprise de survivre à léchec commercial de ce produit. "},{"choice":"Super, déjà des responsabilités !","condition":"","definition":"","value":""},{"character":"character-1616658471.json","portrait":"","text":"Ainsi, dès lors que le téléphone deviendra obsolète, ou si ses composants sabîment, nos clients n'hésiteront pas à racheter nos produits. \nJespère que vous mesurez limportance de la réussite de ce projet et de limpact que cela pourrait avoir sur le chiffre d'affaires de lentreprise.\nCordialement, The boss."},{"choice":"La pression... mieux vaut arrêter de lire","condition":"","definition":"","value":""},{"character":"character-1616658355.json","portrait":"","text":"Plus tard les mails"},{"endbranch":""},{"choice":"Non","condition":"","definition":"","value":""},{"character":"character-1616658355.json","options":[],"portrait":"","question":"C'est quand même un mail du boss..."},{"choice":"Oui mieux vaut le lire","condition":"","definition":"","value":""},{"character":"character-1616658471.json","portrait":"","text":"Bonjour, Jespère que tout se passe bien pour vous au sein de notre entreprise. \nJe viens vers vous pour vous rappeler que votre premier projet est le développement dun nouveau téléphone portable. \nCe projet est dune très grande importance et représente un gros investissement."},{"character":"character-1616658471.json","options":[],"portrait":"","question":"En effet, il sera difficile pour lentreprise de survivre à léchec commercial de ce produit. "},{"choice":"Super, déjà des responsabilités !","condition":"","definition":"","value":""},{"character":"character-1616658471.json","portrait":"","text":"Ainsi, dès lors que le téléphone deviendra obsolète, ou si ses composants sabîment, nos clients n'hésiteront pas à racheter nos produits. \nJespère que vous mesurez limportance de la réussite de ce projet et de limpact que cela pourrait avoir sur le chiffre d'affaires de lentreprise.\nCordialement, The boss."},{"choice":"La pression... mieux vaut arrêter de lire","condition":"","definition":"","value":""},{"character":"character-1616658355.json","portrait":"","text":"Plus tard les mails"},{"endbranch":""},{"choice":"Ce nest pas le moment","condition":"","definition":"","value":""},{"character":"character-1616658355.json","portrait":"","text":"Plus tard les mails"},{"endbranch":""},{"endbranch":""},{"action":"leaveall","character":"[All]"},{"change_timeline":"timeline-1616659917.json"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1618912317.json","name":"1_1_mail_boss"}}

View file

@ -0,0 +1 @@
{"events":[{"background":"res://backgrounds/bureauGroupe-2.jpg"},{"definition":"1619183465-648","operation":"=","set_value":"0"},{"character":"","portrait":"","text":"hello"},{"emit_signal":"setup_minigame score 0_0_minigame_end 0_0_minigame_end"},{"background":""},{"character":"","portrait":"","text":"nice"},{"emit_signal":"start_minigame"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1619185676.json","name":"0_0_intro"}}

View file

@ -0,0 +1 @@
{"events":[{"character":"","portrait":"","text":"end"},{"emit_signal":"play_music"},{"background":"res://backgrounds/bureauGroupe-2.jpg"},{"character":"","portrait":"","text":"back baby"},{"change_timeline":"timeline-1618911641.json"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1619185825.json","name":"0_0_minigame_end"}}

View file

@ -15,6 +15,7 @@ var next_timeline_win := ""
var game_mode = ""
var MUSIC = "res://music/mini_jeu.ogg"
func _ready():
Signals.connect("die", self, "on_game_over")
@ -41,6 +42,7 @@ func set_mode(mode: String):
func start():
print("starting minigame")
BackgroundMusic.crossfade_to(MUSIC, -10, 1)
start_timer_UI.init()
var t = Timer.new()
t.set_wait_time(0.5)

BIN
music/etudiant.ogg Normal file

Binary file not shown.

15
music/etudiant.ogg.import Normal file
View file

@ -0,0 +1,15 @@
[remap]
importer="ogg_vorbis"
type="AudioStreamOGGVorbis"
path="res://.import/etudiant.ogg-85dfffdae3fa59a39319268acf76e765.oggstr"
[deps]
source_file="res://music/etudiant.ogg"
dest_files=[ "res://.import/etudiant.ogg-85dfffdae3fa59a39319268acf76e765.oggstr" ]
[params]
loop=true
loop_offset=0

BIN
music/ingenieur.ogg Normal file

Binary file not shown.

View file

@ -0,0 +1,15 @@
[remap]
importer="ogg_vorbis"
type="AudioStreamOGGVorbis"
path="res://.import/ingenieur.ogg-3430ea941f29966001db9ceb8b797d49.oggstr"
[deps]
source_file="res://music/ingenieur.ogg"
dest_files=[ "res://.import/ingenieur.ogg-3430ea941f29966001db9ceb8b797d49.oggstr" ]
[params]
loop=true
loop_offset=0

BIN
music/menu_principal.ogg Normal file

Binary file not shown.

View file

@ -0,0 +1,15 @@
[remap]
importer="ogg_vorbis"
type="AudioStreamOGGVorbis"
path="res://.import/menu_principal.ogg-c98c591fc084bf01a2239657ae0e7038.oggstr"
[deps]
source_file="res://music/menu_principal.ogg"
dest_files=[ "res://.import/menu_principal.ogg-c98c591fc084bf01a2239657ae0e7038.oggstr" ]
[params]
loop=true
loop_offset=0

BIN
music/mini_jeu.ogg Normal file

Binary file not shown.

15
music/mini_jeu.ogg.import Normal file
View file

@ -0,0 +1,15 @@
[remap]
importer="ogg_vorbis"
type="AudioStreamOGGVorbis"
path="res://.import/mini_jeu.ogg-49fa7730c4652ebe0a51b7e95125fafb.oggstr"
[deps]
source_file="res://music/mini_jeu.ogg"
dest_files=[ "res://.import/mini_jeu.ogg-49fa7730c4652ebe0a51b7e95125fafb.oggstr" ]
[params]
loop=true
loop_offset=0

BIN
music/utilisateur.ogg Normal file

Binary file not shown.

View file

@ -0,0 +1,15 @@
[remap]
importer="ogg_vorbis"
type="AudioStreamOGGVorbis"
path="res://.import/utilisateur.ogg-22434ee80cb95495050e81ee5ff46869.oggstr"
[deps]
source_file="res://music/utilisateur.ogg"
dest_files=[ "res://.import/utilisateur.ogg-22434ee80cb95495050e81ee5ff46869.oggstr" ]
[params]
loop=true
loop_offset=0

View file

@ -58,6 +58,7 @@ config/icon="res://icon.png"
DialogicSingleton="*res://addons/dialogic/Other/DialogicSingleton.gd"
Signals="*res://mini-game/scripts/Signals.gd"
BackgroundMusic="*res://scenes/BackgroundMusic.tscn"
[display]

72
scenes/BackgroundMusic.gd Normal file
View file

@ -0,0 +1,72 @@
extends Control
onready var _track1 := $Track1
onready var _track2 := $Track2
var fade_in_track: AudioStreamPlayer
var fade_out_track: AudioStreamPlayer
var current_path = ""
var current_volume = 0
var paused_volume_offset = -10
var paused = false
func _ready():
$Tween.connect("tween_all_completed", self, "on_Tween_tween_all_completed")
func _process(delta):
if paused and not get_tree().paused:
set_paused(false)
elif not paused and get_tree().paused:
set_paused(true)
func crossfade_to(path: String, volume:float, fade_length: float) -> void:
if current_path == path:
return
var stream: AudioStream = load(path)
fade_out_track = _track1
fade_in_track = _track2
if _track2.playing:
fade_out_track = _track2
fade_in_track = _track1
# setup the new track
fade_in_track.stream = stream
fade_in_track.volume_db = -60
$Tween.interpolate_property(fade_out_track, "volume_db", null, -60, fade_length, Tween.TRANS_LINEAR)
$Tween.interpolate_property(fade_in_track, "volume_db", -60, volume, fade_length, Tween.TRANS_LINEAR)
$Tween.start()
fade_in_track.play()
current_volume = volume
current_path = path
func on_Tween_tween_all_completed():
fade_out_track.stop()
func set_paused(pause: bool):
paused = pause
var volume = current_volume
if pause:
volume += paused_volume_offset
if _track1.playing:
_track1.volume_db = volume
elif _track2.playing:
_track2.volume_db = volume
func fade_out(fade_length:float = 1) -> void:
current_path = ""
$Tween.interpolate_property(_track1, "volume_db", null, -60, fade_length, Tween.TRANS_LINEAR)
$Tween.interpolate_property(_track2, "volume_db", null, -60, fade_length, Tween.TRANS_LINEAR)
$Tween.start()

View file

@ -0,0 +1,16 @@
[gd_scene load_steps=2 format=2]
[ext_resource path="res://scenes/BackgroundMusic.gd" type="Script" id=1]
[node name="BackgroundMusic" type="Control"]
pause_mode = 2
script = ExtResource( 1 )
__meta__ = {
"_edit_use_anchors_": false
}
[node name="Track1" type="AudioStreamPlayer" parent="."]
[node name="Track2" type="AudioStreamPlayer" parent="."]
[node name="Tween" type="Tween" parent="."]

View file

@ -4,10 +4,28 @@ onready var mini_game = $MiniGame;
var dialogic_node;
var STUDENT_MUSIC = "res://music/etudiant.ogg"
var ENGI_MUSIC = "res://music/ingenieur.ogg"
var USER_MUSIC = "res://music/utilisateur.ogg"
func _ready():
dialogic_node = Dialogic.start_from_save('0_start')
dialogic_node = Dialogic.start_from_save('00_start')
add_child_below_node($MiniGame, dialogic_node)
dialogic_node.connect('dialogic_signal', self, "_on_Dialogic_signal_received")
play_music()
func play_music():
var current_phase = Dialogic.get_variable("current_phase")
var music = STUDENT_MUSIC
match current_phase:
"0":
music = STUDENT_MUSIC
"1":
music = ENGI_MUSIC
"2":
music = USER_MUSIC
BackgroundMusic.crossfade_to(music, -10, 1)
func _on_Dialogic_signal_received(value: String):
@ -16,6 +34,8 @@ func _on_Dialogic_signal_received(value: String):
if args.size() > 0:
var type = args[0];
match type:
"play_music":
play_music()
"start_minigame":
start_minigame()
"setup_minigame":

View file

@ -1,5 +1,10 @@
extends Control
var MAIN_MENU_MUSIC = "res://music/menu_principal.ogg"
func _ready():
BackgroundMusic.crossfade_to(MAIN_MENU_MUSIC, -10, 1)
func load_main_game():
get_tree().change_scene("res://scenes/Main.tscn")