1
0
Fork 0

Updated c172p for 2017.1 release.

From https://github.com/c172p-team/c172p-detailed.git
Commit 7c4261ae6bc4f299e07f9f3bdf0c5de21b643826
This commit is contained in:
Stuart Buchanan 2017-02-17 09:04:00 +00:00
parent 4fb25741a5
commit 8b21d297c8
54 changed files with 47090 additions and 22471 deletions

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Bump and specular effect -->
<PropertyList>
<name>Aircraft/c172p/Models/Effects/exterior/bumpspec-pontoon</name>
<inherits-from>Aircraft/c172p/Models/Effects/exterior/bumpspec</inherits-from>
<parameters>
<normalmap-enabled type="int">0</normalmap-enabled>
<!--<texture n="2">
<image>Aircraft/c172p/Models/pontoons-normal.png</image>
<filter>linear-mipmap-linear</filter>
<wrap-s>repeat</wrap-s>
<wrap-t>repeat</wrap-t>
<internal-format>normalized</internal-format>
</texture>-->
</parameters>
</PropertyList>

View file

@ -9,7 +9,9 @@
<normalmap-tiling type="float"> 1.0 </normalmap-tiling> <normalmap-tiling type="float"> 1.0 </normalmap-tiling>
<lightmap-enabled type="int"> 0 </lightmap-enabled> <lightmap-enabled type="int"> 0 </lightmap-enabled>
<reflection-enabled type="int"> 1 </reflection-enabled> <reflection-enabled type="int"> 1 </reflection-enabled>
<reflection-correction type="float"> -0.7 </reflection-correction> <reflection-correction type="float">-0.75</reflection-correction>
<reflection-fresnel-factor type="float">0.6</reflection-fresnel-factor>
<reflection-type type="int">1</reflection-type>
<reflection-dynamic type="int"> 1 </reflection-dynamic> <reflection-dynamic type="int"> 1 </reflection-dynamic>
<reflection-fresnel type="float"> 0.0 </reflection-fresnel> <reflection-fresnel type="float"> 0.0 </reflection-fresnel>
<reflection-rainbow type="float"> 0.0 </reflection-rainbow> <reflection-rainbow type="float"> 0.0 </reflection-rainbow>
@ -17,12 +19,12 @@
<texture n= "5" > <texture n= "5" >
<type>cubemap</type> <type>cubemap</type>
<images> <images>
<positive-x>Aircraft/Generic/Effects/fgfs-sky2/1.png</positive-x> <positive-x>Aircraft/Generic/Effects/CubeMaps/buildings/N.png</positive-x>
<negative-x>Aircraft/Generic/Effects/fgfs-sky2/4.png</negative-x> <negative-x>Aircraft/Generic/Effects/CubeMaps/buildings/S.png</negative-x>
<positive-y>Aircraft/Generic/Effects/fgfs-sky2/2.png</positive-y> <positive-y>Aircraft/Generic/Effects/CubeMaps/buildings/W.png</positive-y>
<negative-y>Aircraft/Generic/Effects/fgfs-sky2/3.png</negative-y> <negative-y>Aircraft/Generic/Effects/CubeMaps/buildings/E.png</negative-y>
<positive-z>Aircraft/Generic/Effects/fgfs-sky2/6.png</positive-z> <positive-z>Aircraft/Generic/Effects/CubeMaps/buildings/U.png</positive-z>
<negative-z>Aircraft/Generic/Effects/fgfs-sky2/5.png</negative-z> <negative-z>Aircraft/Generic/Effects/CubeMaps/buildings/D.png</negative-z>
</images> </images>
</texture> </texture>
<ambient-correction type="float"> 0.1 </ambient-correction> <ambient-correction type="float"> 0.1 </ambient-correction>

View file

@ -1,7 +1,7 @@
AC3Db AC3Db
MATERIAL "DefaultWhite" rgb 1.0000 1.0000 1.0000 amb 0.2000 0.2000 0.2000 emis 0.0000 0.0000 0.0000 spec 0.5000 0.5000 0.5000 shi 10 trans 0.0000 MATERIAL "DefaultWhite" rgb 1.0000 1.0000 1.0000 amb 0.2000 0.2000 0.2000 emis 0.0000 0.0000 0.0000 spec 0.5000 0.5000 0.5000 shi 10 trans 0.0000
MATERIAL "DefaultWhite.001" rgb 1.0000 1.0000 1.0000 amb 1.0000 1.0000 1.0000 emis 0.0000 0.0000 0.0000 spec 0.3200 0.3200 0.3200 shi 50 trans 0.0000 MATERIAL "DefaultWhite.001" rgb 1.0000 1.0000 1.0000 amb 1.0000 1.0000 1.0000 emis 0.0000 0.0000 0.0000 spec 0.3200 0.3200 0.3200 shi 50 trans 0.0000
MATERIAL "WhitePaint.003" rgb 0.9000 0.9000 0.9000 amb 0.9000 0.9000 0.9000 emis 0.0000 0.0000 0.0000 spec 0.3200 0.3200 0.3200 shi 50 trans 0.0000 MATERIAL "WhitePaint.003" rgb 0.9000 0.9000 0.9000 amb 0.9000 0.9000 0.9000 emis 0.0000 0.0000 0.0000 spec 0.2048 0.2048 0.2048 shi 50 trans 0.0000
MATERIAL "WhitePaint.000" rgb 0.9000 0.9000 0.9000 amb 0.9000 0.9000 0.9000 emis 0.0000 0.0000 0.0000 spec 0.6400 0.6400 0.6400 shi 50 trans 0.0000 MATERIAL "WhitePaint.000" rgb 0.9000 0.9000 0.9000 amb 0.9000 0.9000 0.9000 emis 0.0000 0.0000 0.0000 spec 0.6400 0.6400 0.6400 shi 50 trans 0.0000
MATERIAL "wheel_mat" rgb 1.0000 1.0000 1.0000 amb 1.0000 1.0000 1.0000 emis 0.0000 0.0000 0.0000 spec 0.0000 0.0000 0.0000 shi 50 trans 0.0000 MATERIAL "wheel_mat" rgb 1.0000 1.0000 1.0000 amb 1.0000 1.0000 1.0000 emis 0.0000 0.0000 0.0000 spec 0.0000 0.0000 0.0000 shi 50 trans 0.0000
MATERIAL "metals_plastic" rgb 0.7206 0.7206 0.7206 amb 1.0000 1.0000 1.0000 emis 0.0000 0.0000 0.0000 spec 0.3485 0.3485 0.3485 shi 67 trans 0.0000 MATERIAL "metals_plastic" rgb 0.7206 0.7206 0.7206 amb 1.0000 1.0000 1.0000 emis 0.0000 0.0000 0.0000 spec 0.3485 0.3485 0.3485 shi 67 trans 0.0000
@ -82,10 +82,10 @@ numsurf 92
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 4 refs 4
0 0.190807 0.636152 0 0.265829 0.570736
1 0.183497 0.430038 1 0.265532 0.562372
3 0.203932 0.437022 3 0.266362 0.562655
2 0.210109 0.626545 2 0.266612 0.570346
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 4 refs 4
@ -264,405 +264,405 @@ refs 4
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 4 refs 4
52 0.000072 0.801088 52 0.258089 0.577429
53 0.014352 0.304776 53 0.258668 0.557289
55 0.052871 0.353508 55 0.260232 0.559266
54 0.045748 0.751518 54 0.259943 0.575417
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 4 refs 4
54 0.045748 0.751518 54 0.259943 0.575417
55 0.052871 0.353508 55 0.260232 0.559266
57 0.084537 0.383387 57 0.261517 0.560479
56 0.084372 0.715189 56 0.261510 0.573943
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 4 refs 4
56 0.084372 0.715189 56 0.261510 0.573943
57 0.084537 0.383387 57 0.261517 0.560479
59 0.112266 0.401832 59 0.262642 0.561227
58 0.117123 0.688080 58 0.262839 0.572843
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 4 refs 4
58 0.117123 0.688080 58 0.262839 0.572843
59 0.112266 0.401832 59 0.262642 0.561227
61 0.137630 0.412533 61 0.263671 0.561661
60 0.145621 0.667442 60 0.263995 0.572006
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
3 0.203932 0.437022 3 0.266362 0.562655
7 0.242119 0.438659 7 0.267911 0.562722
5 0.223259 0.439616 5 0.267146 0.562760
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
11 0.281034 0.426826 11 0.269491 0.562241
9 0.261156 0.434443 9 0.268684 0.562550
7 0.242119 0.438659 7 0.267911 0.562722
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
15 0.326502 0.398606 15 0.271336 0.561096
13 0.302507 0.415246 13 0.270362 0.561772
11 0.281034 0.426826 11 0.269491 0.562241
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
19 0.387494 0.341164 19 0.273811 0.558765
17 0.354251 0.375001 17 0.272462 0.560138
15 0.326502 0.398606 15 0.271336 0.561096
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
23 0.481508 0.214965 23 0.277626 0.553644
21 0.428855 0.291309 21 0.275489 0.556742
19 0.387494 0.341164 19 0.273811 0.558765
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
27 0.443710 0.111700 27 0.276092 0.549454
25 0.468581 0.161437 25 0.277101 0.551472
23 0.481508 0.214965 23 0.277626 0.553644
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
31 0.363556 0.034435 31 0.272839 0.546318
29 0.408083 0.068559 29 0.274646 0.547703
27 0.443710 0.111700 27 0.276092 0.549454
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
35 0.257797 0.000069 35 0.268548 0.544924
33 0.312532 0.011200 33 0.270769 0.545375
31 0.363556 0.034435 31 0.272839 0.546318
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
39 0.149176 0.015266 39 0.264140 0.545540
37 0.202346 0.001519 37 0.266297 0.544982
35 0.257797 0.000069 35 0.268548 0.544924
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
43 0.060559 0.074910 43 0.260544 0.547961
41 0.101099 0.040289 41 0.262189 0.546556
39 0.149176 0.015266 39 0.264140 0.545540
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
47 0.009127 0.163692 47 0.258456 0.551563
45 0.029476 0.116912 45 0.259282 0.549665
43 0.060559 0.074910 43 0.260544 0.547961
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
51 0.002115 0.260349 51 0.258172 0.555486
49 0.000069 0.212443 49 0.258089 0.553542
47 0.009127 0.163692 47 0.258456 0.551563
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
55 0.052871 0.353508 55 0.260232 0.559266
53 0.014352 0.304776 53 0.258668 0.557289
51 0.002115 0.260349 51 0.258172 0.555486
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
59 0.112266 0.401832 59 0.262642 0.561227
57 0.084537 0.383387 57 0.261517 0.560479
55 0.052871 0.353508 55 0.260232 0.559266
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
63 0.161946 0.417432 63 0.264658 0.561860
61 0.137630 0.412533 61 0.263671 0.561661
59 0.112266 0.401832 59 0.262642 0.561227
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
3 0.203932 0.437022 3 0.266362 0.562655
1 0.183497 0.430038 1 0.265532 0.562372
63 0.161946 0.417432 63 0.264658 0.561860
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
3 0.203932 0.437022 3 0.266362 0.562655
11 0.281034 0.426826 11 0.269491 0.562241
7 0.242119 0.438659 7 0.267911 0.562722
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
19 0.387494 0.341164 19 0.273811 0.558765
15 0.326502 0.398606 15 0.271336 0.561096
11 0.281034 0.426826 11 0.269491 0.562241
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
27 0.443710 0.111700 27 0.276092 0.549454
23 0.481508 0.214965 23 0.277626 0.553644
19 0.387494 0.341164 19 0.273811 0.558765
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
35 0.257797 0.000069 35 0.268548 0.544924
31 0.363556 0.034435 31 0.272839 0.546318
27 0.443710 0.111700 27 0.276092 0.549454
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
43 0.060559 0.074910 43 0.260544 0.547961
39 0.149176 0.015266 39 0.264140 0.545540
35 0.257797 0.000069 35 0.268548 0.544924
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
51 0.002115 0.260349 51 0.258172 0.555486
47 0.009127 0.163692 47 0.258456 0.551563
43 0.060559 0.074910 43 0.260544 0.547961
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
59 0.112266 0.401832 59 0.262642 0.561227
55 0.052871 0.353508 55 0.260232 0.559266
51 0.002115 0.260349 51 0.258172 0.555486
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
3 0.203932 0.437022 3 0.266362 0.562655
63 0.161946 0.417432 63 0.264658 0.561860
59 0.112266 0.401832 59 0.262642 0.561227
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
3 0.203932 0.437022 3 0.266362 0.562655
19 0.387494 0.341164 19 0.273811 0.558765
11 0.281034 0.426826 11 0.269491 0.562241
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
35 0.257797 0.000069 35 0.268548 0.544924
27 0.443710 0.111700 27 0.276092 0.549454
19 0.387494 0.341164 19 0.273811 0.558765
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
51 0.002115 0.260349 51 0.258172 0.555486
43 0.060559 0.074910 43 0.260544 0.547961
35 0.257797 0.000069 35 0.268548 0.544924
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
3 0.203932 0.437022 3 0.266362 0.562655
59 0.112266 0.401832 59 0.262642 0.561227
51 0.002115 0.260349 51 0.258172 0.555486
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
3 0.203932 0.437022 3 0.266362 0.562655
35 0.257797 0.000069 35 0.268548 0.544924
19 0.387494 0.341164 19 0.273811 0.558765
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
3 0.203932 0.437022 3 0.266362 0.562655
51 0.002115 0.260349 51 0.258172 0.555486
35 0.257797 0.000069 35 0.268548 0.544924
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 4 refs 4
1 0.183497 0.430038 1 0.265532 0.562372
0 0.190807 0.636152 0 0.265829 0.570736
62 0.171051 0.651546 62 0.265027 0.571361
63 0.161946 0.417432 63 0.264658 0.561860
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 4 refs 4
60 0.145621 0.667442 60 0.263995 0.572006
61 0.137630 0.412533 61 0.263671 0.561661
63 0.161946 0.417432 63 0.264658 0.561860
62 0.171051 0.651546 62 0.265027 0.571361
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
0 0.190807 0.636152 0 0.265829 0.570736
60 0.145621 0.667442 60 0.263995 0.572006
62 0.171051 0.651546 62 0.265027 0.571361
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
56 0.084372 0.715189 56 0.261510 0.573943
58 0.117123 0.688080 58 0.262839 0.572843
60 0.145621 0.667442 60 0.263995 0.572006
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
52 0.000072 0.801088 52 0.258089 0.577429
54 0.045748 0.751518 54 0.259943 0.575417
56 0.084372 0.715189 56 0.261510 0.573943
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
48 0.032702 0.891929 48 0.259413 0.581115
50 0.011628 0.848295 50 0.258558 0.579345
52 0.000072 0.801088 52 0.258089 0.577429
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
44 0.098926 0.960991 44 0.262101 0.583918
46 0.062273 0.930048 46 0.260613 0.582662
48 0.032702 0.891929 48 0.259413 0.581115
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
40 0.186278 0.996577 40 0.265645 0.585362
42 0.140919 0.983460 42 0.263805 0.584830
44 0.098926 0.960991 44 0.262101 0.583918
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
36 0.278646 0.993590 36 0.269394 0.585241
38 0.232896 0.999931 38 0.267537 0.585498
40 0.186278 0.996577 40 0.265645 0.585362
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
32 0.359469 0.954456 32 0.272673 0.583653
34 0.320984 0.978003 34 0.271112 0.584608
36 0.278646 0.993590 36 0.269394 0.585241
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
28 0.419163 0.887371 28 0.275096 0.580930
30 0.392619 0.923853 30 0.274019 0.582411
32 0.359469 0.954456 32 0.272673 0.583653
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
24 0.448641 0.802551 24 0.276292 0.577488
26 0.438079 0.846413 26 0.275863 0.579268
28 0.419163 0.887371 28 0.275096 0.580930
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
20 0.427666 0.727584 20 0.275441 0.574446
22 0.450443 0.757471 22 0.276365 0.575659
24 0.448641 0.802551 24 0.276292 0.577488
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
16 0.357103 0.664988 16 0.272577 0.571906
18 0.388929 0.690567 18 0.273869 0.572944
20 0.427666 0.727584 20 0.275441 0.574446
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
12 0.306586 0.634703 12 0.270527 0.570677
14 0.330133 0.647102 14 0.271483 0.571180
16 0.357103 0.664988 16 0.272577 0.571906
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
8 0.265806 0.621695 8 0.268873 0.570149
10 0.285414 0.626480 10 0.269668 0.570343
12 0.306586 0.634703 12 0.270527 0.570677
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
4 0.228713 0.621492 4 0.267367 0.570141
6 0.247099 0.620021 6 0.268113 0.570081
8 0.265806 0.621695 8 0.268873 0.570149
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
0 0.190807 0.636152 0 0.265829 0.570736
2 0.210109 0.626545 2 0.266612 0.570346
4 0.228713 0.621492 4 0.267367 0.570141
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
0 0.190807 0.636152 0 0.265829 0.570736
56 0.084372 0.715189 56 0.261510 0.573943
60 0.145621 0.667442 60 0.263995 0.572006
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
48 0.032702 0.891929 48 0.259413 0.581115
52 0.000072 0.801088 52 0.258089 0.577429
56 0.084372 0.715189 56 0.261510 0.573943
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
40 0.186278 0.996577 40 0.265645 0.585362
44 0.098926 0.960991 44 0.262101 0.583918
48 0.032702 0.891929 48 0.259413 0.581115
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
32 0.359469 0.954456 32 0.272673 0.583653
36 0.278646 0.993590 36 0.269394 0.585241
40 0.186278 0.996577 40 0.265645 0.585362
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
24 0.448641 0.802551 24 0.276292 0.577488
28 0.419163 0.887371 28 0.275096 0.580930
32 0.359469 0.954456 32 0.272673 0.583653
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
16 0.357103 0.664988 16 0.272577 0.571906
20 0.427666 0.727584 20 0.275441 0.574446
24 0.448641 0.802551 24 0.276292 0.577488
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
8 0.265806 0.621695 8 0.268873 0.570149
12 0.306586 0.634703 12 0.270527 0.570677
16 0.357103 0.664988 16 0.272577 0.571906
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
0 0.190807 0.636152 0 0.265829 0.570736
4 0.228713 0.621492 4 0.267367 0.570141
8 0.265806 0.621695 8 0.268873 0.570149
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
0 0.190807 0.636152 0 0.265829 0.570736
48 0.032702 0.891929 48 0.259413 0.581115
56 0.084372 0.715189 56 0.261510 0.573943
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
32 0.359469 0.954456 32 0.272673 0.583653
40 0.186278 0.996577 40 0.265645 0.585362
48 0.032702 0.891929 48 0.259413 0.581115
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
16 0.357103 0.664988 16 0.272577 0.571906
24 0.448641 0.802551 24 0.276292 0.577488
32 0.359469 0.954456 32 0.272673 0.583653
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
0 0.190807 0.636152 0 0.265829 0.570736
8 0.265806 0.621695 8 0.268873 0.570149
16 0.357103 0.664988 16 0.272577 0.571906
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
0 0.190807 0.636152 0 0.265829 0.570736
32 0.359469 0.954456 32 0.272673 0.583653
48 0.032702 0.891929 48 0.259413 0.581115
SURF 0X10 SURF 0X10
mat 1 mat 1
refs 3 refs 3
0 0.190807 0.636152 0 0.265829 0.570736
16 0.357103 0.664988 16 0.272577 0.571906
32 0.359469 0.954456 32 0.272673 0.583653
kids 0 kids 0
OBJECT poly OBJECT poly
name "FloatReinforceLeft" name "FloatReinforceLeft"
@ -33080,7 +33080,7 @@ kids 0
OBJECT poly OBJECT poly
name "RudderCable" name "RudderCable"
loc 0.0111930 -0.6228268 -0.0098489 loc 0.0111930 -0.6228268 -0.0098489
texture "panel_parts.png" texture "floats.png"
texrep 1 1 texrep 1 1
numvert 8 numvert 8
0.1009631 -0.0261940 -0.0005142 0.1009631 -0.0261940 -0.0005142
@ -33131,7 +33131,7 @@ kids 0
OBJECT poly OBJECT poly
name "RudderCatch" name "RudderCatch"
loc 0.1110339 -0.6493086 -0.0101933 loc 0.1110339 -0.6493086 -0.0101933
texture "panel_parts.png" texture "floats.png"
texrep 1 1 texrep 1 1
numvert 11 numvert 11
0.0000937 0.0047416 0.0088832 0.0000937 0.0047416 0.0088832
@ -33855,7 +33855,7 @@ kids 0
OBJECT poly OBJECT poly
name "RudderScrews" name "RudderScrews"
loc 0.1217327 -0.6774166 -0.0111103 loc 0.1217327 -0.6774166 -0.0111103
texture "panel_parts.png" texture "floats.png"
texrep 1 1 texrep 1 1
numvert 64 numvert 64
0.0000000 0.0000000 -0.0016256 0.0000000 0.0000000 -0.0016256
@ -34287,7 +34287,7 @@ kids 0
OBJECT poly OBJECT poly
name "RudderTube" name "RudderTube"
loc -0.1339199 -0.6981727 -0.0095326 loc -0.1339199 -0.6981727 -0.0095326
texture "panel_parts.png" texture "floats.png"
texrep 1 1 texrep 1 1
numvert 256 numvert 256
-0.0001016 0.0148346 -0.0055430 -0.0001016 0.0148346 -0.0055430

