Advertisement
Guest User

Working MP54

a guest
Jul 4th, 2017
155
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.82 KB | None | 0 0
  1.  
  2. // ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
  3. // PURCHASE SPRITE
  4. // ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
  5.  
  6. spriteset(spriteset_EMU_PRR_MP54_purchase, "gfx/EMU/EMU_PRR_MP54.png") {
  7. template_purchase_dualheaded(1, 192)
  8. }
  9.  
  10. // ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
  11. // VEHICLE SPRITE(S)
  12. // ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
  13.  
  14. //Front
  15. spriteset(spriteset_EMU_PRR_MP54_front, "gfx/EMU/EMU_PRR_MP54.png") {
  16. template_2cc_engines_general(1, 1)
  17. }
  18.  
  19. //Back
  20. spriteset(spriteset_EMU_PRR_MP54_back, "gfx/EMU/EMU_PRR_MP54.png") {
  21. template_2cc_engines_general(1, 32)
  22. }
  23.  
  24. //Middle - PAX-L1
  25. spriteset(spriteset_EMU_PRR_MP54_middlepass_L1, "gfx/EMU/EMU_PRR_MP54.png") {
  26. template_2cc_engines_general(1, 64)
  27. }
  28.  
  29. //Middle - MAIL-L1
  30. spriteset(spriteset_EMU_PRR_MP54_middlemail_L1, "gfx/EMU/EMU_PRR_MP54.png") {
  31. template_2cc_engines_general(1, 96)
  32. }
  33.  
  34. //Middle - PAX-L2
  35. spriteset(spriteset_EMU_PRR_MP54_middlepass_L2, "gfx/EMU/EMU_PRR_MP54.png") {
  36. template_2cc_engines_general(1, 128)
  37. }
  38.  
  39. //Middle - MAIL-L2
  40. spriteset(spriteset_EMU_PRR_MP54_middlemail_L2, "gfx/EMU/EMU_PRR_MP54.png") {
  41. template_2cc_engines_general(1, 160)
  42. }
  43.  
  44. //Dualheaded engines
  45. switch(FEAT_TRAINS, SELF, switch_EMU_PRR_MP54_reversed, var[0xC8]) {
  46. 0xFE: spriteset_EMU_PRR_MP54_back;
  47. 0xFF: spriteset_EMU_PRR_MP54_back;
  48. spriteset_EMU_PRR_MP54_front;
  49. }
  50.  
  51. //Visual effect, for EMU this is done on the part with the pantograph
  52. random_switch(FEAT_TRAINS, SELF, switch_EMU_PRR_MP54_visual_effect_and_powered) {
  53. 9: visual_effect_and_powered(VISUAL_EFFECT_DISABLE, 0, DISABLE_WAGON_POWER);
  54. 1: visual_effect_and_powered(VISUAL_EFFECT_ELECTRIC, -3, DISABLE_WAGON_POWER);
  55. }
  56.  
  57. switch(FEAT_TRAINS, SELF, switch_EMU_PRR_MP54_visual_effect_and_powered_position, [STORE_TEMP(-1, 0x10F), var[0x61, 0, 0x0000FFFF, 0xC6]]) {
  58. ID_RANGE_UNIT_WAGONS: switch_EMU_PRR_MP54_visual_effect_and_powered;
  59. visual_effect_and_powered(VISUAL_EFFECT_ELECTRIC, -3, DISABLE_WAGON_POWER);
  60. }
  61.  
  62. random_switch(FEAT_TRAINS, SELF, switch_EMU_PRR_MP54_middlepass_livery) {
  63. dependent: switch_EMU_PRR_MP54_visual_effect_and_powered;
  64. 9: spriteset_EMU_PRR_MP54_middlepass_L2;
  65. 1: spriteset_EMU_PRR_MP54_middlepass_L1;
  66. }
  67.  
  68. random_switch(FEAT_TRAINS, SELF, switch_EMU_PRR_MP54_middlemail_livery) {
  69. dependent: switch_EMU_PRR_MP54_visual_effect_and_powered;
  70. 9: spriteset_EMU_PRR_MP54_middlemail_L2;
  71. 1: spriteset_EMU_PRR_MP54_middlemail_L1;
  72. }
  73.  
  74. //First unit wagon always has a pantograph
  75. switch(FEAT_TRAINS, SELF, switch_EMU_PRR_MP54_middlepass_position, [STORE_TEMP(-1, 0x10F), var[0x61, 0, 0x0000FFFF, 0xC6]]) {
  76. ID_RANGE_UNIT_WAGONS: switch_EMU_PRR_MP54_middlepass_livery;
  77. spriteset_EMU_PRR_MP54_middlepass_L1;
  78. }
  79.  
  80. switch(FEAT_TRAINS, SELF, switch_EMU_PRR_MP54_middlemail_position, [STORE_TEMP(-1, 0x10F), var[0x61, 0, 0x0000FFFF, 0xC6]]) {
  81. ID_RANGE_UNIT_WAGONS: switch_EMU_PRR_MP54_middlemail_livery;
  82. spriteset_EMU_PRR_MP54_middlemail_L1;
  83. }
  84.  
  85. // ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
  86. // CARGO CAPACITY
  87. // ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
  88.  
  89. switch(FEAT_TRAINS, SELF, switch_EMU_PRR_MP54_capacity, cargo_classes) {
  90. bitmask(CC_PASSENGERS): 72; // Passengers
  91. bitmask(CC_MAIL): 52; // Mail Cargo
  92. bitmask(CC_ARMOURED): 32; // Armored Cargos
  93. 32; // All other Cargos
  94. }
  95.  
  96. //Graphics for the unit wagon based on cargo class
  97. switch(FEAT_TRAINS, SELF, switch_EMU_PRR_MP54_cargo_selection, cargo_classes){
  98. bitmask(CC_PASSENGERS): switch_EMU_PRR_MP54_middlepass_position;
  99. switch_EMU_PRR_MP54_middlemail_position;
  100. }
  101.  
  102. // ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
  103. // ITEM CODE
  104. // ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
  105.  
  106. item(FEAT_TRAINS, item_EMU_PRR_MP54) {
  107. property {
  108. name: string(STR_NAME_EMU_PRR_MP54);
  109.  
  110. introduction_date: date(1980,1,1);
  111.  
  112. climates_available: ALL_CLIMATES;
  113. running_cost_base: RUNNING_COST_ELECTRIC;
  114. engine_class: ENGINE_CLASS_ELECTRIC;
  115. track_type: ELRL;
  116.  
  117. // ### LIFE ###
  118. model_life: 25;
  119. vehicle_life: 25;
  120.  
  121. // ### COSTS ###
  122. cost_factor: 23; //32,918
  123. running_cost_factor: 19; //17,202
  124.  
  125. weight: 68000 kg;
  126. speed: 104 km/h;
  127. power: 450 hp;
  128. tractive_effort_coefficient: 0.14;
  129. air_drag_coefficient: 0;
  130. reliability_decay: 20;
  131.  
  132. LOADINGSPEEDDEF_COMMUTER
  133. CARGODEF_MU
  134. cargo_capacity: 56;
  135. cargo_age_period: 222;
  136. default_cargo_type: PASS;
  137.  
  138.  
  139.  
  140. refit_cost: 0;
  141.  
  142. ai_special_flag: AI_FLAG_PASSENGER;
  143. misc_flags: bitmask(TRAIN_FLAG_MU,TRAIN_FLAG_2CC);
  144. visual_effect_and_powered: visual_effect_and_powered(VISUAL_EFFECT_DISABLE, 0, DISABLE_WAGON_POWER);
  145.  
  146. sprite_id: SPRITE_ID_NEW_TRAIN;
  147. dual_headed: 1;
  148. length: 8;
  149. extra_power_per_wagon: 0;
  150. bitmask_vehicle_info: 0;
  151. }
  152.  
  153. // ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
  154. // GRAPHICS AND SWITCHES
  155. // ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
  156.  
  157. graphics {
  158. additional_text: string(STR_TEXT_EMU_PRR_MP54);
  159. purchase: spriteset_EMU_PRR_MP54_purchase;
  160. cargo_capacity: switch_EMU_PRR_MP54_capacity;
  161. switch_EMU_PRR_MP54_reversed;
  162. }
  163. livery_override (ITEM_SPECIAL_MU_CAR_UNPOWERED){
  164. LOADINGSPEEDDEF_COMMUTER
  165. running_cost_factor: 1;
  166. power: 0;
  167. weight: 35;
  168. cargo_capacity: switch_EMU_PRR_MP54_capacity;
  169. length: 8;
  170. visual_effect_and_powered: switch_EMU_PRR_MP54_visual_effect_and_powered_position;
  171. default: switch_EMU_PRR_MP54_cargo_selection;
  172. }
  173. livery_override (ITEM_SPECIAL_MU_CAR_POWERED){
  174. LOADINGSPEEDDEF_COMMUTER
  175. running_cost_factor: 15;
  176. power: 100;
  177. weight: 68;
  178. cargo_capacity: switch_EMU_PRR_MP54_capacity;
  179. tractive_effort_coefficient: 33;
  180. length: 8;
  181. visual_effect_and_powered: switch_EMU_PRR_MP54_visual_effect_and_powered_position;
  182. default: switch_EMU_PRR_MP54_cargo_selection;
  183. }
  184. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement