From 4fa78d131b9e528c598ce6442ed2936af7d1c3ed Mon Sep 17 00:00:00 2001 From: George Date: Wed, 24 Apr 2024 19:29:14 +0300 Subject: [PATCH] #238 WIP --- src/code-templates-lv-new.pnml | 848 ++++++++++++++++++++------------- 1 file changed, 520 insertions(+), 328 deletions(-) diff --git a/src/code-templates-lv-new.pnml b/src/code-templates-lv-new.pnml index 623b4d2fd..a4b69a12a 100644 --- a/src/code-templates-lv-new.pnml +++ b/src/code-templates-lv-new.pnml @@ -178,346 +178,538 @@ livery_subtemplate(STR_REFIT_LV_UZ_KIEVPASTRANS, 2001) // TODO Разработать шаблон, который устанавливает для ливреи с завода название, отличное от "заводская ливрея" (и для всех неиспользуемых id). // Например, если с завода выходит РЖД ливрея, чтобы она называлась РЖД, а не заводская. А ливрея "заводская" в списке не фигурировала. -#define livery_template_base_list(name, str1) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - return string(STR_REFIT_FACTORY); } \ - -#define livery_template_base_list2(name, str1, str2) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - return string(STR_REFIT_FACTORY); } \ - -#define livery_template_base_list3(name, str1, str2, str3) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - str3: general_cargo_subtype_text_STR_REFIT_##str3; \ - return string(STR_REFIT_FACTORY); } \ - -#define livery_template_base_list4(name, str1, str2, str3, str4) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - str3: general_cargo_subtype_text_STR_REFIT_##str3; \ - str4: general_cargo_subtype_text_STR_REFIT_##str4; \ - return string(STR_REFIT_FACTORY); } \ +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text0, LOAD_TEMP(0)) +{ + LV_RAL6020: general_cargo_subtype_text_STR_REFIT_LV_RAL6020; + LV_RAL6002: general_cargo_subtype_text_STR_REFIT_LV_RAL6002; + LV_OCTOBER_RAILWAY: general_cargo_subtype_text_STR_REFIT_LV_OCTOBER_RAILWAY; + LV_SOUTHERN_RAILWAY: general_cargo_subtype_text_STR_REFIT_LV_SOUTHERN_RAILWAY; + LV_SVERDLOVSK_RAILWAY: general_cargo_subtype_text_STR_REFIT_LV_SVERDLOVSK_RAILWAY; + LV_NORTHERN_KAVKAZ_RAILWAY: general_cargo_subtype_text_STR_REFIT_LV_NORTHERN_KAVKAZ_RAILWAY; + LV_MOSCOW_RAILWAY: general_cargo_subtype_text_STR_REFIT_LV_MOSCOW_RAILWAY; + LV_GORKOV_RAILWAY: general_cargo_subtype_text_STR_REFIT_LV_GORKOV_RAILWAY; + LV_WEST_SIBERIAN_RAILWAY: general_cargo_subtype_text_STR_REFIT_LV_WEST_SIBERIAN_RAILWAY; + LV_BALTIC_RAILWAY: general_cargo_subtype_text_STR_REFIT_LV_BALTIC_RAILWAY; + LV_BALTIC_RAILWAY_ESTONIA: general_cargo_subtype_text_STR_REFIT_LV_BALTIC_RAILWAY_ESTONIA; + LV_BALTIC_RAILWAY_RIGA: general_cargo_subtype_text_STR_REFIT_LV_BALTIC_RAILWAY_RIGA; + LV_LATVIJAS_EKSPRESIS: general_cargo_subtype_text_STR_REFIT_LV_LATVIJAS_EKSPRESIS; + LV_LDZ: general_cargo_subtype_text_STR_REFIT_LV_LDZ; + LV_LG: general_cargo_subtype_text_STR_REFIT_LV_LG; + LV_BELARUSSIAN_RAILWAY: general_cargo_subtype_text_STR_REFIT_LV_BELARUSSIAN_RAILWAY; + LV_UKRAINIAN_RAILWAY: general_cargo_subtype_text_STR_REFIT_LV_UKRAINIAN_RAILWAY; + LV_NORTHERN_RAILWAY: general_cargo_subtype_text_STR_REFIT_LV_NORTHERN_RAILWAY; + LV_UZBEKISTAN_TEMIR_YOLLARI: general_cargo_subtype_text_STR_REFIT_LV_UZBEKISTAN_TEMIR_YOLLARI; + LV_KALININGRAD_RAILWAY: general_cargo_subtype_text_STR_REFIT_LV_KALININGRAD_RAILWAY; + LV_RZD_PID: general_cargo_subtype_text_STR_REFIT_LV_RZD_PID; + LV_BELARUSSIAN_RAILWAY_DRB: general_cargo_subtype_text_STR_REFIT_LV_BELARUSSIAN_RAILWAY_DRB; + LV_SZD: general_cargo_subtype_text_STR_REFIT_LV_SZD; + LV_KAZAKHSTAN_TEMIR_ZHOLY: general_cargo_subtype_text_STR_REFIT_LV_KAZAKHSTAN_TEMIR_ZHOLY; + LV_CRIMEAN_RAILWAY: general_cargo_subtype_text_STR_REFIT_LV_CRIMEAN_RAILWAY; + LV_RAILWAY_MOLDOVA: general_cargo_subtype_text_STR_REFIT_LV_RAILWAY_MOLDOVA; + LV_AZERBAIJAN_RAILWAYS: general_cargo_subtype_text_STR_REFIT_LV_AZERBAIJAN_RAILWAYS; + LV_TAJIK_RAILWAYS: general_cargo_subtype_text_STR_REFIT_LV_TAJIK_RAILWAYS; + LV_PRIDNEPROVSKAIA_RAILWAY: general_cargo_subtype_text_STR_REFIT_LV_PRIDNEPROVSKAIA_RAILWAY; + LV_DONETSK_RAILWAY: general_cargo_subtype_text_STR_REFIT_LV_DONETSK_RAILWAY; + LV_EXHIBITION: general_cargo_subtype_text_STR_REFIT_LV_EXHIBITION; + LV_RED_ARROW_OLD: general_cargo_subtype_text_STR_REFIT_LV_RED_ARROW_OLD; + LV_RED_ARROW: general_cargo_subtype_text_STR_REFIT_LV_RED_ARROW; + LV_BELARUSSIA: general_cargo_subtype_text_STR_REFIT_LV_BELARUSSIA; + LV_URAL: general_cargo_subtype_text_STR_REFIT_LV_URAL; + LV_AURORA: general_cargo_subtype_text_STR_REFIT_LV_AURORA; + LV_AMBER: general_cargo_subtype_text_STR_REFIT_LV_AMBER; + LV_BAIKAL: general_cargo_subtype_text_STR_REFIT_LV_BAIKAL; + LV_EAST: general_cargo_subtype_text_STR_REFIT_LV_EAST; + LV_SOUTHERN_URALS: general_cargo_subtype_text_STR_REFIT_LV_SOUTHERN_URALS; + LV_SIBERIAN: general_cargo_subtype_text_STR_REFIT_LV_SIBERIAN; + LV_RUSSIA: general_cargo_subtype_text_STR_REFIT_LV_RUSSIA; + LV_TIKHIY_DON: general_cargo_subtype_text_STR_REFIT_LV_TIKHIY_DON; + LV_KAMA: general_cargo_subtype_text_STR_REFIT_LV_KAMA; + LV_RYBINSK: general_cargo_subtype_text_STR_REFIT_LV_RYBINSK; + LV_RUSS: general_cargo_subtype_text_STR_REFIT_LV_RUSS; + LV_TATARSTAN: general_cargo_subtype_text_STR_REFIT_LV_TATARSTAN; + LV_NIKHOLAS_EXPRESS: general_cargo_subtype_text_STR_REFIT_LV_NIKHOLAS_EXPRESS; + LV_RITSA_SOCHI: general_cargo_subtype_text_STR_REFIT_LV_RITSA_SOCHI; + LV_EXPRESS_MSK_SPB: general_cargo_subtype_text_STR_REFIT_LV_EXPRESS_MSK_SPB; + LV_SMOLENSK: general_cargo_subtype_text_STR_REFIT_LV_SMOLENSK; + LV_KUBAN: general_cargo_subtype_text_STR_REFIT_LV_KUBAN; + LV_LEO_TOLSTOY: general_cargo_subtype_text_STR_REFIT_LV_LEO_TOLSTOY; + LV_VORONEZH: general_cargo_subtype_text_STR_REFIT_LV_VORONEZH; + LV_ALEXANDER_NEVSKY: general_cargo_subtype_text_STR_REFIT_LV_ALEXANDER_NEVSKY; + LV_BLUE_EXPRESS: general_cargo_subtype_text_STR_REFIT_LV_BLUE_EXPRESS; + LV_UKRAINA: general_cargo_subtype_text_STR_REFIT_LV_UKRAINA; + LV_LETUVA: general_cargo_subtype_text_STR_REFIT_LV_LETUVA; + LV_NEVSKY_EXPRESS: general_cargo_subtype_text_STR_REFIT_LV_NEVSKY_EXPRESS; + LV_UZ_ARENA_2000: general_cargo_subtype_text_STR_REFIT_LV_UZ_ARENA_2000; + LV_UZ_CAPITAL_EXPRESS: general_cargo_subtype_text_STR_REFIT_LV_UZ_CAPITAL_EXPRESS; + LV_KAVKAZ: general_cargo_subtype_text_STR_REFIT_LV_KAVKAZ; + LV_ARCTIC: general_cargo_subtype_text_STR_REFIT_LV_ARCTIC; + LV_POST_RUS: general_cargo_subtype_text_STR_REFIT_LV_POST_RUS; + LV_CPSC: general_cargo_subtype_text_STR_REFIT_LV_CPSC; + LV_UZ_CITY_EXPRESS: general_cargo_subtype_text_STR_REFIT_LV_UZ_CITY_EXPRESS; + LV_UZ_EURO_2012: general_cargo_subtype_text_STR_REFIT_LV_UZ_EURO_2012; + LV_SUBWAY_MOSCOW: general_cargo_subtype_text_STR_REFIT_LV_SUBWAY_MOSCOW; + LV_SUBWAY_SPB: general_cargo_subtype_text_STR_REFIT_LV_SUBWAY_SPB; + LV_SUBWAY_KIEV: general_cargo_subtype_text_STR_REFIT_LV_SUBWAY_KIEV; + LV_SUBWAY_KHARKIV: general_cargo_subtype_text_STR_REFIT_LV_SUBWAY_KHARKIV; + LV_SUBWAY_BAKU: general_cargo_subtype_text_STR_REFIT_LV_SUBWAY_BAKU; + LV_SUBWAY_TASHKENT: general_cargo_subtype_text_STR_REFIT_LV_SUBWAY_TASHKENT; + LV_BCH_TCH1_MINSK_SORT: general_cargo_subtype_text_STR_REFIT_LV_BCH_TCH1_MINSK_SORT; + LV_RZD_TCH11_MOSCOW_III: general_cargo_subtype_text_STR_REFIT_LV_RZD_TCH11_MOSCOW_III; + LV_RZD_TCH11_TIMASHEVSKAYA: general_cargo_subtype_text_STR_REFIT_LV_RZD_TCH11_TIMASHEVSKAYA; + LV_RZD_TCH15_BALASHOV: general_cargo_subtype_text_STR_REFIT_LV_RZD_TCH15_BALASHOV; + LV_RZD_TCH18_MOSCOW_SMOLENSK: general_cargo_subtype_text_STR_REFIT_LV_RZD_TCH18_MOSCOW_SMOLENSK; + LV_RZD_TCH19_MOSCOW_KIEV: general_cargo_subtype_text_STR_REFIT_LV_RZD_TCH19_MOSCOW_KIEV; + LV_RZD_TCH1_MOSCOW_KURSK: general_cargo_subtype_text_STR_REFIT_LV_RZD_TCH1_MOSCOW_KURSK; + LV_RZD_TCH21_VOLHOVSTROI: general_cargo_subtype_text_STR_REFIT_LV_RZD_TCH21_VOLHOVSTROI; + LV_RZD_TCH22_NOVOMOSKOVSK: general_cargo_subtype_text_STR_REFIT_LV_RZD_TCH22_NOVOMOSKOVSK; + LV_RZD_TCH27_KANDALAKSHA: general_cargo_subtype_text_STR_REFIT_LV_RZD_TCH27_KANDALAKSHA; + LV_RZD_TCH2_CHELYABINSK: general_cargo_subtype_text_STR_REFIT_LV_RZD_TCH2_CHELYABINSK; + LV_RZD_TCH35_UZLOVZYA: general_cargo_subtype_text_STR_REFIT_LV_RZD_TCH35_UZLOVZYA; + LV_RZD_TCH3_ROSSOSH: general_cargo_subtype_text_STR_REFIT_LV_RZD_TCH3_ROSSOSH; + LV_RZD_TCH41_VYAZMA_SORT: general_cargo_subtype_text_STR_REFIT_LV_RZD_TCH41_VYAZMA_SORT; + LV_RZD_TCH42_BRYANSK_II: general_cargo_subtype_text_STR_REFIT_LV_RZD_TCH42_BRYANSK_II; + LV_RZD_TCH43_SMOLENSK: general_cargo_subtype_text_STR_REFIT_LV_RZD_TCH43_SMOLENSK; + LV_RZD_TCH4_ZHELEZNODOROZHNAIA: general_cargo_subtype_text_STR_REFIT_LV_RZD_TCH4_ZHELEZNODOROZHNAIA; + LV_RZD_TCH8_CAUCASUS: general_cargo_subtype_text_STR_REFIT_LV_RZD_TCH8_CAUCASUS; + LV_RZD_TCH8_KIROV: general_cargo_subtype_text_STR_REFIT_LV_RZD_TCH8_KIROV; + LV_RZD_TCHE_23_BEKASOVO_SORT: general_cargo_subtype_text_STR_REFIT_LV_RZD_TCHE_23_BEKASOVO_SORT; + LV_RZD_TCHE_7_OREL_SORT: general_cargo_subtype_text_STR_REFIT_LV_RZD_TCHE_7_OREL_SORT; + LV_UZ_TCH1_KIEV: general_cargo_subtype_text_STR_REFIT_LV_UZ_TCH1_KIEV; + LV_UZ_TCH2_OCTOBER_KHARKIV: general_cargo_subtype_text_STR_REFIT_LV_UZ_TCH2_OCTOBER_KHARKIV; + LV_UZ_TCH3_MELITOPOL: general_cargo_subtype_text_STR_REFIT_LV_UZ_TCH3_MELITOPOL; + LV_CHMK: general_cargo_subtype_text_STR_REFIT_LV_CHMK; + LV_NORNIKEL: general_cargo_subtype_text_STR_REFIT_LV_NORNIKEL; + LV_IVANOFRANKIVSKCEMENT: general_cargo_subtype_text_STR_REFIT_LV_IVANOFRANKIVSKCEMENT; + LV_SUEK: general_cargo_subtype_text_STR_REFIT_LV_SUEK; + LV_BALTTRANSSERVICE: general_cargo_subtype_text_STR_REFIT_LV_BALTTRANSSERVICE; + LV_TRANSOIL: general_cargo_subtype_text_STR_REFIT_LV_TRANSOIL; + LV_LTRANS: general_cargo_subtype_text_STR_REFIT_LV_LTRANS; + LV_UZ_KIEVPASTRANS: general_cargo_subtype_text_STR_REFIT_LV_UZ_KIEVPASTRANS; + return string(STR_REFIT_FACTORY); } + +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text1, [STORE_TEMP(cargo_subtype == LOAD_TEMP(1) ? LOAD_TEMP(1) : 0, 0)]) { 0: general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text2, [STORE_TEMP(cargo_subtype == LOAD_TEMP(2) ? LOAD_TEMP(2) : 0, 0)]) { 0: general_cargo_subtype_text1; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text3, [STORE_TEMP(cargo_subtype == LOAD_TEMP(3) ? LOAD_TEMP(3) : 0, 0)]) { 0: general_cargo_subtype_text2; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text4, [STORE_TEMP(cargo_subtype == LOAD_TEMP(4) ? LOAD_TEMP(4) : 0, 0)]) { 0: general_cargo_subtype_text3; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text5, [STORE_TEMP(cargo_subtype == LOAD_TEMP(5) ? LOAD_TEMP(5) : 0, 0)]) { 0: general_cargo_subtype_text4; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text6, [STORE_TEMP(cargo_subtype == LOAD_TEMP(6) ? LOAD_TEMP(6) : 0, 0)]) { 0: general_cargo_subtype_text5; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text7, [STORE_TEMP(cargo_subtype == LOAD_TEMP(7) ? LOAD_TEMP(7) : 0, 0)]) { 0: general_cargo_subtype_text6; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text8, [STORE_TEMP(cargo_subtype == LOAD_TEMP(8) ? LOAD_TEMP(8) : 0, 0)]) { 0: general_cargo_subtype_text7; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text9, [STORE_TEMP(cargo_subtype == LOAD_TEMP(9) ? LOAD_TEMP(9) : 0, 0)]) { 0: general_cargo_subtype_text8; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text10, [STORE_TEMP(cargo_subtype == LOAD_TEMP(10) ? LOAD_TEMP(10) : 0, 0)]) { 0: general_cargo_subtype_text9; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text11, [STORE_TEMP(cargo_subtype == LOAD_TEMP(11) ? LOAD_TEMP(11) : 0, 0)]) { 0: general_cargo_subtype_text10; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text12, [STORE_TEMP(cargo_subtype == LOAD_TEMP(12) ? LOAD_TEMP(12) : 0, 0)]) { 0: general_cargo_subtype_text11; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text13, [STORE_TEMP(cargo_subtype == LOAD_TEMP(13) ? LOAD_TEMP(13) : 0, 0)]) { 0: general_cargo_subtype_text12; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text14, [STORE_TEMP(cargo_subtype == LOAD_TEMP(14) ? LOAD_TEMP(14) : 0, 0)]) { 0: general_cargo_subtype_text13; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text15, [STORE_TEMP(cargo_subtype == LOAD_TEMP(15) ? LOAD_TEMP(15) : 0, 0)]) { 0: general_cargo_subtype_text14; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text16, [STORE_TEMP(cargo_subtype == LOAD_TEMP(16) ? LOAD_TEMP(16) : 0, 0)]) { 0: general_cargo_subtype_text15; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text17, [STORE_TEMP(cargo_subtype == LOAD_TEMP(17) ? LOAD_TEMP(17) : 0, 0)]) { 0: general_cargo_subtype_text16; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text18, [STORE_TEMP(cargo_subtype == LOAD_TEMP(18) ? LOAD_TEMP(18) : 0, 0)]) { 0: general_cargo_subtype_text17; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text19, [STORE_TEMP(cargo_subtype == LOAD_TEMP(19) ? LOAD_TEMP(19) : 0, 0)]) { 0: general_cargo_subtype_text18; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text20, [STORE_TEMP(cargo_subtype == LOAD_TEMP(20) ? LOAD_TEMP(20) : 0, 0)]) { 0: general_cargo_subtype_text19; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text21, [STORE_TEMP(cargo_subtype == LOAD_TEMP(21) ? LOAD_TEMP(21) : 0, 0)]) { 0: general_cargo_subtype_text20; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text22, [STORE_TEMP(cargo_subtype == LOAD_TEMP(22) ? LOAD_TEMP(22) : 0, 0)]) { 0: general_cargo_subtype_text21; general_cargo_subtype_text0; } +switch (FEAT_TRAINS, SELF, general_cargo_subtype_text_all, LOAD_TEMP(0)) + { 1: general_cargo_subtype_text1; + 2: general_cargo_subtype_text2; + 3: general_cargo_subtype_text3; + 4: general_cargo_subtype_text4; + 5: general_cargo_subtype_text5; + 6: general_cargo_subtype_text6; + 7: general_cargo_subtype_text7; + 8: general_cargo_subtype_text8; + 9: general_cargo_subtype_text9; + 10: general_cargo_subtype_text10; + 11: general_cargo_subtype_text11; + 12: general_cargo_subtype_text12; + 13: general_cargo_subtype_text13; + 14: general_cargo_subtype_text14; + 15: general_cargo_subtype_text15; + 16: general_cargo_subtype_text16; + 17: general_cargo_subtype_text17; + 18: general_cargo_subtype_text18; + 19: general_cargo_subtype_text19; + 20: general_cargo_subtype_text20; + 21: general_cargo_subtype_text21; + 22: general_cargo_subtype_text22; + general_cargo_subtype_text0; } + +#define livery_template_base_list(name, str1) \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(1, 0), \ + STORE_TEMP(str1, 1) ] ) \ +{ general_cargo_subtype_text_all; } \ + +#define livery_template_base_list2(name, str1, str2) \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(2, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2) ] ) \ +{ general_cargo_subtype_text_all; } \ + +#define livery_template_base_list3(name, str1, str2, str3) \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(3, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2), \ + STORE_TEMP(str3, 3) ] ) \ +{ general_cargo_subtype_text_all; } \ + +#define livery_template_base_list4(name, str1, str2, str3, str4) \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(4, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2), \ + STORE_TEMP(str3, 3), \ + STORE_TEMP(str4, 4) ] ) \ +{ general_cargo_subtype_text_all; } \ #define livery_template_base_list5(name, str1, str2, str3, str4, str5) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - str3: general_cargo_subtype_text_STR_REFIT_##str3; \ - str4: general_cargo_subtype_text_STR_REFIT_##str4; \ - str5: general_cargo_subtype_text_STR_REFIT_##str5; \ - return string(STR_REFIT_FACTORY); } \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(5, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2), \ + STORE_TEMP(str3, 3), \ + STORE_TEMP(str4, 4), \ + STORE_TEMP(str5, 5) ] ) \ +{ general_cargo_subtype_text_all; } \ #define livery_template_base_list6(name, str1, str2, str3, str4, str5, str6) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - str3: general_cargo_subtype_text_STR_REFIT_##str3; \ - str4: general_cargo_subtype_text_STR_REFIT_##str4; \ - str5: general_cargo_subtype_text_STR_REFIT_##str5; \ - str6: general_cargo_subtype_text_STR_REFIT_##str6; \ - return string(STR_REFIT_FACTORY); } \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(6, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2), \ + STORE_TEMP(str3, 3), \ + STORE_TEMP(str4, 4), \ + STORE_TEMP(str5, 5), \ + STORE_TEMP(str6, 6) ] ) \ +{ general_cargo_subtype_text_all; } \ #define livery_template_base_list7(name, str1, str2, str3, str4, str5, str6, str7) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - str3: general_cargo_subtype_text_STR_REFIT_##str3; \ - str4: general_cargo_subtype_text_STR_REFIT_##str4; \ - str5: general_cargo_subtype_text_STR_REFIT_##str5; \ - str6: general_cargo_subtype_text_STR_REFIT_##str6; \ - str7: general_cargo_subtype_text_STR_REFIT_##str7; \ - return string(STR_REFIT_FACTORY); } \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(7, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2), \ + STORE_TEMP(str3, 3), \ + STORE_TEMP(str4, 4), \ + STORE_TEMP(str5, 5), \ + STORE_TEMP(str6, 6), \ + STORE_TEMP(str7, 7) ] ) \ +{ general_cargo_subtype_text_all; } \ #define livery_template_base_list8(name, str1, str2, str3, str4, str5, str6, str7, str8) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - str3: general_cargo_subtype_text_STR_REFIT_##str3; \ - str4: general_cargo_subtype_text_STR_REFIT_##str4; \ - str5: general_cargo_subtype_text_STR_REFIT_##str5; \ - str6: general_cargo_subtype_text_STR_REFIT_##str6; \ - str7: general_cargo_subtype_text_STR_REFIT_##str7; \ - str8: general_cargo_subtype_text_STR_REFIT_##str8; \ - return string(STR_REFIT_FACTORY); } \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(8, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2), \ + STORE_TEMP(str3, 3), \ + STORE_TEMP(str4, 4), \ + STORE_TEMP(str5, 5), \ + STORE_TEMP(str6, 6), \ + STORE_TEMP(str7, 7), \ + STORE_TEMP(str8, 8) ] ) \ +{ general_cargo_subtype_text_all; } \ #define livery_template_base_list9(name, str1, str2, str3, str4, str5, str6, str7, str8, str9) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - str3: general_cargo_subtype_text_STR_REFIT_##str3; \ - str4: general_cargo_subtype_text_STR_REFIT_##str4; \ - str5: general_cargo_subtype_text_STR_REFIT_##str5; \ - str6: general_cargo_subtype_text_STR_REFIT_##str6; \ - str7: general_cargo_subtype_text_STR_REFIT_##str7; \ - str8: general_cargo_subtype_text_STR_REFIT_##str8; \ - str9: general_cargo_subtype_text_STR_REFIT_##str9; \ - return string(STR_REFIT_FACTORY); } \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(9, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2), \ + STORE_TEMP(str3, 3), \ + STORE_TEMP(str4, 4), \ + STORE_TEMP(str5, 5), \ + STORE_TEMP(str6, 6), \ + STORE_TEMP(str7, 7), \ + STORE_TEMP(str8, 8), \ + STORE_TEMP(str9, 9) ] ) \ +{ general_cargo_subtype_text_all; } \ #define livery_template_base_list10(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - str3: general_cargo_subtype_text_STR_REFIT_##str3; \ - str4: general_cargo_subtype_text_STR_REFIT_##str4; \ - str5: general_cargo_subtype_text_STR_REFIT_##str5; \ - str6: general_cargo_subtype_text_STR_REFIT_##str6; \ - str7: general_cargo_subtype_text_STR_REFIT_##str7; \ - str8: general_cargo_subtype_text_STR_REFIT_##str8; \ - str9: general_cargo_subtype_text_STR_REFIT_##str9; \ - str10: general_cargo_subtype_text_STR_REFIT_##str10; \ - return string(STR_REFIT_FACTORY); } \ - -#define livery_template_base_list11(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, str11) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - str3: general_cargo_subtype_text_STR_REFIT_##str3; \ - str4: general_cargo_subtype_text_STR_REFIT_##str4; \ - str5: general_cargo_subtype_text_STR_REFIT_##str5; \ - str6: general_cargo_subtype_text_STR_REFIT_##str6; \ - str7: general_cargo_subtype_text_STR_REFIT_##str7; \ - str8: general_cargo_subtype_text_STR_REFIT_##str8; \ - str9: general_cargo_subtype_text_STR_REFIT_##str9; \ - str10: general_cargo_subtype_text_STR_REFIT_##str10; \ - str11: general_cargo_subtype_text_STR_REFIT_##str11; \ - return string(STR_REFIT_FACTORY); } \ - -#define livery_template_base_list12(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, str11, str12) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - str3: general_cargo_subtype_text_STR_REFIT_##str3; \ - str4: general_cargo_subtype_text_STR_REFIT_##str4; \ - str5: general_cargo_subtype_text_STR_REFIT_##str5; \ - str6: general_cargo_subtype_text_STR_REFIT_##str6; \ - str7: general_cargo_subtype_text_STR_REFIT_##str7; \ - str8: general_cargo_subtype_text_STR_REFIT_##str8; \ - str9: general_cargo_subtype_text_STR_REFIT_##str9; \ - str10: general_cargo_subtype_text_STR_REFIT_##str10; \ - str11: general_cargo_subtype_text_STR_REFIT_##str11; \ - str12: general_cargo_subtype_text_STR_REFIT_##str12; \ - return string(STR_REFIT_FACTORY); } \ - -#define livery_template_base_list13(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, str11, str12, str13) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - str3: general_cargo_subtype_text_STR_REFIT_##str3; \ - str4: general_cargo_subtype_text_STR_REFIT_##str4; \ - str5: general_cargo_subtype_text_STR_REFIT_##str5; \ - str6: general_cargo_subtype_text_STR_REFIT_##str6; \ - str7: general_cargo_subtype_text_STR_REFIT_##str7; \ - str8: general_cargo_subtype_text_STR_REFIT_##str8; \ - str9: general_cargo_subtype_text_STR_REFIT_##str9; \ - str10: general_cargo_subtype_text_STR_REFIT_##str10; \ - str11: general_cargo_subtype_text_STR_REFIT_##str11; \ - str12: general_cargo_subtype_text_STR_REFIT_##str12; \ - str13: general_cargo_subtype_text_STR_REFIT_##str13; \ - return string(STR_REFIT_FACTORY); } \ - -#define livery_template_base_list14(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, str11, str12, str13, str14) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - str3: general_cargo_subtype_text_STR_REFIT_##str3; \ - str4: general_cargo_subtype_text_STR_REFIT_##str4; \ - str5: general_cargo_subtype_text_STR_REFIT_##str5; \ - str6: general_cargo_subtype_text_STR_REFIT_##str6; \ - str7: general_cargo_subtype_text_STR_REFIT_##str7; \ - str8: general_cargo_subtype_text_STR_REFIT_##str8; \ - str9: general_cargo_subtype_text_STR_REFIT_##str9; \ - str10: general_cargo_subtype_text_STR_REFIT_##str10; \ - str11: general_cargo_subtype_text_STR_REFIT_##str11; \ - str12: general_cargo_subtype_text_STR_REFIT_##str12; \ - str13: general_cargo_subtype_text_STR_REFIT_##str13; \ - str14: general_cargo_subtype_text_STR_REFIT_##str14; \ - return string(STR_REFIT_FACTORY); } \ - -#define livery_template_base_list15(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, str11, str12, str13, str14, str15) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - str3: general_cargo_subtype_text_STR_REFIT_##str3; \ - str4: general_cargo_subtype_text_STR_REFIT_##str4; \ - str5: general_cargo_subtype_text_STR_REFIT_##str5; \ - str6: general_cargo_subtype_text_STR_REFIT_##str6; \ - str7: general_cargo_subtype_text_STR_REFIT_##str7; \ - str8: general_cargo_subtype_text_STR_REFIT_##str8; \ - str9: general_cargo_subtype_text_STR_REFIT_##str9; \ - str10: general_cargo_subtype_text_STR_REFIT_##str10; \ - str11: general_cargo_subtype_text_STR_REFIT_##str11; \ - str12: general_cargo_subtype_text_STR_REFIT_##str12; \ - str13: general_cargo_subtype_text_STR_REFIT_##str13; \ - str14: general_cargo_subtype_text_STR_REFIT_##str14; \ - str15: general_cargo_subtype_text_STR_REFIT_##str15; \ - return string(STR_REFIT_FACTORY); } \ - -#define livery_template_base_list16(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, str11, str12, str13, str14, str15, str16) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - str3: general_cargo_subtype_text_STR_REFIT_##str3; \ - str4: general_cargo_subtype_text_STR_REFIT_##str4; \ - str5: general_cargo_subtype_text_STR_REFIT_##str5; \ - str6: general_cargo_subtype_text_STR_REFIT_##str6; \ - str7: general_cargo_subtype_text_STR_REFIT_##str7; \ - str8: general_cargo_subtype_text_STR_REFIT_##str8; \ - str9: general_cargo_subtype_text_STR_REFIT_##str9; \ - str10: general_cargo_subtype_text_STR_REFIT_##str10; \ - str11: general_cargo_subtype_text_STR_REFIT_##str11; \ - str12: general_cargo_subtype_text_STR_REFIT_##str12; \ - str13: general_cargo_subtype_text_STR_REFIT_##str13; \ - str14: general_cargo_subtype_text_STR_REFIT_##str14; \ - str15: general_cargo_subtype_text_STR_REFIT_##str15; \ - str16: general_cargo_subtype_text_STR_REFIT_##str16; \ - return string(STR_REFIT_FACTORY); } \ - -#define livery_template_base_list17(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, str11, str12, str13, str14, str15, str16, str17) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - str3: general_cargo_subtype_text_STR_REFIT_##str3; \ - str4: general_cargo_subtype_text_STR_REFIT_##str4; \ - str5: general_cargo_subtype_text_STR_REFIT_##str5; \ - str6: general_cargo_subtype_text_STR_REFIT_##str6; \ - str7: general_cargo_subtype_text_STR_REFIT_##str7; \ - str8: general_cargo_subtype_text_STR_REFIT_##str8; \ - str9: general_cargo_subtype_text_STR_REFIT_##str9; \ - str10: general_cargo_subtype_text_STR_REFIT_##str10; \ - str11: general_cargo_subtype_text_STR_REFIT_##str11; \ - str12: general_cargo_subtype_text_STR_REFIT_##str12; \ - str13: general_cargo_subtype_text_STR_REFIT_##str13; \ - str14: general_cargo_subtype_text_STR_REFIT_##str14; \ - str15: general_cargo_subtype_text_STR_REFIT_##str15; \ - str16: general_cargo_subtype_text_STR_REFIT_##str16; \ - str17: general_cargo_subtype_text_STR_REFIT_##str17; \ - return string(STR_REFIT_FACTORY); } \ - -#define livery_template_base_list18(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, str11, str12, str13, str14, str15, str16, str17, str18) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - str3: general_cargo_subtype_text_STR_REFIT_##str3; \ - str4: general_cargo_subtype_text_STR_REFIT_##str4; \ - str5: general_cargo_subtype_text_STR_REFIT_##str5; \ - str6: general_cargo_subtype_text_STR_REFIT_##str6; \ - str7: general_cargo_subtype_text_STR_REFIT_##str7; \ - str8: general_cargo_subtype_text_STR_REFIT_##str8; \ - str9: general_cargo_subtype_text_STR_REFIT_##str9; \ - str10: general_cargo_subtype_text_STR_REFIT_##str10; \ - str11: general_cargo_subtype_text_STR_REFIT_##str11; \ - str12: general_cargo_subtype_text_STR_REFIT_##str12; \ - str13: general_cargo_subtype_text_STR_REFIT_##str13; \ - str14: general_cargo_subtype_text_STR_REFIT_##str14; \ - str15: general_cargo_subtype_text_STR_REFIT_##str15; \ - str16: general_cargo_subtype_text_STR_REFIT_##str16; \ - str17: general_cargo_subtype_text_STR_REFIT_##str17; \ - str18: general_cargo_subtype_text_STR_REFIT_##str18; \ - return string(STR_REFIT_FACTORY); } \ - -#define livery_template_base_list19(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, str11, str12, str13, str14, str15, str16, str17, str18, str19) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - str3: general_cargo_subtype_text_STR_REFIT_##str3; \ - str4: general_cargo_subtype_text_STR_REFIT_##str4; \ - str5: general_cargo_subtype_text_STR_REFIT_##str5; \ - str6: general_cargo_subtype_text_STR_REFIT_##str6; \ - str7: general_cargo_subtype_text_STR_REFIT_##str7; \ - str8: general_cargo_subtype_text_STR_REFIT_##str8; \ - str9: general_cargo_subtype_text_STR_REFIT_##str9; \ - str10: general_cargo_subtype_text_STR_REFIT_##str10; \ - str11: general_cargo_subtype_text_STR_REFIT_##str11; \ - str12: general_cargo_subtype_text_STR_REFIT_##str12; \ - str13: general_cargo_subtype_text_STR_REFIT_##str13; \ - str14: general_cargo_subtype_text_STR_REFIT_##str14; \ - str15: general_cargo_subtype_text_STR_REFIT_##str15; \ - str16: general_cargo_subtype_text_STR_REFIT_##str16; \ - str17: general_cargo_subtype_text_STR_REFIT_##str17; \ - str18: general_cargo_subtype_text_STR_REFIT_##str18; \ - str19: general_cargo_subtype_text_STR_REFIT_##str19; \ - return string(STR_REFIT_FACTORY); } \ - -#define livery_template_base_list20(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, str11, str12, str13, str14, str15, str16, str17, str18, str19, str20) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - str3: general_cargo_subtype_text_STR_REFIT_##str3; \ - str4: general_cargo_subtype_text_STR_REFIT_##str4; \ - str5: general_cargo_subtype_text_STR_REFIT_##str5; \ - str6: general_cargo_subtype_text_STR_REFIT_##str6; \ - str7: general_cargo_subtype_text_STR_REFIT_##str7; \ - str8: general_cargo_subtype_text_STR_REFIT_##str8; \ - str9: general_cargo_subtype_text_STR_REFIT_##str9; \ - str10: general_cargo_subtype_text_STR_REFIT_##str10; \ - str11: general_cargo_subtype_text_STR_REFIT_##str11; \ - str12: general_cargo_subtype_text_STR_REFIT_##str12; \ - str13: general_cargo_subtype_text_STR_REFIT_##str13; \ - str14: general_cargo_subtype_text_STR_REFIT_##str14; \ - str15: general_cargo_subtype_text_STR_REFIT_##str15; \ - str16: general_cargo_subtype_text_STR_REFIT_##str16; \ - str17: general_cargo_subtype_text_STR_REFIT_##str17; \ - str18: general_cargo_subtype_text_STR_REFIT_##str18; \ - str19: general_cargo_subtype_text_STR_REFIT_##str19; \ - str20: general_cargo_subtype_text_STR_REFIT_##str20; \ - return string(STR_REFIT_FACTORY); } \ - -#define livery_template_base_list21(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, str11, str12, str13, str14, str15, str16, str17, str18, str19, str20, str21) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - str3: general_cargo_subtype_text_STR_REFIT_##str3; \ - str4: general_cargo_subtype_text_STR_REFIT_##str4; \ - str5: general_cargo_subtype_text_STR_REFIT_##str5; \ - str6: general_cargo_subtype_text_STR_REFIT_##str6; \ - str7: general_cargo_subtype_text_STR_REFIT_##str7; \ - str8: general_cargo_subtype_text_STR_REFIT_##str8; \ - str9: general_cargo_subtype_text_STR_REFIT_##str9; \ - str10: general_cargo_subtype_text_STR_REFIT_##str10; \ - str11: general_cargo_subtype_text_STR_REFIT_##str11; \ - str12: general_cargo_subtype_text_STR_REFIT_##str12; \ - str13: general_cargo_subtype_text_STR_REFIT_##str13; \ - str14: general_cargo_subtype_text_STR_REFIT_##str14; \ - str15: general_cargo_subtype_text_STR_REFIT_##str15; \ - str16: general_cargo_subtype_text_STR_REFIT_##str16; \ - str17: general_cargo_subtype_text_STR_REFIT_##str17; \ - str18: general_cargo_subtype_text_STR_REFIT_##str18; \ - str19: general_cargo_subtype_text_STR_REFIT_##str19; \ - str20: general_cargo_subtype_text_STR_REFIT_##str20; \ - str21: general_cargo_subtype_text_STR_REFIT_##str21; \ - return string(STR_REFIT_FACTORY); } \ - -#define livery_template_base_list22(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, str11, str12, str13, str14, str15, str16, str17, str18, str19, str20, str21, str22) \ -switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, cargo_subtype) \ -{ str1: general_cargo_subtype_text_STR_REFIT_##str1; \ - str2: general_cargo_subtype_text_STR_REFIT_##str2; \ - str3: general_cargo_subtype_text_STR_REFIT_##str3; \ - str4: general_cargo_subtype_text_STR_REFIT_##str4; \ - str5: general_cargo_subtype_text_STR_REFIT_##str5; \ - str6: general_cargo_subtype_text_STR_REFIT_##str6; \ - str7: general_cargo_subtype_text_STR_REFIT_##str7; \ - str8: general_cargo_subtype_text_STR_REFIT_##str8; \ - str9: general_cargo_subtype_text_STR_REFIT_##str9; \ - str10: general_cargo_subtype_text_STR_REFIT_##str10; \ - str11: general_cargo_subtype_text_STR_REFIT_##str11; \ - str12: general_cargo_subtype_text_STR_REFIT_##str12; \ - str13: general_cargo_subtype_text_STR_REFIT_##str13; \ - str14: general_cargo_subtype_text_STR_REFIT_##str14; \ - str15: general_cargo_subtype_text_STR_REFIT_##str15; \ - str16: general_cargo_subtype_text_STR_REFIT_##str16; \ - str17: general_cargo_subtype_text_STR_REFIT_##str17; \ - str18: general_cargo_subtype_text_STR_REFIT_##str18; \ - str19: general_cargo_subtype_text_STR_REFIT_##str19; \ - str20: general_cargo_subtype_text_STR_REFIT_##str20; \ - str21: general_cargo_subtype_text_STR_REFIT_##str21; \ - str22: general_cargo_subtype_text_STR_REFIT_##str22; \ - return string(STR_REFIT_FACTORY); } \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(10, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2), \ + STORE_TEMP(str3, 3), \ + STORE_TEMP(str4, 4), \ + STORE_TEMP(str5, 5), \ + STORE_TEMP(str6, 6), \ + STORE_TEMP(str7, 7), \ + STORE_TEMP(str8, 8), \ + STORE_TEMP(str9, 9), \ + STORE_TEMP(str10, 10) ] ) \ +{ general_cargo_subtype_text_all; } \ + +#define livery_template_base_list11(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, \ + str11) \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(11, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2), \ + STORE_TEMP(str3, 3), \ + STORE_TEMP(str4, 4), \ + STORE_TEMP(str5, 5), \ + STORE_TEMP(str6, 6), \ + STORE_TEMP(str7, 7), \ + STORE_TEMP(str8, 8), \ + STORE_TEMP(str9, 9), \ + STORE_TEMP(str10, 10), \ + STORE_TEMP(str11, 11) ] ) \ +{ general_cargo_subtype_text_all; } \ + +#define livery_template_base_list12(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, \ + str11, str12) \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(12, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2), \ + STORE_TEMP(str3, 3), \ + STORE_TEMP(str4, 4), \ + STORE_TEMP(str5, 5), \ + STORE_TEMP(str6, 6), \ + STORE_TEMP(str7, 7), \ + STORE_TEMP(str8, 8), \ + STORE_TEMP(str9, 9), \ + STORE_TEMP(str10, 10), \ + STORE_TEMP(str11, 11), \ + STORE_TEMP(str12, 12) ] ) \ +{ general_cargo_subtype_text_all; } \ + +#define livery_template_base_list13(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, \ + str11, str12, str13) \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(13, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2), \ + STORE_TEMP(str3, 3), \ + STORE_TEMP(str4, 4), \ + STORE_TEMP(str5, 5), \ + STORE_TEMP(str6, 6), \ + STORE_TEMP(str7, 7), \ + STORE_TEMP(str8, 8), \ + STORE_TEMP(str9, 9), \ + STORE_TEMP(str10, 10), \ + STORE_TEMP(str11, 11), \ + STORE_TEMP(str12, 12), \ + STORE_TEMP(str13, 13) ] ) \ +{ general_cargo_subtype_text_all; } \ + +#define livery_template_base_list14(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, \ + str11, str12, str13, str14) \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(14, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2), \ + STORE_TEMP(str3, 3), \ + STORE_TEMP(str4, 4), \ + STORE_TEMP(str5, 5), \ + STORE_TEMP(str6, 6), \ + STORE_TEMP(str7, 7), \ + STORE_TEMP(str8, 8), \ + STORE_TEMP(str9, 9), \ + STORE_TEMP(str10, 10), \ + STORE_TEMP(str11, 11), \ + STORE_TEMP(str12, 12), \ + STORE_TEMP(str13, 13), \ + STORE_TEMP(str14, 14) ] ) \ +{ general_cargo_subtype_text_all; } \ + +#define livery_template_base_list15(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, \ + str11, str12, str13, str14, str15) \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(15, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2), \ + STORE_TEMP(str3, 3), \ + STORE_TEMP(str4, 4), \ + STORE_TEMP(str5, 5), \ + STORE_TEMP(str6, 6), \ + STORE_TEMP(str7, 7), \ + STORE_TEMP(str8, 8), \ + STORE_TEMP(str9, 9), \ + STORE_TEMP(str10, 10), \ + STORE_TEMP(str11, 11), \ + STORE_TEMP(str12, 12), \ + STORE_TEMP(str13, 13), \ + STORE_TEMP(str14, 14), \ + STORE_TEMP(str15, 15) ] ) \ +{ general_cargo_subtype_text_all; } \ + +#define livery_template_base_list16(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, \ + str11, str12, str13, str14, str15, str16) \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(16, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2), \ + STORE_TEMP(str3, 3), \ + STORE_TEMP(str4, 4), \ + STORE_TEMP(str5, 5), \ + STORE_TEMP(str6, 6), \ + STORE_TEMP(str7, 7), \ + STORE_TEMP(str8, 8), \ + STORE_TEMP(str9, 9), \ + STORE_TEMP(str10, 10), \ + STORE_TEMP(str11, 11), \ + STORE_TEMP(str12, 12), \ + STORE_TEMP(str13, 13), \ + STORE_TEMP(str14, 14), \ + STORE_TEMP(str15, 15), \ + STORE_TEMP(str16, 16) ] ) \ +{ general_cargo_subtype_text_all; } \ + +#define livery_template_base_list17(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, \ + str11, str12, str13, str14, str15, str16, str17) \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(17, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2), \ + STORE_TEMP(str3, 3), \ + STORE_TEMP(str4, 4), \ + STORE_TEMP(str5, 5), \ + STORE_TEMP(str6, 6), \ + STORE_TEMP(str7, 7), \ + STORE_TEMP(str8, 8), \ + STORE_TEMP(str9, 9), \ + STORE_TEMP(str10, 10), \ + STORE_TEMP(str11, 11), \ + STORE_TEMP(str12, 12), \ + STORE_TEMP(str13, 13), \ + STORE_TEMP(str14, 14), \ + STORE_TEMP(str15, 15), \ + STORE_TEMP(str16, 16), \ + STORE_TEMP(str17, 17) ] ) \ +{ general_cargo_subtype_text_all; } \ + +#define livery_template_base_list18(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, \ + str11, str12, str13, str14, str15, str16, str17, str18) \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(18, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2), \ + STORE_TEMP(str3, 3), \ + STORE_TEMP(str4, 4), \ + STORE_TEMP(str5, 5), \ + STORE_TEMP(str6, 6), \ + STORE_TEMP(str7, 7), \ + STORE_TEMP(str8, 8), \ + STORE_TEMP(str9, 9), \ + STORE_TEMP(str10, 10), \ + STORE_TEMP(str11, 11), \ + STORE_TEMP(str12, 12), \ + STORE_TEMP(str13, 13), \ + STORE_TEMP(str14, 14), \ + STORE_TEMP(str15, 15), \ + STORE_TEMP(str16, 16), \ + STORE_TEMP(str17, 17), \ + STORE_TEMP(str18, 18) ] ) \ +{ general_cargo_subtype_text_all; } \ + +#define livery_template_base_list19(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, \ + str11, str12, str13, str14, str15, str16, str17, str18, str19) \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(19, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2), \ + STORE_TEMP(str3, 3), \ + STORE_TEMP(str4, 4), \ + STORE_TEMP(str5, 5), \ + STORE_TEMP(str6, 6), \ + STORE_TEMP(str7, 7), \ + STORE_TEMP(str8, 8), \ + STORE_TEMP(str9, 9), \ + STORE_TEMP(str10, 10), \ + STORE_TEMP(str11, 11), \ + STORE_TEMP(str12, 12), \ + STORE_TEMP(str13, 13), \ + STORE_TEMP(str14, 14), \ + STORE_TEMP(str15, 15), \ + STORE_TEMP(str16, 16), \ + STORE_TEMP(str17, 17), \ + STORE_TEMP(str18, 18), \ + STORE_TEMP(str19, 19) ] ) \ +{ general_cargo_subtype_text_all; } \ + +#define livery_template_base_list20(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, \ + str11, str12, str13, str14, str15, str16, str17, str18, str19, str20) \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(20, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2), \ + STORE_TEMP(str3, 3), \ + STORE_TEMP(str4, 4), \ + STORE_TEMP(str5, 5), \ + STORE_TEMP(str6, 6), \ + STORE_TEMP(str7, 7), \ + STORE_TEMP(str8, 8), \ + STORE_TEMP(str9, 9), \ + STORE_TEMP(str10, 10), \ + STORE_TEMP(str11, 11), \ + STORE_TEMP(str12, 12), \ + STORE_TEMP(str13, 13), \ + STORE_TEMP(str14, 14), \ + STORE_TEMP(str15, 15), \ + STORE_TEMP(str16, 16), \ + STORE_TEMP(str17, 17), \ + STORE_TEMP(str18, 18), \ + STORE_TEMP(str19, 19), \ + STORE_TEMP(str20, 20) ] ) \ +{ general_cargo_subtype_text_all; } \ + +#define livery_template_base_list21(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, \ + str11, str12, str13, str14, str15, str16, str17, str18, str19, str20, \ + str21) \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(21, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2), \ + STORE_TEMP(str3, 3), \ + STORE_TEMP(str4, 4), \ + STORE_TEMP(str5, 5), \ + STORE_TEMP(str6, 6), \ + STORE_TEMP(str7, 7), \ + STORE_TEMP(str8, 8), \ + STORE_TEMP(str9, 9), \ + STORE_TEMP(str10, 10), \ + STORE_TEMP(str11, 11), \ + STORE_TEMP(str12, 12), \ + STORE_TEMP(str13, 13), \ + STORE_TEMP(str14, 14), \ + STORE_TEMP(str15, 15), \ + STORE_TEMP(str16, 16), \ + STORE_TEMP(str17, 17), \ + STORE_TEMP(str18, 18), \ + STORE_TEMP(str19, 19), \ + STORE_TEMP(str20, 20), \ + STORE_TEMP(str21, 21) ] ) \ +{ general_cargo_subtype_text_all; } \ + +#define livery_template_base_list22(name, str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, \ + str11, str12, str13, str14, str15, str16, str17, str18, str19, str20, \ + str21, str22) \ +switch (FEAT_TRAINS, SELF, name##_cargo_subtype_text, \ +[STORE_TEMP(22, 0), \ + STORE_TEMP(str1, 1), \ + STORE_TEMP(str2, 2), \ + STORE_TEMP(str3, 3), \ + STORE_TEMP(str4, 4), \ + STORE_TEMP(str5, 5), \ + STORE_TEMP(str6, 6), \ + STORE_TEMP(str7, 7), \ + STORE_TEMP(str8, 8), \ + STORE_TEMP(str9, 9), \ + STORE_TEMP(str10, 10), \ + STORE_TEMP(str11, 11), \ + STORE_TEMP(str12, 12), \ + STORE_TEMP(str13, 13), \ + STORE_TEMP(str14, 14), \ + STORE_TEMP(str15, 15), \ + STORE_TEMP(str16, 16), \ + STORE_TEMP(str17, 17), \ + STORE_TEMP(str18, 18), \ + STORE_TEMP(str19, 19), \ + STORE_TEMP(str20, 20), \ + STORE_TEMP(str21, 21), \ + STORE_TEMP(str22, 22) ] ) \ +{ general_cargo_subtype_text_all; } \ /* STR_