McZapkie wrote: 18 Oct 2020 09:11
Not sure what I'm doing wrong, but I have following nml code:
Code: Select all
switch (FEAT_RAILTYPES, SELF, switch_signals_russian_type, extra_callback_info2 & 0x00FFFFFF) {
(0 << 16) | (0 << 8) | 0 : LS00_russian_signals_block_red;
(0 << 16) | (0 << 8) | 1 : LS01_russian_signals_block_green;
...blah blah...
(6 << 16) | (0 << 8) | 0 : LS60_russian_signals_program_red;
(6 << 16) | (0 << 8) | 1 : LS61_russian_signals_program_green;
and while all custom signals are properly displayed in menu, including programmable signals, there are still standard programmable signals placed
(among correctly displayed vanilla openttd customized signals):
customss.jpg
The feature is opt-in, in that a property has to be specifically set in order for custom graphics to be used for programmable pre-signals via railtype action 2/3 (this is "railtype_enable_programmable_signals" in the document).
Otherwise, the majority of railtype GRFs which know nothing about these extensions are liable to give wrong/broken results when queried with values outside the range given in the main specification.
This should apply to the signal build window as well, it looks like you're using an old version. Which version are you testing this on?
Looking through the NML spec now, I can't see an obvious way to insert NFO or do anything custom.
I've been trying to avoid having to modify/fork NML.
Can you send me your code? I will have a tinker and see what I can do.