View file

@ -14,7 +14,7 @@
</offsets> </offsets>
<effect> <effect>
<inherits-from>Aircraft/c172p/Models/Effects/exterior/bumpspec</inherits-from> <inherits-from>Aircraft/c172p/Models/Effects/exterior/bumpspec-pontoon</inherits-from>
<object-name>FloatStruts</object-name> <object-name>FloatStruts</object-name>
<object-name>LRtarm</object-name> <object-name>LRtarm</object-name>
<object-name>RRtarm</object-name> <object-name>RRtarm</object-name>

File diff suppressed because it is too large Load diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

View file

@ -4,7 +4,7 @@
<path>suitcase1.ac</path> <path>suitcase1.ac</path>
<effect> <effect>
<inherits-from>../../../../Effects/interior/c172p-interior-radiance</inherits-from> <inherits-from>../../Effects/interior/c172p-interior</inherits-from>
<object-name>suitcase1</object-name> <object-name>suitcase1</object-name>
</effect> </effect>

View file

@ -4,7 +4,7 @@
<path>suitcase2.ac</path> <path>suitcase2.ac</path>
<effect> <effect>
<inherits-from>../../../../Effects/interior/c172p-interior-radiance</inherits-from> <inherits-from>../../Effects/interior/c172p-interior</inherits-from>
<object-name>suitcase2</object-name> <object-name>suitcase2</object-name>
</effect> </effect>

View file

@ -4,7 +4,7 @@
<path>elt.ac</path> <path>elt.ac</path>
<effect> <effect>
<inherits-from>../../../../Effects/interior/c172p-interior-radiance</inherits-from> <inherits-from>../../Effects/interior/c172p-interior</inherits-from>
<object-name>elt</object-name> <object-name>elt</object-name>
</effect> </effect>

View file

@ -4,7 +4,7 @@
<path>fe.ac</path> <path>fe.ac</path>
<effect> <effect>
<inherits-from>../../../../Effects/interior/c172p-interior-radiance</inherits-from> <inherits-from>../../Effects/interior/c172p-interior</inherits-from>
<object-name>extinguisher</object-name> <object-name>extinguisher</object-name>
</effect> </effect>

View file

@ -4,7 +4,7 @@
<path>fe2.ac</path> <path>fe2.ac</path>
<effect> <effect>
<inherits-from>../../../../Effects/interior/c172p-interior-radiance</inherits-from> <inherits-from>../../Effects/interior/c172p-interior</inherits-from>
<object-name>extinguisher2</object-name> <object-name>extinguisher2</object-name>
</effect> </effect>

View file

@ -7,7 +7,6 @@
<dimming>instrumentation/adf[0]/dimming-norm</dimming> <dimming>instrumentation/adf[0]/dimming-norm</dimming>
<dial-1-khz>instrumentation/adf[0]/frequencies/dial-1-khz</dial-1-khz> <dial-1-khz>instrumentation/adf[0]/frequencies/dial-1-khz</dial-1-khz>
<dial-100-khz>instrumentation/adf[0]/frequencies/dial-100-khz</dial-100-khz> <dial-100-khz>instrumentation/adf[0]/frequencies/dial-100-khz</dial-100-khz>
</params> </params>
<path>kr87.ac</path> <path>kr87.ac</path>
@ -246,7 +245,7 @@
<object-name>indicator.Stby.1000</object-name> <object-name>indicator.Stby.1000</object-name>
<condition> <condition>
<greater-than-equals> <greater-than-equals>
<property>/instrumentation/adf[0]/frequencies/standby-khz</property> <property alias="../../../../params/right-display"/>
<value type="int">1000</value> <value type="int">1000</value>
</greater-than-equals> </greater-than-equals>
</condition> </condition>
@ -255,7 +254,7 @@
<animation> <animation>
<type>textranslate</type> <type>textranslate</type>
<object-name>indicator.Stby.1000</object-name> <object-name>indicator.Stby.1000</object-name>
<property>/instrumentation/adf[0]/frequencies/standby-khz</property> <property alias="../../params/right-display"/>
<step>1000</step> <step>1000</step>
<factor>0.0001</factor> <factor>0.0001</factor>
<axis> <axis>
@ -268,7 +267,7 @@
<animation> <animation>
<type>textranslate</type> <type>textranslate</type>
<object-name>indicator.Stby.100</object-name> <object-name>indicator.Stby.100</object-name>
<property>/instrumentation/adf[0]/frequencies/standby-khz</property> <property alias="../../params/right-display"/>
<step>100</step> <step>100</step>
<factor>0.001</factor> <factor>0.001</factor>
<axis> <axis>
@ -281,7 +280,7 @@
<animation> <animation>
<type>textranslate</type> <type>textranslate</type>
<object-name>indicator.Stby.10</object-name> <object-name>indicator.Stby.10</object-name>
<property>/instrumentation/adf[0]/frequencies/standby-khz</property> <property alias="../../params/right-display"/>
<step>10</step> <step>10</step>
<factor>0.01</factor> <factor>0.01</factor>
<axis> <axis>
@ -294,7 +293,7 @@
<animation> <animation>
<type>textranslate</type> <type>textranslate</type>
<object-name>indicator.Stby.1</object-name> <object-name>indicator.Stby.1</object-name>
<property>/instrumentation/adf[0]/frequencies/standby-khz</property> <property alias="../../params/right-display"/>
<step>1</step> <step>1</step>
<factor>0.1</factor> <factor>0.1</factor>
<axis> <axis>

File diff suppressed because it is too large Load diff

View file

@ -69,6 +69,11 @@
<command>property-toggle</command> <command>property-toggle</command>
<property>sim/model/hide-yoke</property> <property>sim/model/hide-yoke</property>
</binding> </binding>
<binding>
<command>property-assign</command>
<property>sim/model/c172p/cockpit/control-lock-placed</property>
<value>false</value>
</binding>
</action> </action>
<hovered> <hovered>
<binding> <binding>

File diff suppressed because it is too large Load diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

View file

