CanberraBI8.xml 40 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465
  1. <?xml version="1.0"?>
  2. <PropertyList>
  3. <path>CanberraBI8.ac</path>
  4. <!-- Rembrandt edition -->
  5. <!-- MP sound call -->
  6. <sound><path>Aircraft/CanberraBI8/Sounds/mp-sound.xml</path></sound>
  7. <!-- Skin switching code -->
  8. <nasal>
  9. <load>
  10. var livery_update = aircraft.livery_update.new("Aircraft/CanberraBI8/Models/Liveries", 10);
  11. var root = cmdarg();
  12. var rootindex = root.getIndex();
  13. var mpPath = "/ai/models/multiplayer["~ rootindex ~"]/";
  14. var lightsPath = mpPath~"lightpack/"; #path to the property node, where all internal values are placed
  15. props.globals.initNode(mpPath~"sim/is-MP-Aircraft", 1, "BOOL");
  16. srand();
  17. #wherever you want to add randomization of time, use something like: + rand()*0.05-0.025 (included by default where appropriate)
  18. #list of switches for lights - if you don't intend to use some light, assign it nil value instead, like whateverSwitch = nil; and you don't need to care about anything else
  19. #IMPORTANT: don't put / on the start of the string, it's already included in the mpPath property
  20. var navSwitch = mpPath~"controls/lighting/nav-lights-switch";
  21. var beaconSwitch = mpPath~"controls/lighting/beacon-switch";
  22. var strobeSwitch = mpPath~"controls/lighting/strobe-switch";
  23. var landingSwitch = mpPath~"controls/lighting/landing-lights-switch";
  24. var taxiSwitch = mpPath~"controls/lighting/taxi-light-switch";
  25. var probeSwitch = mpPath~"controls/lighting/probe-light-switch";
  26. var whiteSwitch = mpPath~"controls/lighting/white-light-switch";
  27. #switch this from 1 to 0 if you want to use advanced cyclical fading animation of the the nav lights instead of being stable on when the switch is on
  28. navStillOn = 1;
  29. #I need to set listener on some MP transferred properties; this doesn't seem to work well sometimes, so I mirror them to the original location on any change
  30. #This also simplifies work as I can use almost the same code for MP as is the local Nasal. Furthermore, I can use meaningful property names in the model XML files instead of referencing the MP properties.
  31. var mpVar = {
  32. new: func(propIn, propOut) {
  33. var m = { parents: [mpVar] };
  34. m.propIn = propIn;
  35. m.propOut = propOut;
  36. if(propIn==nil) return m;
  37. m.value = getprop(propIn);
  38. setprop(propOut, m.value);
  39. return m;
  40. },
  41. check: func {
  42. if(me.propIn==nil) return;
  43. var newValue = getprop(me.propIn);
  44. if(newValue != me.value) {
  45. setprop(me.propOut, newValue);
  46. me.value = newValue;
  47. #print("value of "~me.propOut~" changed: "~newValue);
  48. }
  49. },
  50. };
  51. #init any property copy object needed in this array (anything you need to transfer over MP, but you are using the original paths in your xmls)
  52. #also used for properties you are using a listener on, or properties which you maybe want to manipulate during the unload
  53. #if you're just using the pack, change the values according to the MP bindings in the -set.xml file
  54. #you don't need to delete the entries if the path is nil - it gets skipped automatically and the MP path is just ignored
  55. var mirrorValues = [
  56. mpVar.new(mpPath~"sim/multiplay/generic/int[7]", mpPath~"sim/crashed"),
  57. mpVar.new(mpPath~"sim/multiplay/generic/int[0]", navSwitch),
  58. mpVar.new(mpPath~"sim/multiplay/generic/int[1]", beaconSwitch),
  59. mpVar.new(mpPath~"sim/multiplay/generic/int[1]", strobeSwitch),
  60. mpVar.new(mpPath~"sim/multiplay/generic/int[3]", landingSwitch),
  61. mpVar.new(mpPath~"sim/multiplay/generic/int[4]", taxiSwitch),
  62. mpVar.new(mpPath~"sim/multiplay/generic/int[4]", probeSwitch),
  63. mpVar.new(mpPath~"sim/multiplay/generic/int[0]", whiteSwitch),
  64. ];
  65. #loop at the default MP transfer frequency (10Hz)
  66. var mirrorTimer = maketimer(0.1, func {
  67. foreach(var mir; mirrorValues) {
  68. mir.check();
  69. }
  70. });
  71. mirrorTimer.start();
  72. #### NAV LIGHTS ####
  73. #class for a periodic fade in/out animation - for flashing, use rather standard aircraft.light.new(), as in Beacon and Strobe section
  74. var lightCycle = {
  75. #constructor
  76. new: func(propSwitch, propOut) {
  77. m = { parents: [lightCycle] };
  78. props.globals.initNode(propOut, 0, "DOUBLE");
  79. props.globals.initNode(propSwitch, 1, "BOOL");
  80. m.fadeIn = 0.4 + rand()*0.05-0.025; #fade in time
  81. m.fadeOut = 0.4 + rand()*0.05-0.025; #fade out time
  82. m.stayOn = 1.5 + rand()*0.05-0.025; #stable on period
  83. m.stayOff = 1 + rand()*0.05-0.025; #stable off period
  84. m.turnOff = 0.12; #fade out time when turned off
  85. m.phase = 0; #phase to be run on next timer call: 0 -> fade in, 1 -> stay on, 2 -> fade out, 3 -> stay off
  86. m.cycleTimer = maketimer(0.1, func {
  87. if(getprop(propSwitch)) {
  88. if(m.phase == 0) {
  89. interpolate(propOut, 1, m.fadeIn);
  90. m.phase = 1;
  91. m.cycleTimer.restart(m.fadeIn);
  92. }
  93. else if(m.phase == 1){
  94. m.phase = 2;
  95. m.cycleTimer.restart(m.stayOn);
  96. }
  97. else if(m.phase == 2){
  98. interpolate(propOut, 0, m.fadeOut);
  99. m.phase = 3;
  100. m.cycleTimer.restart(m.fadeOut);
  101. }
  102. else if(m.phase == 3){
  103. m.phase = 0;
  104. m.cycleTimer.restart(m.stayOff);
  105. }
  106. }
  107. else {
  108. interpolate(propOut, 0, m.turnOff); #kills any currently ongoing interpolation
  109. m.phase = 0;
  110. }
  111. });
  112. m.cycleTimer.singleShot = 1;
  113. if(propSwitch==nil) {
  114. m.listen = nil;
  115. return m;
  116. }
  117. m.listen = setlistener(propSwitch, func{m.cycleTimer.restart(0);}); #handle switch changes
  118. m.cycleTimer.restart(0); #start the looping
  119. return m;
  120. },
  121. #destructor
  122. del: func {
  123. if(me.listen!=nil) removelistener(me.listen);
  124. me.cycleTimer.stop();
  125. },
  126. };
  127. #By default, the switch property is initialized to 1 (only if no value is already assigned). Don't change the class implementation! To override this, set the property manually. You don't need to care if any other code already does it for you.
  128. var navLights = nil;
  129. if(!navStillOn) {
  130. navLights = lightCycle.new(navSwitch, lightsPath~"nav-lights-intensity");
  131. ### Uncomment and tune those to customize times ###
  132. #navLights.fadeIn = 0.4; #fade in time
  133. #navLights.fadeOut = 0.4; #fade out time
  134. #navLights.stayOn = 3 + rand()*0.05-0.025; #stable on period
  135. #navLights.stayOff = 0.6; #stable off period
  136. #navLights.turnOff = 0.12; #fade out time when turned off
  137. }
  138. ### BEACON ###
  139. var beacon = nil;
  140. if(beaconSwitch!=nil) {
  141. props.globals.initNode(beaconSwitch, 1, "BOOL");
  142. beacon = aircraft.light.new(lightsPath~"beacon-state",
  143. [0.0, 1.0 + rand()*0.05-0.025], beaconSwitch);
  144. }
  145. ### STROBE ###
  146. var strobe = nil;
  147. if(strobeSwitch!=nil) {
  148. props.globals.initNode(strobeSwitch, 1, "BOOL");
  149. strobe = aircraft.light.new(lightsPath~"strobe-state",
  150. [0.0, 0.87 + rand()*0.05-0.025], strobeSwitch);
  151. }
  152. ### LIGHT FADING ###
  153. #class for controlling fade in/out behavior - propIn is a control property (handled as a boolean) and propOut is interpolated
  154. #all light brightness animations in xmls depend on propOut (Rembrandt brightness, material emission, flares transparency, ...)
  155. var lightFadeInOut = {
  156. #constructor
  157. new: func(propSwitch, propOut) {
  158. m = { parents: [lightFadeInOut] };
  159. m.fadeIn = 0.3; #some sane defaults
  160. m.fadeOut = 0.4;
  161. if(propSwitch==nil) {
  162. m.listen = nil;
  163. return m;
  164. }
  165. props.globals.initNode(propSwitch, 1, "BOOL");
  166. m.isOn = getprop(propSwitch);
  167. props.globals.initNode(propOut, m.isOn, "DOUBLE");
  168. m.listen = setlistener(propSwitch,
  169. func {
  170. if(m.isOn and !getprop(propSwitch)) {
  171. interpolate(propOut, 0, m.fadeOut);
  172. m.isOn = 0;
  173. }
  174. if(!m.isOn and getprop(propSwitch)) {
  175. interpolate(propOut, 1, m.fadeIn);
  176. m.isOn = 1;
  177. }
  178. }
  179. );
  180. return m;
  181. },
  182. #destructor
  183. del: func {
  184. if(me.listen!=nil) removelistener(me.listen);
  185. },
  186. };
  187. fadeLanding = lightFadeInOut.new(landingSwitch, lightsPath~"landing-lights-intensity");
  188. fadeTaxi = lightFadeInOut.new(taxiSwitch, lightsPath~"taxi-light-intensity");
  189. fadeProbe = lightFadeInOut.new(probeSwitch, lightsPath~"probe-light-intensity");
  190. fadeWhite = lightFadeInOut.new(whiteSwitch, lightsPath~"white-light-intensity");
  191. if(navStillOn) {
  192. navLights = lightFadeInOut.new(navSwitch, lightsPath~"nav-lights-intensity");
  193. navLights.fadeIn = 0.1;
  194. navLights.fadeOut = 0.12;
  195. }
  196. #manipulate times if defaults don't fit your needs:
  197. #fadeLanding.fadeIn = 0.5;
  198. #fadeLanding.fadeOut = 0.8;
  199. ### the rest of your model load embedded Nasal code ###
  200. </load>
  201. <unload>
  202. stopFire();
  203. disintegrated = 0;
  204. removelistener(listenCrash);
  205. #prevent multiple timers and listeners from running and fighting on next connect
  206. #cleanly destroy MP property mirroring
  207. mirrorTimer.stop();
  208. mirrorTimer = nil;
  209. mirrorValues = nil;
  210. #cleanly destroy nav lights
  211. if(navStillOn) {
  212. navLights.del();
  213. }
  214. else {
  215. if(navSwitch!=nil) setprop(navSwitch, 0);
  216. navLights.del();
  217. if(navSwitch!=nil) navLights.cycleTimer = nil;
  218. navLights = nil;
  219. }
  220. #cleanly destroy beacon
  221. if(beaconSwitch!=nil) setprop(beaconSwitch, 0);
  222. beacon.del();
  223. beacon = nil;
  224. #cleanly destroy strobe
  225. if(strobeSwitch!=nil) setprop(strobeSwitch, 0);
  226. strobe.del();
  227. strobe = nil;
  228. #cleanly destroy light fade in/out animation objects
  229. fadeLanding.del();
  230. fadeTaxi.del();
  231. fadeProbe.del();
  232. fadeWhite.del();
  233. ### the rest of your model unload embedded Nasal code ###
  234. livery_update.stop();
  235. </unload>
  236. </nasal>
  237. <animation>
  238. <!-- Objets opaques -->
  239. <type>material</type>
  240. <object-name>Low-Rez-Body</object-name>
  241. <object-name>FUS-Hull</object-name>
  242. <object-name>CP-F-Canopy-Frame</object-name>
  243. <object-name>WNG-L</object-name>
  244. <object-name>WNG-R</object-name>
  245. <object-name>WNG-R-Aileron</object-name>
  246. <object-name>WNG-L-Aileron</object-name>
  247. <object-name>WNG-F-Tip-Tank</object-name>
  248. <object-name>WNG-R-Tip-Tank</object-name>
  249. <object-name>ENG-L-Nacelle</object-name>
  250. <object-name>ENG-R-Nacelle</object-name>
  251. <object-name>EMP-Tail-Plane</object-name>
  252. <object-name>EMP-L-Elev</object-name>
  253. <object-name>EMP-R-Elev</object-name>
  254. <object-name>EMP-Fin</object-name>
  255. <object-name>EMP-Rudder</object-name>
  256. <object-name>UC-L-Door</object-name>
  257. <object-name>UC-LI-Door-Outside</object-name>
  258. <object-name>UC-RI-Door-Outside</object-name>
  259. <object-name>UC-R-Door</object-name>
  260. <object-name>WNG-R-Inner-Flap</object-name>
  261. <object-name>WNG-L-Inner-Flap</object-name>
  262. <object-name>WNG-R-Outer-Flap</object-name>
  263. <object-name>WNG-L-Outer-Flap</object-name>
  264. <object-name>FUS-LO-Bomb-Door</object-name>
  265. <object-name>FUS-RO-Bomb-Door</object-name>
  266. <object-name>UC-RF-Door.002</object-name>
  267. <object-name>UC-RF-Door.001</object-name>
  268. <object-name>FUS-Hatch-Outside</object-name>
  269. <property-base>sim/model/livery</property-base>
  270. <texture-prop>texture</texture-prop>
  271. <texture>texture.png</texture>
  272. </animation>
  273. <!-- Pilot -->
  274. <animation>
  275. <type>material</type>
  276. <object-name>tete</object-name>
  277. <object-name>corps</object-name>
  278. <object-name>bras</object-name>
  279. <object-name>avantbras</object-name>
  280. <object-name>main</object-name>
  281. <property-base>sim/model/livery</property-base>
  282. <texture-prop>texture-pilot</texture-prop>
  283. <texture>fighter_pilot.png</texture>
  284. </animation>
  285. <!-- fuselage reflection -->
  286. <effect>
  287. <inherits-from>Aircraft/CanberraBI8/Models/Effects/reflect-uber</inherits-from>
  288. <object-name>Low-Rez-Body</object-name>
  289. <object-name>FUS-Hull</object-name>
  290. <object-name>CP-R-Frame-Inside</object-name>
  291. <object-name>CP-F-Canopy-Frame</object-name>
  292. <object-name>WNG-L</object-name>
  293. <object-name>WNG-R</object-name>
  294. <object-name>WNG-R-Aileron</object-name>
  295. <object-name>WNG-L-Aileron</object-name>
  296. <object-name>WNG-F-Tip-Tank</object-name>
  297. <object-name>WNG-R-Tip-Tank</object-name>
  298. <object-name>ENG-L-Nacelle</object-name>
  299. <object-name>ENG-R-Nacelle</object-name>
  300. <object-name>EMP-Tail-Plane</object-name>
  301. <object-name>EMP-L-Elev</object-name>
  302. <object-name>EMP-R-Elev</object-name>
  303. <object-name>EMP-Fin</object-name>
  304. <object-name>EMP-Rudder</object-name>
  305. <object-name>UC-L-Door</object-name>
  306. <object-name>UC-LI-Door-Outside</object-name>
  307. <object-name>UC-RI-Door-Outside</object-name>
  308. <object-name>UC-R-Door</object-name>
  309. <object-name>WNG-R-Inner-Flap</object-name>
  310. <object-name>WNG-L-Inner-Flap</object-name>
  311. <object-name>WNG-R-Outer-Flap</object-name>
  312. <object-name>WNG-L-Outer-Flap</object-name>
  313. <object-name>FUS-LO-Bomb-Door</object-name>
  314. <object-name>FUS-RO-Bomb-Door</object-name>
  315. <object-name>UC-RF-Door.002</object-name>
  316. <object-name>UC-RF-Door.001</object-name>
  317. <object-name>FUS-Hatch-Outside</object-name>
  318. </effect>
  319. <!-- Bump Map Effect -->
  320. <!--
  321. <effect>
  322. <inherits-from>Aircraft/CanberraBI8/Models/Effects/eec_bumpspec</inherits-from>
  323. <object-name>Low-Rez-Body</object-name>
  324. <object-name>FUS-Hull</object-name>
  325. <object-name>CP-R-Frame-Inside</object-name>
  326. <object-name>CP-F-Canopy-Frame</object-name>
  327. <object-name>WNG-L</object-name>
  328. <object-name>WNG-R</object-name>
  329. <object-name>WNG-R-Aileron</object-name>
  330. <object-name>WNG-L-Aileron</object-name>
  331. <object-name>WNG-F-Tip-Tank</object-name>
  332. <object-name>WNG-R-Tip-Tank</object-name>
  333. <object-name>ENG-L-Nacelle</object-name>
  334. <object-name>ENG-R-Nacelle</object-name>
  335. <object-name>EMP-Tail-Plane</object-name>
  336. <object-name>EMP-L-Elev</object-name>
  337. <object-name>EMP-R-Elev</object-name>
  338. <object-name>EMP-Fin</object-name>
  339. <object-name>EMP-Rudder</object-name>
  340. <object-name>UC-L-Door</object-name>
  341. <object-name>UC-LI-Door-Outside</object-name>
  342. <object-name>UC-RI-Door-Outside</object-name>
  343. <object-name>UC-R-Door</object-name>
  344. <object-name>WNG-R-Inner-Flap</object-name>
  345. <object-name>WNG-L-Inner-Flap</object-name>
  346. <object-name>WNG-R-Outer-Flap</object-name>
  347. <object-name>WNG-L-Outer-Flap</object-name>
  348. <object-name>FUS-LO-Bomb-Door</object-name>
  349. <object-name>FUS-RO-Bomb-Door</object-name>
  350. <object-name>UC-RF-Door.002</object-name>
  351. <object-name>UC-RF-Door.001</object-name>
  352. <object-name>FUS-Hatch-Outside</object-name>
  353. </effect>
  354. -->
  355. <!-- Transparent Surfaces for Rembrandt rendering -->
  356. <effect>
  357. <inherits-from>Aircraft/CanberraBI8/Models/Effects/bk117reflectglas-uber</inherits-from>
  358. <!--<object-name>hatch</object-name>
  359. <object-name>main</object-name>
  360. <object-name>Low-Rez-Glass</object-name>-->
  361. <object-name>CP-R-Glass</object-name>
  362. <object-name>wCP-F-Glass</object-name>
  363. <object-name>CP-F-Glass</object-name>
  364. <object-name>FUS-Windows</object-name>
  365. <object-name>WNG-R-Lens</object-name>
  366. <object-name>WNG-L-Lens</object-name>
  367. </effect>
  368. <effect>
  369. <inherits-from>Effects/glass</inherits-from>
  370. <object-name>CP-R-Glassin</object-name>
  371. <object-name>hud</object-name>
  372. <object-name>CP-F-Glassin</object-name>
  373. <object-name>FUS-Windowsin</object-name>
  374. </effect>
  375. <!-- Solid Surfaces for Rembrandt rendering -->
  376. <animation>
  377. <object-name>FUS-Top</object-name>
  378. <object-name>Low-Rez-Body</object-name>
  379. <object-name>FUS-Hull</object-name>
  380. <object-name>CP-R-Frame-Inside</object-name>
  381. <object-name>CP-F-Canopy-Frame</object-name>
  382. <object-name>WNG-L</object-name>
  383. <object-name>WNG-R</object-name>
  384. <object-name>WNG-R-Aileron</object-name>
  385. <object-name>WNG-L-Aileron</object-name>
  386. <object-name>WNG-F-Tip-Tank</object-name>
  387. <object-name>WNG-R-Tip-Tank</object-name>
  388. <object-name>ENG-L-Nacelle</object-name>
  389. <object-name>ENG-R-Nacelle</object-name>
  390. <object-name>EMP-Tail-Plane</object-name>
  391. <object-name>EMP-L-Elev</object-name>
  392. <object-name>EMP-R-Elev</object-name>
  393. <object-name>EMP-Fin</object-name>
  394. <object-name>EMP-Rudder</object-name>
  395. <object-name>UC-L-Door</object-name>
  396. <object-name>UC-LI-Door-Outside</object-name>
  397. <object-name>UC-RI-Door-Outside</object-name>
  398. <object-name>UC-R-Door</object-name>
  399. <object-name>WNG-R-Inner-Flap</object-name>
  400. <object-name>WNG-L-Inner-Flap</object-name>
  401. <object-name>WNG-R-Outer-Flap</object-name>
  402. <object-name>WNG-L-Outer-Flap</object-name>
  403. <object-name>FUS-LO-Bomb-Door</object-name>
  404. <object-name>FUS-RO-Bomb-Door</object-name>
  405. <object-name>UC-RF-Door.002</object-name>
  406. <object-name>UC-RF-Door.001</object-name>
  407. <object-name>FUS-Hatch-Outside</object-name>
  408. </animation>
  409. <!-- ** Control Surfaces ** -->
  410. <animation>
  411. <type>rotate</type>
  412. <object-name>WNG-L-Aileron</object-name>
  413. <property>surface-positions/left-aileron-pos-norm</property>
  414. <factor>-25</factor>
  415. <axis>
  416. <x1-m>10.143</x1-m> <x2-m>9.315</x2-m>
  417. <y1-m>-5.7</y1-m> <y2-m>-9.134</y2-m>
  418. <z1-m>0.502</z1-m> <z2-m>0.881</z2-m>
  419. </axis>
  420. </animation>
  421. <animation>
  422. <type>rotate</type>
  423. <object-name>WNG-R-Aileron</object-name>
  424. <property>surface-positions/right-aileron-pos-norm</property>
  425. <factor>25</factor>
  426. <axis>
  427. <x1-m>10.143</x1-m> <x2-m>9.315</x2-m>
  428. <y1-m>5.7</y1-m> <y2-m>9.134</y2-m>
  429. <z1-m>0.502</z1-m> <z2-m>0.881</z2-m>
  430. </axis>
  431. </animation>
  432. <animation>
  433. <type>rotate</type>
  434. <object-name>WNG-L-Outer-Flap</object-name>
  435. <property>surface-positions/left-flap-pos-norm</property>
  436. <factor>45</factor>
  437. <axis>
  438. <x1-m>10.143</x1-m> <x2-m>11.067</x2-m>
  439. <y1-m>-5.7</y1-m> <y2-m>-3.542</y2-m>
  440. <z1-m>0.396</z1-m> <z2-m>0.15</z2-m>
  441. </axis>
  442. </animation>
  443. <animation>
  444. <type>rotate</type>
  445. <object-name>WNG-L-Inner-Flap</object-name>
  446. <property>surface-positions/left-flap-pos-norm</property>
  447. <factor>45</factor>
  448. <axis>
  449. <x1-m>11.122</x1-m> <x2-m>11.129</x2-m>
  450. <y1-m>-2.646</y1-m> <y2-m>-1</y2-m>
  451. <z1-m>0.098</z1-m> <z2-m>0.012</z2-m>
  452. </axis>
  453. </animation>
  454. <animation>
  455. <type>rotate</type>
  456. <object-name>WNG-R-Inner-Flap</object-name>
  457. <property>surface-positions/right-flap-pos-norm</property>
  458. <factor>-45</factor>
  459. <axis>
  460. <x1-m>11.122</x1-m> <x2-m>11.129</x2-m>
  461. <y1-m>2.646</y1-m> <y2-m>1</y2-m>
  462. <z1-m>0.098</z1-m> <z2-m>0.012</z2-m>
  463. </axis>
  464. </animation>
  465. <animation>
  466. <type>rotate</type>
  467. <object-name>WNG-R-Outer-Flap</object-name>
  468. <property>surface-positions/right-flap-pos-norm</property>
  469. <factor>-45</factor>
  470. <axis>
  471. <x1-m>10.143</x1-m> <x2-m>11.067</x2-m>
  472. <y1-m>5.7</y1-m> <y2-m>3.542</y2-m>
  473. <z1-m>0.396</z1-m> <z2-m>0.15</z2-m>
  474. </axis>
  475. </animation>
  476. <animation>
  477. <type>rotate</type>
  478. <object-name>EMP-L-Elev</object-name>
  479. <property>surface-positions/left-elevator-pos-norm</property>
  480. <factor>25</factor>
  481. <axis>
  482. <x1-m>18.67</x1-m> <x2-m>18.74</x2-m>
  483. <y1-m>-3.79</y1-m> <y2-m>-0.56</y2-m>
  484. <z1-m>1.40</z1-m> <z2-m>0.87</z2-m>
  485. </axis>
  486. </animation>
  487. <animation>
  488. <type>rotate</type>
  489. <object-name>EMP-R-Elev</object-name>
  490. <property>surface-positions/right-elevator-pos-norm</property>
  491. <factor>-25</factor>
  492. <axis>
  493. <x1-m>18.67</x1-m> <x2-m>18.74</x2-m>
  494. <y1-m>3.79</y1-m> <y2-m>0.56</y2-m>
  495. <z1-m>1.40</z1-m> <z2-m>0.87</z2-m>
  496. </axis>
  497. </animation>
  498. <animation>
  499. <type>rotate</type>
  500. <object-name>EMP-Rudder</object-name>
  501. <property>surface-positions/rudder-pos-norm</property>
  502. <factor>-25</factor>
  503. <axis>
  504. <x1-m>17.97</x1-m> <x2-m>17.96</x2-m>
  505. <y1-m>0</y1-m> <y2-m>0</y2-m>
  506. <z1-m>1.38</z1-m> <z2-m>2.98</z2-m>
  507. </axis>
  508. </animation>
  509. <!--
  510. <animation>
  511. <type>translate</type>
  512. <object-name>WNG- -Spoiler</object-name>
  513. <property>surface-positions/-spoiler-pos-norm</property>
  514. <factor>0.18</factor>
  515. <axis>
  516. <y></y>
  517. <z></z>
  518. </axis>
  519. </animation>
  520. -->
  521. <animation>
  522. <type>translate</type>
  523. <object-name>WNG-UL-Spoiler</object-name>
  524. <property>surface-positions/left-spoiler-pos-norm</property>
  525. <factor>0.18</factor>
  526. <axis>
  527. <x>0.017</x>
  528. <y>-0.033</y>
  529. <z>0.191</z>
  530. </axis>
  531. </animation>
  532. <animation>
  533. <type>translate</type>
  534. <object-name>WNG-UR-Spoiler</object-name>
  535. <property>surface-positions/right-spoiler-pos-norm</property>
  536. <factor>0.18</factor>
  537. <axis>
  538. <x>0.017</x>
  539. <y>0.033</y>
  540. <z>0.191</z>
  541. </axis>
  542. </animation>
  543. <animation>
  544. <type>translate</type>
  545. <object-name>WNG-LL-Spoiler</object-name>
  546. <property>surface-positions/left-spoiler-pos-norm</property>
  547. <factor>0.18</factor>
  548. <axis>
  549. <x>-0.024</x>
  550. <y>0.033</y>
  551. <z>-0.191</z>
  552. </axis>
  553. </animation>
  554. <animation>
  555. <type>translate</type>
  556. <object-name>WNG-LR-Spoiler</object-name>
  557. <property>surface-positions/right-spoiler-pos-norm</property>
  558. <factor>0.18</factor>
  559. <axis>
  560. <x>-0.024</x>
  561. <y>-0.033</y>
  562. <z>-0.191</z>
  563. </axis>
  564. </animation>
  565. <!-- ** Misc Body Parts ** -->
  566. <!-- Canopy-->
  567. <animation>
  568. <type>rotate</type>
  569. <object-name>CP-Canopy</object-name>
  570. <property>controls/canopy/canopy-pos-norm</property>
  571. <interpolation>
  572. <entry> <ind>0</ind> <dep>0</dep> </entry>
  573. <entry> <ind>0.01</ind> <dep>2</dep> </entry>
  574. <entry> <ind>0.05</ind> <dep>1</dep> </entry>
  575. <entry> <ind>0.3</ind> <dep>1</dep> </entry>
  576. <entry> <ind>1</ind> <dep>40</dep> </entry>
  577. </interpolation>
  578. <center>
  579. <x-m>4.93</x-m>
  580. <z-m>1.44</z-m>
  581. </center>
  582. <axis>
  583. <y>1</y>
  584. </axis>
  585. </animation>
  586. <animation>
  587. This one is seperate, because it has been sorted for layering
  588. <type>rotate</type>
  589. <object-name>CP-R-Glass</object-name>
  590. <object-name>CP-R-Glassin</object-name>
  591. <property>controls/canopy/canopy-pos-norm</property>
  592. <interpolation>
  593. <entry> <ind>0</ind> <dep>0</dep> </entry>
  594. <entry> <ind>0.01</ind> <dep>2</dep> </entry>
  595. <entry> <ind>0.05</ind> <dep>1</dep> </entry>
  596. <entry> <ind>0.3</ind> <dep>1</dep> </entry>
  597. <entry> <ind>1</ind> <dep>40</dep> </entry>
  598. </interpolation>
  599. <center>
  600. <x-m>4.93</x-m>
  601. <z-m>1.44</z-m>
  602. </center>
  603. <axis>
  604. <y>1</y>
  605. </axis>
  606. </animation>
  607. <!-- Crew entry hatch -->
  608. <animation>
  609. <type>rotate</type>
  610. <object-name>FUS-Hatch</object-name>
  611. <property>controls/hatch/hatch-pos-norm</property>
  612. <factor>100</factor>
  613. <axis>
  614. <x1-m>1.992</x1-m> <x2-m>2.457</x2-m>
  615. <y1-m>0.743</y1-m> <y2-m>0.822</y2-m>
  616. <z1-m>0.361</z1-m> <z2-m>0.368</z2-m>
  617. </axis>
  618. </animation>
  619. <!-- Bomb bay doors -->
  620. <animation>
  621. <type>rotate</type>
  622. <object-name>FUS-L-Bomb-Door</object-name>
  623. <property>controls/bb-doors/left-bb-door-pos-norm</property>
  624. <factor>60</factor>
  625. <center>
  626. <y-m>-0.37</y-m>
  627. <z-m>-0.18</z-m>
  628. </center>
  629. <axis>
  630. <x>-1</x>
  631. </axis>
  632. <!--axis>
  633. <x1-m>11.999</x1-m> <x2-m>5.299</x2-m>
  634. <y1-m>-0.397</y1-m> <y2-m>-0.427</y2-m>
  635. <z1-m>-0.293</z1-m> <z2-m>-0.382</z2-m>
  636. </axis-->
  637. </animation>
  638. <animation>
  639. <type>rotate</type>
  640. <object-name>FUS-R-Bomb-Door</object-name>
  641. <property>controls/bb-doors/right-bb-door-pos-norm</property>
  642. <factor>60</factor>
  643. <center>
  644. <y-m>0.37</y-m>
  645. <z-m>-0.18</z-m>
  646. </center>
  647. <axis>
  648. <x>1</x>
  649. </axis>
  650. <!--axis>
  651. <x1-m>11.999</x1-m> <x2-m>5.299</x2-m>
  652. <y1-m>0.397</y1-m> <y2-m>0.427</y2-m>
  653. <z1-m>-0.293</z1-m> <z2-m>-0.382</z2-m>
  654. </axis-->
  655. </animation>
  656. <!-- *** Misc *** -->
  657. <!-- Bomb Drop -->
  658. <animation>
  659. <type>select</type>
  660. <object-name>RedBeard</object-name>
  661. <condition>
  662. <not>
  663. <property>/ai/submodels/red-beard-released</property>
  664. </not>
  665. </condition>
  666. </animation>
  667. <!-- ** Landing Gear ** -->
  668. <animation>
  669. <type>select</type>
  670. <object-name>Low-Rez-Gear</object-name>
  671. <property>/controls/gear/gear-down</property>
  672. </animation>
  673. <!-- Nose gear Rolling -->
  674. <animation>
  675. <type>spin</type>
  676. <object-name>UC-Nose-Roll</object-name>
  677. <property>gear/gear[0]/rollspeed-ms</property>
  678. <!-- 0.68m * pi * 2 ?? -->
  679. <!--factor>2.136283</factor-->
  680. <!--factor>4.272566</factor-->
  681. <factor>28.086166</factor>
  682. <center>
  683. <x-m>4.34</x-m>
  684. <z-m>-0.29</z-m>
  685. </center>
  686. <axis>
  687. <y>-1</y>
  688. </axis>
  689. </animation>
  690. <!-- Nose Gear Compression -->
  691. <animation>
  692. <type>rotate</type>
  693. <property>gear/gear[0]/compression-norm</property>
  694. <object-name>UC-Nose-Compress</object-name>
  695. <factor>45</factor>
  696. <center>
  697. <x-m>4.2</x-m>
  698. <z-m>-0.58</z-m>
  699. </center>
  700. <axis>
  701. <y>-1</y>
  702. </axis>
  703. </animation>
  704. <!-- Nose Gear Steering -->
  705. <animation>
  706. <type>rotate</type>
  707. <property>gear/gear[0]/steering-norm</property>
  708. <object-name>UC-Nose-Steer</object-name>
  709. <factor>60</factor>
  710. <center>
  711. <z-m>-0.355</z-m>
  712. </center>
  713. <axis>
  714. <x>1</x>
  715. </axis>
  716. </animation>
  717. <!-- Nose Gear Retraction -->
  718. <animation>
  719. <type>rotate</type>
  720. <property>gear/gear[0]/position-norm</property>
  721. <object-name>UC-Nose-Link</object-name>
  722. <axis>
  723. <y>1</y>
  724. </axis>
  725. <center>
  726. <x-m>3.825</x-m>
  727. <z-m>-0.247</z-m>
  728. </center>
  729. <interpolation>
  730. <entry> <ind>0</ind> <dep>0</dep> </entry>
  731. <entry> <ind>0.166</ind> <dep>-23.3</dep> </entry>
  732. <entry> <ind>0.333</ind> <dep>-42.6</dep> </entry>
  733. <entry> <ind>0.499</ind> <dep>-58.6</dep> </entry>
  734. <entry> <ind>0.666</ind> <dep>-67.4</dep> </entry>
  735. <entry> <ind>0.832</ind> <dep>-70.9</dep> </entry>
  736. <entry> <ind>1</ind> <dep>-55</dep> </entry>
  737. </interpolation>
  738. </animation>
  739. <animation>
  740. <type>rotate</type>
  741. <property>gear/gear[0]/position-norm</property>
  742. <object-name>UC-Nose-Retract</object-name>
  743. <axis>
  744. <y>1</y>
  745. </axis>
  746. <center>
  747. <x-m>3.645</x-m>
  748. <z-m>-0.46</z-m>
  749. </center>
  750. <interpolation>
  751. <entry> <ind>0</ind> <dep>0</dep> </entry>
  752. <entry> <ind>0.166</ind> <dep>15</dep> </entry>
  753. <entry> <ind>0.333</ind> <dep>30</dep> </entry>
  754. <entry> <ind>0.499</ind> <dep>45</dep> </entry>
  755. <entry> <ind>0.666</ind> <dep>60</dep> </entry>
  756. <entry> <ind>0.832</ind> <dep>75</dep> </entry>
  757. <entry> <ind>1</ind> <dep>90</dep> </entry>
  758. </interpolation>
  759. </animation>
  760. <animation>
  761. <type>shader</type>
  762. <shader>chrome</shader>
  763. <texture>chrome2.rgb</texture>
  764. <object-name>UC-Nose-Piston</object-name>
  765. </animation>
  766. <animation>
  767. <type>rotate</type>
  768. <property>gear/gear[0]/position-norm</property>
  769. <object-name>UC-Nose-Piston</object-name>
  770. <axis>
  771. <y>1</y>
  772. </axis>
  773. <center>
  774. <x-m>3.969</x-m>
  775. <z-m>-0.005</z-m>
  776. </center>
  777. <interpolation>
  778. <entry> <ind>0</ind> <dep>0</dep> </entry>
  779. <entry> <ind>0.166</ind> <dep>-0.7</dep> </entry>
  780. <entry> <ind>0.333</ind> <dep>-0.1</dep> </entry>
  781. <entry> <ind>0.499</ind> <dep>0.3</dep> </entry>
  782. <entry> <ind>0.666</ind> <dep>0.7</dep> </entry>
  783. <entry> <ind>0.832</ind> <dep>0.8</dep> </entry>
  784. <entry> <ind>1</ind> <dep>0.5</dep> </entry>
  785. </interpolation>
  786. </animation>
  787. <animation>
  788. <type>rotate</type>
  789. <property>gear/gear[0]/position-norm</property>
  790. <object-name>UC-Nose-DL-Rotate</object-name>
  791. <axis>
  792. <y>1</y>
  793. </axis>
  794. <center>
  795. <x-m>4.751</x-m>
  796. <z-m>0.115</z-m>
  797. </center>
  798. <interpolation>
  799. <entry> <ind>0</ind> <dep>0</dep> </entry>
  800. <entry> <ind>0.166</ind> <dep>-4.1</dep> </entry>
  801. <entry> <ind>0.333</ind> <dep>-8.1</dep> </entry>
  802. <entry> <ind>0.499</ind> <dep>-12.8</dep> </entry>
  803. <entry> <ind>0.666</ind> <dep>-17.8</dep> </entry>
  804. <entry> <ind>0.832</ind> <dep>-24.2</dep> </entry>
  805. <entry> <ind>1</ind> <dep>-37.6</dep> </entry>
  806. </interpolation>
  807. </animation>
  808. <animation>
  809. <type>rotate</type>
  810. <property>gear/gear[0]/position-norm</property>
  811. <object-name>UC-Nose-Retractor</object-name>
  812. <axis>
  813. <y>1</y>
  814. </axis>
  815. <center>
  816. <x-m>4.762</x-m>
  817. <z-m>-0.269</z-m>
  818. </center>
  819. <interpolation>
  820. <entry> <ind>0</ind> <dep>0</dep> </entry>
  821. <entry> <ind>0.166</ind> <dep>-2.8</dep> </entry>
  822. <entry> <ind>0.333</ind> <dep>-7.4</dep> </entry>
  823. <entry> <ind>0.499</ind> <dep>-12.0</dep> </entry>
  824. <entry> <ind>0.666</ind> <dep>-16.2</dep> </entry>
  825. <entry> <ind>0.832</ind> <dep>-22.6</dep> </entry>
  826. <entry> <ind>1</ind> <dep>-37.2</dep> </entry>
  827. </interpolation>
  828. </animation>
  829. <!-- Nose Gear Doors -->
  830. <animation>
  831. <type>rotate</type>
  832. <property>gear/gear[0]/position-norm</property>
  833. <object-name>UC-LF-Door</object-name>
  834. <interpolation>
  835. <entry> <ind>0</ind> <dep>0</dep> </entry>
  836. <entry> <ind>0.3</ind> <dep>125</dep> </entry>
  837. </interpolation>
  838. <axis>
  839. <x1-m>4.82</x1-m> <x2-m>3.51</x2-m>
  840. <y1-m>-0.42</y1-m> <y2-m>-0.4</y2-m>
  841. <z1-m>-0.65</z1-m> <z2-m>-0.65</z2-m>
  842. </axis>
  843. </animation>
  844. <animation>
  845. <type>rotate</type>
  846. <property>gear/gear[0]/position-norm</property>
  847. <object-name>UC-RF-Door</object-name>
  848. <interpolation>
  849. <entry> <ind>0</ind> <dep>0</dep> </entry>
  850. <entry> <ind>0.3</ind> <dep>-125</dep> </entry>
  851. </interpolation>
  852. <axis>
  853. <x1-m>4.82</x1-m> <x2-m>3.51</x2-m>
  854. <y1-m>0.42</y1-m> <y2-m>0.4</y2-m>
  855. <z1-m>-0.65</z1-m> <z2-m>-0.65</z2-m>
  856. </axis>
  857. </animation>
  858. <!-- Left Gear Roll -->
  859. <animation>
  860. <type>spin</type>
  861. <property>gear/gear[1]/rollspeed-ms</property>
  862. <object-name>UC-Left-Roll</object-name>
  863. <!-- 60 / (1.06m * pi) -->
  864. <factor>-18.017541</factor>
  865. <axis>
  866. <x1-m>7.517</x1-m> <x2-m>7.731</x2-m>
  867. <y1-m>-1.686</y1-m> <y2-m>-1.609</y2-m>
  868. <z1-m>-0.607</z1-m> <z2-m>1.547</z2-m>
  869. </axis>
  870. </animation>
  871. <!-- Left Gear Compression -->
  872. <animation>
  873. <type>shader</type>
  874. <shader>chrome</shader>
  875. <texture>chrome2.rgb</texture>
  876. <object-name>UC-Left-Oleo</object-name>
  877. </animation>
  878. <animation>
  879. <type>translate</type>
  880. <property>gear/gear[1]/compression-norm</property>
  881. <object-name>UC-Left-Compress</object-name>
  882. <factor>0.18</factor>
  883. <axis>
  884. <y>-1</y>
  885. <!--x1-m>8.13</x1-m> <x2-m>7.79</x2-m>
  886. <y1-m>-2.68</y1-m> <y2-m>-1.96</y2-m>
  887. <z1-m>0.23</z1-m> <z2-m>0.24</z2-m-->
  888. </axis>
  889. </animation>
  890. <!-- Left Gear Retraction -->
  891. <animation>
  892. <type>rotate</type>
  893. <property>gear/gear[1]/position-norm</property>
  894. <object-name>UC-Left-Retract</object-name>
  895. <interpolation>
  896. <entry> <ind>0.05</ind> <dep>0</dep> </entry>
  897. <entry> <ind>1</ind> <dep>-90.9</dep> </entry>
  898. </interpolation>
  899. <axis>
  900. <x1-m>7.59</x1-m> <x2-m>8.64</x2-m>
  901. <y1-m>-2.83</y1-m> <y2-m>-2.59</y2-m>
  902. <z1-m>0.09</z1-m> <z2-m>0.22</z2-m>
  903. </axis>
  904. </animation>
  905. <!-- Left Gear Doors -->
  906. <animation>
  907. <type>rotate</type>
  908. <property>gear/gear[1]/position-norm</property>
  909. <object-name>UC-LI-Door</object-name>
  910. <interpolation>
  911. <entry> <ind>0</ind> <dep>0</dep> </entry>
  912. <entry> <ind>0.25</ind> <dep>-90</dep> </entry>
  913. </interpolation>
  914. <axis>
  915. <x1-m>8.00</x1-m> <x2-m>7.34</x2-m>
  916. <y1-m>-1.00</y1-m> <y2-m>-1.00</y2-m>
  917. <z1-m>0.02</z1-m> <z2-m>0.09</z2-m>
  918. </axis>
  919. </animation>
  920. <animation>
  921. <type>rotate</type>
  922. <property>gear/gear[1]/position-norm</property>
  923. <object-name>UC-LO-Door</object-name>
  924. <interpolation>
  925. <entry> <ind>0.05</ind> <dep>0</dep> </entry>
  926. <entry> <ind>1</ind> <dep>130</dep> </entry>
  927. </interpolation>
  928. <axis>
  929. <x1-m>8.385</x1-m> <x2-m>7.933</x2-m>
  930. <y1-m>-2.910</y1-m> <y2-m>-2.919</y2-m>
  931. <z1-m>-0.076</z1-m> <z2-m>-0.067</z2-m>
  932. </axis>
  933. </animation>
  934. <!-- Right Gear Roll -->
  935. <animation>
  936. <type>spin</type>
  937. <property>gear/gear[2]/rollspeed-ms</property>
  938. <object-name>UC-Right-Roll</object-name>
  939. <!-- 60 / (1.06m * pi) -->
  940. <factor>18.017541</factor>
  941. <axis>
  942. <x1-m>7.507</x1-m> <x2-m>7.731</x2-m>
  943. <y1-m>1.686</y1-m> <y2-m>1.609</y2-m>
  944. <z1-m>-0.607</z1-m> <z2-m>1.546</z2-m>
  945. </axis>
  946. </animation>
  947. <!-- Right Gear Compression -->
  948. <animation>
  949. <type>shader</type>
  950. <shader>chrome</shader>
  951. <texture>chrome2.rgb</texture>
  952. <object-name>UC-Right-Oleo</object-name>
  953. </animation>
  954. <animation>
  955. <type>translate</type>
  956. <property>gear/gear[2]/compression-norm</property>
  957. <object-name>UC-Right-Compress</object-name>
  958. <factor>0.18</factor>
  959. <axis>
  960. <y>1</y>
  961. <!--x1-m>8.13</x1-m> <x2-m>7.79</x2-m>
  962. <y1-m>-2.68</y1-m> <y2-m>1.96</y2-m>
  963. <z1-m>0.23</z1-m> <z2-m>0.24</z2-m-->
  964. </axis>
  965. </animation>
  966. <!-- Right Gear Retraction -->
  967. <animation>
  968. <type>rotate</type>
  969. <property>gear/gear[2]/position-norm</property>
  970. <object-name>UC-Right-Retract</object-name>
  971. <interpolation>
  972. <entry> <ind>0.05</ind> <dep>0</dep> </entry>
  973. <entry> <ind>1</ind> <dep>90.9</dep> </entry>
  974. </interpolation>
  975. <axis>
  976. <x1-m>7.59</x1-m> <x2-m>8.64</x2-m>
  977. <y1-m>2.83</y1-m> <y2-m>2.59</y2-m>
  978. <z1-m>0.09</z1-m> <z2-m>0.22</z2-m>
  979. </axis>
  980. </animation>
  981. <!-- Right Gear Doors -->
  982. <animation>
  983. <type>rotate</type>
  984. <property>gear/gear[2]/position-norm</property>
  985. <object-name>UC-RI-Door</object-name>
  986. <interpolation>
  987. <entry> <ind>0</ind> <dep>0</dep> </entry>
  988. <entry> <ind>0.25</ind> <dep>90</dep> </entry>
  989. </interpolation>
  990. <axis>
  991. <x1-m>8.00</x1-m> <x2-m>7.34</x2-m>
  992. <y1-m>1.00</y1-m> <y2-m>1.00</y2-m>
  993. <z1-m>0.02</z1-m> <z2-m>0.09</z2-m>
  994. </axis>
  995. </animation>
  996. <animation>
  997. <type>rotate</type>
  998. <property>gear/gear[2]/position-norm</property>
  999. <object-name>UC-RO-Door</object-name>
  1000. <interpolation>
  1001. <entry> <ind>0.05</ind> <dep>0</dep> </entry>
  1002. <entry> <ind>1</ind> <dep>-130</dep> </entry>
  1003. </interpolation>
  1004. <axis>
  1005. <x1-m>8.385</x1-m> <x2-m>7.933</x2-m>
  1006. <y1-m>2.910</y1-m> <y2-m>2.919</y2-m>
  1007. <z1-m>-0.076</z1-m> <z2-m>-0.067</z2-m>
  1008. </axis>
  1009. </animation>
  1010. <!-- FGUK added effects -->
  1011. <!-- LIGHTS -->
  1012. <model>
  1013. <path>Aircraft/CanberraBI8/Models/Lights/LightPack.xml</path>
  1014. <offsets>
  1015. <x-m>0</x-m>
  1016. <y-m> 0</y-m>
  1017. <z-m>0</z-m>
  1018. </offsets>
  1019. </model>
  1020. <!--
  1021. <model>
  1022. <path>Aircraft/CanberraBI8/Models/lights/beacon.xml</path>
  1023. <offsets>
  1024. <x-m>13.15</x-m>
  1025. <y-m> 0</y-m>
  1026. <z-m> 1.35</z-m>
  1027. </offsets>
  1028. </model>
  1029. <model>
  1030. <path>Aircraft/CanberraBI8/Models/lights/beacon.xml</path>
  1031. <offsets>
  1032. <x-m>13.7</x-m>
  1033. <y-m> 0</y-m>
  1034. <z-m> -0.6</z-m>
  1035. </offsets>
  1036. </model>
  1037. <model>
  1038. <path>Aircraft/CanberraBI8/Models/lights/GreenLight.xml</path>
  1039. <offsets>
  1040. <x-m> 19.5</x-m>
  1041. <y-m> 0</y-m>
  1042. <z-m> 1.3</z-m>
  1043. </offsets>
  1044. </model>
  1045. <model>
  1046. <path>Aircraft/CanberraBI8/Models/lights/RedLight.xml</path>
  1047. <offsets>
  1048. <x-m> 7.75 </x-m>
  1049. <y-m> -9.51 </y-m>
  1050. <z-m> 1.0</z-m>
  1051. </offsets>
  1052. </model>
  1053. <model>
  1054. <path>Aircraft/CanberraBI8/Models/lights/GreenLight.xml</path>
  1055. <offsets>
  1056. <x-m> 7.75 </x-m>
  1057. <y-m> 9.51 </y-m>
  1058. <z-m> 1.0</z-m>
  1059. </offsets>
  1060. </model>
  1061. <model>
  1062. <path>Aircraft/CanberraBI8/Models/lights/StrobeWhite.xml</path>
  1063. <offsets>
  1064. <x-m> 7.6 </x-m>
  1065. <y-m> -9.3 </y-m>
  1066. <z-m> 1.0</z-m>
  1067. </offsets>
  1068. </model>
  1069. <model>
  1070. <path>Aircraft/CanberraBI8/Models/lights/StrobeWhite.xml</path>
  1071. <offsets>
  1072. <x-m> 7.6 </x-m>
  1073. <y-m> 9.3 </y-m>
  1074. <z-m> 1.0</z-m>
  1075. </offsets>
  1076. </model>
  1077. -->
  1078. <model>
  1079. <path>Aircraft/CanberraBI8/Models/Effects/smoke/smokeL.xml</path>
  1080. <offsets>
  1081. <x-m> 11.7 </x-m>
  1082. <y-m> -3.0</y-m>
  1083. <z-m> -0.2</z-m>
  1084. </offsets>
  1085. </model>
  1086. <model>
  1087. <path>Aircraft/CanberraBI8/Models/Effects/smoke/smokeR.xml</path>
  1088. <offsets>
  1089. <x-m> 11.7</x-m>
  1090. <y-m> 3.0</y-m>
  1091. <z-m> -0.2</z-m>
  1092. </offsets>
  1093. </model>
  1094. <model>
  1095. <path>Aircraft/CanberraBI8/Models/Effects/trail/trailL.xml</path>
  1096. <offsets>
  1097. <x-m> 11.7 </x-m>
  1098. <y-m> -3.0</y-m>
  1099. <z-m> 0</z-m>
  1100. </offsets>
  1101. </model>
  1102. <model>
  1103. <path>Aircraft/CanberraBI8/Models/Effects/trail/trailR.xml</path>
  1104. <offsets>
  1105. <x-m> 11.7</x-m>
  1106. <y-m> 3.0</y-m>
  1107. <z-m> 0</z-m>
  1108. </offsets>
  1109. </model>
  1110. <model>
  1111. <path>Aircraft/CanberraBI8/Models/Effects/tiptrail/tiptrail.xml</path>
  1112. <offsets>
  1113. <x-m> 7.6 </x-m>
  1114. <y-m> 9.3 </y-m>
  1115. <z-m> 1.0</z-m>
  1116. </offsets>
  1117. </model>
  1118. <model>
  1119. <path>Aircraft/CanberraBI8/Models/Effects/tiptrail/tiptrail.xml</path>
  1120. <offsets>
  1121. <x-m> 7.6 </x-m>
  1122. <y-m> -9.3 </y-m>
  1123. <z-m> 1.0</z-m>
  1124. </offsets>
  1125. </model>
  1126. <!-- Interior -->
  1127. <model>
  1128. <path>Aircraft/CanberraBI8/Models/Interior/interior.xml</path>
  1129. <offsets>
  1130. <x-m> 0 </x-m>
  1131. <y-m> 0 </y-m>
  1132. <z-m> 0 </z-m>
  1133. </offsets>
  1134. </model>
  1135. <!-- aircraft wash modeled in the lines below -->
  1136. <model>
  1137. <name>aircraft_wash_l</name>
  1138. <path>Aircraft/CanberraBI8/Models/wash/aircraft_wash.xml</path>
  1139. <condition>
  1140. <equals>
  1141. <property>controls/state/low_level</property>
  1142. <value>1</value>
  1143. </equals>
  1144. </condition>
  1145. <offsets>
  1146. <x-m> 25.00 </x-m>
  1147. <y-m> 4.50 </y-m>
  1148. <z-m> 0.00 </z-m>
  1149. <pitch-deg> 0 </pitch-deg>
  1150. </offsets>
  1151. </model>
  1152. <model>
  1153. <name>aircraft_wash_r</name>
  1154. <path>Aircraft/CanberraBI8/Models/wash/aircraft_wash.xml</path>
  1155. <condition>
  1156. <equals>
  1157. <property>controls/state/low_level</property>
  1158. <value>1</value>
  1159. </equals>
  1160. </condition>
  1161. <offsets>
  1162. <x-m> 25.00 </x-m>
  1163. <y-m> -4.50 </y-m>
  1164. <z-m> 0.00 </z-m>
  1165. <pitch-deg>0</pitch-deg>
  1166. </offsets>
  1167. </model>
  1168. <animation>
  1169. <type>translate</type>
  1170. <object-name>aircraft_wash_l</object-name>
  1171. <object-name>aircraft_wash_r</object-name>
  1172. <property>position/altitude-agl-ft</property>
  1173. <condition>
  1174. <equals>
  1175. <property>controls/state/low_level</property>
  1176. <value>1</value>
  1177. </equals>
  1178. </condition>
  1179. <interpolation>
  1180. <entry><ind> 0 </ind><dep> 0 </dep></entry>
  1181. <entry><ind> 300 </ind><dep> -90 </dep></entry>
  1182. </interpolation>
  1183. <axis>
  1184. <x> -1 </x>
  1185. <y> 0 </y>
  1186. <z> 1 </z>
  1187. </axis>
  1188. </animation>
  1189. <!-- Taxi light cone
  1190. <model>
  1191. <path>Aircraft/CanberraBI8/Models/lights/light-cone.xml</path>
  1192. <name>NoseGearLandinglightL</name>
  1193. <offsets>
  1194. <x-m> 7.6 </x-m>
  1195. <y-m> -9.1 </y-m>
  1196. <z-m> 1.0</z-m>
  1197. <pitch-deg> -10 </pitch-deg>
  1198. <heading-deg>0 </heading-deg>
  1199. </offsets>
  1200. </model>
  1201. <model>
  1202. <path>Aircraft/CanberraBI8/Models/lights/light-cone.xml</path>
  1203. <name>NoseGearLandinglightR</name>
  1204. <offsets>
  1205. <x-m> 7.6 </x-m>
  1206. <y-m> 9.1 </y-m>
  1207. <z-m> 1.0</z-m>
  1208. <pitch-deg> -10 </pitch-deg>
  1209. <heading-deg> 0 </heading-deg>
  1210. </offsets>
  1211. </model> -->
  1212. <!-- pilot -->
  1213. <model>
  1214. <path>Aircraft/CanberraBI8/Models/pilot/Pilot.xml</path>
  1215. <offsets>
  1216. <x-m> 3.85 </x-m>
  1217. <y-m> -0.22 </y-m>
  1218. <z-m> 0.9 </z-m>
  1219. </offsets>
  1220. </model>
  1221. <!-- pilot invisible from internally -->
  1222. <animation>
  1223. <type>select</type>
  1224. <object-name>pilot</object-name>
  1225. <condition>
  1226. <not>
  1227. <property>sim/current-view/internal</property>
  1228. </not>
  1229. </condition>
  1230. </animation>
  1231. <model>
  1232. <path>Aircraft/CanberraBI8/Models/Effects/Vapour/Vapour.xml</path>
  1233. <offsets>
  1234. <x-m>7.5</x-m>
  1235. <y-m>-1.0</y-m>
  1236. <z-m>0.9</z-m>
  1237. <roll-deg>0</roll-deg>
  1238. <pitch-deg>0</pitch-deg>
  1239. <heading-deg>-25</heading-deg>
  1240. </offsets>
  1241. </model>
  1242. <model>
  1243. <path>Aircraft/CanberraBI8/Models/Effects/Vapour/Vapour.xml</path>
  1244. <offsets>
  1245. <x-m>7.5</x-m>
  1246. <y-m>1.0</y-m>
  1247. <z-m>0.9</z-m>
  1248. <roll-deg>0</roll-deg>
  1249. <pitch-deg>0</pitch-deg>
  1250. <heading-deg>25</heading-deg>
  1251. </offsets>
  1252. </model>
  1253. <model>
  1254. <path>Aircraft/CanberraBI8/Models/Effects/Vapour/Vapour2.xml</path>
  1255. <offsets>
  1256. <x-m>8.5</x-m>
  1257. <y-m>-5</y-m>
  1258. <z-m>0.9</z-m>
  1259. <roll-deg>0</roll-deg>
  1260. <pitch-deg>0</pitch-deg>
  1261. <heading-deg>45</heading-deg>
  1262. </offsets>
  1263. </model>
  1264. <model>
  1265. <path>Aircraft/CanberraBI8/Models/Effects/Vapour/Vapour2.xml</path>
  1266. <offsets>
  1267. <x-m>8.5</x-m>
  1268. <y-m>5</y-m>
  1269. <z-m>0.9</z-m>
  1270. <roll-deg>0</roll-deg>
  1271. <pitch-deg>0</pitch-deg>
  1272. <heading-deg>-45</heading-deg>
  1273. </offsets>
  1274. </model>
  1275. </PropertyList>