In xUSSR set we came to D0xx strings limit (1024 strings), while we have only 400 train IDs
I have the following questions:
1) does nmlc makes a D0xx string for every callback even if several vehicles assemble callback text from the same parts?
I made the code
Code: Select all
switch (FEAT_TRAINS, SELF, dr1_h_additional_text,
(current_year >= 1966) +
(current_year >= 1968))
{
0: return string(STR_PURCHASE_HINT_ENGINE_MU,
string(STR_PURCHASE_HINT_LOADING_SPEED_2TIC),
string(STR_PURCHASE_HINT_AGING_PERIOD_1_1),
string(STR_PURCHASE_HINT_ENGINE_TYPE_DMU_H),
string(STR_SECTIONS_DMU_3_4),
string(STR_PURCHASE_HINT_FROMTO, 1963, 1969),
string(STR_PURCHASE_HINT_FACTORY_RIGA_CW));
1: return string(STR_PURCHASE_HINT_ENGINE_MU_WITH_COMMENT,
string(STR_PURCHASE_HINT_LOADING_SPEED_2TIC),
string(STR_PURCHASE_HINT_AGING_PERIOD_1_1),
string(STR_PURCHASE_HINT_ENGINE_TYPE_DMU_H),
string(STR_SECTIONS_DMU_3_4),
string(STR_PURCHASE_HINT_FROMTO, 1963, 1969),
string(STR_PURCHASE_HINT_FACTORY_RIGA_CW),
string(STR_PURCHASE_HINT_ATTACH_YEAR,"...-1965","1966-..."));
return string(STR_PURCHASE_HINT_ENGINE_MU_WITH_COMMENT,
string(STR_PURCHASE_HINT_LOADING_SPEED_2TIC),
string(STR_PURCHASE_HINT_AGING_PERIOD_1_1),
string(STR_PURCHASE_HINT_ENGINE_TYPE_DMU_H),
string(STR_SECTIONS_DMU_3_6),
string(STR_PURCHASE_HINT_FROMTO, 1963, 1969),
string(STR_PURCHASE_HINT_FACTORY_RIGA_CW),
string(STR_PURCHASE_HINT_ATTACH_YEAR,"...-1967","1968-..."));
}
Code: Select all
switch (FEAT_TRAINS, SELF, dr2_h_additional_text,
(current_year >= 1966) +
(current_year >= 1968))
{
0: return string(STR_PURCHASE_HINT_ENGINE_MU,
string(STR_PURCHASE_HINT_LOADING_SPEED_2TIC),
string(STR_PURCHASE_HINT_AGING_PERIOD_1_1),
string(STR_PURCHASE_HINT_ENGINE_TYPE_DMU_H),
string(STR_SECTIONS_DMU_3_4),
string(STR_PURCHASE_HINT_FROMTO, 1963, 1969),
string(STR_PURCHASE_HINT_FACTORY_RIGA_CW));
1: return string(STR_PURCHASE_HINT_ENGINE_MU_WITH_COMMENT,
string(STR_PURCHASE_HINT_LOADING_SPEED_2TIC),
string(STR_PURCHASE_HINT_AGING_PERIOD_1_1),
string(STR_PURCHASE_HINT_ENGINE_TYPE_DMU_H),
string(STR_SECTIONS_DMU_3_4),
string(STR_PURCHASE_HINT_FROMTO, 1963, 1969),
string(STR_PURCHASE_HINT_FACTORY_RIGA_CW),
string(STR_PURCHASE_HINT_ATTACH_YEAR,"...-1965","1966-..."));
return string(STR_PURCHASE_HINT_ENGINE_MU_WITH_COMMENT,
string(STR_PURCHASE_HINT_LOADING_SPEED_2TIC),
string(STR_PURCHASE_HINT_AGING_PERIOD_1_1),
string(STR_PURCHASE_HINT_ENGINE_TYPE_DMU_H),
string(STR_SECTIONS_DMU_3_6),
string(STR_PURCHASE_HINT_FROMTO, 1963, 1969),
string(STR_PURCHASE_HINT_FACTORY_RIGA_CW),
string(STR_PURCHASE_HINT_ATTACH_YEAR,"...-1967","1968-..."));
}
Why? It has no new strings.
2) How to make nmlc to reduce amount of D0xx strings used? I have only 479 different string in lng file for additional text CB, but nmlc uses more than 500 for it (then I remove additional text CB completely, I get about 480 sting used instead of 1024.