diff --git a/A320-main.xml b/A320-main.xml
index 7ad281e1..d0b6112f 100644
--- a/A320-main.xml
+++ b/A320-main.xml
@@ -652,6 +652,8 @@
0
0
0
+ 1
+ 0
0
@@ -679,11 +681,12 @@
0
- 1
- 0
+ 0.5
+ 0.0
0
0.5
100000
+ 0.0
0
diff --git a/Models/Instruments/OHpanel/OHpanel.xml b/Models/Instruments/OHpanel/OHpanel.xml
index d7722b72..2403517f 100644
--- a/Models/Instruments/OHpanel/OHpanel.xml
+++ b/Models/Instruments/OHpanel/OHpanel.xml
@@ -4461,10 +4461,30 @@
StrobeLtSwtch
+
false
- property-toggle
- controls/lighting/strobe
+ property-cycle
+ controls/switches/strobe
+ 0.0
+ 0.5
+ 1.0
+
+
+ nasal
+
+
+
+
+
+
+ false
+
+ property-cycle
+ controls/switches/strobe
+ 1.0
+ 0.5
+ 0.0
nasal
@@ -4472,14 +4492,16 @@
+
Strobe lights rotate
rotate
StrobeLtSwtch
- controls/lighting/strobe
+ controls/switches/strobe
- 035
- 1-35
+ 0.035
+ 0.50
+ 1.0-35
0
@@ -5609,10 +5631,30 @@
SeatBeltSwtch
+
false
- property-toggle
+ property-adjust
controls/switches/seatbelt-sign
+ 1
+ 0
+ 1
+
+
+ nasal
+
+
+
+
+
+
+ false
+
+ property-adjust
+ controls/switches/seatbelt-sign
+ -1
+ 0
+ 1
nasal
@@ -5628,6 +5670,7 @@
controls/switches/seatbelt-sign
035
+ 0.50
1-35
@@ -5648,10 +5691,30 @@
NoSmokingSwtch
+
false
- property-toggle
+ property-cycle
controls/switches/no-smoking-sign
+ 0.0
+ 0.5
+ 1.0
+
+
+ nasal
+
+
+
+
+
+
+ false
+
+ property-cycle
+ controls/switches/no-smoking-sign
+ 1.0
+ 0.5
+ 0.0
nasal
@@ -5666,6 +5729,7 @@
controls/switches/no-smoking-sign
035
+ 0.50
1-35
diff --git a/Nasal/libraries.nas b/Nasal/libraries.nas
index a1d0daa4..1c821ad5 100644
--- a/Nasal/libraries.nas
+++ b/Nasal/libraries.nas
@@ -33,11 +33,11 @@ setprop("/engines/engine[1]/oil-qt-actual", qty2);
# Lights #
##########
-var beacon_switch = props.globals.getNode("/controls/switches/beacon", 2);
+var beacon_switch = props.globals.getNode("/controls/switches/beacon", 1);
var beacon = aircraft.light.new("/sim/model/lights/beacon", [0.1, 1], "/controls/lighting/beacon");
-var strobe_switch = props.globals.getNode("/controls/switches/strobe", 2);
+var strobe_switch = props.globals.getNode("/controls/switches/strobe", 1);
+var strobe_light = props.globals.getNode("/controls/lighting/strobe", 1);
var strobe = aircraft.light.new("/sim/model/lights/strobe", [0.05, 0.06, 0.05, 1], "/controls/lighting/strobe");
-var tail_strobe_switch = props.globals.getNode("/controls/switches/tailstrobe", 2);
var tail_strobe = aircraft.light.new("/sim/model/lights/tailstrobe", [0.1, 1], "/controls/lighting/strobe");
var logo_lights = getprop("/sim/model/lights/logo-lights");
var nav_lights = props.globals.getNode("/sim/model/lights/nav-lights");
@@ -109,19 +109,19 @@ setlistener("/sim/sounde/switch1", func {
}, 0.05);
});
-setlistener("/controls/switches/seatbelt-sign", func {
+setlistener("/controls/lighting/seatbelt-sign", func {
props.globals.getNode("/sim/sounde/seatbelt-sign").setBoolValue(1);
settimer(func {
props.globals.getNode("/sim/sounde/seatbelt-sign").setBoolValue(0);
}, 2);
-});
+}, 0, 0);
-setlistener("/controls/switches/no-smoking-sign", func {
+setlistener("/controls/lighting/no-smoking-sign", func {
props.globals.getNode("/sim/sounde/no-smoking-sign").setBoolValue(1);
settimer(func {
props.globals.getNode("/sim/sounde/no-smoking-sign").setBoolValue(0);
}, 1);
-});
+}, 0, 0);
#########
# Doors #
@@ -520,6 +520,47 @@ var lightsLoop = maketimer(0.2, func {
} else {
nav_lights.setBoolValue(0);
}
+
+ # strobe
+ strobe_sw = strobe_switch.getValue();
+
+ if (strobe_sw == 1) {
+ strobe_light.setValue(1);
+ } elsif (strobe_sw == 0.5 and getprop("/gear/gear[1]/wow") == 0 and getprop("/gear/gear[2]/wow") == 0) {
+ # todo: use lgciu output 5
+ strobe_light.setValue(1);
+ } else {
+ strobe_light.setValue(0);
+ }
+
+ # signs
+
+ if (getprop("/systems/pressurization/cabinalt-norm") > 11300) {
+ setprop("/controls/lighting/seatbelt-sign", 1);
+ setprop("/controls/lighting/no-smoking-sign", 1);
+ } else {
+ if (getprop("controls/switches/seatbelt-sign") == 1) {
+ if (getprop("/controls/lighting/seatbelt-sign") == 0) {
+ setprop("/controls/lighting/seatbelt-sign", 1);
+ }
+ } elsif (getprop("controls/switches/seatbelt-sign") == 0) {
+ if (getprop("/controls/lighting/seatbelt-sign") == 1) {
+ setprop("/controls/lighting/seatbelt-sign", 0);
+ }
+ }
+
+ if (getprop("controls/switches/no-smoking-sign") == 1) {
+ if (getprop("/controls/lighting/no-smoking-sign") == 0) {
+ setprop("/controls/lighting/no-smoking-sign", 1);
+ }
+ } elsif (getprop("controls/switches/no-smoking-sign") == 0.5 and getprop("gear/gear[0]/position-norm") != 0) {
+ if (getprop("/controls/lighting/no-smoking-sign") == 0) {
+ setprop("/controls/lighting/no-smoking-sign", 1);
+ }
+ } else {
+ setprop("/controls/lighting/no-smoking-sign", 0); # sign stays on in cabin but sound still occurs
+ }
+ }
});
var lTray = func {
diff --git a/Sounds/A320-common-sound.xml b/Sounds/A320-common-sound.xml
index 64aca775..2ed50157 100644
--- a/Sounds/A320-common-sound.xml
+++ b/Sounds/A320-common-sound.xml
@@ -870,28 +870,6 @@
-
- gearding
- once
- nosmoko.wav
-
-
-
- gear/gear[0]/position-norm
- 0
-
-
- gear/gear[1]/position-norm
- 0
-
-
- gear/gear[2]/position-norm
- 0
-
-
-
-
-
FL2070/320wind.wav
looped
diff --git a/Sounds/nosmoko.wav b/Sounds/nosmoko.wav
index 71374fe1..58e3a8f7 100644
Binary files a/Sounds/nosmoko.wav and b/Sounds/nosmoko.wav differ