Merge pull request #1 from slawekmikula/racing-mode-additions
Racing mode additions
This commit is contained in:
@@ -10,4 +10,7 @@
|
||||
<max-m>8000</max-m>
|
||||
</animation>
|
||||
|
||||
<animation>
|
||||
<enable-hot type="bool">false</enable-hot>
|
||||
</animation>
|
||||
</PropertyList>
|
||||
|
||||
@@ -10,4 +10,8 @@
|
||||
<max-m>8000</max-m>
|
||||
</animation>
|
||||
|
||||
<animation>
|
||||
<enable-hot type="bool">false</enable-hot>
|
||||
</animation>
|
||||
|
||||
</PropertyList>
|
||||
|
||||
@@ -10,4 +10,8 @@
|
||||
<max-m>8000</max-m>
|
||||
</animation>
|
||||
|
||||
<animation>
|
||||
<enable-hot type="bool">false</enable-hot>
|
||||
</animation>
|
||||
|
||||
</PropertyList>
|
||||
|
||||
@@ -10,4 +10,8 @@
|
||||
<max-m>8000</max-m>
|
||||
</animation>
|
||||
|
||||
<animation>
|
||||
<enable-hot type="bool">false</enable-hot>
|
||||
</animation>
|
||||
|
||||
</PropertyList>
|
||||
|
||||
@@ -10,4 +10,8 @@
|
||||
<max-m>8000</max-m>
|
||||
</animation>
|
||||
|
||||
<animation>
|
||||
<enable-hot type="bool">false</enable-hot>
|
||||
</animation>
|
||||
|
||||
</PropertyList>
|
||||
|
||||
@@ -10,4 +10,8 @@
|
||||
<max-m>8000</max-m>
|
||||
</animation>
|
||||
|
||||
<animation>
|
||||
<enable-hot type="bool">false</enable-hot>
|
||||
</animation>
|
||||
|
||||
</PropertyList>
|
||||
|
||||
@@ -0,0 +1,485 @@
|
||||
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 "Material" rgb 1.0000 1.0000 1.0000 amb 1.0000 1.0000 1.0000 emis 0.0000 0.0000 0.0000 spec 0.5000 0.5000 0.5000 shi 12 trans 0.0000
|
||||
OBJECT world
|
||||
name "Blender_export__Hangar_70x15.ac"
|
||||
kids 1
|
||||
OBJECT poly
|
||||
name "Cube"
|
||||
crease 35.0
|
||||
texture "Hangar_70x15.png"
|
||||
texrep 1 1
|
||||
numvert 60
|
||||
-35.0000000 0.0000000 7.5000000
|
||||
-35.0000000 5.0000000 7.5000000
|
||||
-35.0000000 0.0000000 -7.5000000
|
||||
-35.0000000 5.0000000 -7.5000000
|
||||
35.0000000 0.0000000 7.5000000
|
||||
35.0000000 5.0000000 7.5000000
|
||||
35.0000000 0.0000000 -7.5000000
|
||||
35.0000000 5.0000000 -7.5000000
|
||||
-35.0000000 7.0000000 0.0000000
|
||||
35.0000000 7.0000000 0.0000000
|
||||
-28.6363640 5.0000000 -7.5000000
|
||||
-22.2727280 5.0000000 -7.5000000
|
||||
-15.9090919 5.0000000 -7.5000000
|
||||
-9.5454559 5.0000000 -7.5000000
|
||||
-3.1818190 5.0000000 -7.5000000
|
||||
3.1818180 5.0000000 -7.5000000
|
||||
9.5454540 5.0000000 -7.5000000
|
||||
15.9090900 5.0000000 -7.5000000
|
||||
22.2727280 5.0000000 -7.5000000
|
||||
28.6363640 5.0000000 -7.5000000
|
||||
28.6363640 0.0000000 -7.5000000
|
||||
22.2727280 0.0000000 -7.5000000
|
||||
15.9090919 0.0000000 -7.5000000
|
||||
9.5454559 0.0000000 -7.5000000
|
||||
3.1818190 0.0000000 -7.5000000
|
||||
-3.1818180 0.0000000 -7.5000000
|
||||
-9.5454540 0.0000000 -7.5000000
|
||||
-15.9090900 0.0000000 -7.5000000
|
||||
-22.2727280 0.0000000 -7.5000000
|
||||
-28.6363640 0.0000000 -7.5000000
|
||||
28.6363640 5.0000000 7.5000000
|
||||
22.2727280 5.0000000 7.5000000
|
||||
15.9090919 5.0000000 7.5000000
|
||||
9.5454559 5.0000000 7.5000000
|
||||
3.1818190 5.0000000 7.5000000
|
||||
-3.1818180 5.0000000 7.5000000
|
||||
-9.5454540 5.0000000 7.5000000
|
||||
-15.9090900 5.0000000 7.5000000
|
||||
-22.2727280 5.0000000 7.5000000
|
||||
-28.6363640 5.0000000 7.5000000
|
||||
-28.6363640 0.0000000 7.5000000
|
||||
-22.2727280 0.0000000 7.5000000
|
||||
-15.9090919 0.0000000 7.5000000
|
||||
-9.5454559 0.0000000 7.5000000
|
||||
-3.1818190 0.0000000 7.5000000
|
||||
3.1818180 0.0000000 7.5000000
|
||||
9.5454540 0.0000000 7.5000000
|
||||
15.9090900 0.0000000 7.5000000
|
||||
22.2727280 0.0000000 7.5000000
|
||||
28.6363640 0.0000000 7.5000000
|
||||
-28.6363640 7.0000000 0.0000000
|
||||
-22.2727280 7.0000000 0.0000000
|
||||
-15.9090919 7.0000000 0.0000000
|
||||
-9.5454559 7.0000000 0.0000000
|
||||
-3.1818190 7.0000000 0.0000000
|
||||
3.1818180 7.0000000 0.0000000
|
||||
9.5454540 7.0000000 0.0000000
|
||||
15.9090900 7.0000000 0.0000000
|
||||
22.2727280 7.0000000 0.0000000
|
||||
28.6363640 7.0000000 0.0000000
|
||||
numsurf 59
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
1 0.897031 0.232842
|
||||
3 0.060587 0.232842
|
||||
2 0.060587 0.030714
|
||||
0 0.897031 0.030714
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
19 0.277402 0.063859
|
||||
7 0.613808 0.063859
|
||||
6 0.613808 0.259657
|
||||
20 0.277402 0.259657
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
7 0.897031 0.232842
|
||||
5 0.060587 0.232842
|
||||
4 0.060587 0.030714
|
||||
6 0.897031 0.030714
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
39 0.277402 0.063859
|
||||
1 0.613808 0.063859
|
||||
0 0.613808 0.259657
|
||||
40 0.277402 0.259657
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 3
|
||||
5 0.060587 0.232842
|
||||
7 0.897031 0.232842
|
||||
9 0.479744 0.314855
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 3
|
||||
3 0.060587 0.232842
|
||||
1 0.897031 0.232842
|
||||
8 0.479744 0.314855
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
30 0.521576 0.619038
|
||||
5 0.948646 0.619038
|
||||
9 0.948646 0.932239
|
||||
59 0.521576 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
10 0.284495 0.619038
|
||||
3 0.731946 0.619038
|
||||
8 0.731946 0.932239
|
||||
50 0.284495 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
20 0.256749 0.991291
|
||||
6 0.203391 0.991291
|
||||
4 0.203391 0.974157
|
||||
49 0.256749 0.974157
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
2 0.790337 0.991291
|
||||
29 0.736979 0.991291
|
||||
40 0.736979 0.974157
|
||||
0 0.790337 0.974157
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
29 0.736979 0.991291
|
||||
28 0.683620 0.991291
|
||||
41 0.683620 0.974157
|
||||
40 0.736979 0.974157
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
28 0.683620 0.991291
|
||||
27 0.630261 0.991291
|
||||
42 0.630261 0.974157
|
||||
41 0.683620 0.974157
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
27 0.630261 0.991291
|
||||
26 0.576902 0.991291
|
||||
43 0.576902 0.974157
|
||||
42 0.630261 0.974157
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
26 0.576902 0.991291
|
||||
25 0.523543 0.991291
|
||||
44 0.523543 0.974157
|
||||
43 0.576902 0.974157
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
25 0.523543 0.991291
|
||||
24 0.470185 0.991291
|
||||
45 0.470185 0.974157
|
||||
44 0.523543 0.974157
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
24 0.470185 0.991291
|
||||
23 0.416826 0.991291
|
||||
46 0.416826 0.974157
|
||||
45 0.470185 0.974157
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
23 0.416826 0.991291
|
||||
22 0.363467 0.991291
|
||||
47 0.363467 0.974157
|
||||
46 0.416826 0.974157
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
22 0.363467 0.991291
|
||||
21 0.310108 0.991291
|
||||
48 0.310108 0.974157
|
||||
47 0.363467 0.974157
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
21 0.310108 0.991291
|
||||
20 0.256749 0.991291
|
||||
49 0.256749 0.974157
|
||||
48 0.310108 0.974157
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
7 0.083704 0.619038
|
||||
19 0.510774 0.619038
|
||||
59 0.510774 0.932239
|
||||
9 0.083704 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
19 0.510774 0.619038
|
||||
18 0.948646 0.619038
|
||||
58 0.948646 0.932239
|
||||
59 0.510774 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
18 0.083704 0.619038
|
||||
17 0.510774 0.619038
|
||||
57 0.510774 0.932239
|
||||
58 0.083704 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
17 0.510774 0.619038
|
||||
16 0.948646 0.619038
|
||||
56 0.948646 0.932239
|
||||
57 0.510774 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
16 0.083704 0.619038
|
||||
15 0.510774 0.619038
|
||||
55 0.510774 0.932239
|
||||
56 0.083704 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
15 0.510774 0.619038
|
||||
14 0.948646 0.619038
|
||||
54 0.948646 0.932239
|
||||
55 0.510774 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
14 0.083704 0.619038
|
||||
13 0.510774 0.619038
|
||||
53 0.510774 0.932239
|
||||
54 0.083704 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
13 0.510774 0.619038
|
||||
12 0.948646 0.619038
|
||||
52 0.948646 0.932239
|
||||
53 0.510774 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
12 0.083704 0.619038
|
||||
11 0.521576 0.619038
|
||||
51 0.521576 0.932239
|
||||
52 0.083704 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
11 0.521576 0.619038
|
||||
10 0.948646 0.619038
|
||||
50 0.948646 0.932239
|
||||
51 0.521576 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
1 0.284495 0.619038
|
||||
39 0.731946 0.619038
|
||||
50 0.731946 0.932239
|
||||
8 0.284495 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
39 0.083704 0.619038
|
||||
38 0.510774 0.619038
|
||||
51 0.510774 0.932239
|
||||
50 0.083704 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
38 0.510774 0.619038
|
||||
37 0.948646 0.619038
|
||||
52 0.948646 0.932239
|
||||
51 0.510774 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
37 0.083704 0.619038
|
||||
36 0.521576 0.619038
|
||||
53 0.521576 0.932239
|
||||
52 0.083704 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
36 0.521576 0.619038
|
||||
35 0.948646 0.619038
|
||||
54 0.948646 0.932239
|
||||
53 0.521576 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
35 0.083704 0.619038
|
||||
34 0.521576 0.619038
|
||||
55 0.521576 0.932239
|
||||
54 0.083704 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
34 0.521576 0.619038
|
||||
33 0.948646 0.619038
|
||||
56 0.948646 0.932239
|
||||
55 0.521576 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
33 0.083704 0.619038
|
||||
32 0.521576 0.619038
|
||||
57 0.521576 0.932239
|
||||
56 0.083704 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
32 0.521576 0.619038
|
||||
31 0.948646 0.619038
|
||||
58 0.948646 0.932239
|
||||
57 0.521576 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
31 0.083704 0.619038
|
||||
30 0.521576 0.619038
|
||||
59 0.521576 0.932239
|
||||
58 0.083704 0.932239
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
5 0.874007 0.572981
|
||||
30 0.534809 0.572981
|
||||
49 0.534809 0.370077
|
||||
4 0.874007 0.370077
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
30 0.534809 0.572981
|
||||
31 0.195611 0.572981
|
||||
48 0.195611 0.370077
|
||||
49 0.534809 0.370077
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
31 0.874007 0.572981
|
||||
32 0.534809 0.572981
|
||||
47 0.534809 0.370077
|
||||
48 0.874007 0.370077
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
32 0.534809 0.572981
|
||||
33 0.195612 0.572981
|
||||
46 0.195612 0.370077
|
||||
47 0.534809 0.370077
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
33 0.874007 0.572981
|
||||
34 0.534809 0.572981
|
||||
45 0.534809 0.370077
|
||||
46 0.874007 0.370077
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
34 0.534809 0.572981
|
||||
35 0.195612 0.572981
|
||||
44 0.195612 0.370077
|
||||
45 0.534809 0.370077
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
35 0.874007 0.572981
|
||||
36 0.534809 0.572981
|
||||
43 0.534809 0.370077
|
||||
44 0.874007 0.370077
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
36 0.534809 0.572981
|
||||
37 0.195612 0.572981
|
||||
42 0.195612 0.370077
|
||||
43 0.534809 0.370077
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
37 0.874007 0.572981
|
||||
38 0.534809 0.572981
|
||||
41 0.534809 0.370077
|
||||
42 0.874007 0.370077
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
38 0.534809 0.572981
|
||||
39 0.195612 0.572981
|
||||
40 0.195612 0.370077
|
||||
41 0.534809 0.370077
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
3 0.874007 0.572981
|
||||
10 0.534809 0.572981
|
||||
29 0.534809 0.370077
|
||||
2 0.874007 0.370077
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
10 0.534809 0.572981
|
||||
11 0.195612 0.572981
|
||||
28 0.195612 0.370077
|
||||
29 0.534809 0.370077
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
11 0.874007 0.572981
|
||||
12 0.534809 0.572981
|
||||
27 0.534809 0.370077
|
||||
28 0.874007 0.370077
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
12 0.534809 0.572981
|
||||
13 0.195612 0.572981
|
||||
26 0.195612 0.370077
|
||||
27 0.534809 0.370077
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
13 0.874007 0.572981
|
||||
14 0.534809 0.572981
|
||||
25 0.534809 0.370077
|
||||
26 0.874007 0.370077
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
14 0.534809 0.572981
|
||||
15 0.195611 0.572981
|
||||
24 0.195611 0.370077
|
||||
25 0.534809 0.370077
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
15 0.874007 0.572981
|
||||
16 0.534809 0.572981
|
||||
23 0.534809 0.370077
|
||||
24 0.874007 0.370077
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
16 0.534809 0.572981
|
||||
17 0.195612 0.572981
|
||||
22 0.195612 0.370077
|
||||
23 0.534809 0.370077
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
17 0.874007 0.572981
|
||||
18 0.534809 0.572981
|
||||
21 0.534809 0.370077
|
||||
22 0.874007 0.370077
|
||||
SURF 0X0
|
||||
mat 1
|
||||
refs 4
|
||||
18 0.534809 0.572981
|
||||
19 0.195611 0.572981
|
||||
20 0.195611 0.370077
|
||||
21 0.534809 0.370077
|
||||
kids 0
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 9.7 KiB |
Binary file not shown.
Binary file not shown.
|
After Width: | Height: | Size: 899 KiB |
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0"?>
|
||||
<PropertyList>
|
||||
|
||||
<name>EYKS</name>
|
||||
|
||||
<skill-level>2</skill-level>
|
||||
|
||||
<description>
|
||||
Race example. You must start at EYKS.
|
||||
</description>
|
||||
|
||||
</PropertyList>
|
||||
@@ -0,0 +1,736 @@
|
||||
<?xml version="1.0"?>
|
||||
<PropertyList>
|
||||
|
||||
|
||||
<!-- Models -->
|
||||
|
||||
<object>
|
||||
<name>Pylon1_mdl</name>
|
||||
<type>model</type>
|
||||
<activated>1</activated>
|
||||
<path>/Missions/Generic/Models/Redbull/RedbullBluePylon.xml</path>
|
||||
<orientation>
|
||||
<heading-deg>0.0</heading-deg>
|
||||
<pitch-deg>0.0</pitch-deg>
|
||||
<roll-deg>0.0</roll-deg>
|
||||
</orientation>
|
||||
<world-position>
|
||||
<latitude-deg>54.881072</latitude-deg>
|
||||
<longitude-deg>23.882520</longitude-deg>
|
||||
<altitude-m>0.0</altitude-m>
|
||||
<altitude-is-AGL>1</altitude-is-AGL>
|
||||
</world-position>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>Pylon2_mdl</name>
|
||||
<type>model</type>
|
||||
<activated>1</activated>
|
||||
<path>/Missions/Generic/Models/Redbull/RedbullBluePylon.xml</path>
|
||||
<orientation>
|
||||
<heading-deg>0.0</heading-deg>
|
||||
<pitch-deg>0.0</pitch-deg>
|
||||
<roll-deg>0.0</roll-deg>
|
||||
</orientation>
|
||||
<world-position>
|
||||
<latitude-deg>54.882367</latitude-deg>
|
||||
<longitude-deg>23.882576</longitude-deg>
|
||||
<altitude-m>0.0</altitude-m>
|
||||
<altitude-is-AGL>1</altitude-is-AGL>
|
||||
</world-position>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>Pylon3_mdl</name>
|
||||
<type>model</type>
|
||||
<activated>1</activated>
|
||||
<path>/Missions/Generic/Models/Redbull/RedbullBluePylon.xml</path>
|
||||
<orientation>
|
||||
<heading-deg>0.0</heading-deg>
|
||||
<pitch-deg>0.0</pitch-deg>
|
||||
<roll-deg>0.0</roll-deg>
|
||||
</orientation>
|
||||
<world-position>
|
||||
<latitude-deg>54.883767</latitude-deg>
|
||||
<longitude-deg>23.882619</longitude-deg>
|
||||
<altitude-m>0.0</altitude-m>
|
||||
<altitude-is-AGL>1</altitude-is-AGL>
|
||||
</world-position>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>Pylon4_mdl</name>
|
||||
<type>model</type>
|
||||
<activated>1</activated>
|
||||
<path>/Missions/Generic/Models/Redbull/RedbullBluePylon.xml</path>
|
||||
<orientation>
|
||||
<heading-deg>180.0</heading-deg>
|
||||
<pitch-deg>0.0</pitch-deg>
|
||||
<roll-deg>0.0</roll-deg>
|
||||
</orientation>
|
||||
<world-position>
|
||||
<latitude-deg>54.882836</latitude-deg>
|
||||
<longitude-deg>23.878901</longitude-deg>
|
||||
<altitude-m>0.0</altitude-m>
|
||||
<altitude-is-AGL>1</altitude-is-AGL>
|
||||
</world-position>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>Gate1_mdl</name>
|
||||
<type>model</type>
|
||||
<activated>1</activated>
|
||||
<path>/Missions/Generic/Models/Redbull/RedbullBlueGate.xml</path>
|
||||
<orientation>
|
||||
<heading-deg>180.0</heading-deg>
|
||||
<pitch-deg>0.0</pitch-deg>
|
||||
<roll-deg>0.0</roll-deg>
|
||||
</orientation>
|
||||
<world-position>
|
||||
<latitude-deg>54.884694</latitude-deg>
|
||||
<longitude-deg>23.879046</longitude-deg>
|
||||
<altitude-m>0.0</altitude-m>
|
||||
<altitude-is-AGL>1</altitude-is-AGL>
|
||||
</world-position>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>Gate2_mdl</name>
|
||||
<type>model</type>
|
||||
<activated>1</activated>
|
||||
<path>/Missions/Generic/Models/Redbull/RedbullBlueGate.xml</path>
|
||||
<orientation>
|
||||
<heading-deg>200.0</heading-deg>
|
||||
<pitch-deg>0.0</pitch-deg>
|
||||
<roll-deg>0.0</roll-deg>
|
||||
</orientation>
|
||||
<world-position>
|
||||
<latitude-deg>54.881158</latitude-deg>
|
||||
<longitude-deg>23.878449</longitude-deg>
|
||||
<altitude-m>0.0</altitude-m>
|
||||
<altitude-is-AGL>1</altitude-is-AGL>
|
||||
</world-position>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>Gate3_mdl</name>
|
||||
<type>model</type>
|
||||
<activated>1</activated>
|
||||
<path>/Missions/Generic/Models/Redbull/RedbullBlueGate.xml</path>
|
||||
<orientation>
|
||||
<heading-deg>90.0</heading-deg>
|
||||
<pitch-deg>0.0</pitch-deg>
|
||||
<roll-deg>0.0</roll-deg>
|
||||
</orientation>
|
||||
<world-position>
|
||||
<latitude-deg>54.878796</latitude-deg>
|
||||
<longitude-deg>23.880764</longitude-deg>
|
||||
<altitude-m>0.0</altitude-m>
|
||||
<altitude-is-AGL>1</altitude-is-AGL>
|
||||
</world-position>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>Gate4_mdl</name>
|
||||
<type>model</type>
|
||||
<activated>1</activated>
|
||||
<path>/Missions/Generic/Models/Redbull/RedbullBlueGate.xml</path>
|
||||
<orientation>
|
||||
<heading-deg>0.0</heading-deg>
|
||||
<pitch-deg>0.0</pitch-deg>
|
||||
<roll-deg>0.0</roll-deg>
|
||||
</orientation>
|
||||
<world-position>
|
||||
<latitude-deg>54.885038</latitude-deg>
|
||||
<longitude-deg>23.882623</longitude-deg>
|
||||
<altitude-m>0.0</altitude-m>
|
||||
<altitude-is-AGL>1</altitude-is-AGL>
|
||||
</world-position>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>Gate5_mdl</name>
|
||||
<type>model</type>
|
||||
<activated>1</activated>
|
||||
<path>/Missions/Generic/Models/Redbull/RedbullBlueGate.xml</path>
|
||||
<orientation>
|
||||
<heading-deg>0.0</heading-deg>
|
||||
<pitch-deg>0.0</pitch-deg>
|
||||
<roll-deg>0.0</roll-deg>
|
||||
</orientation>
|
||||
<world-position>
|
||||
<latitude-deg>54.886365</latitude-deg>
|
||||
<longitude-deg>23.882698</longitude-deg>
|
||||
<altitude-m>0.0</altitude-m>
|
||||
<altitude-is-AGL>1</altitude-is-AGL>
|
||||
</world-position>
|
||||
</object>
|
||||
|
||||
|
||||
<!-- Points of Interest -->
|
||||
|
||||
<object>
|
||||
<name>POI_point1</name>
|
||||
<type>point-of-interest</type>
|
||||
<selected-model>//Missions/Generic/Models/checkpoint-h50-a.xml</selected-model>
|
||||
<activated>1</activated>
|
||||
<target-name>Start gate</target-name>
|
||||
<attached-world-object>
|
||||
<object-reference>Gate1_mdl</object-reference>
|
||||
<x-offset-m>0.0</x-offset-m>
|
||||
<y-offset-m>0.0</y-offset-m>
|
||||
<z-offset-m>30.0</z-offset-m>
|
||||
</attached-world-object>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>POI_point2</name>
|
||||
<type>point-of-interest</type>
|
||||
<selected-model>//Missions/Generic/Models/checkpoint-h50-a.xml</selected-model>
|
||||
<activated>0</activated>
|
||||
<target-name>Pylon</target-name>
|
||||
<attached-world-object>
|
||||
<object-reference>Pylon4_mdl</object-reference>
|
||||
<x-offset-m>0.0</x-offset-m>
|
||||
<y-offset-m>0.0</y-offset-m>
|
||||
<z-offset-m>30.0</z-offset-m>
|
||||
</attached-world-object>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>POI_point3</name>
|
||||
<type>point-of-interest</type>
|
||||
<selected-model>//Missions/Generic/Models/checkpoint-h50-a.xml</selected-model>
|
||||
<activated>0</activated>
|
||||
<target-name>Gate 2</target-name>
|
||||
<attached-world-object>
|
||||
<object-reference>Gate2_mdl</object-reference>
|
||||
<x-offset-m>0.0</x-offset-m>
|
||||
<y-offset-m>0.0</y-offset-m>
|
||||
<z-offset-m>30.0</z-offset-m>
|
||||
</attached-world-object>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>POI_point4</name>
|
||||
<type>point-of-interest</type>
|
||||
<selected-model>//Missions/Generic/Models/checkpoint-h50-a.xml</selected-model>
|
||||
<activated>0</activated>
|
||||
<target-name>Gate 3</target-name>
|
||||
<attached-world-object>
|
||||
<object-reference>Gate3_mdl</object-reference>
|
||||
<x-offset-m>0.0</x-offset-m>
|
||||
<y-offset-m>0.0</y-offset-m>
|
||||
<z-offset-m>30.0</z-offset-m>
|
||||
</attached-world-object>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>POI_point5</name>
|
||||
<type>point-of-interest</type>
|
||||
<selected-model>//Missions/Generic/Models/checkpoint-h50-a.xml</selected-model>
|
||||
<activated>0</activated>
|
||||
<target-name>Pylon 1/3</target-name>
|
||||
<attached-world-object>
|
||||
<object-reference>Pylon1_mdl</object-reference>
|
||||
<x-offset-m>0.0</x-offset-m>
|
||||
<y-offset-m>0.0</y-offset-m>
|
||||
<z-offset-m>30.0</z-offset-m>
|
||||
</attached-world-object>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>POI_point6</name>
|
||||
<type>point-of-interest</type>
|
||||
<selected-model>//Missions/Generic/Models/checkpoint-h50-a.xml</selected-model>
|
||||
<activated>0</activated>
|
||||
<target-name>Pylon 2/3</target-name>
|
||||
<attached-world-object>
|
||||
<object-reference>Pylon2_mdl</object-reference>
|
||||
<x-offset-m>0.0</x-offset-m>
|
||||
<y-offset-m>0.0</y-offset-m>
|
||||
<z-offset-m>30.0</z-offset-m>
|
||||
</attached-world-object>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>POI_point7</name>
|
||||
<type>point-of-interest</type>
|
||||
<selected-model>//Missions/Generic/Models/checkpoint-h50-a.xml</selected-model>
|
||||
<activated>0</activated>
|
||||
<target-name>Pylon 3/3</target-name>
|
||||
<attached-world-object>
|
||||
<object-reference>Pylon3_mdl</object-reference>
|
||||
<x-offset-m>0.0</x-offset-m>
|
||||
<y-offset-m>0.0</y-offset-m>
|
||||
<z-offset-m>30.0</z-offset-m>
|
||||
</attached-world-object>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>POI_point8</name>
|
||||
<type>point-of-interest</type>
|
||||
<selected-model>//Missions/Generic/Models/checkpoint-h50-a.xml</selected-model>
|
||||
<activated>0</activated>
|
||||
<target-name>Gate 4</target-name>
|
||||
<attached-world-object>
|
||||
<object-reference>Gate4_mdl</object-reference>
|
||||
<x-offset-m>0.0</x-offset-m>
|
||||
<y-offset-m>0.0</y-offset-m>
|
||||
<z-offset-m>30.0</z-offset-m>
|
||||
</attached-world-object>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>POI_point9</name>
|
||||
<type>point-of-interest</type>
|
||||
<selected-model>//Missions/Generic/Models/checkpoint-h50-a.xml</selected-model>
|
||||
<activated>0</activated>
|
||||
<target-name>Gate 5</target-name>
|
||||
<attached-world-object>
|
||||
<object-reference>Gate5_mdl</object-reference>
|
||||
<x-offset-m>0.0</x-offset-m>
|
||||
<y-offset-m>0.0</y-offset-m>
|
||||
<z-offset-m>30.0</z-offset-m>
|
||||
</attached-world-object>
|
||||
</object>
|
||||
|
||||
<!-- Object activation actions -->
|
||||
|
||||
<!-- SHOW -->
|
||||
<object>
|
||||
<name>SHOW_POI_point1</name>
|
||||
<type>object-activation-action</type>
|
||||
<object-state>1</object-state>
|
||||
<reference-list>
|
||||
<object-reference>POI_point1</object-reference>
|
||||
</reference-list>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>SHOW_POI_point2</name>
|
||||
<type>object-activation-action</type>
|
||||
<object-state>1</object-state>
|
||||
<reference-list>
|
||||
<object-reference>POI_point2</object-reference>
|
||||
</reference-list>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>SHOW_POI_point3</name>
|
||||
<type>object-activation-action</type>
|
||||
<object-state>1</object-state>
|
||||
<reference-list>
|
||||
<object-reference>POI_point3</object-reference>
|
||||
</reference-list>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>SHOW_POI_point4</name>
|
||||
<type>object-activation-action</type>
|
||||
<object-state>1</object-state>
|
||||
<reference-list>
|
||||
<object-reference>POI_point4</object-reference>
|
||||
</reference-list>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>SHOW_POI_point5</name>
|
||||
<type>object-activation-action</type>
|
||||
<object-state>1</object-state>
|
||||
<reference-list>
|
||||
<object-reference>POI_point5</object-reference>
|
||||
</reference-list>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>SHOW_POI_point6</name>
|
||||
<type>object-activation-action</type>
|
||||
<object-state>1</object-state>
|
||||
<reference-list>
|
||||
<object-reference>POI_point6</object-reference>
|
||||
</reference-list>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>SHOW_POI_point7</name>
|
||||
<type>object-activation-action</type>
|
||||
<object-state>1</object-state>
|
||||
<reference-list>
|
||||
<object-reference>POI_point7</object-reference>
|
||||
</reference-list>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>SHOW_POI_point8</name>
|
||||
<type>object-activation-action</type>
|
||||
<object-state>1</object-state>
|
||||
<reference-list>
|
||||
<object-reference>POI_point8</object-reference>
|
||||
</reference-list>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>SHOW_POI_point9</name>
|
||||
<type>object-activation-action</type>
|
||||
<object-state>1</object-state>
|
||||
<reference-list>
|
||||
<object-reference>POI_point9</object-reference>
|
||||
</reference-list>
|
||||
</object>
|
||||
|
||||
<!-- HIDE -->
|
||||
<object>
|
||||
<name>HIDE_POI_point1</name>
|
||||
<type>object-activation-action</type>
|
||||
<object-state>0</object-state>
|
||||
<reference-list>
|
||||
<object-reference>POI_point1</object-reference>
|
||||
</reference-list>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>HIDE_POI_point2</name>
|
||||
<type>object-activation-action</type>
|
||||
<object-state>0</object-state>
|
||||
<reference-list>
|
||||
<object-reference>POI_point2</object-reference>
|
||||
</reference-list>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>HIDE_POI_point3</name>
|
||||
<type>object-activation-action</type>
|
||||
<object-state>0</object-state>
|
||||
<reference-list>
|
||||
<object-reference>POI_point3</object-reference>
|
||||
</reference-list>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>HIDE_POI_point4</name>
|
||||
<type>object-activation-action</type>
|
||||
<object-state>0</object-state>
|
||||
<reference-list>
|
||||
<object-reference>POI_point4</object-reference>
|
||||
</reference-list>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>HIDE_POI_point5</name>
|
||||
<type>object-activation-action</type>
|
||||
<object-state>0</object-state>
|
||||
<reference-list>
|
||||
<object-reference>POI_point5</object-reference>
|
||||
</reference-list>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>HIDE_POI_point6</name>
|
||||
<type>object-activation-action</type>
|
||||
<object-state>0</object-state>
|
||||
<reference-list>
|
||||
<object-reference>POI_point6</object-reference>
|
||||
</reference-list>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>HIDE_POI_point7</name>
|
||||
<type>object-activation-action</type>
|
||||
<object-state>0</object-state>
|
||||
<reference-list>
|
||||
<object-reference>POI_point7</object-reference>
|
||||
</reference-list>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>HIDE_POI_point8</name>
|
||||
<type>object-activation-action</type>
|
||||
<object-state>0</object-state>
|
||||
<reference-list>
|
||||
<object-reference>POI_point8</object-reference>
|
||||
</reference-list>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>HIDE_POI_point9</name>
|
||||
<type>object-activation-action</type>
|
||||
<object-state>0</object-state>
|
||||
<reference-list>
|
||||
<object-reference>POI_point9</object-reference>
|
||||
</reference-list>
|
||||
</object>
|
||||
|
||||
|
||||
<!-- -->
|
||||
|
||||
<object>
|
||||
<name>Enter_msg</name>
|
||||
<type>dialog-action</type>
|
||||
<text>Enter</text>
|
||||
<sound-file>glassbell.wav</sound-file>
|
||||
<delay-sec>3</delay-sec>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>Sound1</name>
|
||||
<type>single-shot-sound-action</type>
|
||||
<sound-file>glassbell.wav</sound-file>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>Penalty_msg</name>
|
||||
<type>dialog-action</type>
|
||||
<text>Penalty</text>
|
||||
<delay-sec>3</delay-sec>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>pylon1</name>
|
||||
<type>pylon-race-point</type>
|
||||
<activated>1</activated>
|
||||
<ignore-distance-m>50</ignore-distance-m>
|
||||
<inside-direction>left</inside-direction>
|
||||
<orientation>
|
||||
<heading-deg>0</heading-deg>
|
||||
</orientation>
|
||||
<world-position>
|
||||
<latitude-deg>54.881072</latitude-deg>
|
||||
<longitude-deg>23.882520</longitude-deg>
|
||||
<altitude-m>0.0</altitude-m>
|
||||
<altitude-is-AGL>1</altitude-is-AGL>
|
||||
</world-position>
|
||||
<on-enter-actions>
|
||||
<object-reference>HIDE_POI_point5</object-reference>
|
||||
<object-reference>SHOW_POI_point6</object-reference>
|
||||
<object-reference>Sound1</object-reference>
|
||||
</on-enter-actions>
|
||||
<on-penalty-actions>
|
||||
<object-reference>Penalty_msg</object-reference>
|
||||
</on-penalty-actions>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>pylon2</name>
|
||||
<type>pylon-race-point</type>
|
||||
<activated>1</activated>
|
||||
<ignore-distance-m>50</ignore-distance-m>
|
||||
<inside-direction>right</inside-direction>
|
||||
<orientation>
|
||||
<heading-deg>0</heading-deg>
|
||||
</orientation>
|
||||
<world-position>
|
||||
<latitude-deg>54.882367</latitude-deg>
|
||||
<longitude-deg>23.882576</longitude-deg>
|
||||
<altitude-m>0.0</altitude-m>
|
||||
<altitude-is-AGL>1</altitude-is-AGL>
|
||||
</world-position>
|
||||
<on-enter-actions>
|
||||
<object-reference>HIDE_POI_point6</object-reference>
|
||||
<object-reference>SHOW_POI_point7</object-reference>
|
||||
<object-reference>Sound1</object-reference>
|
||||
</on-enter-actions>
|
||||
<on-penalty-actions>
|
||||
<object-reference>Penalty_msg</object-reference>
|
||||
</on-penalty-actions>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>pylon3</name>
|
||||
<type>pylon-race-point</type>
|
||||
<activated>1</activated>
|
||||
<ignore-distance-m>50</ignore-distance-m>
|
||||
<inside-direction>left</inside-direction>
|
||||
<orientation>
|
||||
<heading-deg>0</heading-deg>
|
||||
</orientation>
|
||||
<world-position>
|
||||
<latitude-deg>54.883767</latitude-deg>
|
||||
<longitude-deg>23.882619</longitude-deg>
|
||||
<altitude-m>0.0</altitude-m>
|
||||
<altitude-is-AGL>1</altitude-is-AGL>
|
||||
</world-position>
|
||||
<on-enter-actions>
|
||||
<object-reference>HIDE_POI_point7</object-reference>
|
||||
<object-reference>SHOW_POI_point8</object-reference>
|
||||
<object-reference>Sound1</object-reference>
|
||||
</on-enter-actions>
|
||||
<on-penalty-actions>
|
||||
<object-reference>Penalty_msg</object-reference>
|
||||
</on-penalty-actions>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>pylon4</name>
|
||||
<type>pylon-race-point</type>
|
||||
<activated>1</activated>
|
||||
<ignore-distance-m>50</ignore-distance-m>
|
||||
<inside-direction>right</inside-direction>
|
||||
<orientation>
|
||||
<heading-deg>180</heading-deg>
|
||||
</orientation>
|
||||
<world-position>
|
||||
<latitude-deg>54.882836</latitude-deg>
|
||||
<longitude-deg>23.878901</longitude-deg>
|
||||
<altitude-m>0.0</altitude-m>
|
||||
<altitude-is-AGL>1</altitude-is-AGL>
|
||||
</world-position>
|
||||
<on-enter-actions>
|
||||
<object-reference>HIDE_POI_point2</object-reference>
|
||||
<object-reference>SHOW_POI_point3</object-reference>
|
||||
<object-reference>Sound1</object-reference>
|
||||
</on-enter-actions>
|
||||
<on-penalty-actions>
|
||||
<object-reference>Penalty_msg</object-reference>
|
||||
</on-penalty-actions>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>gate1</name>
|
||||
<type>gate-race-point</type>
|
||||
<activated>1</activated>
|
||||
<width-m>20</width-m>
|
||||
<height-m>20</height-m>
|
||||
<orientation>
|
||||
<heading-deg>180</heading-deg>
|
||||
</orientation>
|
||||
<world-position>
|
||||
<latitude-deg>54.884694</latitude-deg>
|
||||
<longitude-deg>23.879046</longitude-deg>
|
||||
<altitude-m>0.0</altitude-m>
|
||||
<altitude-is-AGL>1</altitude-is-AGL>
|
||||
</world-position>
|
||||
<on-enter-actions>
|
||||
<object-reference>HIDE_POI_point1</object-reference>
|
||||
<object-reference>SHOW_POI_point2</object-reference>
|
||||
<object-reference>Sound1</object-reference>
|
||||
</on-enter-actions>
|
||||
<on-penalty-actions>
|
||||
<object-reference>Penalty_msg</object-reference>
|
||||
</on-penalty-actions>
|
||||
</object>
|
||||
|
||||
|
||||
<object>
|
||||
<name>gate2</name>
|
||||
<type>gate-race-point</type>
|
||||
<activated>1</activated>
|
||||
<width-m>20</width-m>
|
||||
<height-m>20</height-m>
|
||||
<orientation>
|
||||
<heading-deg>200</heading-deg>
|
||||
</orientation>
|
||||
<world-position>
|
||||
<latitude-deg>54.881158</latitude-deg>
|
||||
<longitude-deg>23.878449</longitude-deg>
|
||||
<altitude-m>0.0</altitude-m>
|
||||
<altitude-is-AGL>1</altitude-is-AGL>
|
||||
</world-position>
|
||||
<on-enter-actions>
|
||||
<object-reference>HIDE_POI_point3</object-reference>
|
||||
<object-reference>SHOW_POI_point4</object-reference>
|
||||
<object-reference>Sound1</object-reference>
|
||||
</on-enter-actions>
|
||||
<on-penalty-actions>
|
||||
<object-reference>Penalty_msg</object-reference>
|
||||
</on-penalty-actions>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>gate3</name>
|
||||
<type>gate-race-point</type>
|
||||
<activated>1</activated>
|
||||
<width-m>20</width-m>
|
||||
<height-m>20</height-m>
|
||||
<orientation>
|
||||
<heading-deg>90</heading-deg>
|
||||
</orientation>
|
||||
<world-position>
|
||||
<latitude-deg>54.878796</latitude-deg>
|
||||
<longitude-deg>23.880764</longitude-deg>
|
||||
<altitude-m>0.0</altitude-m>
|
||||
<altitude-is-AGL>1</altitude-is-AGL>
|
||||
</world-position>
|
||||
<on-enter-actions>
|
||||
<object-reference>HIDE_POI_point4</object-reference>
|
||||
<object-reference>SHOW_POI_point5</object-reference>
|
||||
<object-reference>Sound1</object-reference>
|
||||
</on-enter-actions>
|
||||
<on-penalty-actions>
|
||||
<object-reference>Penalty_msg</object-reference>
|
||||
</on-penalty-actions>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>gate4</name>
|
||||
<type>gate-race-point</type>
|
||||
<activated>1</activated>
|
||||
<width-m>20</width-m>
|
||||
<height-m>20</height-m>
|
||||
<orientation>
|
||||
<heading-deg>0</heading-deg>
|
||||
</orientation>
|
||||
<world-position>
|
||||
<latitude-deg>54.885038</latitude-deg>
|
||||
<longitude-deg>23.882623</longitude-deg>
|
||||
<altitude-m>0.0</altitude-m>
|
||||
<altitude-is-AGL>1</altitude-is-AGL>
|
||||
</world-position>
|
||||
<on-enter-actions>
|
||||
<object-reference>HIDE_POI_point8</object-reference>
|
||||
<object-reference>SHOW_POI_point9</object-reference>
|
||||
<object-reference>Sound1</object-reference>
|
||||
</on-enter-actions>
|
||||
<on-penalty-actions>
|
||||
<object-reference>Penalty_msg</object-reference>
|
||||
</on-penalty-actions>
|
||||
</object>
|
||||
|
||||
<object>
|
||||
<name>gate5</name>
|
||||
<type>gate-race-point</type>
|
||||
<activated>1</activated>
|
||||
<width-m>20</width-m>
|
||||
<height-m>20</height-m>
|
||||
<orientation>
|
||||
<heading-deg>0</heading-deg>
|
||||
</orientation>
|
||||
<world-position>
|
||||
<latitude-deg>54.886365</latitude-deg>
|
||||
<longitude-deg>23.882698</longitude-deg>
|
||||
<altitude-m>0.0</altitude-m>
|
||||
<altitude-is-AGL>1</altitude-is-AGL>
|
||||
</world-position>
|
||||
<on-enter-actions>
|
||||
<object-reference>HIDE_POI_point9</object-reference>
|
||||
<object-reference>SHOW_POI_point1</object-reference>
|
||||
<object-reference>Sound1</object-reference>
|
||||
</on-enter-actions>
|
||||
<on-penalty-actions>
|
||||
<object-reference>Penalty_msg</object-reference>
|
||||
</on-penalty-actions>
|
||||
</object>
|
||||
|
||||
|
||||
<object>
|
||||
<type>race</type>
|
||||
<name>EYKS race</name>
|
||||
<countdown-sec>5</countdown-sec>
|
||||
<number-of-laps>2</number-of-laps>
|
||||
<lap-distance>100</lap-distance>
|
||||
<clock-start>on-first-race-point</clock-start>
|
||||
<race-course-active>1</race-course-active>
|
||||
<race-course>
|
||||
<object-reference>gate1</object-reference>
|
||||
<object-reference>pylon4</object-reference>
|
||||
<object-reference>gate2</object-reference>
|
||||
<object-reference>gate3</object-reference>
|
||||
<object-reference>pylon1</object-reference>
|
||||
<object-reference>pylon2</object-reference>
|
||||
<object-reference>pylon3</object-reference>
|
||||
<object-reference>gate4</object-reference>
|
||||
<object-reference>gate5</object-reference>
|
||||
</race-course>
|
||||
</object>
|
||||
|
||||
</PropertyList>
|
||||
@@ -0,0 +1,88 @@
|
||||
|
||||
|
||||
mission.extension_add("MissionObject", {
|
||||
|
||||
type: "gate-race-point",
|
||||
|
||||
new: func(n) {
|
||||
var m = {
|
||||
parents : [me],
|
||||
name : n.getValue("name"),
|
||||
activated : mission.get(n, "activated", 0),
|
||||
heading : mission.get(n, "orientation/heading-deg", 0),
|
||||
ignore_dist : mission.get(n, "ignore-distance-m", 100),
|
||||
enter_actions : n.getNode("on-enter-actions"),
|
||||
penalty_actions : n.getNode("on-penalty-actions"),
|
||||
height : mission.get(n, "height-m", 20.0),
|
||||
width : mission.get(n, "width-m", 20.0),
|
||||
coord : mission.get_coord(n.getNode("world-position")),
|
||||
_direct_dist : nil,
|
||||
_norm_dist : 0,
|
||||
_h_dist : nil,
|
||||
_v_dist : nil,
|
||||
_prev_norm_dist : nil,
|
||||
};
|
||||
|
||||
|
||||
m.timer = maketimer(0.5, func m._loop());
|
||||
|
||||
return m;
|
||||
},
|
||||
|
||||
# init: func {
|
||||
# if (me.activated)
|
||||
# me.start();
|
||||
# },
|
||||
|
||||
|
||||
start: func {
|
||||
me.timer.start();
|
||||
},
|
||||
|
||||
stop: func {
|
||||
me.timer.stop();
|
||||
},
|
||||
|
||||
del: func {
|
||||
me.stop();
|
||||
},
|
||||
|
||||
|
||||
_loop: func {
|
||||
me._update();
|
||||
},
|
||||
|
||||
_update: func {
|
||||
var ac_coord = geo.aircraft_position();
|
||||
me._direct_dist = me.coord.direct_distance_to(ac_coord);
|
||||
var hdg = me.heading * D2R;
|
||||
var crs = me.coord.course_to(ac_coord) * D2R;
|
||||
|
||||
me._v_dist = ac_coord.alt() - me.coord.alt();
|
||||
|
||||
var d = math.sqrt(me._direct_dist * me._direct_dist - me._v_dist * me._v_dist);
|
||||
me._prev_norm_dist = me._norm_dist;
|
||||
me._norm_dist = math.cos(hdg - crs) * d;
|
||||
|
||||
if (me._prev_norm_dist >= 0)
|
||||
return;
|
||||
|
||||
if (me._norm_dist < 0)
|
||||
return;
|
||||
|
||||
me._h_dist = math.sin(hdg - crs) * d;
|
||||
if (math.abs(me._h_dist) > me.width/2)
|
||||
return;
|
||||
if (math.abs(me._v_dist) > me.height)
|
||||
return;
|
||||
|
||||
if (me.enter_actions != nil)
|
||||
mission.activate_object_group(me.enter_actions);
|
||||
|
||||
me.stop();
|
||||
setprop("/sim/mission/race/signals/next-race-point", 1);
|
||||
|
||||
},
|
||||
|
||||
|
||||
}); #extension_add
|
||||
@@ -35,6 +35,8 @@ var update = func {
|
||||
}
|
||||
|
||||
var check_POI = func {
|
||||
if (!mission.mission_started)
|
||||
return;
|
||||
poi("count", var count = 0);
|
||||
setsize(active_POI, 0);
|
||||
foreach (var p; node.getChildren("point-of-interest"))
|
||||
|
||||
@@ -0,0 +1,96 @@
|
||||
|
||||
|
||||
mission.extension_add("MissionObject", {
|
||||
|
||||
type: "pylon-race-point",
|
||||
|
||||
new: func(n) {
|
||||
var m = {
|
||||
parents : [me],
|
||||
name : n.getValue("name"),
|
||||
activated : mission.get(n, "activated", 0),
|
||||
heading : mission.get(n, "orientation/heading-deg", 0),
|
||||
ignore_dist : mission.get(n, "ignore-distance-m", 100),
|
||||
enter_actions : n.getNode("on-enter-actions"),
|
||||
penalty_actions : n.getNode("on-penalty-actions"),
|
||||
inside_dir : mission.get(n, "inside-direction", 0),
|
||||
coord : mission.get_coord(n.getNode("world-position")),
|
||||
_direct_dist : nil,
|
||||
_norm_dist : 0,
|
||||
_h_dist : nil,
|
||||
_v_dist : nil,
|
||||
_prev_norm_dist : nil,
|
||||
};
|
||||
|
||||
if (m.inside_dir == "right")
|
||||
m.inside_dir = -1;
|
||||
elsif (m.inside_dir == "left")
|
||||
m.inside_dir = 1;
|
||||
else m.inside_dir = 0;
|
||||
|
||||
m.timer = maketimer(0.5, func m._loop());
|
||||
|
||||
return m;
|
||||
},
|
||||
|
||||
# init: func {
|
||||
# if (me.activated)
|
||||
# me.start();
|
||||
# },
|
||||
|
||||
|
||||
start: func {
|
||||
me.timer.start();
|
||||
},
|
||||
|
||||
stop: func {
|
||||
me.timer.stop();
|
||||
},
|
||||
|
||||
del: func {
|
||||
me.stop();
|
||||
},
|
||||
|
||||
|
||||
_loop: func {
|
||||
me._update();
|
||||
},
|
||||
|
||||
_update: func {
|
||||
var ac_coord = geo.aircraft_position();
|
||||
|
||||
me._direct_dist = me.coord.direct_distance_to(ac_coord);
|
||||
if (me._direct_dist >= me.ignore_dist)
|
||||
return;
|
||||
|
||||
var hdg = me.heading * D2R;
|
||||
var crs = me.coord.course_to(ac_coord) * D2R;
|
||||
|
||||
|
||||
me._v_dist = ac_coord.alt() - me.coord.alt();
|
||||
|
||||
var d = math.sqrt(me._direct_dist * me._direct_dist - me._v_dist * me._v_dist);
|
||||
me._prev_norm_dist = me._norm_dist;
|
||||
me._norm_dist = math.cos(hdg - crs) * d;
|
||||
|
||||
if (me._prev_norm_dist >= 0)
|
||||
return;
|
||||
|
||||
if (me._norm_dist < 0)
|
||||
return;
|
||||
|
||||
me._h_dist = math.sin(hdg - crs) * d;
|
||||
|
||||
#if (math.sgn(me._h_dist) != me.inside_dir) {
|
||||
if (me.enter_actions != nil)
|
||||
mission.activate_object_group(me.enter_actions);
|
||||
#}
|
||||
|
||||
|
||||
me.stop();
|
||||
setprop("/sim/mission/race/signals/next-race-point", 1);
|
||||
|
||||
},
|
||||
|
||||
|
||||
}); #extension_add
|
||||
@@ -0,0 +1,201 @@
|
||||
|
||||
|
||||
|
||||
var w = 400;
|
||||
var h = 80;
|
||||
var bg_color = [0.2, 0.4, 0.7, 0.9];
|
||||
var line_color = [1, 1, 1, 0.8];
|
||||
var txt_h = h / 10;
|
||||
var txt2_h = txt_h * 0.8;
|
||||
var font = "LiberationFonts/LiberationSans-Italic.ttf";
|
||||
var font2 = "LiberationFonts/LiberationMono-Italic.ttf";
|
||||
var offset = 5;
|
||||
var th = h - offset * 2; # table height
|
||||
var x_left = offset; # table corners
|
||||
var x_right = w - x_left; #
|
||||
var y_top = x_left; #
|
||||
var y_bottom = th + x_left; # /table corners
|
||||
var margin = 10;
|
||||
|
||||
var window = canvas.Window.new([w,h]);
|
||||
|
||||
var scr_x = func getprop("/sim/startup/xsize");
|
||||
var scr_y = func getprop("/sim/startup/ysize");
|
||||
|
||||
window.set("tf/t[0]", scr_x() - w - 20);
|
||||
window.set("tf/t[1]", scr_y() / 20);
|
||||
|
||||
var mycanvas = window.createCanvas();
|
||||
mycanvas.setColorBackground(0,0,0,0);
|
||||
|
||||
var table = mycanvas.createGroup();
|
||||
var cfg = {
|
||||
"border-top-radius": h/2.1,
|
||||
"border-bottom-radius": h/2.1,
|
||||
};
|
||||
table.createChild("path")
|
||||
.rect(offset, offset, w - 2*offset, h - 2*offset, cfg)
|
||||
.setColor(line_color)
|
||||
.setColorFill(bg_color)
|
||||
.setStrokeLineWidth(2);
|
||||
|
||||
|
||||
var _data = [
|
||||
# 0 , 1 , 2 , 3 , 4 , 5 , 6 ,
|
||||
# , x , y , Alignment , Size , Font , Text ,
|
||||
["Lap" , h/2 , h/2 + offset/2 , "left-center" , h/4 , font , "Lap" ],
|
||||
["_Lap" , w/4 , h/2 , "left-center" , h/3 , font2 , "-/-" ],
|
||||
["TotalTime" , w/1.5 , (h - 2*offset)/3 , "right-bottom" , h/6 , font , "Total Time" ],
|
||||
["_TotalTime" , w/1.5 + offset , (h - 2*offset)/3 , "left-bottom" , h/4 , font2 , "00:00.0" ],
|
||||
["CurrentLap" , w/1.5 , (h - 2*offset)/3*2 , "right-bottom" , h/6 , font , "Current Lap"],
|
||||
["_CurrentLap" , w/1.5 + offset , (h - 2*offset)/3*2 , "left-bottom" , h/4 , font2 , "00:00.0" ],
|
||||
["LastLap" , w/1.5 , (h - 2*offset)/3*3 , "right-bottom" , h/6 , font , "Last Lap" ],
|
||||
["_LastLap" , w/1.5 + offset , (h - 2*offset)/3*3 , "left-bottom" , h/4 , font2 , "00:00.0" ],
|
||||
];
|
||||
|
||||
var txt = {};
|
||||
foreach (var a; _data) {
|
||||
txt[a[0]] = table.createChild("text");
|
||||
txt[a[0]]
|
||||
.setTranslation(a[1], a[2])
|
||||
.setText(a[6])
|
||||
.setAlignment(a[3])
|
||||
.setFontSize(a[4])
|
||||
.setFont(a[5])
|
||||
.setColor(1,1,1);
|
||||
}
|
||||
|
||||
|
||||
var time_str = func(t) {
|
||||
var t1 = int(math.mod(t / 60, 60));
|
||||
var t2 = int(math.mod(t, 60));
|
||||
var t3 = int(math.mod(t * 10, 10));
|
||||
sprintf("%02d:%02d.%d", t1, t2, t3);
|
||||
}
|
||||
|
||||
var timer = {
|
||||
_tN : props.getNode("/sim/time/elapsed-sec"),
|
||||
_timer : maketimer(0.1, func timer._loop()),
|
||||
_time : 0,
|
||||
_penalty : 0,
|
||||
_total : 0,
|
||||
_current : 0,
|
||||
_last : 0,
|
||||
|
||||
|
||||
start: func {
|
||||
me._start_time = me._tN.getValue();
|
||||
me._timer.start();
|
||||
},
|
||||
|
||||
stop: func {
|
||||
me._timer.stop();
|
||||
},
|
||||
|
||||
add_time: func(t) {
|
||||
me._penalty += t;
|
||||
},
|
||||
|
||||
reset: func {
|
||||
me._total += me._time + me._penalty;
|
||||
me._last = me._time;
|
||||
me._start_time = me._tN.getValue();
|
||||
txt._LastLap.setText(time_str(me._last));
|
||||
},
|
||||
|
||||
_loop: func {
|
||||
me._time = me._tN.getValue() - me._start_time;
|
||||
txt._TotalTime.setText(time_str(me._total + me._time + me._penalty));
|
||||
txt._CurrentLap.setText(time_str(me._time));
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
var race = {
|
||||
type: "race",
|
||||
|
||||
new: func(n) {
|
||||
var m = {
|
||||
parents : [race],
|
||||
name : n.getValue("name"),
|
||||
_num_of_laps : mission.get(n, "number-of-laps", 1),
|
||||
_clock_start : mission.get(n, "clock-start", "immediate"), #on-action, on-first-race-point, immediate
|
||||
_course : n.getNode("race-course", 0),
|
||||
_race_points : [],
|
||||
_current_point : 0,
|
||||
_lap : 1,
|
||||
_next_lap : 0,
|
||||
};
|
||||
return m;
|
||||
},
|
||||
|
||||
init: func {
|
||||
me._listeners = [
|
||||
setlistener("/sim/mission/race/signals/next-race-point", func me._next_point()),
|
||||
];
|
||||
|
||||
if (me._clock_start == "on-action")
|
||||
me._clock_start = 0;
|
||||
elsif (me._clock_start == "on-first-race-point")
|
||||
me._clock_start = 1;
|
||||
else me._clock_start = 2;
|
||||
|
||||
|
||||
if ( me._course != nil )
|
||||
foreach(var ref; me._course.getChildren("object-reference"))
|
||||
foreach(var obj; mission.mission_objects)
|
||||
if (ref.getValue() == obj.name)
|
||||
append(me._race_points, obj);
|
||||
|
||||
me._points_count = size(me._race_points);
|
||||
txt._Lap.setText(1 ~ "/" ~ me._num_of_laps);
|
||||
me.start();
|
||||
},
|
||||
|
||||
start: func {
|
||||
me._race_points[me._current_point].start();
|
||||
},
|
||||
|
||||
stop: func {
|
||||
timer.stop();
|
||||
foreach(var a; me._race_points)
|
||||
a.stop();
|
||||
},
|
||||
|
||||
del: func {
|
||||
window.del();
|
||||
me.stop();
|
||||
foreach(var l; me._listeners)
|
||||
removelistener(l);
|
||||
setsize(me._listeners, 0);
|
||||
},
|
||||
|
||||
_next_point: func {
|
||||
if ((me._clock_start == 1) and (me._current_point == 0) and me._lap == 1)
|
||||
timer.start();
|
||||
|
||||
if (me._next_lap) {
|
||||
me._next_lap = 0;
|
||||
me._lap += 1;
|
||||
if (me._lap > me._num_of_laps) {
|
||||
timer.reset();
|
||||
timer.stop();
|
||||
me.stop();
|
||||
txt._CurrentLap.setText("00:00.0");
|
||||
return;
|
||||
}
|
||||
timer.reset();
|
||||
txt._Lap.setText(me._lap ~ "/" ~ me._num_of_laps);
|
||||
}
|
||||
|
||||
me._current_point += 1;
|
||||
if ( (me._current_point + 1) > me._points_count ) {
|
||||
me._current_point = 0;
|
||||
me._next_lap = 1;
|
||||
}
|
||||
|
||||
me._race_points[me._current_point].start();
|
||||
},
|
||||
};
|
||||
|
||||
mission.extension_add("MissionObject", race);
|
||||
Reference in New Issue
Block a user