<?xml version="1.0" encoding="ISO-8859-1"?>

<PropertyList>

  <path>geebee.ac</path>

  <nasal>
    <load>
      var livery_update = aircraft.livery_update.new("Aircraft/Gee-Bee/Models/Liveries", 10);

      var self = cmdarg();

      var float_0 = self.getNode("sim/multiplay/generic/float[0]", 1);
      var float_1 = self.getNode("sim/multiplay/generic/float[1]", 1);
      
      var crew_door = self.getNode("instrumentation/doors/crew/position-norm", 1);
      var passenger_door = self.getNode("instrumentation/doors/passenger/position-norm", 1);
    
      crew_door.alias(float_0);
      passenger_door.alias(float_1);
    </load>

    <unload>
      livery_update.stop();
      crew_door.unalias();
      passenger_door.unalias();
    </unload>
  </nasal>

  <animation>
    <!-- Objets opaques -->
    <object-name>fuselage</object-name>
    <object-name>capot</object-name>
    <object-name>ailes</object-name>
    <object-name>derive</object-name>
    <object-name>aileronG</object-name>
    <object-name>aileronD</object-name>
    <object-name>profondeur</object-name>
    <object-name>direction</object-name>
    <object-name>tour</object-name>
    <object-name>tourfixe</object-name>
    <object-name>voletG</object-name>
    <object-name>voletD</object-name>

    <object-name>bol</object-name>
    <object-name>helice</object-name>
    <object-name>soutiens</object-name>
    <object-name>roueG</object-name>
    <object-name>roueD</object-name>
    <object-name>roueA</object-name>
    <object-name>cache</object-name>
    <object-name>trous</object-name>

    <!-- Objets transparents -->
    <object-name>vitres</object-name>
    <object-name>verriere</object-name>
    <object-name>propblur</object-name>
    <object-name>propdisc</object-name>
  </animation>

  <animation>
    <type>material</type>
    <object-name>fuselage</object-name>
    <object-name>capot</object-name>
    <object-name>ailes</object-name>
    <object-name>derive</object-name>
    <object-name>aileronG</object-name>
    <object-name>aileronD</object-name>
    <object-name>profondeur</object-name>
    <object-name>direction</object-name>
    <object-name>tour</object-name>
    <object-name>tourfixe</object-name>
    <object-name>voletG</object-name>
    <object-name>voletD</object-name>

    <object-name>bol</object-name>
    <object-name>helice</object-name>
    <object-name>soutiens</object-name>
    <object-name>roueG</object-name>
    <object-name>roueD</object-name>
    <object-name>roueA</object-name>
    <object-name>cache</object-name>
    <object-name>trous</object-name>

    <property-base>sim/model/livery</property-base>
    <texture-prop>texture</texture-prop>
    <texture>texture.png</texture>
  </animation>

  <effect>
    <inherits-from>Aircraft/Generic/Effects/Fuselagereflect</inherits-from>
    <condition>
      <not><property>sim/rendering/rembrandt/enabled</property></not>
    </condition>
    <object-name>fuselage</object-name>
    <object-name>capot</object-name>
    <object-name>ailes</object-name>
    <object-name>derive</object-name>
    <object-name>aileronG</object-name>
    <object-name>aileronD</object-name>
    <object-name>profondeur</object-name>
    <object-name>direction</object-name>
    <object-name>tour</object-name>
    <object-name>tourfixe</object-name>
    <object-name>voletG</object-name>
    <object-name>voletD</object-name>
  </effect>

  <effect>
    <inherits-from>Effects/model-combined-deferred</inherits-from>
    <condition>
      <property>sim/rendering/rembrandt/enabled</property>
    </condition>
    <object-name>fuselage</object-name>
    <object-name>capot</object-name>
    <object-name>ailes</object-name>
    <object-name>derive</object-name>
    <object-name>aileronG</object-name>
    <object-name>aileronD</object-name>
    <object-name>profondeur</object-name>
    <object-name>direction</object-name>
    <object-name>tour</object-name>
    <object-name>tourfixe</object-name>
    <object-name>voletG</object-name>
    <object-name>voletD</object-name>
  </effect>

  <animation>
    <type>shader</type>
    <shader>chrome</shader>
    <texture>Aircraft/Generic/Effects/glass_shader.png</texture>
    <object-name>vitres</object-name>
    <object-name>verriere</object-name>
  </animation>

  <animation>
    <type>noshadow</type>
    <object-name>vitres</object-name>
    <object-name>verriere</object-name>
    <object-name>propblur</object-name>
    <object-name>propdisc</object-name>
  </animation>

  <!-- working for Rembrandt -->
  <effect>
    <inherits-from>Effects/model-transparent</inherits-from>
    <condition>
      <property>sim/rendering/rembrandt/enabled</property>
    </condition>
    <object-name>vitres</object-name>
    <object-name>verriere</object-name>
    <object-name>propblur</object-name>
    <object-name>propdisc</object-name>
  </effect>

  <!-- Une ombre pour OSG -->
  <model>
    <name>shadowOSG</name>
    <path>Aircraft/Gee-Bee/Models/shadow.xml</path>
    <offsets>
      <x-m>  0.0 </x-m>
      <y-m>  0.0 </y-m>
      <z-m> -1.0 </z-m>
    </offsets>
  </model>

  <!-- Intérieur -->
  <model>
    <name>Interieur</name>
    <path>Aircraft/Gee-Bee/Models/Interior/interior.xml</path>
  </model>

  <!-- For Rembrandt -->
  <animation>
    <type>noshadow</type>
    <object-name>Interieur</object-name>
  </animation>

  <!-- Imatriculation -->
  <model>
    <path>Aircraft/Gee-Bee/Models/Immat/immat.xml</path>
  </model>

  <!-- Moteur -->
  <model>
    <path>Aircraft/Gee-Bee/Models/Engine/engine.xml</path>
    <offsets>
      <x-m> -2.018 </x-m>
      <y-m>  0.000 </y-m>
      <z-m>  0.112 </z-m>
    </offsets>
  </model>

  <!-- Cranking effects -->
  <!-- Left -->
  <model>
    <path>Aircraft/Gee-Bee/Models/Effects/cranking/cranking.xml</path>
    <offsets>
      <x-m> -1.530 </x-m>
      <y-m> -0.643 </y-m>
      <z-m> -0.163 </z-m>
    </offsets>
  </model>

  <model>
    <path>Aircraft/Gee-Bee/Models/Effects/cranking/cranking.xml</path>
    <offsets>
      <x-m> -1.530 </x-m>
      <y-m> -0.639 </y-m>
      <z-m>  0.048 </z-m>
    </offsets>
  </model>

  <!-- Right -->
  <model>
    <path>Aircraft/Gee-Bee/Models/Effects/cranking/cranking.xml</path>
    <offsets>
      <x-m> -1.530 </x-m>
      <y-m>  0.639 </y-m>
      <z-m>  0.048 </z-m>
    </offsets>
  </model>

  <model>
    <path>Aircraft/Gee-Bee/Models/Effects/cranking/cranking.xml</path>
    <offsets>
      <x-m> -1.530 </x-m>
      <y-m>  0.643 </y-m>
      <z-m> -0.163 </z-m>
    </offsets>
  </model>

  <!-- Effets sur le sol -->
  <!-- Roue gauche -->
  <model>
    <path>Aircraft/Gee-Bee/Models/Effects/ground/ground0.xml</path>
    <offsets>
      <x-m> -1.277 </x-m>
      <y-m> -0.959 </y-m>
      <z-m> -1.261 </z-m>
    </offsets>
  </model>

  <!-- Roue droite -->
  <model>
    <path>Aircraft/Gee-Bee/Models/Effects/ground/ground1.xml</path>
    <offsets>
      <x-m> -1.277 </x-m>
      <y-m>  0.959 </y-m>
      <z-m> -1.261 </z-m>
    </offsets>
  </model>

  <!-- Patte de queue -->
  <model>
    <path>Aircraft/Gee-Bee/Models/Effects/ground/ground2.xml</path>   
    <offsets>
      <x-m>  2.270 </x-m>
      <y-m>  0.000 </y-m>
      <z-m> -0.355 </z-m>
    </offsets>
  </model>

  <!-- Lumière rouge -->
  <model>
    <path>Aircraft/Gee-Bee/Models/lights/RedLight.xml</path>
    <offsets>
      <x-m>  1.772 </x-m>
      <y-m> -0.119 </y-m>
      <z-m>  0.899 </z-m>
    </offsets>
  </model>

  <!-- Lumière verte -->
  <model>
    <path>Aircraft/Gee-Bee/Models/lights/GreenLight.xml</path>
    <offsets>
      <x-m> 1.772 </x-m>
      <y-m> 0.119 </y-m>
      <z-m> 0.899 </z-m>
    </offsets>
  </model>

  <!-- L'hélice --> 
  <animation>
    <name>HeliceComplete</name>
    <object-name>propdisc</object-name>
    <object-name>propblur</object-name>
    <object-name>helice</object-name>
    <object-name>bol</object-name>
  </animation>

  <!-- Séléction de l'objet visible en fonction des rpm -->
  <animation>
    <type>select</type>
    <object-name>propdisc</object-name>
    <condition>
      <greater-than>
        <property>engines/engine[0]/rpm</property>
        <value>1500</value>
      </greater-than>
    </condition>
  </animation>

  <animation>
    <type>select</type>
    <object-name>propblur</object-name>
    <condition>
    <and>
      <greater-than>
        <property>engines/engine[0]/rpm</property>
        <value>600.000</value>
      </greater-than>
      <less-than>
        <property>engines/engine[0]/rpm</property>
        <value>1500.001</value>
      </less-than>
    </and>
    </condition>
  </animation>

  <animation>
    <type>select</type>
    <object-name>helice</object-name>
    <condition>
      <less-than>
        <property>engines/engine[0]/rpm</property>
	<value>1500</value>
      </less-than>
    </condition>
  </animation>

  <animation>
    <type>spin</type>
    <object-name>HeliceComplete</object-name>
    <condition>
      <greater-than>
        <property>engines/engine[0]/rpm</property>
        <value> 5 </value>
      </greater-than>
    </condition>
    <property>engines/engine[0]/rpm</property>
    <factor> 1 </factor>
    <center>
      <x-m> -2.505 </x-m>
      <y-m>  0.000 </y-m>
      <z-m>  0.112 </z-m>
    </center>
    <axis>
      <x> -1 </x>
      <y>  0 </y>
      <z>  0 </z>
    </axis>
  </animation>

  <!-- Gouverne de profondeur -->
  <animation>
    <type>rotate</type>
    <object-name>profondeur</object-name>
    <property>surface-positions/elevator-pos-norm</property>
    <factor> 15 </factor>
    <center>
      <x-m> 2.05197 </x-m>
      <y-m> 0.00000 </y-m>
      <z-m> 0.42918 </z-m>
    </center>
    <axis>
      <x> 0 </x>
      <y> 1 </y>
      <z> 0 </z>
    </axis>
  </animation>

  <!-- Gouverne de direction -->
  <animation>
    <type>rotate</type>
    <object-name>direction</object-name>
    <property>surface-positions/rudder-pos-norm</property>
    <factor> 15 </factor>
    <center>
      <x-m> 2.18566 </x-m>
      <y-m> 0.00000 </y-m>
      <z-m> 0.32795 </z-m>
    </center>
    <axis>
      <x> 0 </x>
      <y> 0 </y>
      <z> 1 </z>
    </axis>
  </animation>

  <!-- Animations des ailerons -->
  <animation>
    <type>rotate</type>
    <object-name>aileronG</object-name>
    <property>surface-positions/left-aileron-pos-norm</property>
    <factor> 15 </factor>
    <center>
      <x-m> -0.33008 </x-m>
      <y-m> -3.19402 </y-m>
      <z-m> -0.06395 </z-m>
    </center>
    <axis>
      <x> 0 </x>
      <y> 1 </y>
      <z> 0 </z>
    </axis>
  </animation> 

  <animation>
    <type>rotate</type>
    <object-name>aileronD</object-name>
    <property>surface-positions/right-aileron-pos-norm</property>
    <factor> 15 </factor>
    <center>
      <x-m> -0.33008 </x-m>
      <y-m>  3.19402 </y-m>
      <z-m> -0.06395 </z-m>
    </center>
    <axis>
      <x> 0 </x>
      <y> 1 </y>
      <z> 0 </z>
    </axis>
  </animation> 

  <!-- Volets -->
  <animation>
    <type>rotate</type>
    <object-name>voletG</object-name>
    <property>surface-positions/flap-pos-norm</property>
    <factor> 40 </factor>
    <center>
      <x-m> -0.314 </x-m>
      <y-m> -1.332 </y-m>
      <z-m> -0.112 </z-m>
    </center>
    <axis>
      <x> 0 </x>
      <y> 1 </y>
      <z> 0 </z>
    </axis>
  </animation>

  <animation>
    <type>rotate</type>
    <object-name>voletD</object-name>
    <property>surface-positions/flap-pos-norm</property>
    <factor> 40 </factor>
    <center>
      <x-m> -0.314 </x-m>
      <y-m>  1.332 </y-m>
      <z-m> -0.112 </z-m>
    </center>
    <axis>
      <x> 0 </x>
      <y> 1 </y>
      <z> 0 </z>
    </axis>
  </animation>

  <!-- Canopy -->
  <animation>
    <name>CanopyTotale</name>
    <object-name>verriere</object-name>
    <object-name>tour</object-name>
  </animation>

  <animation>
    <type>pick</type>
    <object-name>CanopyTotale</object-name>
    <visible>true</visible>
    <action>
      <button>0</button>
      <repeatable>false</repeatable>
      <binding>
        <command>nasal</command>
        <script>doors.crew.toggle();</script>
      </binding>
    </action>
  </animation>

  <animation>
    <type>rotate</type>
    <object-name>CanopyTotale</object-name>
    <property>sim/model/door-positions/crew/position-norm</property>
    <interpolation>
      <entry><ind> 0.00 </ind><dep>  0 </dep></entry>
      <entry><ind> 0.25 </ind><dep> 10 </dep></entry>
      <entry><ind> 0.50 </ind><dep> 20 </dep></entry>
      <entry><ind> 0.75 </ind><dep> 45 </dep></entry>
      <entry><ind> 1.00 </ind><dep> 90 </dep></entry>
    </interpolation>
    <axis>
      <x1-m> 1.445 </x1-m>
      <y1-m> 0.166 </y1-m>
      <z1-m> 0.759 </z1-m>
      <x2-m> 1.113 </x2-m>
      <y2-m> 0.234 </y2-m>
      <z2-m> 0.759 </z2-m>
    </axis>
  </animation>

</PropertyList>