@ -0,0 +1,80 @@
<?xml version="1.0"?>
<PropertyList>
<path>control-lock.ac</path>
<nopreview/>
<effect>
<inherits-from>../../../../Effects/interior/c172p-interior-radiance</inherits-from>
<object-name>ControlLock-pocket</object-name>
<object-name>ControlLock-yoke</object-name>
</effect>
<animation>
<type>select</type>
<object-name>ControlLock-yoke</object-name>
<condition>
<property>sim/model/c172p/cockpit/control-lock-visible</property>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>ControlLock-pocket</object-name>
<condition>
<not>
<property>sim/model/c172p/cockpit/control-lock-visible</property>
</not>
<property>sim/model/c172p/securing/allow-securing-aircraft</property>
</condition>
</animation>
<animation>
<type>pick</type>
<object-name>ControlLock-yoke</object-name>
<visible>true</visible>
<action>
<button>0</button>
<repeatable>false</repeatable>
<binding>
<command>property-assign</command>
<property>sim/model/c172p/cockpit/control-lock-placed</property>
<value>false</value>
</binding>
</action>
<hovered>
<binding>
<command>set-tooltip</command>
<tooltip-id>remove-control-lock</tooltip-id>
<label>Remove control lock</label>
</binding>
</hovered>
</animation>
<animation>
<type>pick</type>
<object-name>ControlLock-pocket</object-name>
<visible>true</visible>
<action>
<button>0</button>
<repeatable>false</repeatable>
<binding>
<condition>
<property>sim/model/c172p/securing/allow-securing-aircraft</property>
</condition>
<command>property-assign</command>
<property>sim/model/c172p/cockpit/control-lock-placed</property>
<value>true</value>
</binding>
</action>
<hovered>
<binding>
<command>set-tooltip</command>
<tooltip-id>place-control-lock</tooltip-id>
<label>Place control lock</label>
</binding>
</hovered>
</animation>
</PropertyList>

View file

@ -1019,6 +1019,15 @@
<z-m>-0.130</z-m> <z-m>-0.130</z-m>
</offsets> </offsets>
</model> </model>
<model>
<name>ControlLock</name>
<path>Interior/control-lock/control-lock.xml</path>
<offsets>
<x-m>0</x-m>
<y-m>0</y-m>
<z-m>0</z-m>
</offsets>
</model>
<model> <model>
<name>FlapSwitch</name> <name>FlapSwitch</name>
<path>Interior/Panel/Flaps/flaps.xml</path> <path>Interior/Panel/Flaps/flaps.xml</path>
@ -2307,8 +2316,12 @@
<value>0</value> <value>0</value>
</equals> </equals>
</condition> </condition>
<command>dialog-show</command> <command>nasal</command>
<dialog-name>c172p-baggage-weight-dialog</dialog-name> <script>
settimer(func(){
fgcommand("dialog-show", {"dialog-name": "c172p-baggage-weight-dialog"});
}, 2.0);
</script>
</binding> </binding>
</action> </action>
<hovered> <hovered>
@ -6711,6 +6724,10 @@
<property>/sim/current-view/name</property> <property>/sim/current-view/name</property>
<value>Cockpit View</value> <value>Cockpit View</value>
</not-equals> </not-equals>
<not-equals>
<property>/sim/current-view/name</property>
<value>IFR Training View</value>
</not-equals>
<not> <not>
<property>/sim/walker/outside</property> <property>/sim/walker/outside</property>
</not> </not>
@ -8329,4 +8346,118 @@
</offsets> </offsets>
</model> </model>
<!-- Preflight surface checks -->
<!-- elevator surface check -->
<animation>
<type>pick</type>
<object-name>elevatorleft</object-name>
<object-name>elevatorright</object-name>
<action>
<button>0</button>
<repeatable>false</repeatable>
<binding>
<condition>
<and>
<not>
<property>/engines/active-engine/running</property>
</not>
<less-than>
<property>velocities/groundspeed-kt</property>
<value>1.0</value>
</less-than>
<not>
<property>/sim/current-view/internal</property>
</not>
</and>
</condition>
<command>nasal</command>
<script>c172p.control_surface_check_elevator();</script>
</binding>
</action>
</animation>
<!-- left aileron surface check -->
<animation>
<type>pick</type>
<object-name>leftaileron</object-name>
<action>
<button>0</button>
<repeatable>false</repeatable>
<binding>
<condition>
<and>
<not>
<property>/engines/active-engine/running</property>
</not>
<less-than>
<property>velocities/groundspeed-kt</property>
<value>1.0</value>
</less-than>
<not>
<property>/sim/current-view/internal</property>
</not>
</and>
</condition>
<command>nasal</command>
<script>c172p.control_surface_check_left_aileron();</script>
</binding>
</action>
</animation>
<!-- right aileron surface check -->
<animation>
<type>pick</type>
<object-name>rightaileron</object-name>
<action>
<button>0</button>
<repeatable>false</repeatable>
<binding>
<condition>
<and>
<not>
<property>/engines/active-engine/running</property>
</not>
<less-than>
<property>velocities/groundspeed-kt</property>
<value>1.0</value>
</less-than>
<not>
<property>/sim/current-view/internal</property>
</not>
</and>
</condition>
<command>nasal</command>
<script>c172p.control_surface_check_right_aileron();</script>
</binding>
</action>
</animation>
<!-- rudder surface check -->
<animation>
<type>pick</type>
<object-name>rudder</object-name>
<action>
<button>0</button>
<repeatable>false</repeatable>
<binding>
<condition>
<and>
<not>
<property>/engines/active-engine/running</property>
</not>
<less-than>
<property>velocities/groundspeed-kt</property>
<value>1.0</value>
</less-than>
<not>
<property>/sim/current-view/internal</property>
</not>
</and>
</condition>
<command>nasal</command>
<script>c172p.control_surface_check_rudder();</script>
</binding>
</action>
</animation>
</PropertyList> </PropertyList>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1 MiB

After

Width:  |  Height:  |  Size: 1 MiB

View file

@ -1,6 +1,31 @@
List of features and bug fixes List of features and bug fixes
============================== ==============================
Version 2017.1
--------------
* Control surfaces can be checked for free movement during preflight inspection
* The opening of the baggage dialog was delayed as to wait for the
animation of the baggage door
* Cleaning up the Aircraft Options dialog
* Improvements to the Ground Equipment dialog
* Callsigns of new users are automatically randomized to avoid them blocking
other new users on multiplayer
* New About This Aircraft dialog, with information about the project as
well as relevant links
* The pilot's yoke can now be locked with a control lock (lock can be found
in the bag on the left of the pilot's seat)
* Fix bug with ADF timer in the radio stack
* Added view for IFR training
* Improvements to the carburetor system (icing, carb heat)
* Improvements to the engine coughs (due to fuel contamination or carb ice)
* Lowered limit of critical oil level according to Lycoming's manual
* Critical oil will not cause the engine to cough, it will simply quit when
oil reaches the critical value of 2 quarts
* Improved fuel contamination system (fixed some bugs)
* More realistic bush wheels and tires
* Fuselage shows fresnel effect
Version 2016.4 Version 2016.4
-------------- --------------

View file

