Improve ground services, make rain effect dynamic, add SATA (RZO) livery

This commit is contained in:
D-ECHO 2017-11-30 23:10:36 +01:00
parent b7cf8f11d6
commit 5682bc9d9c
15 changed files with 479 additions and 132 deletions

View file

@ -205,6 +205,15 @@
</script>
</binding>
</item>
<item>
<label>Ground Services</label>
<binding>
<command>nasal</command>
<script>
acconfig.groundservices_dlg.open();
</script>
</binding>
</item>
<item>
<label>Announcements</label>
<binding>
@ -1239,6 +1248,8 @@
<file>Aircraft/IDG-A32X/Nasal/ADIRS.nas</file>
<file>Aircraft/IDG-A32X/Nasal/fire.nas</file>
<file>Aircraft/IDG-A32X/Nasal/brakes.nas</file>
<file>Aircraft/IDG-A32X/Nasal/ground_services.nas</file>
<file>Aircraft/IDG-A32X/Nasal/effects.nas</file>
</systems>
<thrust>
<file>Aircraft/IDG-A32X/Nasal/fadec-common.nas</file>

View file

@ -96,6 +96,7 @@ var fail_dlg = gui.Dialog.new("sim/gui/dialogs/acconfig/fail/dialog", "Aircraft/
var about_dlg = gui.Dialog.new("sim/gui/dialogs/acconfig/about/dialog", "Aircraft/IDG-A32X/AircraftConfig/about.xml");
var update_dlg = gui.Dialog.new("sim/gui/dialogs/acconfig/update/dialog", "Aircraft/IDG-A32X/AircraftConfig/update.xml");
var error_mismatch = gui.Dialog.new("sim/gui/dialogs/acconfig/error/mismatch/dialog", "Aircraft/IDG-A32X/AircraftConfig/error-mismatch.xml");
var groundservices_dlg = gui.Dialog.new("sim/gui/dialogs/acconfig/groundsrvc/dialog", "Aircraft/IDG-A32X/AircraftConfig/groundservices.xml");
spinning.start();
init_dlg.open();

View file

@ -0,0 +1,275 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!--
##############################################
# Copyright (c) Joshua Davidson (it0uchpods) #
##############################################
# modified by D-ECHO for Ground Services
-->
<!-- A3XX Ground Services Config Dialog -->
<PropertyList>
<name>ground-services</name>
<layout>vbox</layout>
<group>
<layout>hbox</layout>
<text>
<halign>left</halign>
<label>Ground Services</label>
</text>
<button>
<halign>right</halign>
<pref-width>20</pref-width>
<pref-height>20</pref-height>
<legend>X</legend>
<key>Esc</key>
<binding>
<command>dialog-close</command>
</binding>
</button>
</group>
<vrule/>
<group>
<layout>vbox</layout>
<checkbox>
<label>Enable De-icing Truck</label>
<halign>left</halign>
<property>/services/deicing_truck/enable</property>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<button>
<legend>De-ice Aircraft</legend>
<halign>center</halign>
<padding>5</padding>
<enable>
<property>/services/deicing_truck/enable</property>
</enable>
<binding>
<command>property-assign</command>
<property>/services/deicing_truck/de-ice</property>
<value>1</value>
</binding>
</button>
<checkbox>
<label>Enable Fuel Truck</label>
<halign>left</halign>
<enable>
<not><property>/services/fuel-truck/connect</property></not>
</enable>
<property>/services/fuel-truck/enable</property>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<checkbox>
<label>Connect Fuel Truck</label>
<halign>left</halign>
<enable>
<property>/services/fuel-truck/enable</property>
</enable>
<property>/services/fuel-truck/connect</property>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<checkbox>
<label>Enable Catering Truck</label>
<halign>left</halign>
<property>/services/catering/enable</property>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<button>
<legend>Toggle Catering</legend>
<halign>center</halign>
<padding>5</padding>
<enable>
<property>/services/catering/enable</property>
</enable>
<binding>
<condition>
<less-than>
<property>/services/catering/position-norm</property>
<value>0.1</value>
</less-than>
</condition><command>property-interpolate</command>
<property>/services/catering/position-norm</property>
<value>0.68</value>
<time>5</time>
</binding>
<binding>
<condition>
<greater-than-equals>
<property>/services/catering/position-norm</property>
<value>0.1</value>
</greater-than-equals>
</condition><command>property-interpolate</command>
<property>/services/catering/position-norm</property>
<value>0.0</value>
<time>5</time>
</binding>
</button>
<checkbox>
<label>Enable Baggage Ramp</label>
<halign>left</halign>
<property>/services/baggage/enable</property>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<hrule/>
<text>
<label>Stairways</label>
</text>
<checkbox>
<label>Front Left</label>
<halign>left</halign>
<property>/services/stairs/l1</property>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<checkbox>
<label>Rear Left</label>
<halign>left</halign>
<property>/services/stairs/l4</property>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<checkbox>
<label>Stairway cover</label>
<halign>left</halign>
<property>/services/stairs/cover</property>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<hrule/>
<text>
<label>Wheel chockes</label>
</text>
<checkbox>
<label>Nose Gear</label>
<halign>left</halign>
<property>/services/chokes/nose</property>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<checkbox>
<label>Main Left Gear</label>
<halign>left</halign>
<property>/services/chokes/left</property>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<checkbox>
<label>Main Right Gear</label>
<halign>left</halign>
<property>/services/chokes/right</property>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<hrule/>
<text>
<label>Ground Power</label>
</text>
<checkbox>
<label>Enable External Power Box</label>
<halign>left</halign>
<property>/controls/switches/cart</property>
<binding>
<command>property-assign</command>
<property>/controls/electrical/switches/gen-ext</property>
<value>0</value>
</binding>
<enable>
<and>
<equals>
<property>/controls/gear/brake-parking</property>
<value>1</value>
</equals>
<less-than>
<property>/velocities/groundspeed-kt</property>
<value>2</value>
</less-than>
</and>
</enable>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<checkbox>
<label>Enable External Air</label>
<halign>left</halign>
<property>/controls/pneumatic/switches/groundair</property>
<binding>
<command>property-toggle</command>
<property>/controls/pneumatic/switches/groundair</property>
</binding>
<enable>
<and>
<equals>
<property>/controls/gear/brake-parking</property>
<value>1</value>
</equals>
<less-than>
<property>/velocities/groundspeed-kt</property>
<value>2</value>
</less-than>
</and>
</enable>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
</group>
</group>
</PropertyList>

View file

@ -186,129 +186,18 @@
<group>
<layout>vbox</layout>
<checkbox>
<label>Enable De-icing Truck</label>
<halign>left</halign>
<property>/services/deicing_truck/enable</property>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<button>
<legend>De-ice Aircraft</legend>
<legend>Ground Services</legend>
<halign>center</halign>
<padding>5</padding>
<enable>
<property>/services/deicing_truck/enable</property>
</enable>
<binding>
<command>nasal</command>
<script>
gui.popupTip("The Aircraft was De-iced!");
acconfig.groundservices_dlg.open();
</script>
</binding>
</button>
<checkbox>
<label>Enable Fuel Truck</label>
<halign>left</halign>
<enable>
<not><property>/services/fuel-truck/connect</property></not>
</enable>
<property>/services/fuel-truck/enable</property>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<checkbox>
<label>Connect Fuel Truck</label>
<halign>left</halign>
<enable>
<property>/services/fuel-truck/enable</property>
</enable>
<property>/services/fuel-truck/connect</property>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<checkbox>
<label>Enable Catering Truck</label>
<halign>left</halign>
<property>/services/catering/enable</property>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<checkbox>
<label>Enable Baggage Ramp</label>
<halign>left</halign>
<property>/services/baggage/enable</property>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<checkbox>
<label>Enable External Power Box</label>
<halign>left</halign>
<property>/controls/switches/cart</property>
<binding>
<command>property-assign</command>
<property>/controls/electrical/switches/gen-ext</property>
<value>0</value>
</binding>
<enable>
<and>
<equals>
<property>/controls/gear/brake-parking</property>
<value>1</value>
</equals>
<less-than>
<property>/velocities/groundspeed-kt</property>
<value>2</value>
</less-than>
</and>
</enable>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<checkbox>
<label>Enable External Air</label>
<halign>left</halign>
<property>/controls/pneumatic/switches/groundair</property>
<binding>
<command>property-toggle</command>
<property>/controls/pneumatic/switches/groundair</property>
</binding>
<enable>
<and>
<equals>
<property>/controls/gear/brake-parking</property>
<value>1</value>
</equals>
<less-than>
<property>/velocities/groundspeed-kt</property>
<value>2</value>
</less-than>
</and>
</enable>
<binding>
<command>dialog-apply</command>
</binding>
<live>true</live>
</checkbox>
<checkbox>
<label>Yellow HYD Hand Pump</label>

View file

@ -410,9 +410,9 @@
</equals>
</condition>
<offsets>
<x-m>7.87</x-m>
<y-m>7.28</y-m>
<z-m>-3.70</z-m>
<x-m>7.37</x-m>
<y-m>6.36029</y-m>
<z-m>-4.4</z-m>
<heading-deg>100</heading-deg>
</offsets>
</model>

View file

@ -358,9 +358,10 @@
</equals>
</condition>
<offsets>
<x-m>31</x-m>
<y-m>-25</y-m>
<x-m>26.11094</x-m>
<y-m>-29.16832</y-m>
<z-m>0.95</z-m>
<heading-deg>170</heading-deg>
</offsets>
</model>
@ -417,10 +418,10 @@
</equals>
</condition>
<offsets>
<x-m>7.87</x-m>
<y-m>7.28</y-m>
<z-m>-3.70</z-m>
<heading-deg>100</heading-deg>
<x-m>6.84</x-m>
<y-m>6.62</y-m>
<z-m>-4.1</z-m>
<heading-deg>93.412</heading-deg>
</offsets>
</model>
@ -436,7 +437,7 @@
</equals>
</condition>
<offsets>
<x-m>11</x-m>
<x-m>9.52482</x-m>
<y-m>0</y-m>
<z-m>0.5</z-m>
</offsets>

View file

@ -0,0 +1,29 @@
<?xml version="1.0" encoding="utf-8"?>
<PropertyList>
<name>Aircraft/A320Family/Models/Effects/NEOreflect</name>
<inherits-from>Effects/model-combined-deferred</inherits-from>
<parameters>
<!--<texture n="5">
<type>cubemap</type>
<images>
<positive-x>Aircraft/Generic/Effects/CubeMaps/real.blue-sky/fair-sky_px.png</positive-x>
<negative-x>Aircraft/Generic/Effects/CubeMaps/real.blue-sky/fair-sky_nx.png</negative-x>
<positive-y>Aircraft/Generic/Effects/CubeMaps/real.blue-sky/fair-sky_py.png</positive-y>
<negative-y>Aircraft/Generic/Effects/CubeMaps/real.blue-sky/fair-sky_ny.png</negative-y>
<positive-z>Aircraft/Generic/Effects/CubeMaps/real.blue-sky/fair-sky_pz.png</positive-z>
<negative-z>Aircraft/Generic/Effects/CubeMaps/real.blue-sky/fair-sky_nz.png</negative-z>
</images>
</texture>-->
<reflection-enabled type="int"><use>/sim/model/rendering/reflection-enabled</use></reflection-enabled>
<reflection-type type="int"><use>/sim/model/rendering/reflection-type</use></reflection-type>
<reflection-correction type="float"><use>/sim/model/rendering/reflection-correction</use></reflection-correction>
<reflection-fresnel type="float"><use>/sim/model/rendering/reflection-fresnel</use></reflection-fresnel>
<reflection-fresnel-factor type="float"><use>/sim/model/rendering/reflection-fresnel-factor</use></reflection-fresnel-factor>
<reflection-rainbow type="float"><use>/sim/model/rendering/reflection-rainbow</use></reflection-rainbow>
<reflection-noise type="float"><use>/sim/model/rendering/reflection-noise</use></reflection-noise>
<reflection-dynamic type="int"><use>/sim/model/rendering/reflection-dynamic</use></reflection-dynamic>
<ambient-correction type="float"><use>/sim/model/rendering/ambient-correction</use></ambient-correction>
</parameters>
</PropertyList>

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

View file

@ -0,0 +1,3 @@
[Dolphin]
Timestamp=2017,11,30,23,6,25
Version=3

Binary file not shown.

After

Width:  |  Height:  |  Size: 434 KiB

View file

@ -0,0 +1,16 @@
<PropertyList>
<sim>
<model>
<livery>
<name type="string">Azores Airlines (Sata)</name>
<texture>Liveries/A320/CFM/RZO.png</texture>
</livery>
</model>
</sim>
<options>
<EIS2 type="bool">1</EIS2>
</options>
<sharklet type="bool">0</sharklet>
</PropertyList>

View file

@ -54,7 +54,7 @@
<type>translate</type>
<object-name>pistons_left</object-name>
<!--<property>sim/signals/fdm-initialized</property>-->
<property>sim/model/door-positions/cater_pos/position-norm</property>
<property>services/catering/position-norm</property>
<factor>1</factor>
<interpolation>
<entry><ind> 0.0 </ind><dep> 0.00 </dep></entry>
@ -75,7 +75,7 @@
<type>translate</type>
<object-name>pistons_right</object-name>
<!--<property>sim/signals/fdm-initialized</property>-->
<property>sim/model/door-positions/cater_pos/position-norm</property>
<property>services/catering/position-norm</property>
<factor>1</factor>
<interpolation>
<entry><ind> 0.0 </ind><dep> 0.00 </dep></entry>
@ -97,7 +97,7 @@
<object-name>piston_02_left</object-name>
<object-name>piston_02_right</object-name>
<!--<property>sim/signals/fdm-initialized</property>-->
<property>sim/model/door-positions/cater_pos/position-norm</property>
<property>services/catering/position-norm</property>
<factor>1</factor>
<interpolation>
<entry><ind> 0.0 </ind><dep> 0.00 </dep></entry>
@ -120,7 +120,7 @@
<type>translate</type>
<object-name>cargo_box_all</object-name>
<!--<property>sim/signals/fdm-initialized</property>-->
<property>sim/model/door-positions/cater_pos/position-norm</property>
<property>services/catering/position-norm</property>
<factor>1</factor>
<interpolation>
<entry><ind> 0.0 </ind><dep> 0.00 </dep></entry>
@ -141,7 +141,7 @@
<type>translate</type>
<object-name>platform</object-name>
<!--<property>sim/signals/fdm-initialized</property>-->
<property>sim/model/door-positions/cater_pos/position-norm</property>
<property>services/catering/position-norm</property>
<factor>1</factor>
<interpolation>
<entry><ind> 0.00 </ind><dep> 0.00 </dep></entry>
@ -163,7 +163,7 @@
<type>rotate</type>
<object-name>arm_top</object-name>
<!--<property>sim/signals/fdm-initialized</property>-->
<property>sim/model/door-positions/cater_pos/position-norm</property>
<property>services/catering/position-norm</property>
<factor>1</factor>
<interpolation>
<entry><ind> 0.00 </ind><dep> 0.00 </dep></entry>
@ -184,7 +184,7 @@
<type>rotate</type>
<object-name>arm_bottom</object-name>
<!--<property>sim/signals/fdm-initialized</property>-->
<property>sim/model/door-positions/cater_pos/position-norm</property>
<property>services/catering/position-norm</property>
<factor>1</factor>
<interpolation>
<entry><ind> 0.00 </ind><dep> 0.00 </dep></entry>
@ -248,7 +248,7 @@
<path>warning-light.xml</path>
<condition>
<greater-than>
<property>sim/model/door-positions/cater_pos/position-norm</property>
<property>services/catering/position-norm</property>
<value>0.01</value>
</greater-than>
</condition>
@ -265,7 +265,7 @@
<object-name>warning_light_glass</object-name>
<condition>
<greater-than>
<property>sim/model/door-positions/cater_pos/position-norm</property>
<property>services/catering/position-norm</property>
<value>0.01</value>
</greater-than>
</condition>

4
Nasal/effects.nas Normal file
View file

@ -0,0 +1,4 @@
#============================ Tyre Smoke ===================================
aircraft.tyresmoke_system.new(0, 1, 2);
aircraft.rain.init();

118
Nasal/ground_services.nas Normal file
View file

@ -0,0 +1,118 @@
var door = aircraft.door.new("/services/deicing_truck/crane", 20);
var door3 = aircraft.door.new("/services/deicing_truck/deicing", 20);
var ground_services = {
init : func {
me.UPDATE_INTERVAL = 0.1;
me.loopid = 0;
me.ice_time = 0;
# Catering Truck
setprop("/services/catering/scissor-deg", 0);
setprop("/services/catering/position-norm", 0);
# Fuel Truck
setprop("/services/fuel-truck/enable", 0);
setprop("/services/fuel-truck/connect", 0);
setprop("/services/fuel-truck/transfer", 0);
setprop("/services/fuel-truck/clean", 0);
setprop("/services/fuel-truck/request-kg", 0);
# De-icing Truck
setprop("/services/deicing_truck/enable", 0);
setprop("/services/deicing_truck/de-ice", 0);
# Set them all to 0 if the aircraft is not stationary
if (getprop("/velocities/groundspeed-kt") > 10) {
setprop("/services/chokes/nose", 0);
setprop("/services/chokes/left", 0);
setprop("/services/chokes/right", 0);
setprop("/services/fuel-truck/enable", 0);
setprop("/services/ext-pwr/enable", 0);
setprop("/services/deicing_truck/enable", 0);
setprop("/services/catering/enable", 0);
}
me.reset();
},
update : func {
# Chokes and Parking Brakes Control
# if ((getprop("/services/chokes/nose") == 1) or (getprop("/services/chokes/left") == 1) or (getprop("/services/chokes/right") == 1) or (getprop("/controls/parking-brake") == 1))
# setprop("/controls/gear/brake-parking", 1);
# else
# setprop("/controls/gear/brake-parking", 0);
# Catering Truck Controls
var cater_pos = getprop("/services/catering/position-norm");
var scissor_deg = 3.325 * (1/D2R) * math.asin(cater_pos / (2 * 3.6612));
setprop("/services/catering/scissor-deg", scissor_deg);
# De-icing Truck
if (getprop("/services/deicing_truck/enable") and getprop("/services/deicing_truck/de-ice"))
{
if (me.ice_time == 2){
door.move(1);
print ("Lifting De-icing Crane...");
}
if (me.ice_time == 220){
door3.move(1);
print ("Starting De-icing Process...");
}
if (me.ice_time == 420){
door3.move(0);
print ("De-icing Process Completed...");
}
if (me.ice_time == 650){
door.move(0);
print ("Lowering De-icing Crane...");
}
if (me.ice_time == 900) {
screen.log.write("De-icing Completed!", 1, 1, 1);
setprop("/services/deicing_truck/de-ice", 0);
setprop("/controls/ice/wing/temp", 30);
setprop("/controls/ice/wing/eng1", 30);
setprop("/controls/ice/wing/eng2", 30);
}
} else
me.ice_time = 0;
me.ice_time += 1;
},
reset : func {
me.loopid += 1;
me._loop_(me.loopid);
},
_loop_ : func(id) {
id == me.loopid or return;
me.update();
settimer(func { me._loop_(id); }, me.UPDATE_INTERVAL);
}
};
setlistener("sim/signals/fdm-initialized", func {
ground_services.init();
print("Ground Services ..... Initialized");
});