]> git.tdb.fi Git - r2c2.git/blobdiff - locos.dat
Keep routes until the train has completely left them
[r2c2.git] / locos.dat
index cb097cde51b41aedb98a2778c12c378ab7f75645..dd2ebfe43258a984751a699661f7c44907d8522c 100644 (file)
--- a/locos.dat
+++ b/locos.dat
@@ -40,6 +40,7 @@ vehicle \29820-02
        function 2 "telex";
        function 3 "sfx";
        function 5 "whst";
+       maximum_speed 0.255;
 
        length 160;
        width 37;
@@ -59,153 +60,224 @@ vehicle \29820-02
        axle { position -29.5; wheel_diameter 16; powered true; object "br50-axle.object"; };
        axle { position -49; wheel_diameter 16; powered true; object "br50-axle.object"; };
 
-       rod
+       rod "coupling_r"
        {
-               pivot_axle 2;
-               position 0 -10.5 -3.5;
-               limit FIXED;
+               move
+               {
+                       target_axle 3;
+                       target_position 0 -10.5 -3.5;
+               };
                object "br50-rod-coupling.object";
        };
-       rod
+
+       rod "main_r"
        {
-               pivot_body;
-               position 27 -14 8;
-               limit SLIDE_X;
-               tag "piston";
-               object "br50-rod-piston.object";
+               move
+               {
+                       target_axle 3;
+                       target_position 0 -13 -3.5;
+               };
+               rotate
+               {
+                       target_rod "piston_r";
+                       target_position 0 1 0;
+                       local_position 37.5 0 0;
+               };
+               object "br50-rod-main.object";
        };
-       rod
+
+       rod "piston_r"
        {
-               pivot_axle 2;
-               position 0 -13 -3.5;
-               limit ROTATE;
-               connect "previous" 37.5 0 0 0;
-               object "br50-rod-main.object";
+               initial_position 28 -14 8;
+               move
+               {
+                       target_rod "main_r";
+                       target_position 37.5 -1 0;
+               };
+               slide
+               {
+                       target_position 27 -14 8;
+                       axis 1 0 0;
+               };
+               object "br50-rod-piston.object";
        };
-       rod
+
+       rod "eccentric_r"
        {
-               pivot_axle 2;
-               position 1.5 -15 0;
-               limit ROTATE;
+               move
+               {
+                       target_axle 3;
+                       target_position 1.5 -15 0;
+               };
+               rotate
+               {
+                       target_rod "expansion_r";
+                       target_position 0 -0.5 -4.5;
+                       local_position 21 0 0;
+               };
                object "br50-rod-eccentric.object";
        };
-       rod
+
+       rod "expansion_r"
        {
-               pivot_body;
-               position 10.5 -14.5 16.5;
-               limit ROTATE;
-               connect "previous" 0 -4.5 21 0;
-               tag "link";
+               initial_position 10.5 -14.5 16.5;
+               rotate
+               {
+                       target_rod "eccentric_r";
+                       target_position 21 0.5 0;
+                       local_position 0 0 -4.5;
+               };
                object "br50-rod-link.object";
        };
