diff --git a/Nasal/SmartInstruments.nas b/Nasal/SmartInstruments.nas index 6f45abc..2adf890 100644 --- a/Nasal/SmartInstruments.nas +++ b/Nasal/SmartInstruments.nas @@ -10,16 +10,20 @@ var SmartInstruments = { "mipmapping": 0 # Enable mipmapping (optional) }), }; + + m.startupSoundIsEnabled = 0; + m.startupSound = nil;#//The startup sound + m.startupSoundPath = nil;#//Path to the startup sound m.group = m.instrumentCanvas.createGroup();#//Main group m.signGroup = m.instrumentCanvas.createGroup();#//sign group m.welcomeGroup = m.instrumentCanvas.createGroup(); m.instrumentCanvas.addPlacement({"node": placement}); #Sign svg - #canvas.parsesvg( - # m.signGroup, - # "Aircraft/followme_e-tron/Models/Interior/Instruments/Smart/dashboard.svg", - #); - #m.signGroup.hide(); + canvas.parsesvg( + m.signGroup, + "Aircraft/followme_e-tron/Models/Interior/Instruments/Smart/dashboard.svg", + ); + m.signGroup.hide(); #Background m.backgroundPath = "Aircraft/followme_e-tron/Models/Interior/Instruments/Smart/dashboard0.png"; # create an image child for the texture @@ -100,6 +104,16 @@ var SmartInstruments = { }, initialized: 0, + enableStartupSound: func(){ + me.startupSoundIsEnabled = 1; + }, + disableStartupSound: func(){ + me.startupSoundIsEnabled = 0; + }, + setStartupSound: func(startupSoundPath){ + me.startupSoundPath = io.dirname(startupSoundPath); + me.startupSound = io.basename(startupSoundPath); + }, nextCenterScreen: func(){ if(me.infoImageIndex < 3) me.infoImageIndex += 1; else if(me.infoImageIndex >= 3) me.infoImageIndex = 0; @@ -166,6 +180,8 @@ var SmartInstruments = { me.tempDisplay.enableUpdate(); me.timeDisplay.enableUpdate(); + if(me.startupSound and me.startupSoundIsEnabled) followme.playAudio(me.startupSound, 1, me.startupSoundPath); + var timer2 = maketimer(2, func(){ me.welcomeGroup.hide(); }); @@ -200,5 +216,9 @@ var runtimeTextAdjust = func(text){ } +var setStartupSound_dlg = gui.Dialog.new("/sim/gui/dialogs/smartinstruments/setStartupSound_dlg/dialog","Aircraft/followme_e-tron/gui/dialogs/load-startup-sound.xml"); + + + #var window = canvas.Window.new([756,368],"dialog"); #window.setCanvas(smartInstruments.instrumentCanvas); diff --git a/Nasal/library.nas b/Nasal/library.nas index 1a5162c..ea4cba7 100644 --- a/Nasal/library.nas +++ b/Nasal/library.nas @@ -29,8 +29,9 @@ var outputUI = func(content, timeout = 10){ #print("Outputed"); } } -var playAudio = func(file){ #//Plays audio files in Aircrafts/Sounds - fgcommand("play-audio-sample", Sound.new(filename: file, volume: 1, path: props.getNode("/",1).getValue("sim/aircraft-dir") ~ '/Sounds')); +var playAudio = func(file, audioVolume=1, audioPath=""){ #//Plays audio files in Aircrafts/Sounds + if(!audioPath) audioPath = props.getNode("/",1).getValue("sim/aircraft-dir") ~ '/Sounds'; + fgcommand("play-audio-sample", Sound.new(filename: file, volume: audioVolume, path: audioPath)); } var runCode = func(url, addition = nil){ diff --git a/gui/dialogs/load-startup-sound.xml b/gui/dialogs/load-startup-sound.xml new file mode 100644 index 0000000..ab73d7b --- /dev/null +++ b/gui/dialogs/load-startup-sound.xml @@ -0,0 +1,98 @@ + + + + + + + + + load-startup-sound + vbox + + + + + + + + + hbox + + left + + + + + + + + + vbox + + left + + + + left + + + + + hbox + + + + + hbox + + left + + + + + + + + diff --git a/gui/dialogs/vehicle-dialog.xml b/gui/dialogs/vehicle-dialog.xml index b8d6b44..13fc1d6 100755 --- a/gui/dialogs/vehicle-dialog.xml +++ b/gui/dialogs/vehicle-dialog.xml @@ -147,7 +147,17 @@ vbox 6 - + +