]> git.mxchange.org Git - flightgear.git/blob - scripts/perl/examples/aircraft.pl
A bit more Makefile massaging.
[flightgear.git] / scripts / perl / examples / aircraft.pl
1 #!/usr/bin/perl
2
3 require "telnet.pl";
4
5 use strict;
6
7 sub start_engine {
8     my( $fgfs ) = shift;
9     my( $engine_num ) = shift;
10
11     my( $prop, $value );
12     my( %HASH ) = ();
13
14     &set_prop( $fgfs, "/controls/engines/engine[$engine_num]/magnetos", "3" );
15     &set_prop( $fgfs, "/controls/engines/engine[$engine_num]/starter", "true" );
16     sleep(3);
17     &set_prop( $fgfs, "/controls/engines/engine[$engine_num]/starter",
18                "false" );
19 }
20
21
22 sub set_throttle {
23     my( $fgfs ) = shift;
24     my( $engine ) = shift;
25     my( $throttle_norm ) = shift;
26
27     &set_prop( $fgfs, "/controls/engines/engine[$engine]/throttle",
28                $throttle_norm );
29 }
30
31
32 sub set_mixture {
33     my( $fgfs ) = shift;
34     my( $engine ) = shift;
35     my( $mix_norm ) = shift;
36
37     &set_prop( $fgfs, "/controls/engines/engine[$engine]/mixture", $mix_norm );
38 }
39
40
41 sub set_weight {
42     my( $fgfs ) = shift;
43     my( $lbs ) = shift;
44
45     &set_prop( $fgfs, "/sim/aircraft-weight-lbs", $lbs );
46 }
47
48
49 sub set_cg {
50     my( $fgfs ) = shift;
51     my( $inches ) = shift;
52
53     &set_prop( $fgfs, "/sim/aircraft-cg-offset-inches", $inches );
54 }
55
56
57 sub set_parking_brake {
58     my( $fgfs ) = shift;
59     my( $pos_norm ) = shift;
60
61     &set_prop( $fgfs, "/controls/gear/brake-parking", $pos_norm );
62 }
63
64 sub set_flaps {
65     my( $fgfs ) = shift;
66     my( $pos_norm ) = shift;
67
68     &set_prop( $fgfs, "/controls/flight/flaps", $pos_norm );
69 }
70
71 sub set_aileron {
72     my( $fgfs ) = shift;
73     my( $pos_norm ) = shift;
74
75     &set_prop( $fgfs, "/controls/flight/aileron", $pos_norm );
76 }
77
78 sub set_elevator {
79     my( $fgfs ) = shift;
80     my( $pos_norm ) = shift;
81
82     &set_prop( $fgfs, "/controls/flight/elevator", $pos_norm );
83 }
84
85 sub set_rudder {
86     my( $fgfs ) = shift;
87     my( $pos_norm ) = shift;
88
89     &set_prop( $fgfs, "/controls/flight/rudder", $pos_norm );
90 }