-       rod
-       {
-               pivot_body;
-               position 32 -16 15.5;
-               limit SLIDE_X;
-               object "br50-rod-valve.object";
-       };
-       rod
-       {
-               pivot_rod "link";
-               position 0.2 -0.5 -2.5;
-               limit ROTATE;
-               connect "previous" 22 -1.5 0 0;
+
+       rod "reach"
+       {
+               initial_position 7 -9.5 27.5;
+               object "br50-rod-reach.object";
+       };
+
+       rod "transfer"
+       {
+               initial_position 4 0 22;
+               rotate
+               {
+                       target_rod "reach";
+                       local_position -1 -9.5 5.5;
+               };
+               object "br50-rod-transfer.object";
+       };
+
+       rod "expansion_guide_r"
+       {
+               move
+               {
+                       target_rod "expansion_r";
+                       target_position 20.5 0 0;
+               };
+               rotate
+               {
+                       target_rod "radius_r";
+                       target_position 3.2 0 0.5;
+                       local_position -20.5 0 0;
+               };
+       };
+
+       rod "lifting_guide_r"
+       {
+               move
+               {
+                       target_rod "expansion_guide_r";
+                       target_position -20.5 0 0;
+               };
+               rotate
+               {
+                       target_rod "lifting_r";
+                       target_position 0 1 -5.5;
+                       local_position -3.2 0 -0.5;
+               };
+       };
+
+       rod "lifting_r"
+       {
+               move
+               {
+                       target_rod "transfer";
+                       target_position 4.5 -15.5 0;
+               };
+               rotate
+               {
+                       target_rod "lifting_guide_r";
+                       target_position -3.2 -1 -0.5;
+                       local_position 0 0 -5.5;
+               };
+               object "br50-rod-lifting.object";
+       };
+
+       rod "radius_guide_r"
+       {
+               initial_position 33 -16 15.5;
+               move
+               {
+                       target_rod "valve_r";
+               };
+               rotate
+               {
+                       target_rod "radius_r";
+                       target_position 25 -1 0.5;
+                       local_position 0 0 1.5;
+               };
+       };
+
+       rod "radius_r"
+       {
+               initial_position 11 -15 17;
+               move
+               {
+                       target_rod "lifting_r";
+                       target_position 0 0.5 -5.5;
+               };
+               rotate
+               {
+                       target_rod "radius_guide_r";
+                       target_position 0 1 1.5;
+                       local_position 25 0 0.5;
+               };
                object "br50-rod-radius.object";
        };
-       rod
-       {
-               pivot_rod "previous";
-               position 22 -0.5 0;
-               limit ROTATE;
-               object "br50-rod-combination.object";
-       };
-       rod
+
+       rod "union_r"
        {
-               pivot_rod "piston";
-               position 0 -1.5 -2;
-               limit ROTATE;
-               connect "previous" 5.5 0 0 -11.5;
+               move
+               {
+                       target_rod "piston_r";
+                       target_position 0 -1.5 -2;
+               };
+               rotate
+               {
+                       target_rod "combination_r";
+                       target_position 0 0 -11.5;
+                       local_position 5.5 0 0;
+               };
                object "br50-rod-union.object";
        };
 
-       rod
-       {
-               pivot_axle 2;
-               position 3.5 10.5 0;
-               limit FIXED;
-               object "br50-rod-coupling.object";
-               mirror_object true;
-       };
-       rod
-       {
-               pivot_body;
-               position 27 14 8;
-               limit SLIDE_X;
-               tag "piston";
-               object "br50-rod-piston.object";
-               mirror_object true;
-       };
-       rod
-       {
-               pivot_axle 2;
-               position 3.5 13 0;
-               limit ROTATE;
-               connect "previous" 37.5 0 0 0;
-               object "br50-rod-main.object";
-               mirror_object true;
-       };
-       rod
-       {
-               pivot_axle 2;
-               position 0 15 1.5;
-               limit ROTATE;
-               object "br50-rod-eccentric.object";
-               mirror_object true;
-       };
-       rod
-       {
-               pivot_body;
-               position 10.5 14.5 16.5;
-               limit ROTATE;
-               connect "previous" 0 -4.5 21 0;
-               tag "link";
-               object "br50-rod-link.object";
-               mirror_object true;
+       rod "combination_r"
+       {
+               initial_position 38 -15.5 17;
+               move
+               {
+                       target_rod "radius_r";
+                       target_position 25 -0.5 0.5;
+               };
+               rotate
+               {
+                       target_rod "union_r";
+                       target_position 5.5 0 0;
+                       local_position 0 0 -11.5;
+               };
+               object "br50-rod-combination.object";
        };
-       rod
+
+       rod "valve_r"
        {
-               pivot_body;
-               position 32 16 15.5;
-               limit SLIDE_X;
+               initial_position 33 -16 15.5;
+               move
+               {
+                       target_rod "combination_r";
+                       target_position 0 -0.5 -1.5;
+               };
+               slide
+               {
+                       target_position 32 -16 15.5;
+                       axis 1 0 0;
+               };
                object "br50-rod-valve.object";
-               mirror_object true;
        };
-       rod
-       {
-               pivot_rod "link";
-               position 0.2 0.5 -2.5;
-               limit ROTATE;
-               connect "previous" 22 -1.5 0 0;
-               object "br50-rod-radius.object";
-               mirror_object true;
-       };
-       rod
-       {
-               pivot_rod "previous";
-               position 22 0.5 0;
-               limit ROTATE;
-               object "br50-rod-combination.object";
-               mirror_object true;
-       };
-       rod
+
+       mirror_rods
        {
-               pivot_rod "piston";
-               position 0 1.5 -2;
-               limit ROTATE;
-               connect "previous" 5.5 0 0 -11.5;
-               object "br50-rod-union.object";
-               mirror_object true;
+               filter "_r$";
+               phase_offset -90;
        };
 };
 
@@ -215,6 +287,7 @@ vehicle \29530-01
        locomotive true;
        function 0 "light";
        function 2 "telex";
+       maximum_speed 0.255;
 
        length 144;
        width 33;
@@ -243,6 +316,7 @@ vehicle \36850
        name "BR 185";
        locomotive true;
        function 0 "light";
+       maximum_speed 0.447;
 
        length 218;
        width 34;
@@ -271,6 +345,7 @@ vehicle \37225-02
        name "BR 194";
        locomotive true;
        function 0 "light";
+       maximum_speed 0.287;
 
        length 212;
        width 34;
@@ -305,6 +380,7 @@ vehicle \39410
        function 0 "light";
        function 3 "sfx";
        function 5 "whstl";
+       maximum_speed 0.383;
 
        length 180;
        width 35;
@@ -337,6 +413,7 @@ vehicle \37574-01
        function 2 "sfx";
        function 3 "whstl";
        swap_direction true;
+       maximum_speed 0.639;
 
        length 219;
        width 35;
@@ -371,6 +448,7 @@ vehicle \37504
        function 1 "intlt";
        function 2 "sfx";
        function 3 "whstl";
+       maximum_speed 0.383;
 
        length 268;
        width 33;
@@ -394,3 +472,69 @@ vehicle \37504
                axle { position -14.5; wheel_diameter 10; object "br420-axle.object"; };
        };
 };
