- // default spriteset templates
- template spriteset_template_asymmetric_unreversed_geronimo_unflipped(y) {
- //[left_x, upper_y, width, height, offset_x, offset_y]
- [60, y, 8, 29, -3, -16 ]
- [73, y, 26, 24, -14, -15 ]
- [104, y, 33, 16, -16, -12 ]
- [143, y, 26, 24, -8, -16 ]
- [180, y, 8, 29, -3, -16 ]
- [193, y, 26, 24, -14, -15 ]
- [224, y, 33, 16, -16, -12 ]
- [263, y, 26, 24, -8, -16 ]
- }
- template spriteset_template_asymmetric_reversed_geronimo_unflipped(y) {
- //[left_x, upper_y, width, height, offset_x, offset_y]
- [180, y, 8, 29, -3, -16 ]
- [193, y, 26, 24, -14, -15 ]
- [224, y, 33, 16, -16, -12 ]
- [263, y, 26, 24, -8, -16 ]
- [60, y, 8, 29, -3, -16 ]
- [73, y, 26, 24, -14, -15 ]
- [104, y, 33, 16, -16, -12 ]
- [143, y, 26, 24, -8, -16 ]
- }
- template spriteset_template_asymmetric_unreversed_geronimo_flipped(y) {
- //[left_x, upper_y, width, height, offset_x, offset_y]
- [60, y, 8, 29, -3, -16 ]
- [73, y, 26, 24, -14, -15 ]
- [104, y, 33, 16, -16, -12 ]
- [143, y, 26, 24, -8, -16 ]
- [180, y, 8, 29, -3, -16 ]
- [193, y, 26, 24, -14, -15 ]
- [224, y, 33, 16, -16, -12 ]
- [263, y, 26, 24, -8, -16 ]
- }
- template spriteset_template_asymmetric_reversed_geronimo_flipped(y) {
- //[left_x, upper_y, width, height, offset_x, offset_y]
- [180, y, 8, 29, -3, -16 ]
- [193, y, 26, 24, -14, -15 ]
- [224, y, 33, 16, -16, -12 ]
- [263, y, 26, 24, -8, -16 ]
- [60, y, 8, 29, -3, -16 ]
- [73, y, 26, 24, -14, -15 ]
- [104, y, 33, 16, -16, -12 ]
- [143, y, 26, 24, -8, -16 ]
- }
- // buy menu spriteset template
- template spriteset_template_purchase_geronimo(y) {
- //[left_x, upper_y, width, height, offset_x, offset_y]
- [60, 10, 1, 1, 0, 0]
- [60, 10, 1, 1, 0, 0]
- [60, 10, 1, 1, 0, 0]
- [60, 10, 1, 1, 0, 0]
- [60, 10, 1, 1, 0, 0]
- [60, 10, 1, 1, 0, 0]
- // allow for buffers/couplings being 1px additional to the unit (they overlap in consists, but show in buy menu)
- [224, y, 33, 16, -16, -11 ]
- [60, 10, 1, 1, 0, 0]
- }
- // default graphics chain
- spriteset(geronimo_ss_doors_closed_livery_1_0_unflipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 0)
- }
- spriteset(geronimo_ss_doors_open_livery_1_0_unflipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 0 + 30)
- }
- spriteset(geronimo_ss_doors_closed_livery_2_0_unflipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 0 + 60)
- }
- spriteset(geronimo_ss_doors_open_livery_2_0_unflipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 0 + 90)
- }
- spritegroup geronimo_sg_part_load_or_empty_livery_1_0_unflipped {
- loaded: [
- geronimo_ss_doors_closed_livery_1_0_unflipped,
- ];
- loading: [
- geronimo_ss_doors_open_livery_1_0_unflipped,
- ];
- }
- spritegroup geronimo_sg_full_load_livery_1_0_unflipped {
- loaded: [
- geronimo_ss_doors_closed_livery_1_0_unflipped,
- ];
- loading: [
- geronimo_ss_doors_closed_livery_1_0_unflipped,
- ];
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_percent_loaded_livery_1_0_unflipped, cargo_count*100/cargo_capacity) {
- 0..99: return geronimo_sg_part_load_or_empty_livery_1_0_unflipped;
- return geronimo_sg_full_load_livery_1_0_unflipped;
- }
- spritegroup geronimo_sg_part_load_or_empty_livery_2_0_unflipped {
- loaded: [
- geronimo_ss_doors_closed_livery_2_0_unflipped,
- ];
- loading: [
- geronimo_ss_doors_open_livery_2_0_unflipped,
- ];
- }
- spritegroup geronimo_sg_full_load_livery_2_0_unflipped {
- loaded: [
- geronimo_ss_doors_closed_livery_2_0_unflipped,
- ];
- loading: [
- geronimo_ss_doors_closed_livery_2_0_unflipped,
- ];
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_percent_loaded_livery_2_0_unflipped, cargo_count*100/cargo_capacity) {
- 0..99: return geronimo_sg_part_load_or_empty_livery_2_0_unflipped;
- return geronimo_sg_full_load_livery_2_0_unflipped;
- }
- spriteset(geronimo_ss_pantographs_down_0_unflipped, "generated/graphics/geronimo_pantographs_down.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 0)
- }
- spriteset(geronimo_ss_pantographs_up_0_unflipped, "generated/graphics/geronimo_pantographs_up.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 0)
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_pantographs_0_unflipped, current_railtype) {
- ELRL: return geronimo_ss_pantographs_up_0_unflipped;
- return geronimo_ss_pantographs_down_0_unflipped;
- }
- spriteset(geronimo_ss_doors_closed_livery_1_0_flipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 0)
- }
- spriteset(geronimo_ss_doors_open_livery_1_0_flipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 0 + 30)
- }
- spriteset(geronimo_ss_doors_closed_livery_2_0_flipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 0 + 60)
- }
- spriteset(geronimo_ss_doors_open_livery_2_0_flipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 0 + 90)
- }
- spritegroup geronimo_sg_part_load_or_empty_livery_1_0_flipped {
- loaded: [
- geronimo_ss_doors_closed_livery_1_0_flipped,
- ];
- loading: [
- geronimo_ss_doors_open_livery_1_0_flipped,
- ];
- }
- spritegroup geronimo_sg_full_load_livery_1_0_flipped {
- loaded: [
- geronimo_ss_doors_closed_livery_1_0_flipped,
- ];
- loading: [
- geronimo_ss_doors_closed_livery_1_0_flipped,
- ];
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_percent_loaded_livery_1_0_flipped, cargo_count*100/cargo_capacity) {
- 0..99: return geronimo_sg_part_load_or_empty_livery_1_0_flipped;
- return geronimo_sg_full_load_livery_1_0_flipped;
- }
- spritegroup geronimo_sg_part_load_or_empty_livery_2_0_flipped {
- loaded: [
- geronimo_ss_doors_closed_livery_2_0_flipped,
- ];
- loading: [
- geronimo_ss_doors_open_livery_2_0_flipped,
- ];
- }
- spritegroup geronimo_sg_full_load_livery_2_0_flipped {
- loaded: [
- geronimo_ss_doors_closed_livery_2_0_flipped,
- ];
- loading: [
- geronimo_ss_doors_closed_livery_2_0_flipped,
- ];
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_percent_loaded_livery_2_0_flipped, cargo_count*100/cargo_capacity) {
- 0..99: return geronimo_sg_part_load_or_empty_livery_2_0_flipped;
- return geronimo_sg_full_load_livery_2_0_flipped;
- }
- spriteset(geronimo_ss_pantographs_down_0_flipped, "generated/graphics/geronimo_pantographs_down.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 0)
- }
- spriteset(geronimo_ss_pantographs_up_0_flipped, "generated/graphics/geronimo_pantographs_up.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 0)
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_pantographs_0_flipped, current_railtype) {
- ELRL: return geronimo_ss_pantographs_up_0_flipped;
- return geronimo_ss_pantographs_down_0_flipped;
- }
- // handle user flipped state
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_livery_1_0, vehicle_is_flipped) {
- 1: return geronimo_switch_graphics_percent_loaded_livery_2_0_flipped;
- return geronimo_switch_graphics_percent_loaded_livery_1_0_unflipped;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_livery_2_0, vehicle_is_flipped) {
- 1: return geronimo_switch_graphics_percent_loaded_livery_1_0_flipped;
- return geronimo_switch_graphics_percent_loaded_livery_2_0_unflipped;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_graphics_engine_id_0, vehicle_type_id) {
- lark: return geronimo_switch_graphics_livery_2_0;
- merrylegs: return geronimo_switch_graphics_livery_2_0;
- proper_job: return geronimo_switch_graphics_livery_2_0;
- shoebox: return geronimo_switch_graphics_livery_2_0;
- super_shoebox: return geronimo_switch_graphics_livery_2_0;
- ultra_shoebox: return geronimo_switch_graphics_livery_2_0;
- hurly_burly: return geronimo_switch_graphics_livery_2_0;
- moor_gallop: return geronimo_switch_graphics_livery_2_0;
- roarer: return geronimo_switch_graphics_livery_2_0;
- screamer: return geronimo_switch_graphics_livery_2_0;
- sizzler: return geronimo_switch_graphics_livery_2_0;
- athena: return geronimo_switch_graphics_livery_2_0;
- geronimo: return geronimo_switch_graphics_livery_2_0;
- breeze: return geronimo_switch_graphics_livery_2_0;
- zeus: return geronimo_switch_graphics_livery_2_0;
- ares: return geronimo_switch_graphics_livery_2_0;
- dover: return geronimo_switch_graphics_livery_2_0;
- jupiter: return geronimo_switch_graphics_livery_2_0;
- pylon: return geronimo_switch_graphics_livery_2_0;
- return geronimo_switch_graphics_livery_1_0;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_pantographs_0, vehicle_is_flipped) {
- 1: return geronimo_switch_graphics_pantographs_0_flipped;
- return geronimo_switch_graphics_pantographs_0_unflipped;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_vehicle_layers_0, getbits(extra_callback_info1, 8, 8)) {
- 0: return geronimo_switch_graphics_engine_id_0;
- 1: return geronimo_switch_graphics_pantographs_0;
- }
- spriteset(geronimo_ss_doors_closed_livery_1_1_unflipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 120)
- }
- spriteset(geronimo_ss_doors_open_livery_1_1_unflipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 120 + 30)
- }
- spriteset(geronimo_ss_doors_closed_livery_2_1_unflipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 120 + 60)
- }
- spriteset(geronimo_ss_doors_open_livery_2_1_unflipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 120 + 90)
- }
- spritegroup geronimo_sg_part_load_or_empty_livery_1_1_unflipped {
- loaded: [
- geronimo_ss_doors_closed_livery_1_1_unflipped,
- ];
- loading: [
- geronimo_ss_doors_open_livery_1_1_unflipped,
- ];
- }
- spritegroup geronimo_sg_full_load_livery_1_1_unflipped {
- loaded: [
- geronimo_ss_doors_closed_livery_1_1_unflipped,
- ];
- loading: [
- geronimo_ss_doors_closed_livery_1_1_unflipped,
- ];
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_percent_loaded_livery_1_1_unflipped, cargo_count*100/cargo_capacity) {
- 0..99: return geronimo_sg_part_load_or_empty_livery_1_1_unflipped;
- return geronimo_sg_full_load_livery_1_1_unflipped;
- }
- spritegroup geronimo_sg_part_load_or_empty_livery_2_1_unflipped {
- loaded: [
- geronimo_ss_doors_closed_livery_2_1_unflipped,
- ];
- loading: [
- geronimo_ss_doors_open_livery_2_1_unflipped,
- ];
- }
- spritegroup geronimo_sg_full_load_livery_2_1_unflipped {
- loaded: [
- geronimo_ss_doors_closed_livery_2_1_unflipped,
- ];
- loading: [
- geronimo_ss_doors_closed_livery_2_1_unflipped,
- ];
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_percent_loaded_livery_2_1_unflipped, cargo_count*100/cargo_capacity) {
- 0..99: return geronimo_sg_part_load_or_empty_livery_2_1_unflipped;
- return geronimo_sg_full_load_livery_2_1_unflipped;
- }
- spriteset(geronimo_ss_pantographs_down_1_unflipped, "generated/graphics/geronimo_pantographs_down.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 60)
- }
- spriteset(geronimo_ss_pantographs_up_1_unflipped, "generated/graphics/geronimo_pantographs_up.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 60)
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_pantographs_1_unflipped, current_railtype) {
- ELRL: return geronimo_ss_pantographs_up_1_unflipped;
- return geronimo_ss_pantographs_down_1_unflipped;
- }
- spriteset(geronimo_ss_doors_closed_livery_1_1_flipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 120)
- }
- spriteset(geronimo_ss_doors_open_livery_1_1_flipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 120 + 30)
- }
- spriteset(geronimo_ss_doors_closed_livery_2_1_flipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 120 + 60)
- }
- spriteset(geronimo_ss_doors_open_livery_2_1_flipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 120 + 90)
- }
- spritegroup geronimo_sg_part_load_or_empty_livery_1_1_flipped {
- loaded: [
- geronimo_ss_doors_closed_livery_1_1_flipped,
- ];
- loading: [
- geronimo_ss_doors_open_livery_1_1_flipped,
- ];
- }
- spritegroup geronimo_sg_full_load_livery_1_1_flipped {
- loaded: [
- geronimo_ss_doors_closed_livery_1_1_flipped,
- ];
- loading: [
- geronimo_ss_doors_closed_livery_1_1_flipped,
- ];
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_percent_loaded_livery_1_1_flipped, cargo_count*100/cargo_capacity) {
- 0..99: return geronimo_sg_part_load_or_empty_livery_1_1_flipped;
- return geronimo_sg_full_load_livery_1_1_flipped;
- }
- spritegroup geronimo_sg_part_load_or_empty_livery_2_1_flipped {
- loaded: [
- geronimo_ss_doors_closed_livery_2_1_flipped,
- ];
- loading: [
- geronimo_ss_doors_open_livery_2_1_flipped,
- ];
- }
- spritegroup geronimo_sg_full_load_livery_2_1_flipped {
- loaded: [
- geronimo_ss_doors_closed_livery_2_1_flipped,
- ];
- loading: [
- geronimo_ss_doors_closed_livery_2_1_flipped,
- ];
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_percent_loaded_livery_2_1_flipped, cargo_count*100/cargo_capacity) {
- 0..99: return geronimo_sg_part_load_or_empty_livery_2_1_flipped;
- return geronimo_sg_full_load_livery_2_1_flipped;
- }
- spriteset(geronimo_ss_pantographs_down_1_flipped, "generated/graphics/geronimo_pantographs_down.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 60)
- }
- spriteset(geronimo_ss_pantographs_up_1_flipped, "generated/graphics/geronimo_pantographs_up.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 60)
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_pantographs_1_flipped, current_railtype) {
- ELRL: return geronimo_ss_pantographs_up_1_flipped;
- return geronimo_ss_pantographs_down_1_flipped;
- }
- // handle user flipped state
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_livery_1_1, vehicle_is_flipped) {
- 1: return geronimo_switch_graphics_percent_loaded_livery_2_1_flipped;
- return geronimo_switch_graphics_percent_loaded_livery_1_1_unflipped;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_livery_2_1, vehicle_is_flipped) {
- 1: return geronimo_switch_graphics_percent_loaded_livery_1_1_flipped;
- return geronimo_switch_graphics_percent_loaded_livery_2_1_unflipped;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_graphics_engine_id_1, vehicle_type_id) {
- lark: return geronimo_switch_graphics_livery_2_1;
- merrylegs: return geronimo_switch_graphics_livery_2_1;
- proper_job: return geronimo_switch_graphics_livery_2_1;
- shoebox: return geronimo_switch_graphics_livery_2_1;
- super_shoebox: return geronimo_switch_graphics_livery_2_1;
- ultra_shoebox: return geronimo_switch_graphics_livery_2_1;
- hurly_burly: return geronimo_switch_graphics_livery_2_1;
- moor_gallop: return geronimo_switch_graphics_livery_2_1;
- roarer: return geronimo_switch_graphics_livery_2_1;
- screamer: return geronimo_switch_graphics_livery_2_1;
- sizzler: return geronimo_switch_graphics_livery_2_1;
- athena: return geronimo_switch_graphics_livery_2_1;
- geronimo: return geronimo_switch_graphics_livery_2_1;
- breeze: return geronimo_switch_graphics_livery_2_1;
- zeus: return geronimo_switch_graphics_livery_2_1;
- ares: return geronimo_switch_graphics_livery_2_1;
- dover: return geronimo_switch_graphics_livery_2_1;
- jupiter: return geronimo_switch_graphics_livery_2_1;
- pylon: return geronimo_switch_graphics_livery_2_1;
- return geronimo_switch_graphics_livery_1_1;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_pantographs_1, vehicle_is_flipped) {
- 1: return geronimo_switch_graphics_pantographs_1_flipped;
- return geronimo_switch_graphics_pantographs_1_unflipped;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_vehicle_layers_1, getbits(extra_callback_info1, 8, 8)) {
- 0: return geronimo_switch_graphics_engine_id_1;
- 1: return geronimo_switch_graphics_pantographs_1;
- }
- spriteset(geronimo_ss_doors_closed_livery_1_2_unflipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 240)
- }
- spriteset(geronimo_ss_doors_open_livery_1_2_unflipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 240 + 30)
- }
- spriteset(geronimo_ss_doors_closed_livery_2_2_unflipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 240 + 60)
- }
- spriteset(geronimo_ss_doors_open_livery_2_2_unflipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 240 + 90)
- }
- spritegroup geronimo_sg_part_load_or_empty_livery_1_2_unflipped {
- loaded: [
- geronimo_ss_doors_closed_livery_1_2_unflipped,
- ];
- loading: [
- geronimo_ss_doors_open_livery_1_2_unflipped,
- ];
- }
- spritegroup geronimo_sg_full_load_livery_1_2_unflipped {
- loaded: [
- geronimo_ss_doors_closed_livery_1_2_unflipped,
- ];
- loading: [
- geronimo_ss_doors_closed_livery_1_2_unflipped,
- ];
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_percent_loaded_livery_1_2_unflipped, cargo_count*100/cargo_capacity) {
- 0..99: return geronimo_sg_part_load_or_empty_livery_1_2_unflipped;
- return geronimo_sg_full_load_livery_1_2_unflipped;
- }
- spritegroup geronimo_sg_part_load_or_empty_livery_2_2_unflipped {
- loaded: [
- geronimo_ss_doors_closed_livery_2_2_unflipped,
- ];
- loading: [
- geronimo_ss_doors_open_livery_2_2_unflipped,
- ];
- }
- spritegroup geronimo_sg_full_load_livery_2_2_unflipped {
- loaded: [
- geronimo_ss_doors_closed_livery_2_2_unflipped,
- ];
- loading: [
- geronimo_ss_doors_closed_livery_2_2_unflipped,
- ];
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_percent_loaded_livery_2_2_unflipped, cargo_count*100/cargo_capacity) {
- 0..99: return geronimo_sg_part_load_or_empty_livery_2_2_unflipped;
- return geronimo_sg_full_load_livery_2_2_unflipped;
- }
- spriteset(geronimo_ss_pantographs_down_2_unflipped, "generated/graphics/geronimo_pantographs_down.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 120)
- }
- spriteset(geronimo_ss_pantographs_up_2_unflipped, "generated/graphics/geronimo_pantographs_up.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 120)
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_pantographs_2_unflipped, current_railtype) {
- ELRL: return geronimo_ss_pantographs_up_2_unflipped;
- return geronimo_ss_pantographs_down_2_unflipped;
- }
- spriteset(geronimo_ss_doors_closed_livery_1_2_flipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 240)
- }
- spriteset(geronimo_ss_doors_open_livery_1_2_flipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 240 + 30)
- }
- spriteset(geronimo_ss_doors_closed_livery_2_2_flipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 240 + 60)
- }
- spriteset(geronimo_ss_doors_open_livery_2_2_flipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 240 + 90)
- }
- spritegroup geronimo_sg_part_load_or_empty_livery_1_2_flipped {
- loaded: [
- geronimo_ss_doors_closed_livery_1_2_flipped,
- ];
- loading: [
- geronimo_ss_doors_open_livery_1_2_flipped,
- ];
- }
- spritegroup geronimo_sg_full_load_livery_1_2_flipped {
- loaded: [
- geronimo_ss_doors_closed_livery_1_2_flipped,
- ];
- loading: [
- geronimo_ss_doors_closed_livery_1_2_flipped,
- ];
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_percent_loaded_livery_1_2_flipped, cargo_count*100/cargo_capacity) {
- 0..99: return geronimo_sg_part_load_or_empty_livery_1_2_flipped;
- return geronimo_sg_full_load_livery_1_2_flipped;
- }
- spritegroup geronimo_sg_part_load_or_empty_livery_2_2_flipped {
- loaded: [
- geronimo_ss_doors_closed_livery_2_2_flipped,
- ];
- loading: [
- geronimo_ss_doors_open_livery_2_2_flipped,
- ];
- }
- spritegroup geronimo_sg_full_load_livery_2_2_flipped {
- loaded: [
- geronimo_ss_doors_closed_livery_2_2_flipped,
- ];
- loading: [
- geronimo_ss_doors_closed_livery_2_2_flipped,
- ];
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_percent_loaded_livery_2_2_flipped, cargo_count*100/cargo_capacity) {
- 0..99: return geronimo_sg_part_load_or_empty_livery_2_2_flipped;
- return geronimo_sg_full_load_livery_2_2_flipped;
- }
- spriteset(geronimo_ss_pantographs_down_2_flipped, "generated/graphics/geronimo_pantographs_down.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 120)
- }
- spriteset(geronimo_ss_pantographs_up_2_flipped, "generated/graphics/geronimo_pantographs_up.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 120)
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_pantographs_2_flipped, current_railtype) {
- ELRL: return geronimo_ss_pantographs_up_2_flipped;
- return geronimo_ss_pantographs_down_2_flipped;
- }
- // handle user flipped state
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_livery_1_2, vehicle_is_flipped) {
- 1: return geronimo_switch_graphics_percent_loaded_livery_2_2_flipped;
- return geronimo_switch_graphics_percent_loaded_livery_1_2_unflipped;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_livery_2_2, vehicle_is_flipped) {
- 1: return geronimo_switch_graphics_percent_loaded_livery_1_2_flipped;
- return geronimo_switch_graphics_percent_loaded_livery_2_2_unflipped;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_graphics_engine_id_2, vehicle_type_id) {
- lark: return geronimo_switch_graphics_livery_2_2;
- merrylegs: return geronimo_switch_graphics_livery_2_2;
- proper_job: return geronimo_switch_graphics_livery_2_2;
- shoebox: return geronimo_switch_graphics_livery_2_2;
- super_shoebox: return geronimo_switch_graphics_livery_2_2;
- ultra_shoebox: return geronimo_switch_graphics_livery_2_2;
- hurly_burly: return geronimo_switch_graphics_livery_2_2;
- moor_gallop: return geronimo_switch_graphics_livery_2_2;
- roarer: return geronimo_switch_graphics_livery_2_2;
- screamer: return geronimo_switch_graphics_livery_2_2;
- sizzler: return geronimo_switch_graphics_livery_2_2;
- athena: return geronimo_switch_graphics_livery_2_2;
- geronimo: return geronimo_switch_graphics_livery_2_2;
- breeze: return geronimo_switch_graphics_livery_2_2;
- zeus: return geronimo_switch_graphics_livery_2_2;
- ares: return geronimo_switch_graphics_livery_2_2;
- dover: return geronimo_switch_graphics_livery_2_2;
- jupiter: return geronimo_switch_graphics_livery_2_2;
- pylon: return geronimo_switch_graphics_livery_2_2;
- return geronimo_switch_graphics_livery_1_2;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_pantographs_2, vehicle_is_flipped) {
- 1: return geronimo_switch_graphics_pantographs_2_flipped;
- return geronimo_switch_graphics_pantographs_2_unflipped;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_vehicle_layers_2, getbits(extra_callback_info1, 8, 8)) {
- 0: return geronimo_switch_graphics_engine_id_2;
- 1: return geronimo_switch_graphics_pantographs_2;
- }
- spriteset(geronimo_ss_doors_closed_livery_1_3_unflipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 360)
- }
- spriteset(geronimo_ss_doors_open_livery_1_3_unflipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 360 + 30)
- }
- spriteset(geronimo_ss_doors_closed_livery_2_3_unflipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 360 + 60)
- }
- spriteset(geronimo_ss_doors_open_livery_2_3_unflipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 360 + 90)
- }
- spritegroup geronimo_sg_part_load_or_empty_livery_1_3_unflipped {
- loaded: [
- geronimo_ss_doors_closed_livery_1_3_unflipped,
- ];
- loading: [
- geronimo_ss_doors_open_livery_1_3_unflipped,
- ];
- }
- spritegroup geronimo_sg_full_load_livery_1_3_unflipped {
- loaded: [
- geronimo_ss_doors_closed_livery_1_3_unflipped,
- ];
- loading: [
- geronimo_ss_doors_closed_livery_1_3_unflipped,
- ];
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_percent_loaded_livery_1_3_unflipped, cargo_count*100/cargo_capacity) {
- 0..99: return geronimo_sg_part_load_or_empty_livery_1_3_unflipped;
- return geronimo_sg_full_load_livery_1_3_unflipped;
- }
- spritegroup geronimo_sg_part_load_or_empty_livery_2_3_unflipped {
- loaded: [
- geronimo_ss_doors_closed_livery_2_3_unflipped,
- ];
- loading: [
- geronimo_ss_doors_open_livery_2_3_unflipped,
- ];
- }
- spritegroup geronimo_sg_full_load_livery_2_3_unflipped {
- loaded: [
- geronimo_ss_doors_closed_livery_2_3_unflipped,
- ];
- loading: [
- geronimo_ss_doors_closed_livery_2_3_unflipped,
- ];
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_percent_loaded_livery_2_3_unflipped, cargo_count*100/cargo_capacity) {
- 0..99: return geronimo_sg_part_load_or_empty_livery_2_3_unflipped;
- return geronimo_sg_full_load_livery_2_3_unflipped;
- }
- spriteset(geronimo_ss_pantographs_down_3_unflipped, "generated/graphics/geronimo_pantographs_down.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 180)
- }
- spriteset(geronimo_ss_pantographs_up_3_unflipped, "generated/graphics/geronimo_pantographs_up.png") {
- spriteset_template_asymmetric_unreversed_geronimo_unflipped(10 + 180)
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_pantographs_3_unflipped, current_railtype) {
- ELRL: return geronimo_ss_pantographs_up_3_unflipped;
- return geronimo_ss_pantographs_down_3_unflipped;
- }
- spriteset(geronimo_ss_doors_closed_livery_1_3_flipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 360)
- }
- spriteset(geronimo_ss_doors_open_livery_1_3_flipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 360 + 30)
- }
- spriteset(geronimo_ss_doors_closed_livery_2_3_flipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 360 + 60)
- }
- spriteset(geronimo_ss_doors_open_livery_2_3_flipped, "generated/graphics/geronimo.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 360 + 90)
- }
- spritegroup geronimo_sg_part_load_or_empty_livery_1_3_flipped {
- loaded: [
- geronimo_ss_doors_closed_livery_1_3_flipped,
- ];
- loading: [
- geronimo_ss_doors_open_livery_1_3_flipped,
- ];
- }
- spritegroup geronimo_sg_full_load_livery_1_3_flipped {
- loaded: [
- geronimo_ss_doors_closed_livery_1_3_flipped,
- ];
- loading: [
- geronimo_ss_doors_closed_livery_1_3_flipped,
- ];
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_percent_loaded_livery_1_3_flipped, cargo_count*100/cargo_capacity) {
- 0..99: return geronimo_sg_part_load_or_empty_livery_1_3_flipped;
- return geronimo_sg_full_load_livery_1_3_flipped;
- }
- spritegroup geronimo_sg_part_load_or_empty_livery_2_3_flipped {
- loaded: [
- geronimo_ss_doors_closed_livery_2_3_flipped,
- ];
- loading: [
- geronimo_ss_doors_open_livery_2_3_flipped,
- ];
- }
- spritegroup geronimo_sg_full_load_livery_2_3_flipped {
- loaded: [
- geronimo_ss_doors_closed_livery_2_3_flipped,
- ];
- loading: [
- geronimo_ss_doors_closed_livery_2_3_flipped,
- ];
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_percent_loaded_livery_2_3_flipped, cargo_count*100/cargo_capacity) {
- 0..99: return geronimo_sg_part_load_or_empty_livery_2_3_flipped;
- return geronimo_sg_full_load_livery_2_3_flipped;
- }
- spriteset(geronimo_ss_pantographs_down_3_flipped, "generated/graphics/geronimo_pantographs_down.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 180)
- }
- spriteset(geronimo_ss_pantographs_up_3_flipped, "generated/graphics/geronimo_pantographs_up.png") {
- spriteset_template_asymmetric_reversed_geronimo_flipped(10 + 180)
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_pantographs_3_flipped, current_railtype) {
- ELRL: return geronimo_ss_pantographs_up_3_flipped;
- return geronimo_ss_pantographs_down_3_flipped;
- }
- // handle user flipped state
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_livery_1_3, vehicle_is_flipped) {
- 1: return geronimo_switch_graphics_percent_loaded_livery_2_3_flipped;
- return geronimo_switch_graphics_percent_loaded_livery_1_3_unflipped;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_livery_2_3, vehicle_is_flipped) {
- 1: return geronimo_switch_graphics_percent_loaded_livery_1_3_flipped;
- return geronimo_switch_graphics_percent_loaded_livery_2_3_unflipped;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_graphics_engine_id_3, vehicle_type_id) {
- lark: return geronimo_switch_graphics_livery_2_3;
- merrylegs: return geronimo_switch_graphics_livery_2_3;
- proper_job: return geronimo_switch_graphics_livery_2_3;
- shoebox: return geronimo_switch_graphics_livery_2_3;
- super_shoebox: return geronimo_switch_graphics_livery_2_3;
- ultra_shoebox: return geronimo_switch_graphics_livery_2_3;
- hurly_burly: return geronimo_switch_graphics_livery_2_3;
- moor_gallop: return geronimo_switch_graphics_livery_2_3;
- roarer: return geronimo_switch_graphics_livery_2_3;
- screamer: return geronimo_switch_graphics_livery_2_3;
- sizzler: return geronimo_switch_graphics_livery_2_3;
- athena: return geronimo_switch_graphics_livery_2_3;
- geronimo: return geronimo_switch_graphics_livery_2_3;
- breeze: return geronimo_switch_graphics_livery_2_3;
- zeus: return geronimo_switch_graphics_livery_2_3;
- ares: return geronimo_switch_graphics_livery_2_3;
- dover: return geronimo_switch_graphics_livery_2_3;
- jupiter: return geronimo_switch_graphics_livery_2_3;
- pylon: return geronimo_switch_graphics_livery_2_3;
- return geronimo_switch_graphics_livery_1_3;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_pantographs_3, vehicle_is_flipped) {
- 1: return geronimo_switch_graphics_pantographs_3_flipped;
- return geronimo_switch_graphics_pantographs_3_unflipped;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_vehicle_layers_3, getbits(extra_callback_info1, 8, 8)) {
- 0: return geronimo_switch_graphics_engine_id_3;
- 1: return geronimo_switch_graphics_pantographs_3;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_modulo_num_units_in_consist_1_DFLT, position_in_vehid_chain % 6) {
- 0: return geronimo_switch_graphics_vehicle_layers_0;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_modulo_num_units_in_consist_2_DFLT, position_in_vehid_chain % 6) {
- 0: return geronimo_switch_graphics_vehicle_layers_1;
- return geronimo_switch_graphics_vehicle_layers_2;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_modulo_num_units_in_consist_3_DFLT, position_in_vehid_chain % 6) {
- 0: return geronimo_switch_graphics_vehicle_layers_1;
- 1: return geronimo_switch_graphics_vehicle_layers_3;
- return geronimo_switch_graphics_vehicle_layers_2;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_modulo_num_units_in_consist_4_DFLT, position_in_vehid_chain % 6) {
- 0: return geronimo_switch_graphics_vehicle_layers_1;
- 1: return geronimo_switch_graphics_vehicle_layers_2;
- 2: return geronimo_switch_graphics_vehicle_layers_1;
- return geronimo_switch_graphics_vehicle_layers_2;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_modulo_num_units_in_consist_5_DFLT, position_in_vehid_chain % 6) {
- 0: return geronimo_switch_graphics_vehicle_layers_1;
- 1: return geronimo_switch_graphics_vehicle_layers_3;
- 2: return geronimo_switch_graphics_vehicle_layers_2;
- 3: return geronimo_switch_graphics_vehicle_layers_1;
- return geronimo_switch_graphics_vehicle_layers_2;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_modulo_num_units_in_consist_6_DFLT, position_in_vehid_chain % 6) {
- 0: return geronimo_switch_graphics_vehicle_layers_1;
- 1: return geronimo_switch_graphics_vehicle_layers_3;
- 2: return geronimo_switch_graphics_vehicle_layers_2;
- 3: return geronimo_switch_graphics_vehicle_layers_1;
- 4: return geronimo_switch_graphics_vehicle_layers_3;
- return geronimo_switch_graphics_vehicle_layers_2;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_less_than_6_remaining_DFLT, num_vehs_in_vehid_chain % 6) {
- 1: return geronimo_switch_graphics_modulo_num_units_in_consist_1_DFLT;
- 2: return geronimo_switch_graphics_modulo_num_units_in_consist_2_DFLT;
- 3: return geronimo_switch_graphics_modulo_num_units_in_consist_3_DFLT;
- 4: return geronimo_switch_graphics_modulo_num_units_in_consist_4_DFLT;
- 5: return geronimo_switch_graphics_modulo_num_units_in_consist_5_DFLT;
- return geronimo_switch_graphics_modulo_num_units_in_consist_6_DFLT;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_position_in_consist_entry_point_DFLT, position_in_vehid_chain >= (num_vehs_in_vehid_chain - (num_vehs_in_vehid_chain % 6))) {
- 1: return geronimo_switch_graphics_less_than_6_remaining_DFLT;
- return geronimo_switch_graphics_modulo_num_units_in_consist_6_DFLT;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_modulo_num_units_in_consist_1_PASS, position_in_vehid_chain % 6) {
- 0: return geronimo_switch_graphics_vehicle_layers_0;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_modulo_num_units_in_consist_2_PASS, position_in_vehid_chain % 6) {
- 0: return geronimo_switch_graphics_vehicle_layers_1;
- return geronimo_switch_graphics_vehicle_layers_2;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_modulo_num_units_in_consist_3_PASS, position_in_vehid_chain % 6) {
- 0: return geronimo_switch_graphics_vehicle_layers_1;
- 1: return geronimo_switch_graphics_vehicle_layers_3;
- return geronimo_switch_graphics_vehicle_layers_2;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_modulo_num_units_in_consist_4_PASS, position_in_vehid_chain % 6) {
- 0: return geronimo_switch_graphics_vehicle_layers_1;
- 1: return geronimo_switch_graphics_vehicle_layers_2;
- 2: return geronimo_switch_graphics_vehicle_layers_1;
- return geronimo_switch_graphics_vehicle_layers_2;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_modulo_num_units_in_consist_5_PASS, position_in_vehid_chain % 6) {
- 0: return geronimo_switch_graphics_vehicle_layers_1;
- 1: return geronimo_switch_graphics_vehicle_layers_3;
- 2: return geronimo_switch_graphics_vehicle_layers_2;
- 3: return geronimo_switch_graphics_vehicle_layers_1;
- return geronimo_switch_graphics_vehicle_layers_2;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_modulo_num_units_in_consist_6_PASS, position_in_vehid_chain % 6) {
- 0: return geronimo_switch_graphics_vehicle_layers_1;
- 1: return geronimo_switch_graphics_vehicle_layers_3;
- 2: return geronimo_switch_graphics_vehicle_layers_2;
- 3: return geronimo_switch_graphics_vehicle_layers_1;
- 4: return geronimo_switch_graphics_vehicle_layers_3;
- return geronimo_switch_graphics_vehicle_layers_2;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_less_than_6_remaining_PASS, num_vehs_in_vehid_chain % 6) {
- 1: return geronimo_switch_graphics_modulo_num_units_in_consist_1_PASS;
- 2: return geronimo_switch_graphics_modulo_num_units_in_consist_2_PASS;
- 3: return geronimo_switch_graphics_modulo_num_units_in_consist_3_PASS;
- 4: return geronimo_switch_graphics_modulo_num_units_in_consist_4_PASS;
- 5: return geronimo_switch_graphics_modulo_num_units_in_consist_5_PASS;
- return geronimo_switch_graphics_modulo_num_units_in_consist_6_PASS;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_position_in_consist_entry_point_PASS, position_in_vehid_chain >= (num_vehs_in_vehid_chain - (num_vehs_in_vehid_chain % 6))) {
- 1: return geronimo_switch_graphics_less_than_6_remaining_PASS;
- return geronimo_switch_graphics_modulo_num_units_in_consist_6_PASS;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_graphics_vehicle, most_common_cargo_type) {
- PASS: return geronimo_switch_graphics_position_in_consist_entry_point_PASS;
- return geronimo_switch_graphics_position_in_consist_entry_point_DFLT;
- }
- // buy menu graphics chain
- spriteset(geronimo_ss_vehicle_purchase, "generated/graphics/geronimo.png") {
- spriteset_template_purchase_geronimo(10 + 60)
- }
- spriteset(geronimo_ss_pantograph_purchase, "generated/graphics/geronimo_pantographs_down.png") {
- spriteset_template_purchase_geronimo(10)
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_set_layers_register_more_sprites_purchase, STORE_TEMP(CB_FLAG_MORE_SPRITES | PALETTE_USE_DEFAULT, 0x100)) {
- return geronimo_ss_vehicle_purchase;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_purchase, getbits(extra_callback_info1, 8, 8)) {
- 0: return geronimo_switch_set_layers_register_more_sprites_purchase;
- 1: return geronimo_ss_pantograph_purchase;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_set_layers_register_more_sprites, STORE_TEMP(CB_FLAG_MORE_SPRITES | PALETTE_USE_DEFAULT, 0x100)) {
- return geronimo_switch_graphics_vehicle;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_rear_light, position_in_consist_from_end) {
- 0: return ss_rear_light_32px;
- return ss_rear_light_empty;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics_layer_rear_light, STORE_TEMP(PALETTE_USE_DEFAULT, 0x100)) {
- return geronimo_switch_graphics_rear_light;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_graphics, getbits(extra_callback_info1, 8, 8)) {
- 0: return geronimo_switch_set_layers_register_more_sprites;
- 1: return geronimo_switch_set_layers_register_more_sprites;
- return geronimo_switch_graphics_layer_rear_light;
- }
- // -- capacity determined according to specific labels that might need to be handled, and otherwise cargo class -- //
- switch (FEAT_TRAINS, SELF, geronimo_switch_cargo_capacity_by_cargo_0, cargo_classes & bitmask(CC_PASSENGERS, CC_MAIL, CC_ARMOURED)) {
- bitmask(CC_MAIL): return 54;
- bitmask(CC_ARMOURED): return 54;
- return 27;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_cargo_capacity_by_cargo_1, cargo_classes & bitmask(CC_PASSENGERS, CC_MAIL, CC_ARMOURED)) {
- bitmask(CC_MAIL): return 80;
- bitmask(CC_ARMOURED): return 80;
- return 40;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_cargo_capacity_by_cargo_2, cargo_classes & bitmask(CC_PASSENGERS, CC_MAIL, CC_ARMOURED)) {
- bitmask(CC_MAIL): return 108;
- bitmask(CC_ARMOURED): return 108;
- return 54;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_cargo_capacity, param[0]) {
- 0: geronimo_switch_cargo_capacity_by_cargo_0;
- 1: geronimo_switch_cargo_capacity_by_cargo_1;
- 2: geronimo_switch_cargo_capacity_by_cargo_2;
- }
- // -- loading speed also determined by capacity, which varies by cargo -- //
- switch (FEAT_TRAINS, SELF, geronimo_switch_loading_speed_by_cargo_0, cargo_classes & bitmask(CC_PASSENGERS, CC_MAIL, CC_ARMOURED)) {
- bitmask(CC_PASSENGERS): return 5;
- bitmask(CC_MAIL): return 5;
- bitmask(CC_ARMOURED): return 5;
- return 5;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_loading_speed_by_cargo_1, cargo_classes & bitmask(CC_PASSENGERS, CC_MAIL, CC_ARMOURED)) {
- bitmask(CC_PASSENGERS): return 7;
- bitmask(CC_MAIL): return 7;
- bitmask(CC_ARMOURED): return 7;
- return 7;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_loading_speed_by_cargo_2, cargo_classes & bitmask(CC_PASSENGERS, CC_MAIL, CC_ARMOURED)) {
- bitmask(CC_PASSENGERS): return 9;
- bitmask(CC_MAIL): return 9;
- bitmask(CC_ARMOURED): return 9;
- return 9;
- }
- switch (FEAT_TRAINS, SELF, geronimo_switch_loading_speed, param[0]) {
- 0: geronimo_switch_loading_speed_by_cargo_0;
- 1: geronimo_switch_loading_speed_by_cargo_1;
- 2: geronimo_switch_loading_speed_by_cargo_2;
- }
- // -- smoke etc -- //
- switch (FEAT_TRAINS, SELF, geronimo_switch_visual_effect_and_powered_by_variant_unreversed, current_railtype) {
- return visual_effect_and_powered(VISUAL_EFFECT_ELECTRIC, 0, DISABLE_WAGON_POWER);
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_21, [count_veh_id(sizzler) > 0]) {
- 1: return 168;
- return 120;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_20, [count_veh_id(screamer) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_21;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_19, [count_veh_id(roarer) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_20;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_18, [count_veh_id(moor_gallop) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_19;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_17, [count_veh_id(hurly_burly) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_18;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_16, [count_veh_id(turtle) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_17;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_15, [count_veh_id(thunderbird) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_16;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_14, [count_veh_id(dragon) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_15;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_13, [count_veh_id(pegasus) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_14;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_12, [count_veh_id(upcountry) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_13;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_11, [count_veh_id(shredder) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_12;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_10, [count_veh_id(griffon) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_11;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_9, [count_veh_id(kelpie) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_10;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_8, [count_veh_id(tencendur) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_9;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_7, [count_veh_id(carrack) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_8;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_6, [count_veh_id(spinner) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_7;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_5, [count_veh_id(ultra_shoebox) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_6;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_4, [count_veh_id(super_shoebox) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_5;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_3, [count_veh_id(shoebox) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_4;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_2, [count_veh_id(proper_job) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_3;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_1, [count_veh_id(merrylegs) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_2;
- }
- switch (FEAT_TRAINS, PARENT, geronimo_switch_speed_0, [count_veh_id(lark) > 0]) {
- 1: return 168;
- return geronimo_switch_speed_1;
- }
- item(FEAT_TRAINS, geronimo, 2140) {
- property {
- name: string(STR_NAME_CONSIST_PARENTHESES, string(STR_NAME_geronimo), string(STR_NAME_SUFFIX_ELECTRIC));
- climates_available: NO_CLIMATE; // nml constant
- engine_class: ENGINE_CLASS_ELECTRIC;
- visual_effect_and_powered: visual_effect_and_powered(VISUAL_EFFECT_DISABLE, 0, DISABLE_WAGON_POWER);
- introduction_date: date(1957,01,01); // consist just supplies intro year - openttd randomises intro dates a bit anyway
- cargo_capacity: 40;
- sprite_id: SPRITE_ID_NEW_TRAIN; //enable new graphics - nml constant
- power: 500hp;
- speed: 75mph;
- weight: 39ton;
- tractive_effort_coefficient: 0.3;
- cost_factor: 0; // use the CB to set this, the prop is capped to max 255, cb is 32k
- running_cost_base: RUNNING_COST_STEAM;
- running_cost_factor: 0; // use the CB to set this, the prop is capped to max 255, cb is 32k
- refit_cost: 0; // btw this needs to be 0 if we want autorefit without using cb
- refittable_cargo_classes: bitmask(CC_PASSENGERS);
- non_refittable_cargo_classes: bitmask(); // don't set non-refittable classes, increases likelihood of breaking cargo support
- cargo_allow_refit: [];
- cargo_disallow_refit: [];
- cargo_age_period: 56;
- default_cargo_type: PASS;
- misc_flags: bitmask(TRAIN_FLAG_2CC,TRAIN_FLAG_SPRITE_STACK,TRAIN_FLAG_FLIP,TRAIN_FLAG_AUTOREFIT,TRAIN_FLAG_MU); // nml constants
- model_life: 30;
- retire_early: -10;
- reliability_decay: 20; // default value
- vehicle_life: 40;
- length: 8;
- track_type: ELRL;
- }
- graphics {
- default: geronimo_switch_graphics;
- purchase: geronimo_switch_graphics_purchase;
- cost_factor: 36; // CB used as it is capped to max 32k, prop is only 255
- running_cost_factor: 764; // CB used as it is capped to max 32k, prop is only 255
- cargo_capacity: geronimo_switch_cargo_capacity;
- purchase_cargo_capacity: geronimo_switch_cargo_capacity;
- loading_speed: geronimo_switch_loading_speed;
- speed: geronimo_switch_speed_0;
- purchase_speed: 120;
- visual_effect_and_powered: geronimo_switch_visual_effect_and_powered_by_variant_unreversed;
- additional_text: string(STR_SPRITES_COMPLETE);
- }
- }
- if (param[1]==0) {
- item(FEAT_TRAINS, geronimo, 2140) {
- property {
- climates_available: ALL_CLIMATES;
- }
- }
- }
- // -- end 2140 --