@ -42,6 +42,7 @@ var autostart = func (msg=1) {
setprop("/instrumentation/heading-indicator/offset-deg", -magnetic_variation); setprop("/instrumentation/heading-indicator/offset-deg", -magnetic_variation);
# Pre-flight inspection # Pre-flight inspection
setprop("/sim/model/c172p/cockpit/control-lock-placed", 0);
setprop("/sim/model/c172p/brake-parking", 0); setprop("/sim/model/c172p/brake-parking", 0);
setprop("/sim/model/c172p/securing/chock", 0); setprop("/sim/model/c172p/securing/chock", 0);
setprop("/sim/model/c172p/securing/pitot-cover-visible", 0); setprop("/sim/model/c172p/securing/pitot-cover-visible", 0);
@ -52,12 +53,14 @@ var autostart = func (msg=1) {
# Removing any contamination from water # Removing any contamination from water
setprop("/consumables/fuel/tank[0]/water-contamination", 0.0); setprop("/consumables/fuel/tank[0]/water-contamination", 0.0);
setprop("/consumables/fuel/tank[1]/water-contamination", 0.0); setprop("/consumables/fuel/tank[1]/water-contamination", 0.0);
setprop("/consumables/fuel/tank[0]/sample-water-contamination", 0.0);
setprop("/consumables/fuel/tank[1]/sample-water-contamination", 0.0);
# Setting max oil level # Setting max oil level
var oil_enabled = getprop("/engines/active-engine/oil_consumption_allowed"); var oil_enabled = getprop("/engines/active-engine/oil_consumption_allowed");
var oil_level = getprop("/engines/active-engine/oil-level"); var oil_level = getprop("/engines/active-engine/oil-level");
if (oil_enabled and oil_level < 6.0) { if (oil_enabled and oil_level < 5.0) {
if (getprop("/controls/engines/active-engine") == 0) { if (getprop("/controls/engines/active-engine") == 0) {
setprop("/engines/active-engine/oil-level", 7.0); setprop("/engines/active-engine/oil-level", 7.0);
} }
@ -168,8 +171,10 @@ var take_fuel_sample = func(index) {
# Remove a bit of water if contaminated # Remove a bit of water if contaminated
if (water > 0.0) { if (water > 0.0) {
water = std.max(0.0, water - 0.2); var sample_water = std.min(0.2, water);
water = water - sample_water;
setprop("/consumables/fuel/tank", index, "water-contamination", water); setprop("/consumables/fuel/tank", index, "water-contamination", water);
setprop("/consumables/fuel/tank", index, "sample-water-contamination", sample_water);
}; };
}; };
@ -179,17 +184,57 @@ var take_fuel_sample = func(index) {
var return_fuel_sample = func(index) { var return_fuel_sample = func(index) {
var fuel = getprop("/consumables/fuel/tank", index, "level-gal_us"); var fuel = getprop("/consumables/fuel/tank", index, "level-gal_us");
var water = getprop("/consumables/fuel/tank", index, "water-contamination"); var water = getprop("/consumables/fuel/tank", index, "water-contamination");
var sample_water = getprop("/consumables/fuel/tank", index, "sample-water-contamination");
# Add back the 50 ml of fuel # Add back the 50 ml of fuel
setprop("/consumables/fuel/tank", index, "level-gal_us", fuel + 0.0132086); setprop("/consumables/fuel/tank", index, "level-gal_us", fuel + 0.0132086);
# Add back the (contaminated) water # Add back the (contaminated) water
if (water > 0.0) { if (sample_water > 0.0) {
water = std.min(water + 0.2, 1.0); water = water + sample_water;
setprop("/consumables/fuel/tank", index, "water-contamination", water); setprop("/consumables/fuel/tank", index, "water-contamination", water);
setprop("/consumables/fuel/tank", index, "sample-water-contamination", 0.0);
}; };
}; };
##########################################
# Preflight control surface check: left aileron
##########################################
var control_surface_check_left_aileron = func {
var auto_coordination = getprop("/controls/flight/auto-coordination");
setprop("/controls/flight/auto-coordination", 0);
interpolate("/controls/flight/aileron", 1.0, 0.5, -1.0, 1.0, 0.0, 0.5);
settimer(func(){
setprop("/controls/flight/auto-coordination", auto_coordination);
}, 2.0);
};
##########################################
# Preflight control surface check: right aileron
##########################################
var control_surface_check_right_aileron = func {
var auto_coordination = getprop("/controls/flight/auto-coordination");
setprop("/controls/flight/auto-coordination", 0);
interpolate("/controls/flight/aileron", -1.0, 0.5, 1.0, 1.0, 0.0, 0.5);
settimer(func(){
setprop("/controls/flight/auto-coordination", auto_coordination);
}, 2.0);
};
##########################################
# Preflight control surface check: elevator
##########################################
var control_surface_check_elevator = func {
interpolate("/controls/flight/elevator", 1.0, 0.8, -1.0, 1.6, 0.0, 0.8);
};
##########################################
# Preflight control surface check: rudder
##########################################
var control_surface_check_rudder = func {
interpolate("/controls/flight/rudder", -1.0, 0.8, 1.0, 1.6, 0.0, 0.8);
};
########################################## ##########################################
# Switches Save State # Switches Save State
########################################## ##########################################
@ -368,7 +413,7 @@ var StaticModel = {
new: func (name, file) { new: func (name, file) {
var m = { var m = {
parents: [StaticModel], parents: [StaticModel],
index: nil, model: nil,
model_file: file model_file: file
}; };
@ -393,13 +438,13 @@ var StaticModel = {
} }
} }
var position = geo.aircraft_position().set_alt(getprop("/position/ground-elev-m")); var position = geo.aircraft_position().set_alt(getprop("/position/ground-elev-m"));
geo.put_model(me.model_file, position, getprop("/orientation/heading-deg")); me.model = geo.put_model(me.model_file, position, getprop("/orientation/heading-deg"));
me.index = i;
}, },
remove: func { remove: func {
if (me.index != nil) { if (me.model != nil) {
props.globals.getNode("/models", 1).removeChild("model", me.index); me.model.remove();
me.model = nil;
} }
} }
}; };
@ -523,6 +568,16 @@ var dialog_battery_reload = func {
} }
setlistener("/sim/signals/fdm-initialized", func { setlistener("/sim/signals/fdm-initialized", func {
# Randomize callsign of new users to avoid them blocking
# other new users on multiplayer
if (getprop("/sim/multiplay/callsign") == "callsign") {
var digit = func {
return math.round(rand()*9);
};
var new_callsign = "FG-" ~ digit() ~ digit() ~ digit() ~ digit();
setprop("/sim/multiplay/callsign", new_callsign);
};
# Use Nasal to make some properties persistent. <aircraft-data> does # Use Nasal to make some properties persistent. <aircraft-data> does
# not work reliably. # not work reliably.
aircraft.data.add("/sim/model/c172p/immat-on-panel"); aircraft.data.add("/sim/model/c172p/immat-on-panel");

View file

@ -118,15 +118,15 @@ var oil_consumption = maketimer(1.0, func {
var low_oil_pressure_factor = 1.0; var low_oil_pressure_factor = 1.0;
var low_oil_temperature_factor = 1.0; var low_oil_temperature_factor = 1.0;
# If oil gets low (< 5.0), pressure should drop and temperature should rise # If oil gets low (< 3.0), pressure should drop and temperature should rise
var oil_level_limited = std.min(oil_level, 5.0); var oil_level_limited = std.min(oil_level, 3.0);
# Should give 1.0 for oil_level = 5 and 0.1 for oil_level 4.92, # Should give 1.0 for oil_level = 3 and 0.1 for oil_level 1.97,
# which is the min before the engine stops # which is the min before the engine stops
low_oil_pressure_factor = 11.25 * oil_level_limited - 55.25; low_oil_pressure_factor = 0.873786408 * oil_level_limited - 1.621359224;
# Should give 1.0 for oil_level = 5 and 1.5 for oil_level 4.92 # Should give 1.0 for oil_level = 3 and 1.5 for oil_level 1.97
low_oil_temperature_factor = -6.25 * oil_level_limited + 32.25; low_oil_temperature_factor = -0.485436893 * oil_level_limited + 2.456310679;
setprop("/engines/active-engine/low-oil-pressure-factor", low_oil_pressure_factor); setprop("/engines/active-engine/low-oil-pressure-factor", low_oil_pressure_factor);
setprop("/engines/active-engine/low-oil-temperature-factor", low_oil_temperature_factor); setprop("/engines/active-engine/low-oil-temperature-factor", low_oil_temperature_factor);
@ -149,28 +149,37 @@ var carb_icing_function = maketimer(1.0, func {
var dewpointF = dewpointC * 9.0 / 5.0 + 32; var dewpointF = dewpointC * 9.0 / 5.0 + 32;
var airtempF = getprop("/environment/temperature-degf"); var airtempF = getprop("/environment/temperature-degf");
var oil_temp = getprop("/engines/active-engine/oil-temperature-degf"); var oil_temp = getprop("/engines/active-engine/oil-temperature-degf");
var egt_degf = getprop("/engines/active-engine/egt-degf");
var engine_running = getprop("/engines/active-engine/running");
var carb_ice = getprop("/engines/active-engine/carb_ice");
# the formula below attempts to modle the graph found in the POH, using RPM, airtempF and dewpointF as variables # the formula below attempts to model the graph found in the POH which relates air temperature, dew point and RPM to icing
# conditions. The outputs of carb_icing_formula ranges from 0.65 to -0.35 (positive means ice is accumulating, negative
# means that ice is melting)
var factorX = 13.2 - 3.2 * math.atan2 ( ((rpm - 2000.0) * 0.008), 1); var factorX = 13.2 - 3.2 * math.atan2 ( ((rpm - 2000.0) * 0.008), 1);
var factorY = 7.0 - 2.0 * math.atan2 ( ((rpm - 2000.0) * 0.008), 1); var factorY = 7.0 - 2.0 * math.atan2 ( ((rpm - 2000.0) * 0.008), 1);
var carb_icing_formula = 0.01 * (math.exp( math.pow((0.6 * airtempF + 0.3 * dewpointF - 42.0),2) / (-2 * math.pow(factorX,2))) * math.exp( math.pow((0.3 * airtempF - 0.6 * dewpointF + 14.0),2) / (-2 * math.pow(factorY,2))) - 0.2); var carb_icing_formula = (math.exp( math.pow((0.6 * airtempF + 0.3 * dewpointF - 42.0),2) / (-2 * math.pow(factorX,2))) * math.exp( math.pow((0.3 * airtempF - 0.6 * dewpointF + 14.0),2) / (-2 * math.pow(factorY,2))) - 0.35) * engine_running;
# if carb heat on, the rate decreses by a certain amount # the efficacy of carb heat depends on the EGT. With a typical EGT of ~1500, the carb_heat_rate will be around -1.5.
if (getprop("/engines/active-engine/running") and getprop("/controls/engines/current-engine/carb-heat")) # This value is an educated guess of the RL effect, and should melt ice regardless of the icing rate
var carb_heat_rate = -0.01; if (getprop("/controls/engines/current-engine/carb-heat"))
var carb_heat_rate = -0.001 * egt_degf;
else else
var carb_heat_rate = 0.0; var carb_heat_rate = 0.0;
# carb icing rate is multiplied by an oil temp factor so a cold engine doens't accumulate ice # a warm engine will accumulate less ice than a cold one, which is what oil temp factor is used for. oil_temp_factor
var oil_temp_factor = (oil_temp - 120) / 100; # ranges from 0 to aprox -0.2 (at 250 oF). These values are educated guesses of the RL effect
oil_temp_factor = std.max(0.0, std.min(oil_temp_factor, 1.0)); var oil_temp_factor = oil_temp / -1250;
var carb_icing_rate = oil_temp_factor * (carb_icing_formula + carb_heat_rate);
var carb_ice = getprop("/engines/active-engine/carb_ice"); # the final rate of icing or melting is then calculated by all these effects together
carb_ice = carb_ice + carb_icing_rate; var carb_icing_rate = carb_icing_formula + carb_heat_rate + oil_temp_factor;
# since the carb_icing_rate gives an arbitrary final value, the rate is then scaled down by 0.00001 to ensure ice
# accumulates as slowly as expected
carb_ice = carb_ice + carb_icing_rate * 0.00001;
carb_ice = std.max(0.0, std.min(carb_ice, 1.0)); carb_ice = std.max(0.0, std.min(carb_ice, 1.0));
# this property is used to lower the RPM of the engine as ice accumulates # this property is used to lower the RPM of the engine as ice accumulates (more ice in the carburator == less power)
var vol_eff_factor = 1.0 - 2.218 * carb_ice; var vol_eff_factor = 1.0 - 2.218 * carb_ice;
setprop("/engines/active-engine/carb_ice", carb_ice); setprop("/engines/active-engine/carb_ice", carb_ice);
@ -189,21 +198,45 @@ var carb_icing_function = maketimer(1.0, func {
# ========== engine coughing ====================== # ========== engine coughing ======================
var engine_coughing = maketimer(3.0, func { var engine_coughing = func(){
var coughing = getprop("/engines/active-engine/coughing"); var coughing = getprop("/engines/active-engine/coughing");
var running = getprop("/engines/active-engine/running"); var running = getprop("/engines/active-engine/running");
if (coughing and running) {
var delay = 10.0 * rand();
settimer(func {
setprop("/engines/active-engine/kill-engine", 1);
# Bring the engine back to life after 0.25 seconds if (coughing and running) {
# the code below kills the engine and then brings it back to life after 0.25 seconds, simulating a cough
setprop("/engines/active-engine/kill-engine", 1);
settimer(func { settimer(func {
setprop("/engines/active-engine/kill-engine", 0); setprop("/engines/active-engine/kill-engine", 0);
}, 0.25); }, 0.25);
}, delay);
}; };
});
# basic value for the delay (interval between consecutive coughs), in case no fuel contamination nor carb ice are present
var delay = 2;
# if coughing due to fuel contamination, then cough interval depends on quantity of water
var water_contamination0 = getprop("/consumables/fuel/tank[0]/water-contamination");
var water_contamination1 = getprop("/consumables/fuel/tank[1]/water-contamination");
var total_water_contamination = std.min((water_contamination0 + water_contamination1), 0.4);
if (total_water_contamination > 0) {
# if contamination is near 0, then interval is between 17 and 20 seconds, but if contamination is near the
# engine stopping value of 0.4, then interval falls to around 0.5 and 3.5 seconds
delay = 3.0 * rand() + 17 - 41.25 * total_water_contamination;
};
# if coughing due to carb ice melting, then cough depends on quantity of ice in the carburettor
var carb_ice = getprop("/engines/active-engine/carb_ice");
if (carb_ice > 0) {
# if carb_ice is near 0, then interval is between 17 and 20 seconds, but if carb_ice is near the
# engine stopping value of 0.3, then interval falls to around 0.5 and 3.5 seconds
delay = 3.0 * rand() + 17 - 41.25 * carb_ice;
};
coughing_timer.restart(delay);
}
var coughing_timer = maketimer(1, engine_coughing);
# ========== Main loop ====================== # ========== Main loop ======================
@ -324,5 +357,6 @@ setlistener("/sim/signals/fdm-initialized", func {
engine_timer.start(); engine_timer.start();
oil_consumption.start(); oil_consumption.start();
carb_icing_function.start(); carb_icing_function.start();
engine_coughing.start(); coughing_timer.singleShot = 1;
coughing_timer.start();
}); });

View file

@ -0,0 +1,167 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2016 onox
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<PropertyList>
<filter>
<name>Control Lock Aileron</name>
<type>noise-spike</type>
<max-rate-of-change>1.0</max-rate-of-change>
<enable>
<property>/controls/flight/freeze-yoke</property>
</enable>
<input>
<property>/controls/flight/aileron-cmd</property>
</input>
<output>
<property>/controls/flight/aileron</property>
</output>
</filter>
<filter>
<name>Control Lock Elevator</name>
<type>noise-spike</type>
<max-rate-of-change>1.0</max-rate-of-change>
<enable>
<property>/controls/flight/freeze-yoke</property>
</enable>
<input>
<property>/controls/flight/elevator-cmd</property>
</input>
<output>
<property>/controls/flight/elevator</property>
</output>
</filter>
<state-machine>
<branch>/aircraft/fsm/control-lock</branch>
<!-- States -->
<state>
<name>unlocked</name>
<enter>
<command>property-assign</command>
<property>/sim/model/c172p/cockpit/control-lock-visible</property>
<value type="bool">false</value>
</enter>
<enter>
<command>property-assign</command>
<property>/controls/flight/freeze-yoke</property>
<value type="bool">false</value>
</enter>
</state>
<state>
<name>prepare-reset-yoke</name>
<enter>
<command>property-assign</command>
<property>/controls/flight/aileron-cmd</property>
<property>/controls/flight/aileron</property>
</enter>
<enter>
<command>property-assign</command>
<property>/controls/flight/elevator-cmd</property>
<property>/controls/flight/elevator</property>
</enter>
<enter>
<command>property-assign</command>
<property>/controls/flight/freeze-yoke</property>
<value type="bool">true</value>
</enter>
</state>
<state>
<name>reset-yoke</name>
<enter>
<command>property-assign</command>
<property>/controls/flight/aileron-cmd</property>
<value type="double">0.0</value>
</enter>
<enter>
<command>property-assign</command>
<property>/controls/flight/elevator-cmd</property>
<value type="double">0.0</value>
</enter>
</state>
<state>
<name>locked</name>
<enter>
<command>property-assign</command>
<property>/sim/model/c172p/cockpit/control-lock-visible</property>
<value type="bool">true</value>
</enter>
</state>
<!-- Transitions -->
<transition>
<name>init</name>
<source>unlocked</source>
<target>prepare-reset-yoke</target>
<condition>
<property>sim/model/c172p/cockpit/control-lock-placed</property>
</condition>
</transition>
<transition>
<name>prepare-center</name>
<source>prepare-reset-yoke</source>
<target>reset-yoke</target>
<condition>
<true/>
</condition>
</transition>
<transition>
<name>move-yoke-to-center</name>
<source>reset-yoke</source>
<target>locked</target>
<condition>
<and>
<equals>
<property>sim/model/c172p/cockpit/yoke-aileron</property>
<value>0.0</value>
</equals>
<equals>
<property>sim/model/c172p/cockpit/yoke-elevator</property>
<value>0.0</value>
</equals>
</and>
</condition>
</transition>
<transition>
<name>unlock-controls</name>
<source>locked</source>
<source>prepare-reset-yoke</source>
<source>reset-yoke</source>
<target>unlocked</target>
<condition>
<not>
<property>sim/model/c172p/cockpit/control-lock-placed</property>
</not>
</condition>
</transition>
</state-machine>
</PropertyList>

View file

@ -198,6 +198,32 @@
</output> </output>
</filter> </filter>
<filter>
<name>Engine EGT Temp</name>
<type>gain</type>
<input>
<condition>
<equals>
<property>/controls/engines/active-engine</property>
<value>1</value>
</equals>
</condition>
<property>/engines/engine[1]/egt-degf</property>
</input>
<input>
<condition>
<equals>
<property>/controls/engines/active-engine</property>
<value>0</value>
</equals>
</condition>
<property>/engines/engine[0]/egt-degf</property>
</input>
<output>
<property>/engines/active-engine/egt-degf</property>
</output>
</filter>
<filter> <filter>
<name>Engine EGT Norm</name> <name>Engine EGT Norm</name>
<type>gain</type> <type>gain</type>
@ -487,7 +513,7 @@
<property>/engines/active-engine/crashed</property> <property>/engines/active-engine/crashed</property>
<property>/engines/active-engine/kill-engine</property> <property>/engines/active-engine/kill-engine</property>
<!-- High level of fuel contamination or low level of oil kills engine --> <!-- engine is killed if fuel contamination is higher than 0.2 on a selected tank -->
<and> <and>
<property>consumables/fuel/tank[0]/selected</property> <property>consumables/fuel/tank[0]/selected</property>
<greater-than> <greater-than>
@ -502,10 +528,15 @@
<value>0.2</value> <value>0.2</value>
</greater-than> </greater-than>
</and> </and>
<!-- engine is also killed if oil level is critical. Minimum oil level in the sump for safe operation (according
to Lycommings manual, page 3-10) is 2 quarts, which explains the value of 1.97 below-->
<less-than> <less-than>
<property>/engines/active-engine/oil-level</property> <property>/engines/active-engine/oil-level</property>
<value>4.92</value> <value>1.97</value>
</less-than> </less-than>
<!-- engine is also killed if there is too much ice in the carburettor. Limit value is arbitrarily set to 0.32 -->
<greater-than-equals> <greater-than-equals>
<property>/engines/active-engine/carb_ice</property> <property>/engines/active-engine/carb_ice</property>
<value>0.32</value> <value>0.32</value>
@ -522,6 +553,8 @@
<name>Engine Coughing</name> <name>Engine Coughing</name>
<input> <input>
<or> <or>
<!-- engine coughs if fuel contamination is present on a selected tank, but lower than the critical value of 0.2 -->
<and> <and>
<or> <or>
<and> <and>
@ -558,25 +591,23 @@
</and> </and>
</not> </not>
</and> </and>
<!-- engine also coughs if ice is present in the carburettor and is melting at a noticiable rate -->
<and> <and>
<greater-than-equals> <greater-than>
<property>/engines/active-engine/oil-level</property>
<value>4.920</value>
</greater-than-equals>
<less-than>
<property>/engines/active-engine/oil-level</property>
<value>4.925</value>
</less-than>
</and>
<and>
<greater-than-equals>
<property>/engines/active-engine/carb_ice</property> <property>/engines/active-engine/carb_ice</property>
<value>0.3</value> <value>0.0</value>
</greater-than-equals> </greater-than>
<less-than> <less-than>
<property>/engines/active-engine/carb_ice</property> <property>/engines/active-engine/carb_icing_rate</property>
<value>0.32</value> <value>-0.5</value>
</less-than> </less-than>
<!-- leaning the mixture while the carb ice is melting helps with the cough in RL, which is why
the egt-norm property is used here -->
<greater-than>
<property>/engines/active-engine/egt-norm</property>
<value>0.5</value>
</greater-than>
</and> </and>
</or> </or>
</input> </input>
@ -611,4 +642,50 @@
</output> </output>
</filter> </filter>
<!-- ============================================================== -->
<!-- Complex engine procedures -->
<!-- ============================================================== -->
<logic>
<name>Complex engine procedures</name>
<input>
<property>/engines/active-engine/complex-engine-procedures</property>
</input>
<output>
<name>oil</name>
<property>/engines/active-engine/oil_consumption_allowed</property>
</output>
<output>
<name>carb-icing</name>
<property>/engines/active-engine/carb_icing_allowed</property>
</output>
<output>
<name>fuel-contamination</name>
<property>/consumables/fuel/contamination_allowed</property>
</output>
</logic>
<!-- ============================================================== -->
<!-- Save state of aircraft between sessions -->
<!-- ============================================================== -->
<logic>
<name>Save state of aircraft between sessions</name>
<input>
<property>/sim/model/c172p/save-state</property>
</input>
<output>
<name>fuel</name>
<property>/consumables/fuel/save-fuel-state</property>
</output>
<output>
<name>battery</name>
<property>/systems/electrical/save-battery-charge</property>
</output>
<output>
<name>instruments</name>
<property>/instrumentation/save-switches-state</property>
</output>
</logic>
</PropertyList> </PropertyList>

View file

@ -175,16 +175,25 @@
</output> </output>
</filter> </filter>
<logic>
<name>Comm 0 Serviceable</name>
<input>
<greater-than>
<property>systems/electrical/outputs/comm[0]</property>
<value>6.0</value>
</greater-than>
</input>
<output>
<property>instrumentation/comm[0]/serviceable</property>
</output>
</logic>
<logic> <logic>
<name>Comm 0 On/Off</name> <name>Comm 0 On/Off</name>
<input> <input>
<and> <and>
<property>instrumentation/comm[0]/serviceable</property> <property>instrumentation/comm[0]/serviceable</property>
<property>instrumentation/comm[0]/power-btn</property> <property>instrumentation/comm[0]/power-btn</property>
<greater-than>
<property>systems/electrical/outputs/comm[0]</property>
<value>6.0</value>
</greater-than>
</and> </and>
</input> </input>
<output> <output>
@ -209,16 +218,25 @@
</output> </output>
</filter> </filter>
<logic>
<name>Comm 1 Serviceable</name>
<input>
<greater-than>
<property>systems/electrical/outputs/comm[1]</property>
<value>6.0</value>
</greater-than>
</input>
<output>
<property>instrumentation/comm[1]/serviceable</property>
</output>
</logic>
<logic> <logic>
<name>Comm 1 On/Off</name> <name>Comm 1 On/Off</name>
<input> <input>
<and> <and>
<property>instrumentation/comm[1]/serviceable</property> <property>instrumentation/comm[1]/serviceable</property>
<property>instrumentation/comm[1]/power-btn</property> <property>instrumentation/comm[1]/power-btn</property>
<greater-than>
<property>systems/electrical/outputs/comm[1]</property>
<value>6.0</value>
</greater-than>
</and> </and>
</input> </input>
<output> <output>
@ -260,16 +278,25 @@
</output> </output>
</filter> </filter>
<logic>
<name>DME Serviceable</name>
<input>
<greater-than>
<property>systems/electrical/outputs/dme</property>
<value>6.0</value>
</greater-than>
</input>
<output>
<property>instrumentation/dme[0]/serviceable</property>
</output>
</logic>
<logic> <logic>
<name>DME On/Off</name> <name>DME On/Off</name>
<input> <input>
<and> <and>
<property>instrumentation/dme[0]/serviceable</property> <property>instrumentation/dme[0]/serviceable</property>
<property>instrumentation/dme[0]/power-btn</property> <property>instrumentation/dme[0]/power-btn</property>
<greater-than>
<property>systems/electrical/outputs/dme</property>
<value>6.0</value>
</greater-than>
</and> </and>
</input> </input>
<output> <output>
@ -326,16 +353,25 @@
</output> </output>
</filter> </filter>
<logic>
<name>Transponder Serviceable</name>
<input>
<greater-than>
<property>systems/electrical/outputs/transponder</property>
<value>6.0</value>
</greater-than>
</input>
<output>
<property>instrumentation/transponder/serviceable</property>
</output>
</logic>
<logic> <logic>
<name>Transponder On/Off</name> <name>Transponder On/Off</name>
<input> <input>
<and> <and>
<property>instrumentation/transponder/serviceable</property> <property>instrumentation/transponder/serviceable</property>
<property>instrumentation/transponder/inputs/knob-mode</property> <property>instrumentation/transponder/inputs/knob-mode</property>
<greater-than>
<property>systems/electrical/outputs/transponder</property>
<value>6.0</value>
</greater-than>
</and> </and>
</input> </input>
<output> <output>

View file

@ -67,6 +67,14 @@ This tutorial will teach you how to set the altimeter based on the ATIS (Automat
<property>/instrumentation/comm[0]/frequencies/selected-mhz</property> <property>/instrumentation/comm[0]/frequencies/selected-mhz</property>
<value>121.975</value> <value>121.975</value>
</set> </set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-placed</property>
<value>false</value>
</set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-visible</property>
<value>false</value>
</set>
<message></message> <message></message>
<view> <view>
<heading-offset-deg>0.0</heading-offset-deg> <heading-offset-deg>0.0</heading-offset-deg>

View file

@ -79,6 +79,14 @@ LEBL (Barcelona) is within glide distance. Try to land at LEBL.
<property>instrumentation/altimeter/setting-inhg</property> <property>instrumentation/altimeter/setting-inhg</property>
<value>29.95</value> <value>29.95</value>
</set> </set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-placed</property>
<value>false</value>
</set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-visible</property>
<value>false</value>
</set>
<nasal> <nasal>
<script> <script>
setprop("/controls/engines/current-engine/mixture", 1.0); setprop("/controls/engines/current-engine/mixture", 1.0);

View file

@ -146,6 +146,14 @@ You start the tutorial cruising at around 1000 ft and 90 kts. To begin your desc
<property>/controls/engines/engine/primer</property> <property>/controls/engines/engine/primer</property>
<value>4</value> <value>4</value>
</set> </set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-placed</property>
<value>false</value>
</set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-visible</property>
<value>false</value>
</set>
<nasal> <nasal>
<script> <script>
setprop("/controls/engines/current-engine/mixture", 1.0); setprop("/controls/engines/current-engine/mixture", 1.0);

View file

@ -116,6 +116,14 @@ It consists of the following sections:
<property>/controls/flight/elevator-trim</property> <property>/controls/flight/elevator-trim</property>
<value>0.17</value> <value>0.17</value>
</set> </set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-placed</property>
<value>false</value>
</set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-visible</property>
<value>false</value>
</set>
<nasal> <nasal>
<script> <script>
setprop("/controls/engines/current-engine/mixture", 1.0); setprop("/controls/engines/current-engine/mixture", 1.0);

View file

@ -207,6 +207,14 @@ This tutorial will guide you through the Preflight inspection
<property>/controls/engines/current-engine/throttle</property> <property>/controls/engines/current-engine/throttle</property>
<value>0</value> <value>0</value>
</set> </set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-placed</property>
<value>true</value>
</set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-visible</property>
<value>true</value>
</set>
<message>Welcome to Sabadell Airport. In this lesson we'll check the condition of our aircraft.</message> <message>Welcome to Sabadell Airport. In this lesson we'll check the condition of our aircraft.</message>
<view> <view>
<heading-offset-deg>0.0</heading-offset-deg> <heading-offset-deg>0.0</heading-offset-deg>
@ -244,6 +252,47 @@ This tutorial will guide you through the Preflight inspection
<wait>7</wait> <wait>7</wait>
</step> </step>
<step>
<message>Remove the control lock if there exists one.</message>
<view>
<heading-offset-deg>36.4</heading-offset-deg>
<pitch-offset-deg>-44.2</pitch-offset-deg>
<roll-offset-deg>0.0</roll-offset-deg>
<x-offset-m>-0.0</x-offset-m>
<y-offset-m>0.3</y-offset-m>
<z-offset-m>0.1</z-offset-m>
<field-of-view>49.2</field-of-view>
</view>
<marker>
<x-m>-0.3450</x-m>
<y-m>-0.3133</y-m>
<z-m>-0.1725</z-m>
<scale>3.4000</scale>
</marker>
<error>
<message>If there is a control lock you need to remove it so that you can move the yoke!</message>
<condition>
<and>
<property>/sim/model/c172p/cockpit/control-lock-placed</property>
<property>/sim/model/c172p/cockpit/control-lock-visible</property>
</and>
</condition>
</error>
<exit>
<condition>
<or>
<not>
<property>/sim/model/c172p/cockpit/control-lock-placed</property>
<property>/sim/model/c172p/cockpit/control-lock-visible</property>
</not>
<not>
<property>/sim/model/c172p/securing/allow-securing-aircraft</property>
</not>
</or>
</condition>
</exit>
</step>
<step> <step>
<message>The Parking brake has to be set (lever points down).</message> <message>The Parking brake has to be set (lever points down).</message>
<view> <view>

View file

@ -70,6 +70,14 @@ weather, the altimeter setting and the runway in use.
<property>/controls/flight/elevator-trim</property> <property>/controls/flight/elevator-trim</property>
<value>0.17</value> <value>0.17</value>
</set> </set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-placed</property>
<value>false</value>
</set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-visible</property>
<value>false</value>
</set>
<message>In this lesson, you'll learn how to tune the radio to the ATIS of the Airport Barcelona-El Prat, <message>In this lesson, you'll learn how to tune the radio to the ATIS of the Airport Barcelona-El Prat,
which is the nearest one with ATIS. which is the nearest one with ATIS.
The radio is in the middle of the center console.</message> The radio is in the middle of the center console.</message>

View file

@ -91,6 +91,14 @@ For more information on the before takeoff checklist, see Section 2-11 of the FA
<property>/sim/model/c172p/securing/pitot-cover-visible</property> <property>/sim/model/c172p/securing/pitot-cover-visible</property>
<value>false</value> <value>false</value>
</set> </set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-placed</property>
<value>false</value>
</set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-visible</property>
<value>false</value>
</set>
<nasal> <nasal>
<script> <script>
setprop("/controls/engines/current-engine/mixture", 1.0); setprop("/controls/engines/current-engine/mixture", 1.0);

View file

@ -13,6 +13,10 @@ Starting this tutorial with the engine not running will NOT work!
</description> </description>
<step> <step>
<set>
<property>/sim/model/c172p/securing/allow-securing-aircraft</property>
<value>true</value>
</set>
<set> <set>
<property>/controls/switches/magnetos</property> <property>/controls/switches/magnetos</property>
<value>3</value> <value>3</value>
@ -41,6 +45,14 @@ Starting this tutorial with the engine not running will NOT work!
<property>/environment/weather-scenario</property> <property>/environment/weather-scenario</property>
<value>Fair weather</value> <value>Fair weather</value>
</set> </set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-placed</property>
<value>false</value>
</set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-visible</property>
<value>false</value>
</set>
<message></message> <message></message>
<view> <view>
<heading-offset-deg>0.0</heading-offset-deg> <heading-offset-deg>0.0</heading-offset-deg>
@ -475,6 +487,45 @@ Starting this tutorial with the engine not running will NOT work!
</exit> </exit>
</step> </step>
<step>
<set>
<property>/sim/model/hide-yoke</property>
<value>false</value>
</set>
<message>Place the control lock.</message>
<view>
<heading-offset-deg>53.4</heading-offset-deg>
<pitch-offset-deg>-42.2</pitch-offset-deg>
<roll-offset-deg>0.0</roll-offset-deg>
<x-offset-m>0.0</x-offset-m>
<y-offset-m>0.1</y-offset-m>
<z-offset-m>0.0</z-offset-m>
<field-of-view>68.4</field-of-view>
</view>
<marker>
<x-m>-0.2450</x-m>
<y-m>-0.4483</y-m>
<z-m>-0.4750</z-m>
<scale>4.0000</scale>
</marker>
<error>
<message>Finally, you have to place the control lock!</message>
<condition>
<not>
<property>/sim/model/c172p/cockpit/control-lock-visible</property>
</not>
</condition>
</error>
<exit>
<condition>
<and>
<property>/sim/model/c172p/cockpit/control-lock-placed</property>
<property>/sim/model/c172p/cockpit/control-lock-visible</property>
</and>
</condition>
</exit>
</step>
<step> <step>
<message>In the cockpit we're finished. Now open the door.</message> <message>In the cockpit we're finished. Now open the door.</message>
<view> <view>

View file

@ -187,6 +187,14 @@ This tutorial will take you through starting the Cessna 172p.
<property>fdm/jsbsim/bushkit</property> <property>fdm/jsbsim/bushkit</property>
<value>0</value> <value>0</value>
</set> </set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-placed</property>
<value>false</value>
</set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-visible</property>
<value>false</value>
</set>
<message>After finishing the Preflight Inspection you're now ready to learn how to start the engine.</message> <message>After finishing the Preflight Inspection you're now ready to learn how to start the engine.</message>
<view> <view>
<heading-offset-deg>0.0</heading-offset-deg> <heading-offset-deg>0.0</heading-offset-deg>

View file

@ -95,6 +95,14 @@ This tutorial will teach you how to take-off from runway 13, and climb at 600 fe
<property>/sim/model/c172p/securing/pitot-cover-visible</property> <property>/sim/model/c172p/securing/pitot-cover-visible</property>
<value>false</value> <value>false</value>
</set> </set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-placed</property>
<value>false</value>
</set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-visible</property>
<value>false</value>
</set>
<nasal> <nasal>
<script> <script>
setprop("/controls/engines/current-engine/mixture", 1.0); setprop("/controls/engines/current-engine/mixture", 1.0);

View file

@ -108,6 +108,14 @@ For more information on taxiing, see Section 2-9 of the FAA Airplane Flying Hand
<property>/sim/model/c172p/securing/pitot-cover-visible</property> <property>/sim/model/c172p/securing/pitot-cover-visible</property>
<value>false</value> <value>false</value>
</set> </set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-placed</property>
<value>false</value>
</set>
<set>
<property>/sim/model/c172p/cockpit/control-lock-visible</property>
<value>false</value>
</set>
<nasal> <nasal>
<script> <script>
setprop("/controls/engines/current-engine/mixture", 1.0); setprop("/controls/engines/current-engine/mixture", 1.0);

View file

@ -37,8 +37,21 @@
</binding> </binding>
</item> </item>
<item> <item>
<name>Control Lock</name> <name>Control lock</name>
<value>REMOVE</value> <value>REMOVE</value>
<value>(if existing)</value>
<marker>
<x-m>-0.3392</x-m>
<y-m>-0.2950</y-m>
<z-m>-0.1667</z-m>
<scale>3.9833</scale>
</marker>
<condition>
<not>
<property>/sim/model/c172p/cockpit/control-lock-placed</property>
<property>/sim/model/c172p/cockpit/control-lock-visible</property>
</not>
</condition>
</item> </item>
<item> <item>
<name>Magnetos/Ignition</name> <name>Magnetos/Ignition</name>
@ -2666,8 +2679,26 @@
</binding> </binding>
</item> </item>
<item> <item>
<name>Control Lock</name> <name>Control lock</name>
<value>INSTALL</value> <value>INSTALL</value>
<value>(if existing)</value>
<marker>
<x-m>-0.2408</x-m>
<y-m>-0.4483</y-m>
<z-m>-0.4783</z-m>
<scale>3.7333</scale>
</marker>
<condition>
<or>
<and>
<property>/sim/model/c172p/cockpit/control-lock-placed</property>
<property>/sim/model/c172p/cockpit/control-lock-visible</property>
</and>
<not>
<property>/sim/model/c172p/securing/allow-securing-aircraft</property>
</not>
</or>
</condition>
</item> </item>
<item> <item>
<name>Walker</name> <name>Walker</name>

View file

@ -1094,7 +1094,7 @@
<condition> <condition>
<greater-than> <greater-than>
<property>/sim/model/door-positions/baggageDoor/position-norm</property> <property>/sim/model/door-positions/baggageDoor/position-norm</property>
<value>0.4</value> <value>0.0</value>
</greater-than> </greater-than>
</condition> </condition>
<position> <position>

View file

@ -129,6 +129,11 @@
<command>property-toggle</command> <command>property-toggle</command>
<property>sim/model/hide-yoke</property> <property>sim/model/hide-yoke</property>
</binding> </binding>
<binding>
<command>property-assign</command>
<property>sim/model/c172p/cockpit/control-lock-placed</property>
<value>false</value>
</binding>
</key> </key>
<key n="265"> <key n="265">

View file

@ -21,27 +21,18 @@ http://forum.flightgear.org/viewtopic.php?f=4&t=25157
<sim include="c172p-views.xml"> <sim include="c172p-views.xml">
<description>Cessna 172P Skyhawk (1981 model, detailed)</description> <description>Cessna 172P Skyhawk (1981 model, detailed)</description>
<long-description>The Cessna 172 Skyhawk is a four-seat, single-engine, high-wing fixed-wing aircraft. <long-description>The Cessna 172 Skyhawk is a four-seat, single-engine, high-wing fixed-wing aircraft. First flown in 1955 and still in production, more Cessna 172s have been built than any other aircraft.</long-description>
First flown in 1955 and still in production, more Cessna 172s have been built than any other aircraft.
</long-description>
<fr> <fr>
<long-description>Le Cessna 172 Skyhawk est un avion quadriplace, monomoteur à aile haute. <long-description>Le Cessna 172 Skyhawk est un avion quadriplace, monomoteur à aile haute. Il effectua son premier vol en 1955 et est toujours en production, plus de Cessna 172 ont été construits que tout autres avions.</long-description>
Il effectua son premier vol en 1955 et est toujours en production, plus de Cessna 172 ont été construits que tout autres avions.
</long-description>
</fr> </fr>
<es> <es>
<long-description>La Cessna 172 Skyhawk es un avión de cuatro plazas, monomotor y de ala alta. <long-description>La Cessna 172 Skyhawk es un avión de cuatro plazas, monomotor y de ala alta. Se empezó a producir en 1955 y, con equipos modernizados, aún sigue en producción. La Cessna 172 es el avión del que unidades se han construido en la historia.</long-description>
Se empezó a producir en 1955 y, con equipos modernizados, aún sigue en producción.
La Cessna 172 es el avión del que unidades se han construido en la historia.
</long-description>
</es> </es>
<it> <it>
<long-description>Il Cessna 172 Skyhawk è un aereo a quattro posti, monomotore ad ala fissa alta. <long-description>Il Cessna 172 Skyhawk è un aereo a quattro posti, monomotore ad ala fissa alta. Ha volato per la prima volta nel 1955 ed è ancora in produzione; sono stati prodotti più Cessna 172 di qualunque altro modello di aereo.</long-description>
Ha volato per la prima volta nel 1955 ed è ancora in produzione; sono stati prodotti più Cessna 172 di qualunque altro modello di aereo.
</long-description>
</it> </it>
<tags> <tags>
@ -52,10 +43,10 @@ http://forum.flightgear.org/viewtopic.php?f=4&t=25157
<tag>fixed-gear</tag> <tag>fixed-gear</tag>
</tags> </tags>
<author>Original by David Megginson, gsagostinho (Gilberto Agostinho), wlbragg (Wayne Bragg), Juanvvc (Juan Vera del Campo), onox, thevirtualfer, Dany93 (Daniel Dubreuil), dg-505 (Jonathan Schellhase), IAHM-COL (Israel Hernandez), tigert (Tuomas Kuosmanen), AndersG (Anders Gidenstam), wkitty42 (Waldo Kitty), algefaen</author> <author>Original by David Megginson, gsagostinho (Gilberto Agostinho), wlbragg (Wayne Bragg), Juanvvc (Juan Vera del Campo), onox, thevirtualfer, Dany93 (Daniel Dubreuil), dg-505 (Jonathan Schellhase), tigert (Tuomas Kuosmanen), AndersG (Anders Gidenstam), wkitty42 (Waldo Kitty), algefaen, Horacio, D-ECHO, Jarl Arntzen (jarlarntzen)</author>
<status>advanced production</status> <status>advanced production</status>
<aircraft-version>2016.4</aircraft-version> <aircraft-version>2017.1</aircraft-version>
<rating> <rating>
<FDM type="int">4</FDM> <FDM type="int">4</FDM>
<systems type="int">5</systems> <systems type="int">5</systems>
@ -63,21 +54,6 @@ http://forum.flightgear.org/viewtopic.php?f=4&t=25157
<cockpit type="int">5</cockpit> <cockpit type="int">5</cockpit>
</rating> </rating>
<thumbnail>
<type>panel</type>
<name>thumbnail-panel.jpg</name>
</thumbnail>
<thumbnail>
<type>exterior</type>
<name>thumbnail-exterior.jpg</name>
</thumbnail>
<thumbnail>
<!-- type is optional -->
<name>thumbnail-ground.jpg</name>
</thumbnail>
<!--variant-of>c172p</variant-of--> <!--variant-of>c172p</variant-of-->
<flight-model archive="y">jsb</flight-model> <flight-model archive="y">jsb</flight-model>
@ -103,6 +79,12 @@ http://forum.flightgear.org/viewtopic.php?f=4&t=25157
<variant alias="/fdm/jsbsim/bushkit"/> <variant alias="/fdm/jsbsim/bushkit"/>
<c172p> <c172p>
<!-- Control lock -->
<cockpit>
<control-lock-placed type="bool">false</control-lock-placed>
<control-lock-visible type="bool">false</control-lock-visible>
</cockpit>
<!-- Registration number --> <!-- Registration number -->
<regnum1 type="int">0</regnum1> <regnum1 type="int">0</regnum1>
<regnum2 type="int">0</regnum2> <regnum2 type="int">0</regnum2>
@ -224,6 +206,8 @@ http://forum.flightgear.org/viewtopic.php?f=4&t=25157
<ladder_position_l type ="int">1</ladder_position_l> <ladder_position_l type ="int">1</ladder_position_l>
<save-state type="bool">false</save-state>
</c172p> </c172p>
<hide-yoke type="bool">false</hide-yoke> <hide-yoke type="bool">false</hide-yoke>
@ -266,6 +250,7 @@ http://forum.flightgear.org/viewtopic.php?f=4&t=25157
<path>/sim/rendering/shadow-volume</path> <path>/sim/rendering/shadow-volume</path>
<path>/sim/model/occupants</path> <path>/sim/model/occupants</path>
<path>/sim/model/c172p/securing/allow-securing-aircraft</path> <path>/sim/model/c172p/securing/allow-securing-aircraft</path>
<path>/sim/model/c172p/cockpit/control-lock-placed</path>
<path>/sim/model/c172p/securing/pitot-cover-visible</path> <path>/sim/model/c172p/securing/pitot-cover-visible</path>
<path>/sim/model/c172p/securing/chock</path> <path>/sim/model/c172p/securing/chock</path>
<path>/sim/model/c172p/securing/tiedownL-visible</path> <path>/sim/model/c172p/securing/tiedownL-visible</path>
@ -292,6 +277,9 @@ http://forum.flightgear.org/viewtopic.php?f=4&t=25157
<path>/consumables/fuel/tank[1]/level-gal_us</path> <path>/consumables/fuel/tank[1]/level-gal_us</path>
<path>/systems/electrical/save-battery-charge</path> <path>/systems/electrical/save-battery-charge</path>
<path>/systems/electrical/battery-charge-percent</path> <path>/systems/electrical/battery-charge-percent</path>
<path>/sim/model/c172p/save-state</path>
<path>/engines/active-engine/complex-engine-procedures</path>
<path>/sim/model/immat</path>
</aircraft-data> </aircraft-data>
<current-view> <current-view>
@ -331,6 +319,9 @@ http://forum.flightgear.org/viewtopic.php?f=4&t=25157
<autopilot> <autopilot>
<path>Systems/glass-rain.xml</path> <path>Systems/glass-rain.xml</path>
</autopilot> </autopilot>
<autopilot>
<path>Systems/control-lock.xml</path>
</autopilot>
<property-rule n="100"> <property-rule n="100">
<name>FiltersOnly</name> <name>FiltersOnly</name>
@ -470,6 +461,10 @@ http://forum.flightgear.org/viewtopic.php?f=4&t=25157
<flight> <flight>
<aileron-trim type="double">0.027</aileron-trim> <aileron-trim type="double">0.027</aileron-trim>
<rudder-trim type="double">0.0</rudder-trim> <rudder-trim type="double">0.0</rudder-trim>
<freeze-yoke type="bool">false</freeze-yoke>
<aileron-cmd type="double">0.0</aileron-cmd>
<elevator-cmd type="double">0.0</elevator-cmd>
</flight> </flight>
<engines> <engines>
<engine n="0"> <engine n="0">
@ -544,6 +539,7 @@ http://forum.flightgear.org/viewtopic.php?f=4&t=25157
<level-gal_us type="double">20</level-gal_us> <level-gal_us type="double">20</level-gal_us>
<selected type="bool">true</selected> <selected type="bool">true</selected>
<water-contamination type="double">0.0</water-contamination> <water-contamination type="double">0.0</water-contamination>
<sample-water-contamination type="double">0.0</sample-water-contamination>
<fuel-sample-taken type="bool">false</fuel-sample-taken> <fuel-sample-taken type="bool">false</fuel-sample-taken>
</tank> </tank>
<tank n="1"> <tank n="1">
@ -551,6 +547,7 @@ http://forum.flightgear.org/viewtopic.php?f=4&t=25157
<level-gal_us type="double">20</level-gal_us> <level-gal_us type="double">20</level-gal_us>
<selected type="bool">true</selected> <selected type="bool">true</selected>
<water-contamination type="double">0.0</water-contamination> <water-contamination type="double">0.0</water-contamination>
<sample-water-contamination type="double">0.0</sample-water-contamination>
<fuel-sample-taken type="bool">false</fuel-sample-taken> <fuel-sample-taken type="bool">false</fuel-sample-taken>
</tank> </tank>
<tank n="2"> <tank n="2">
@ -650,6 +647,7 @@ http://forum.flightgear.org/viewtopic.php?f=4&t=25157
<carb_icing_rate type="double">0.0</carb_icing_rate> <carb_icing_rate type="double">0.0</carb_icing_rate>
<carb_icing_allowed type="bool">false</carb_icing_allowed> <carb_icing_allowed type="bool">false</carb_icing_allowed>
<auto-start type="bool">false</auto-start> <auto-start type="bool">false</auto-start>
<complex-engine-procedures type="bool">false</complex-engine-procedures>
</active-engine> </active-engine>
<!-- Following properties are part of a static list of properties <!-- Following properties are part of a static list of properties

View file

@ -101,4 +101,33 @@
</config> </config>
</view> </view>
<!-- IFR Training View -->
<view n="103">
<name>IFR Training View</name>
<type>lookfrom</type>
<internal type="bool">true</internal>
<config>
<from-model type="bool">true</from-model>
<from-model-idx type="int">0</from-model-idx>
<x-offset-m type="double">-0.15</x-offset-m>
<y-offset-m type="double">-0.01</y-offset-m>
<z-offset-m type="double">0.23</z-offset-m>
<pitch-offset-deg type="double">-10</pitch-offset-deg>
<default-field-of-view-deg>73.6</default-field-of-view-deg>
<limits>
<enabled type="bool">true</enabled>
<left>
<heading-max-deg type="double">140</heading-max-deg>
<x-offset-max-m type="double">0.15</x-offset-max-m>
<x-offset-threshold-deg type="double">65</x-offset-threshold-deg>
</left>
<right>
<heading-max-deg type="double">140</heading-max-deg>
<x-offset-max-m type="double">0.15</x-offset-max-m>
<x-offset-threshold-deg type="double">65</x-offset-threshold-deg>
</right>
</limits>
</config>
</view>
</PropertyList> </PropertyList>

Binary file not shown.

View file

@ -81,8 +81,8 @@
<checkbox> <checkbox>
<halign>left</halign> <halign>left</halign>
<label>Save fuel level between sessions</label> <label>Save state of aircraft between sessions</label>
<property>/consumables/fuel/save-fuel-state</property> <property>/sim/model/c172p/save-state</property>
<live>true</live> <live>true</live>
<binding> <binding>
<command>dialog-apply</command> <command>dialog-apply</command>
@ -91,53 +91,14 @@
<checkbox> <checkbox>
<halign>left</halign> <halign>left</halign>
<label>Save battery charge between sessions</label> <label>Complex engine procedures and failures</label>
<property>/systems/electrical/save-battery-charge</property> <property>/engines/active-engine/complex-engine-procedures</property>
<live>true</live> <live>true</live>
<binding> <binding>
<command>dialog-apply</command> <command>dialog-apply</command>
</binding> </binding>
</checkbox> </checkbox>
<checkbox>
<halign>left</halign>
<label>Save positions of all switches between sessions</label>
<property>/instrumentation/save-switches-state</property>
<live>true</live>
<binding>
<command>dialog-apply</command>
</binding>
</checkbox>
<checkbox>
<halign>left</halign>
<label>Allow fuel contamination</label>
<property>/consumables/fuel/contamination_allowed</property>
<live>true</live>
<binding>
<command>dialog-apply</command>
</binding>
</checkbox>
<checkbox>
<halign>left</halign>
<label>Allow oil management</label>
<property>/engines/active-engine/oil_consumption_allowed</property>
<live>true</live>
<binding>
<command>dialog-apply</command>
</binding>
</checkbox>
<checkbox>
<halign>left</halign>
<label>Allow carburetor icing</label>
<property>/engines/active-engine/carb_icing_allowed</property>
<live>true</live>
<binding>
<command>dialog-apply</command>
</binding>
</checkbox>
</group> </group>
<hrule/> <hrule/>
@ -209,43 +170,6 @@
<hrule/> <hrule/>
<group>
<layout>hbox</layout>
<text>
<halign>left</halign>
<label>Battery charge: xxxx %%</label>
<format>Battery charge: %3.1f %%</format>
<live>true</live>
<property>/systems/electrical/battery-charge-percent-100</property>
</text>
<button>
<halign>right</halign>
<legend>Recharge battery</legend>
<enable>
<and>
<not>
<property>/sim/freeze/replay-state</property>
</not>
<less-than>
<property>velocities/groundspeed-kt</property>
<value>1.0</value>
</less-than>
<not>
<property>/engines/active-engine/running</property>
</not>
</and>
</enable>
<binding>
<command>nasal</command>
<script>c172p.dialog_battery_reload();</script>
</binding>
</button>
</group>
<hrule/>
<group> <group>
<layout>vbox</layout> <layout>vbox</layout>
@ -256,6 +180,11 @@
<binding> <binding>
<command>dialog-apply</command> <command>dialog-apply</command>
</binding> </binding>
<binding>
<command>property-assign</command>
<property>sim/model/c172p/cockpit/control-lock-placed</property>
<value>false</value>
</binding>
<binding> <binding>
<command>property-assign</command> <command>property-assign</command>
<property>sim/model/c172p/securing/pitot-cover-visible</property> <property>sim/model/c172p/securing/pitot-cover-visible</property>
@ -295,6 +224,19 @@
<group> <group>
<layout>vbox</layout> <layout>vbox</layout>
<checkbox>
<halign>left</halign>
<label>Place control lock</label>
<property>sim/model/c172p/cockpit/control-lock-placed</property>
<live>true</live>
<enable>
<property>/sim/model/c172p/securing/allow-securing-aircraft</property>
</enable>
<binding>
<command>dialog-apply</command>
</binding>
</checkbox>
<checkbox> <checkbox>
<halign>left</halign> <halign>left</halign>
<label>Enable wheel chocks</label> <label>Enable wheel chocks</label>
@ -381,19 +323,18 @@
<checkbox> <checkbox>
<halign>left</halign> <halign>left</halign>
<label>Show shadow</label> <label>Show human models</label>
<property>/sim/rendering/shadow-volume</property> <property>/sim/model/occupants</property>
<live>true</live> <live>true</live>
<binding> <binding>
<command>property-toggle</command> <command>dialog-apply</command>
<property>/sim/rendering/shadow-volume</property>
</binding> </binding>
</checkbox> </checkbox>
<checkbox> <checkbox>
<halign>left</halign> <halign>left</halign>
<label>Human models</label> <label>Display shadow</label>
<property>/sim/model/occupants</property> <property>/sim/rendering/shadow-volume</property>
<live>true</live> <live>true</live>
<binding> <binding>
<command>dialog-apply</command> <command>dialog-apply</command>
@ -420,15 +361,6 @@
</binding> </binding>
</checkbox> </checkbox>
<checkbox>
<halign>left</halign>
<label>Show registration on panel</label>
<property>/sim/model/c172p/immat-on-panel</property>
<live>true</live>
<binding>
<command>dialog-apply</command>
</binding>
</checkbox>
</group> </group>
<hrule/> <hrule/>

View file

@ -0,0 +1,185 @@
<?xml version="1.0"?>
<!-- c172p
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
-->
<PropertyList>
<name>c172p-about-dialog</name>
<layout>vbox</layout>
<resizable>false</resizable>
<modal>false</modal>
<draggable>true</draggable>
<group>
<layout>hbox</layout>
<empty><stretch>true</stretch></empty>
<text>
<label>About</label>
</text>
<empty><stretch>true</stretch></empty>
<button>
<legend/>
<key>Esc</key>
<pref-width>16</pref-width>
<pref-height>16</pref-height>
<binding>
<command>dialog-close</command>
</binding>
</button>
</group>
<hrule/>
<group>
<layout>vbox</layout>
<padding>6</padding>
<group>
<layout>hbox</layout>
<group>
<layout>hbox</layout>
<canvas>
<name>about</name>
<valign>fill</valign>
<halign>fill</halign>
<stretch>true</stretch>
<pref-width>640</pref-width>
<pref-height>480</pref-height>
<!--height>480</height-->
<nasal>
<load>
<![CDATA[
# you can add your canvas-specific code here
# this will get a handle to the parent canvas
var my_canvas = canvas.get(cmdarg());
var root = my_canvas.createGroup();
var path = "Aircraft/c172p/gui/dialogs/c172p.jpg";
var child = root.createChild("image")
.setFile(path)
.setSize(640, 480)
.setTranslation(2,2);
]]>
</load>
</nasal>
</canvas>
</group>
<group>
<layout>vbox</layout>
<group>
<layout>hbox</layout>
<default-padding>6</default-padding>
<text>
<halign>left</halign>
<label>Cessna 172P version:</label>
</text>
<text>
<halign>left</halign>
<label>1234.5-git</label>
<property>/sim/aircraft-version</property>
</text>
<empty><stretch>true</stretch></empty>
</group>
<hrule/>
<text>
<halign>left</halign>
<label>Description:</label>
</text>
<textbox>
<name>basic description</name>
<halign>fill</halign>
<stretch>true</stretch>
<pref-height>180</pref-height>
<height>210</height>
<pref-width>300</pref-width>
<editable>false</editable>
<wrap>true</wrap>
<live>true</live>
<top-line>0</top-line>
<property>/sim/long-description</property>
</textbox>
<empty><stretch>true</stretch></empty>
<text>
<halign>left</halign>
<label>Authors:</label>
</text>
<textbox>
<name>authors</name>
<halign>fill</halign>
<stretch>true</stretch>
<pref-height>180</pref-height>
<height>210</height>
<pref-width>300</pref-width>
<editable>false</editable>
<wrap>true</wrap>
<live>true</live>
<top-line>0</top-line>
<property>/sim/author</property>
</textbox>
</group>
</group>
</group>
<hrule/>
<group>
<layout>hbox</layout>
<default-padding>6</default-padding>
<button>
<halign>left</halign>
<legend>Wiki Page</legend>
<binding>
<command>nasal</command>
<script>fgcommand("open-browser", props.Node.new({"url":"http://wiki.flightgear.org/Cessna_172P"}));</script>
</binding>
</button>
<button>
<halign>center</halign>
<legend>Open Repository in Browser</legend>
<binding>
<command>nasal</command>
<script>fgcommand("open-browser", props.Node.new({"url":"https://github.com/Juanvvc/c172p-detailed/"}));</script>
</binding>
</button>
<empty><stretch>true</stretch></empty>
<button>
<halign>right</halign>
<legend>Close</legend>
<equal>true</equal>
<key>Esc</key>
<default>true</default>
<binding>
<command>dialog-close</command>
</binding>
</button>
</group>
</PropertyList>

View file

@ -0,0 +1,238 @@
<?xml version="1.0"?>
<PropertyList>
<name>c172p-fuel-both-tanks-dialog</name>
<layout>vbox</layout>
<resizable>false</resizable>
<modal>false</modal>
<draggable>true</draggable>
<group>
<layout>hbox</layout>
<empty><stretch>true</stretch></empty>
<text>
<label>Fuel Tanks</label>
</text>
<empty><stretch>true</stretch></empty>
<button>
<legend/>
<key>Esc</key>
<pref-width>16</pref-width>
<pref-height>16</pref-height>
<binding>
<command>dialog-close</command>
</binding>
</button>
</group>
<hrule/>
<group>
<layout>hbox</layout>
<padding>6</padding>
<group>
<layout>vbox</layout>
<text>
<label>Tank</label>
<halign>center</halign>
</text>
<text>
<label>Left Tank:</label>
<halign>left</halign>
</text>
<text>
<label>Right Tank:</label>
<halign>left</halign>
</text>
<text>
<label></label>
</text>
</group>
<group>
<layout>vbox</layout>
<text>
<label></label>
<halign>left</halign>
</text>
<slider>
<name>c172p-left-fuel-slider2</name>
<min>0</min>
<max>21.5</max>
<live>true</live>
<enable>
<and>
<or>
<property>/fdm/jsbsim/gear/unit[1]/WOW</property>
<property>/fdm/jsbsim/gear/unit[19]/WOW</property>
<property>/fdm/jsbsim/gear/unit[23]/WOW</property>
<property>/fdm/jsbsim/hydro/active-norm</property>
</or>
<not>
<property>/engines/active-engine/running</property>
</not>
</and>
</enable>
<property>/consumables/fuel/tank[0]/level-gal_us</property>
<binding>
<command>dialog-apply</command>
<name>c172p-left-fuel-slider2</name>
</binding>
</slider>
<slider>
<name>c172p-right-fuel-slider2</name>
<min>0</min>
<max>21.5</max>
<live>true</live>
<enable>
<and>
<or>
<property>/fdm/jsbsim/gear/unit[1]/WOW</property>
<property>/fdm/jsbsim/gear/unit[19]/WOW</property>
<property>/fdm/jsbsim/gear/unit[23]/WOW</property>
<property>/fdm/jsbsim/hydro/active-norm</property>
</or>
<not>
<property>/engines/active-engine/running</property>
</not>
</and>
</enable>
<property>/consumables/fuel/tank[1]/level-gal_us</property>
<binding>
<command>dialog-apply</command>
<name>c172p-right-fuel-slider2</name>
</binding>
</slider>
<text>
<label>Total: </label>
<halign>right</halign>
</text>
</group>
<group>
<layout>vbox</layout>
<text>
<label>Pounds</label>
<halign>left</halign>
</text>
<text>
<label>12345</label>
<halign>left</halign>
<format>%.1f</format>
<live>true</live>
<property>/consumables/fuel/tank[0]/level-lbs</property>
</text>
<text>
<label>12345</label>
<halign>left</halign>
<format>%.1f</format>
<live>true</live>
<property>/consumables/fuel/tank[1]/level-lbs</property>
</text>
<text>
<label>12345</label>
<halign>left</halign>
<format>%.1f</format>
<live>true</live>
<property>/consumables/fuel/total-fuel-lbs</property>
</text>
</group>
<group>
<layout>vbox</layout>
<text>
<label>Gallons</label>
<halign>left</halign>
</text>
<text>
<label>12345</label>
<halign>left</halign>
<format>%.2f</format>
<live>true</live>
<property>/consumables/fuel/tank[0]/level-gal_us</property>
</text>
<text>
<label>12345</label>
<halign>left</halign>
<format>%.2f</format>
<live>true</live>
<property>/consumables/fuel/tank[1]/level-gal_us</property>
</text>
<text>
<label>12345</label>
<halign>left</halign>
<format>%.2f</format>
<live>true</live>
<property>/consumables/fuel/total-fuel-gal_us</property>
</text>
</group>
</group>
<group>
<layout>table</layout>
<text>
<row>0</row>
<col>0</col>
<visible>
<and>
<or>
<property>/fdm/jsbsim/gear/unit[1]/WOW</property>
<property>/fdm/jsbsim/gear/unit[19]/WOW</property>
<property>/fdm/jsbsim/gear/unit[23]/WOW</property>
<property>/fdm/jsbsim/hydro/active-norm</property>
</or>
<property>/engines/active-engine/running</property>
</and>
</visible>
<color>
<red>0.9</red>
<green>0.1</green>
<blue>0.1</blue>
</color>
<label>Sliders disabled while engine is running!</label>
</text>
<text>
<row>0</row>
<col>0</col>
<visible>
<not>
<or>
<property>/fdm/jsbsim/gear/unit[1]/WOW</property>
<property>/fdm/jsbsim/gear/unit[19]/WOW</property>
<property>/fdm/jsbsim/gear/unit[23]/WOW</property>
<property>/fdm/jsbsim/hydro/active-norm</property>
</or>
</not>
</visible>
<color>
<red>0.9</red>
<green>0.1</green>
<blue>0.1</blue>
</color>
<label>Sliders disabled while in the air!</label>
</text>
</group>
<hrule/>
<group>
<layout>hbox</layout>
<default-padding>6</default-padding>
<empty><stretch>true</stretch></empty>
<button>
<legend>Close</legend>
<equal>true</equal>
<key>Esc</key>
<default>true</default>
<binding>
<command>dialog-close</command>
</binding>
</button>
</group>
</PropertyList>

View file

@ -205,10 +205,9 @@
<group> <group>
<layout>vbox</layout> <layout>vbox</layout>
<checkbox> <checkbox>
<halign>left</halign> <halign>left</halign>
<label>Connect Groud Power Unit</label> <label>Connect GPU to aircraft</label>
<live>true</live> <live>true</live>
<property>/controls/electric/external-power</property> <property>/controls/electric/external-power</property>
<enable> <enable>
@ -222,14 +221,26 @@
<command>dialog-update</command> <command>dialog-update</command>
</binding> </binding>
</checkbox> </checkbox>
<text>
<halign>left</halign>
<label>Battery charge: xxxx %%</label>
<format>Battery charge: %3.1f %%</format>
<live>true</live>
<property>/systems/electrical/battery-charge-percent-100</property>
</text>
</group> </group>
<!-- Force group to the left --> <!-- Force group to the left -->
<empty><stretch>true</stretch></empty> <empty><stretch>true</stretch></empty>
</group> </group>
<hrule/> <hrule/>
<group>
<layout>hbox</layout>
<checkbox> <checkbox>
<halign>left</halign> <halign>left</halign>
<label>Fuel tank trailer</label> <label>Fuel tank trailer</label>
@ -249,6 +260,34 @@
<command>dialog-update</command> <command>dialog-update</command>
</binding> </binding>
</checkbox> </checkbox>
<button>
<halign>right</halign>
<legend>Add/remove fuel...</legend>
<live>true</live>
<enable>
<and>
<not>
<property>/sim/freeze/replay-state</property>
</not>
<less-than>
<property>velocities/groundspeed-kt</property>
<value>1.0</value>
</less-than>
<not>
<property>/engines/active-engine/running</property>
</not>
<property>/sim/fueltanktrailer/enable</property>
</and>
</enable>
<binding>
<command>dialog-show</command>
<dialog-name>c172p-fuel-both-tanks-dialog</dialog-name>
</binding>
</button>
</group>
</group> </group>
</group> </group>

View file

@ -82,6 +82,11 @@
</less-than> </less-than>
</and> </and>
</enable> </enable>
<binding>
<command>property-assign</command>
<property>/consumables/fuel/tank[0]/sample-water-contamination</property>
<value>0.0</value>
</binding>
<binding> <binding>
<command>property-assign</command> <command>property-assign</command>
<property>/consumables/fuel/tank[0]/fuel-sample-taken</property> <property>/consumables/fuel/tank[0]/fuel-sample-taken</property>
@ -155,7 +160,7 @@
<and> <and>
<property>/consumables/fuel/tank[0]/fuel-sample-taken</property> <property>/consumables/fuel/tank[0]/fuel-sample-taken</property>
<equals> <equals>
<property>/consumables/fuel/tank[0]/water-contamination</property> <property>/consumables/fuel/tank[0]/sample-water-contamination</property>
<value>0.0</value> <value>0.0</value>
</equals> </equals>
</and> </and>
@ -174,13 +179,13 @@
<and> <and>
<property>/consumables/fuel/tank[0]/fuel-sample-taken</property> <property>/consumables/fuel/tank[0]/fuel-sample-taken</property>
<greater-than> <greater-than>
<property>/consumables/fuel/tank[0]/water-contamination</property> <property>/consumables/fuel/tank[0]/sample-water-contamination</property>
<value>0.0</value> <value>0.0</value>
</greater-than> </greater-than>
<less-than-equals> <less-than>
<property>/consumables/fuel/tank[0]/water-contamination</property> <property>/consumables/fuel/tank[0]/sample-water-contamination</property>
<value>0.2</value> <value>0.2</value>
</less-than-equals> </less-than>
</and> </and>
</visible> </visible>
<color> <color>
@ -197,13 +202,13 @@
<and> <and>
<property>/consumables/fuel/tank[0]/fuel-sample-taken</property> <property>/consumables/fuel/tank[0]/fuel-sample-taken</property>
<greater-than> <greater-than>
<property>/consumables/fuel/tank[0]/water-contamination</property> <property>/consumables/fuel/tank[0]/sample-water-contamination</property>
<value>0.0</value> <value>0.0</value>
</greater-than> </greater-than>
<less-than-equals> <less-than>
<property>/consumables/fuel/tank[0]/water-contamination</property> <property>/consumables/fuel/tank[0]/sample-water-contamination</property>
<value>0.2</value> <value>0.2</value>
</less-than-equals> </less-than>
</and> </and>
</visible> </visible>
<color> <color>
@ -219,10 +224,10 @@
<visible> <visible>
<and> <and>
<property>/consumables/fuel/tank[0]/fuel-sample-taken</property> <property>/consumables/fuel/tank[0]/fuel-sample-taken</property>
<greater-than> <equals>
<property>/consumables/fuel/tank[0]/water-contamination</property> <property>/consumables/fuel/tank[0]/sample-water-contamination</property>
<value>0.2</value> <value>0.2</value>
</greater-than> </equals>
</and> </and>
</visible> </visible>
<color> <color>

View file

@ -45,10 +45,17 @@
<max>21.5</max> <max>21.5</max>
<live>true</live> <live>true</live>
<enable> <enable>
<less-than> <and>
<property>velocities/groundspeed-kt</property> <or>
<value>1.0</value> <property>/fdm/jsbsim/gear/unit[1]/WOW</property>
</less-than> <property>/fdm/jsbsim/gear/unit[19]/WOW</property>
<property>/fdm/jsbsim/gear/unit[23]/WOW</property>
<property>/fdm/jsbsim/hydro/active-norm</property>
</or>
<not>
<property>/engines/active-engine/running</property>
</not>
</and>
</enable> </enable>
<property>/consumables/fuel/tank[0]/level-gal_us</property> <property>/consumables/fuel/tank[0]/level-gal_us</property>
<binding> <binding>
@ -94,20 +101,47 @@
</group> </group>
<group> <group>
<layout>hbox</layout> <layout>table</layout>
<text> <text>
<row>0</row>
<col>0</col>
<visible> <visible>
<greater-than-equals> <and>
<property>velocities/groundspeed-kt</property> <or>
<value>1.0</value> <property>/fdm/jsbsim/gear/unit[1]/WOW</property>
</greater-than-equals> <property>/fdm/jsbsim/gear/unit[19]/WOW</property>
<property>/fdm/jsbsim/gear/unit[23]/WOW</property>
<property>/fdm/jsbsim/hydro/active-norm</property>
</or>
<property>/engines/active-engine/running</property>
</and>
</visible> </visible>
<color> <color>
<red>0.9</red> <red>0.9</red>
<green>0.1</green> <green>0.1</green>
<blue>0.1</blue> <blue>0.1</blue>
</color> </color>
<label>Dialog disabled when in movement</label> <label>Slider disabled while engine is running!</label>
</text>
<text>
<row>0</row>
<col>0</col>
<visible>
<not>
<or>
<property>/fdm/jsbsim/gear/unit[1]/WOW</property>
<property>/fdm/jsbsim/gear/unit[19]/WOW</property>
<property>/fdm/jsbsim/gear/unit[23]/WOW</property>
<property>/fdm/jsbsim/hydro/active-norm</property>
</or>
</not>
</visible>
<color>
<red>0.9</red>
<green>0.1</green>
<blue>0.1</blue>
</color>
<label>Slider disabled while in the air!</label>
</text> </text>
</group> </group>

View file

@ -62,6 +62,7 @@
<script>c172p.autostart()</script> <script>c172p.autostart()</script>
</binding> </binding>
</item> </item>
<item> <item>
<label>Panel in a Browser</label> <label>Panel in a Browser</label>
<binding> <binding>
@ -78,6 +79,20 @@
</script> </script>
</binding> </binding>
</item> </item>
<item>
<label>------------------</label>
<enabled>false</enabled>
</item>
<item>
<label>About This Aircraft</label>
<binding>
<command>dialog-show</command>
<dialog-name>c172p-about-dialog</dialog-name>
</binding>
</item>
</menu> </menu>
</default> </default>

View file

@ -82,6 +82,11 @@
</less-than> </less-than>
</and> </and>
</enable> </enable>
<binding>
<command>property-assign</command>
<property>/consumables/fuel/tank[1]/sample-water-contamination</property>
<value>0.0</value>
</binding>
<binding> <binding>
<command>property-assign</command> <command>property-assign</command>
<property>/consumables/fuel/tank[1]/fuel-sample-taken</property> <property>/consumables/fuel/tank[1]/fuel-sample-taken</property>
@ -155,7 +160,7 @@
<and> <and>
<property>/consumables/fuel/tank[1]/fuel-sample-taken</property> <property>/consumables/fuel/tank[1]/fuel-sample-taken</property>
<equals> <equals>
<property>/consumables/fuel/tank[1]/water-contamination</property> <property>/consumables/fuel/tank[1]/sample-water-contamination</property>
<value>0.0</value> <value>0.0</value>
</equals> </equals>
</and> </and>
@ -174,13 +179,13 @@
<and> <and>
<property>/consumables/fuel/tank[1]/fuel-sample-taken</property> <property>/consumables/fuel/tank[1]/fuel-sample-taken</property>
<greater-than> <greater-than>
<property>/consumables/fuel/tank[1]/water-contamination</property> <property>/consumables/fuel/tank[1]/sample-water-contamination</property>
<value>0.0</value> <value>0.0</value>
</greater-than> </greater-than>
<less-than-equals> <less-than>
<property>/consumables/fuel/tank[1]/water-contamination</property> <property>/consumables/fuel/tank[1]/sample-water-contamination</property>
<value>0.2</value> <value>0.2</value>
</less-than-equals> </less-than>
</and> </and>
</visible> </visible>
<color> <color>
@ -197,13 +202,13 @@
<and> <and>
<property>/consumables/fuel/tank[1]/fuel-sample-taken</property> <property>/consumables/fuel/tank[1]/fuel-sample-taken</property>
<greater-than> <greater-than>
<property>/consumables/fuel/tank[1]/water-contamination</property> <property>/consumables/fuel/tank[1]/sample-water-contamination</property>
<value>0.0</value> <value>0.0</value>
</greater-than> </greater-than>
<less-than-equals> <less-than>
<property>/consumables/fuel/tank[1]/water-contamination</property> <property>/consumables/fuel/tank[1]/sample-water-contamination</property>
<value>0.2</value> <value>0.2</value>
</less-than-equals> </less-than>
</and> </and>
</visible> </visible>
<color> <color>
@ -219,10 +224,10 @@
<visible> <visible>
<and> <and>
<property>/consumables/fuel/tank[1]/fuel-sample-taken</property> <property>/consumables/fuel/tank[1]/fuel-sample-taken</property>
<greater-than> <equals>
<property>/consumables/fuel/tank[1]/water-contamination</property> <property>/consumables/fuel/tank[1]/sample-water-contamination</property>
<value>0.2</value> <value>0.2</value>
</greater-than> </equals>
</and> </and>
</visible> </visible>
<color> <color>

View file

@ -45,10 +45,17 @@
<max>21.5</max> <max>21.5</max>
<live>true</live> <live>true</live>
<enable> <enable>
<less-than> <and>
<property>velocities/groundspeed-kt</property> <or>
<value>1.0</value> <property>/fdm/jsbsim/gear/unit[1]/WOW</property>
</less-than> <property>/fdm/jsbsim/gear/unit[19]/WOW</property>
<property>/fdm/jsbsim/gear/unit[23]/WOW</property>
<property>/fdm/jsbsim/hydro/active-norm</property>
</or>
<not>
<property>/engines/active-engine/running</property>
</not>
</and>
</enable> </enable>
<property>/consumables/fuel/tank[1]/level-gal_us</property> <property>/consumables/fuel/tank[1]/level-gal_us</property>
<binding> <binding>
@ -94,20 +101,47 @@
</group> </group>
<group> <group>
<layout>hbox</layout> <layout>table</layout>
<text> <text>
<row>0</row>
<col>0</col>
<visible> <visible>
<greater-than-equals> <and>
<property>velocities/groundspeed-kt</property> <or>
<value>1.0</value> <property>/fdm/jsbsim/gear/unit[1]/WOW</property>
</greater-than-equals> <property>/fdm/jsbsim/gear/unit[19]/WOW</property>
<property>/fdm/jsbsim/gear/unit[23]/WOW</property>
<property>/fdm/jsbsim/hydro/active-norm</property>
</or>
<property>/engines/active-engine/running</property>
</and>
</visible> </visible>
<color> <color>
<red>0.9</red> <red>0.9</red>
<green>0.1</green> <green>0.1</green>
<blue>0.1</blue> <blue>0.1</blue>
</color> </color>
<label>Dialog disabled when in movement</label> <label>Slider disabled while engine is running!</label>
</text>
<text>
<row>0</row>
<col>0</col>
<visible>
<not>
<or>
<property>/fdm/jsbsim/gear/unit[1]/WOW</property>
<property>/fdm/jsbsim/gear/unit[19]/WOW</property>
<property>/fdm/jsbsim/gear/unit[23]/WOW</property>
<property>/fdm/jsbsim/hydro/active-norm</property>
</or>
</not>
</visible>
<color>
<red>0.9</red>
<green>0.1</green>
<blue>0.1</blue>
</color>
<label>Slider disabled while in the air!</label>
</text> </text>
</group> </group>

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB