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

<PropertyList>

  <path>b247.ac</path>

  <!-- MP sound call -->
  <sound>
    <path>../Sounds/mp-sound.xml</path>
  </sound>

  <nasal>
    <load>
      var livery_update = aircraft.livery_update.new("Aircraft/Boeing-247/Models/Liveries", 10);
    </load>
    <unload>
      livery_update  .stop();
    </unload>
  </nasal>

  <animation>
    <!-- Objets opaques -->
    <object-name>fuselage</object-name>
    <object-name>ailes</object-name>
    <object-name>aileronG</object-name>
    <object-name>aileronD</object-name>
    <object-name>ailes2</object-name>
    <object-name>profondeur</object-name>
    <object-name>direction</object-name>
    <object-name>porte</object-name>
    <object-name>cargo</object-name>
    <object-name>antennes</object-name>

    <object-name>axeG</object-name>
    <object-name>roueG</object-name>
    <object-name>axeD</object-name>
    <object-name>roueD</object-name>
    <object-name>axeA</object-name>
    <object-name>roueA</object-name>
    <object-name>heliceG</object-name>
    <object-name>heliceD</object-name>
    <object-name>bolG</object-name>
    <object-name>bolD</object-name>
    <object-name>creux</object-name>
    <!-- 247 -->
    <object-name>moteurs</object-name>
    <object-name>caches</object-name>
    <object-name>cockpit</object-name>

    <object-name>trous</object-name>
    <!-- 247D -->
    <object-name>moteursD</object-name>
    <object-name>cockpitD</object-name>
    <object-name>antenne2</object-name>

    <object-name>trousD</object-name>

    <!-- Objets transparents -->
    <object-name>vitres</object-name>
    <!-- 247 -->
    <object-name>verriere</object-name>
    <!-- 247D -->
    <object-name>verriereD</object-name>
    <!-- HDR mode -->
    <object-name>HDRvitres</object-name>
    <object-name>HDRverriere</object-name>
    <object-name>HDRverriereD</object-name>
    <!-- -->
    <object-name>propblurG</object-name>
    <object-name>propdiscG</object-name>
    <object-name>propblurD</object-name>
    <object-name>propdiscD</object-name>
  </animation>

  <animation>
    <type>material</type>
    <object-name>fuselage</object-name>
    <object-name>ailes</object-name>
    <object-name>aileronG</object-name>
    <object-name>aileronD</object-name>
    <object-name>ailes2</object-name>
    <object-name>profondeur</object-name>
    <object-name>direction</object-name>
    <object-name>porte</object-name>
    <object-name>cargo</object-name>
    <object-name>antennes</object-name>
    <object-name>axeG</object-name>
    <object-name>roueG</object-name>
    <object-name>axeD</object-name>
    <object-name>roueD</object-name>
    <object-name>axeA</object-name>
    <object-name>roueA</object-name>
    <object-name>heliceG</object-name>
    <object-name>heliceD</object-name>
    <object-name>bolG</object-name>
    <object-name>bolD</object-name>
    <object-name>creux</object-name>
    <object-name>moteurs</object-name>
    <object-name>caches</object-name>
    <object-name>cockpit</object-name>
    <object-name>trous</object-name>
    <object-name>moteursD</object-name>
    <object-name>cockpitD</object-name>
    <object-name>antenne2</object-name>
    <object-name>trousD</object-name>
    <object-name>vitres</object-name>
    <object-name>verriere</object-name>
    <object-name>verriereD</object-name>
    <object-name>HDRvitres</object-name>
    <object-name>HDRverriere</object-name>
    <object-name>HDRverriereD</object-name>
    <object-name>propblurG</object-name>
    <object-name>propdiscG</object-name>
    <object-name>propblurD</object-name>
    <object-name>propdiscD</object-name>

    <property-base>sim/model/livery</property-base>
    <texture-prop>texture</texture-prop>
    <texture>texture.png</texture>
    <specular>
      <red-prop>specular/red</red-prop>
      <green-prop>specular/green</green-prop>
      <blue-prop>specular/blue</blue-prop>
    </specular>
  </animation>

  <effect>
    <inherits-from>Aircraft/Boeing-247/Models/Effects/Bump/bumpspec</inherits-from>
    <object-name>fuselage</object-name>
    <object-name>ailes</object-name>
    <object-name>aileronG</object-name>
    <object-name>aileronD</object-name>
    <object-name>ailes2</object-name>
    <object-name>profondeur</object-name>
    <object-name>direction</object-name>
    <object-name>porte</object-name>
    <object-name>cargo</object-name>
    <object-name>antennes</object-name>

    <!-- 247 -->
    <object-name>moteurs</object-name>
    <object-name>caches</object-name>
    <object-name>cockpit</object-name>

    <!-- 247D -->
    <object-name>moteursD</object-name>
    <object-name>cockpitD</object-name>
    <object-name>antenne2</object-name>
  </effect>

  <!-- Boeing 247 selection -->
  <animation>
    <type>select</type>
    <object-name>moteurs</object-name>
    <object-name>caches</object-name>
    <object-name>cockpit</object-name>
    <object-name>trous</object-name>
    <object-name>verriere</object-name>
    <object-name>HDRverriere</object-name>
    <condition>
      <equals>
        <!-- <property>sim/model/mode</property> -->
        <property>sim/multiplay/generic/string[0]</property>
        <value>B247</value>
      </equals>
    </condition>
  </animation>

  <!-- Boeing 247D selection -->
  <animation>
    <type>select</type>
    <object-name>moteursD</object-name>
    <object-name>cockpitD</object-name>
    <object-name>trousD</object-name>
    <object-name>verriereD</object-name>
    <object-name>HDRverriereD</object-name>
    <object-name>antenne2</object-name>
    <condition>
      <equals>
        <!-- <property>sim/model/mode</property> -->
        <property>sim/multiplay/generic/string[0]</property>
        <value>B247D</value>
      </equals>
    </condition>
  </animation>

  <!-- working for Compositor -->
  <effect>
    <inherits-from>Effects/Glass/glassrain</inherits-from>
    <object-name>vitres</object-name>
    <object-name>verriere</object-name>
    <object-name>verriereD</object-name>
  </effect>

  <effect>
    <inherits-from>Effects/Glass/glass</inherits-from>
    <object-name>HDRvitres</object-name>
    <object-name>HDRverriere</object-name>
    <object-name>HDRverriereD</object-name>
  </effect>

  <!-- Sélection des vitres en fonction de HDR ou pas -->
  <animation>
    <type>select</type>
    <condition>
      <!-- <property>sim/rendering/hdr/hdr-enabled</property> -->
      <property>sim/multiplay/generic/bool[2]</property>
    </condition>
    <object-name>HDRvitres</object-name>
    <object-name>HDRverriere</object-name>
    <object-name>HDRverriereD</object-name>
  </animation>

  <animation>
    <type>select</type>
    <condition>
      <!-- <not><property>sim/rendering/hdr/hdr-enabled</property></not> -->
      <not><property>sim/multiplay/generic/bool[2]</property></not>
    </condition>
    <object-name>vitres</object-name>
    <object-name>verriere</object-name>
    <object-name>verriereD</object-name>
  </animation>

  <effect>
    <inherits-from>Effects/model-transparent</inherits-from>
    <object-name>propdiscG</object-name>
    <object-name>propblurG</object-name>
    <object-name>propdiscD</object-name>
    <object-name>propblurD</object-name>
  </effect>

  <model>
    <path>Interior/interior.xml</path>
  </model>

  <model>
    <path>engines/all-engines.xml</path>
  </model>

  <model>
    <path>Effects/ground/all-ground.xml</path>
  </model>

  <model>
    <path>Effects/cranking/all-cranking.xml</path>
  </model>

  <model>
    <path>light/all-lights.xml</path>
  </model>

  <!-- Les hélices -->
  <animation>
    <name>HeliceCompleteG</name>
    <object-name>propdiscG</object-name>
    <object-name>propblurG</object-name>
    <object-name>heliceG</object-name>
    <object-name>bolG</object-name>
  </animation>

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

  <animation>
    <type>select</type>
    <object-name>propblurG</object-name>
    <condition>
      <and>
        <greater-than>
          <property>engines/engine[0]/rpm</property>
          <value>500.000</value>
        </greater-than>
        <less-than>
          <property>engines/engine[0]/rpm</property>
          <value>1100.001</value>
        </less-than>
      </and>
    </condition>
  </animation>

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

  <animation>
    <type>spin</type>
    <object-name>HeliceCompleteG</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> -6.100 </x-m>
      <y-m> -2.359 </y-m>
      <z-m> -0.313 </z-m>
    </center>
    <axis>
      <x> -1 </x>
      <y>  0 </y>
      <z>  0 </z>
    </axis>
  </animation>

  <animation>
    <name>HeliceCompleteD</name>
    <object-name>propdiscD</object-name>
    <object-name>propblurD</object-name>
    <object-name>heliceD</object-name>
    <object-name>bolD</object-name>
  </animation>

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

  <animation>
    <type>select</type>
    <object-name>propblurD</object-name>
    <condition>
      <and>
        <greater-than>
          <property>engines/engine[1]/rpm</property>
          <value>500.000</value>
        </greater-than>
        <less-than>
          <property>engines/engine[1]/rpm</property>
          <value>1100.001</value>
        </less-than>
      </and>
    </condition>
  </animation>

  <animation>
    <type>select</type>
    <object-name>heliceD</object-name>
    <condition>
      <less-than>
        <property>engines/engine[1]/rpm</property>
        <value>1100</value>
      </less-than>
    </condition>
  </animation>

  <animation>
    <type>spin</type>
    <object-name>HeliceCompleteD</object-name>
    <condition>
      <greater-than>
        <property>engines/engine[1]/rpm</property>
        <value> 5 </value>
      </greater-than>
    </condition>
    <property>engines/engine[1]/rpm</property>
    <factor> 1 </factor>
    <center>
      <x-m> -6.100 </x-m>
      <y-m>  2.359 </y-m>
      <z-m> -0.313 </z-m>
    </center>
    <axis>
      <x> -1 </x>
      <y>  0 </y>
      <z>  0 </z>
    </axis>
  </animation>

  <!-- Gouvernes de direction -->
  <animation>
    <type>rotate</type>
    <object-name>direction</object-name>
    <!-- <property>controls/flight/rudder</property> -->
    <property>surface-positions/rudder-pos-norm</property>
    <factor> -15 </factor>
    <center>
      <x-m> 6.573 </x-m>
      <y-m> 0.000 </y-m>
      <z-m> 1.152 </z-m>
    </center>
    <axis>
      <x> 0 </x>
      <y> 0 </y>
      <z> 1 </z>
    </axis>
  </animation>

  <!-- Gouverne de profondeur -->
  <animation>
    <type>rotate</type>
    <object-name>profondeur</object-name>
    <!-- <property>controls/flight/elevator</property> -->
    <property>surface-positions/elevator-pos-norm</property>
    <factor> 15 </factor>
    <center>
      <x-m> 6.462 </x-m>
      <y-m> 0.000 </y-m>
      <z-m> 0.457 </z-m>
    </center>
    <axis>
      <x> 0 </x>
      <y> 1 </y>
      <z> 0 </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>
    <axis>
      <x1-m>  -1.705 </x1-m>
      <y1-m> -10.045 </y1-m>
      <z1-m>  -0.148 </z1-m>
      <x2-m>  -0.824 </x2-m>
      <y2-m>  -5.079 </y2-m>
      <z2-m>  -0.473 </z2-m>
    </axis>
  </animation>

  <animation>
    <type>rotate</type>
    <object-name>aileronD</object-name>
    <property>surface-positions/right-aileron-pos-norm</property>
    <factor> 15 </factor>
    <axis>
      <x1-m> -0.824 </x1-m>
      <y1-m>  5.079 </y1-m>
      <z1-m> -0.473 </z1-m>
      <x2-m> -1.705 </x2-m>
      <y2-m> 10.045 </y2-m>
      <z2-m> -0.148 </z2-m>
    </axis>
  </animation>

  <!-- Sortie/Rentrée des trains -->
  <animation>
    <name>TrainGauche</name>
    <object-name>axeG</object-name>
    <object-name>roueG</object-name>
  </animation>

  <animation>
    <type>rotate</type>
    <object-name>TrainGauche</object-name>
    <property>gear/gear[0]/position-norm</property>
    <interpolation>
      <entry><ind> 0 </ind><dep> -90 </dep></entry>
      <entry><ind> 1 </ind><dep>   0 </dep></entry>
    </interpolation>
    <center>
      <x-m> -3.594 </x-m>
      <y-m> -2.632 </y-m>
      <z-m> -0.770 </z-m>
    </center>
    <axis>
      <x> 0 </x>
      <y> 1 </y>
      <z> 0 </z>
    </axis>
  </animation>

  <animation>
    <name>TrainDroit</name>
    <object-name>axeD</object-name>
    <object-name>roueD</object-name>
  </animation>

  <animation>
    <type>rotate</type>
    <object-name>TrainDroit</object-name>
    <property>gear/gear[1]/position-norm</property>
    <interpolation>
      <entry><ind> 0 </ind><dep> -90 </dep></entry>
      <entry><ind> 1 </ind><dep>   0 </dep></entry>
    </interpolation>
    <center>
      <x-m> -3.594 </x-m>
      <y-m>  2.632 </y-m>
      <z-m> -0.770 </z-m>
    </center>
    <axis>
      <x> 0 </x>
      <y> 1 </y>
      <z> 0 </z>
    </axis>
  </animation>

  <!-- Rotation des roues lors du roulage -->
  <animation>
    <type>spin</type>
    <object-name>roueG</object-name>
    <!-- <property>gear/gear[0]/rollspeed-ms</property> -->
    <property>sim/multiplay/generic/float[11]</property>
    <factor> -30 </factor>
    <axis>
      <x1-m> -3.571 </x1-m>
      <y1-m> -2.731 </y1-m>
      <z1-m> -2.087 </z1-m>
      <x2-m> -3.571 </x2-m>
      <y2-m> -2.533 </y2-m>
      <z2-m> -2.070 </z2-m>
    </axis>
  </animation>

  <animation>
    <type>spin</type>
    <object-name>roueD</object-name>
    <!-- <property>gear/gear[1]/rollspeed-ms</property> -->
    <property>sim/multiplay/generic/float[12]</property>
    <factor> -30 </factor>
    <axis>
      <x1-m> -3.571 </x1-m>
      <y1-m>  2.533 </y1-m>
      <z1-m> -2.070 </z1-m>
      <x2-m> -3.571 </x2-m>
      <y2-m>  2.731 </y2-m>
      <z2-m> -2.087 </z2-m>
    </axis>
  </animation>

  <animation>
    <type>spin</type>
    <object-name>roueA</object-name>
    <!-- <property>gear/gear[2]/rollspeed-ms</property> -->
    <property>sim/multiplay/generic/float[13]</property>
    <factor> 30 </factor>
    <center>
      <x-m>  6.976 </x-m>
      <y-m>  0.000 </y-m>
      <z-m> -0.474 </z-m>
    </center>
    <axis>
      <x>  0 </x>
      <y> -1 </y>
      <z>  0 </z>
    </axis>
  </animation>

  <!-- Les portes -->
  <animation>
    <type>pick</type>
    <object-name>porte</object-name>
    <visible>true</visible>
    <action>
      <button>0</button>
      <repeatable>false</repeatable>
      <binding>
        <condition>
          <and>
            <property>/gear/gear[0]/wow</property>
            <property>/gear/gear[1]/wow</property>
            <property>/gear/gear[2]/wow</property>
            <less-than>
              <property>/gear/gear[0]/rollspeed-ms</property>
              <value>10</value>
            </less-than>
          </and>
        </condition>
        <command>nasal</command>
        <script>doors.crew.toggle();</script>
      </binding>
    </action>
  </animation>

  <animation>
    <type>rotate</type>
    <object-name>porte</object-name>
    <!-- <property>sim/model/door-positions/crew/position-norm</property> -->
    <property>sim/multiplay/generic/float[0]</property>
    <factor> 170 </factor>
    <center>
      <x-m> 0.47499 </x-m>
      <y-m> 0.79946 </y-m>
      <z-m> 0.03961 </z-m>
    </center>
    <axis>
      <x> 0 </x>
      <y> 0 </y>
      <z> 1 </z>
    </axis>
  </animation>

  <animation>
    <type>pick</type>
    <object-name>cargo</object-name>
    <visible>true</visible>
    <action>
      <button>0</button>
      <repeatable>false</repeatable>
      <binding>
        <condition>
          <and>
            <property>/gear/gear[0]/wow</property>
            <property>/gear/gear[1]/wow</property>
            <property>/gear/gear[2]/wow</property>
            <less-than>
              <property>/gear/gear[0]/rollspeed-ms</property>
              <value>10</value>
            </less-than>
          </and>
        </condition>
        <command>nasal</command>
        <script>doors.cargo.toggle();</script>
      </binding>
    </action>
  </animation>

  <animation>
    <type>rotate</type>
    <object-name>cargo</object-name>
    <!-- <property>sim/model/door-positions/cargo/position-norm</property> -->
    <property>sim/multiplay/generic/float[1]</property>
    <factor> -120 </factor>
    <center>
      <x-m>  1.65606 </x-m>
      <y-m> -0.72757 </y-m>
      <z-m>  0.28488 </z-m>
    </center>
    <axis>
      <x> 0 </x>
      <y> 0 </y>
      <z> 1 </z>
    </axis>
  </animation>

</PropertyList>