+
+vehicle \37851
+{
+       name "BR 150";
+       locomotive true;
+       function 0 "light";
+       function 1 "telex";
+       function 3 "whstl";
+       maximum_speed 0.319;
+
+       length 224;
+       width 35;
+       height 47;
+
+       object "br150-body.object";
+
+       bogie
+       {
+               position 50.5;
+               axle { position 25.5; wheel_diameter 10; };
+               axle { position -3; wheel_diameter 10; };
+               axle { position -25.5; wheel_diameter 10; };
+       };
+       bogie
+       {
+               position -50.5;
+               axle { position 25.5; wheel_diameter 10; };
+               axle { position 3; wheel_diameter 10; };
+               axle { position -25.5; wheel_diameter 10; };
+       };
+};
+
+vehicle \37968
+{
+       name "BR 96";
+       locomotive true;
+       function 0 "light";
+       function 2 "sfx";
+       function 3 "whstl";
+       maximum_speed 0.160;
+
+       length 203;
+       width 35;
+       height 49;
+
+       object "br96-body.object";
+
+       bogie
+       {
+               position 32;
+               object "br96-bogie-front.object";
+               axle { position 35; wheel_diameter 13; };
+               axle { position 17.5; wheel_diameter 13; };
+               axle { position 0; wheel_diameter 13; };
+               axle { position -17.5; wheel_diameter 13; };
+       };
+       bogie
+       {
+               position -49;
+               object "br96-bogie-back.object";
+               axle { position 26.25; wheel_diameter 13; };
+               axle { position 8.75; wheel_diameter 13; };
+               axle { position -8.75; wheel_diameter 13; };
+               axle { position -26.25; wheel_diameter 13; };
+       };
+};