I tried to do my own "switch" stuff at the end of the code, but didn't work right, the block signals where both replaced by Searchlight block signals and the regular/two-way PBS signals where placed by my Searchlight PBS signals. The rest ended up becoming just the defualt/base graphics signals.
Code: Select all
// #####################################################################################################################
//
// SIGNAL GRAPHICS: 01 - SEMAPHORE & SEARCHLIGHT SIGNALS
//
// #####################################################################################################################
// #############################################################################
// SEMAPHORES
// =============================================================================
// BLOCK SIGNAL
// *********************************************************************************************************************
spriteset(SPRITESET_SEMAPHORE_BLOCK_RED, "GRAPHICS/50_SIGNAL_GRAPHICS/10_SEMAPHORE_SIGNALS/10_BLOCK_SIGNALS_SEMAPHORES.PNG") {
tmpl_signals(00, 40)
}
// -----------------------------------------------------------------------------
spriteset(SPRITESET_SEMAPHORE_BLOCK_GREEN, "GRAPHICS/50_SIGNAL_GRAPHICS/10_SEMAPHORE_SIGNALS/10_BLOCK_SIGNALS_SEMAPHORES.PNG") {
tmpl_signals(00, 00)
}
// *********************************************************************************************************************
spriteset (SPRITESET_SEMAPHORE_ENTRY_RED, "GRAPHICS/50_SIGNAL_GRAPHICS/10_SEMAPHORE_SIGNALS/20_ENTRY_SIGNALS_SEMAPHORES.PNG") {
tmpl_signals(00, 40)
}
// -----------------------------------------------------------------------------
spriteset (SPRITESET_SEMAPHORE_ENTRY_GREEN, "GRAPHICS/50_SIGNAL_GRAPHICS/10_SEMAPHORE_SIGNALS/20_ENTRY_SIGNALS_SEMAPHORES.PNG") {
tmpl_signals(00, 00)
}
// *********************************************************************************************************************
spriteset (SPRITESET_SEMAPHORE_EXIT_RED, "GRAPHICS/50_SIGNAL_GRAPHICS/10_SEMAPHORE_SIGNALS/30_EXIT_SIGNALS_SEMAPHORES.PNG") {
tmpl_signals(00, 40)
}
// -----------------------------------------------------------------------------
spriteset (SPRITESET_SEMAPHORE_EXIT_GREEN, "GRAPHICS/50_SIGNAL_GRAPHICS/10_SEMAPHORE_SIGNALS/30_EXIT_SIGNALS_SEMAPHORES.PNG") {
tmpl_signals(00, 00)
}
// *********************************************************************************************************************
spriteset (SPRITESET_SEMAPHORE_COMBO_RED, "GRAPHICS/50_SIGNAL_GRAPHICS/10_SEMAPHORE_SIGNALS/40_COMBO_SIGNALS_SEMAPHORES.PNG") {
tmpl_signals(00, 40)
}
// -----------------------------------------------------------------------------
spriteset (SPRITESET_SEMAPHORE_COMBO_GREEN, "GRAPHICS/50_SIGNAL_GRAPHICS/10_SEMAPHORE_SIGNALS/40_COMBO_SIGNALS_SEMAPHORES.PNG") {
tmpl_signals(00, 00)
}
// *********************************************************************************************************************
spriteset (SPRITESET_SEMAPHORE_PBS_RED, "GRAPHICS/50_SIGNAL_GRAPHICS/10_SEMAPHORE_SIGNALS/50_PBS_SIGNALS_SEMAPHORES.PNG") {
tmpl_signals(00, 40)
}
// -----------------------------------------------------------------------------
spriteset (SPRITESET_SEMAPHORE_PBS_GREEN, "GRAPHICS/50_SIGNAL_GRAPHICS/10_SEMAPHORE_SIGNALS/50_PBS_SIGNALS_SEMAPHORES.PNG") {
tmpl_signals(00, 00)
}
// *********************************************************************************************************************
spriteset (SPRITESET_SEMAPHORE_PBS_ONE_WAY_RED, "GRAPHICS/50_SIGNAL_GRAPHICS/10_SEMAPHORE_SIGNALS/60_PBS_ONE_WAY_SIGNALS_SEMAPHORES.PNG") {
tmpl_signals(00, 40)
}
// -----------------------------------------------------------------------------
spriteset (SPRITESET_SEMAPHORE_PBS_ONE_WAY_GREEN, "GRAPHICS/50_SIGNAL_GRAPHICS/10_SEMAPHORE_SIGNALS/60_PBS_ONE_WAY_SIGNALS_SEMAPHORES.PNG") {
tmpl_signals(00, 00)
}
// *********************************************************************************************************************
// ---------------------------------------------------------------------------------------------------------------------
// *********************************************************************************************************************
switch (FEAT_RAILTYPES, SELF, SEMAPHORE_SIGNALS_GREEN, getbits(extra_callback_info2, 16, 8)) {
0: SPRITESET_SEMAPHORE_BLOCK_GREEN;
1: SPRITESET_SEMAPHORE_ENTRY_GREEN;
2: SPRITESET_SEMAPHORE_EXIT_GREEN;
3: SPRITESET_SEMAPHORE_COMBO_GREEN;
4: SPRITESET_SEMAPHORE_PBS_GREEN;
5: SPRITESET_SEMAPHORE_PBS_ONE_WAY_GREEN;
}
// -----------------------------------------------------------------------------
switch (FEAT_RAILTYPES, SELF, SEMAPHORE_SIGNALS_RED, getbits(extra_callback_info2, 16, 8)) {
0: SPRITESET_SEMAPHORE_BLOCK_RED;
1: SPRITESET_SEMAPHORE_ENTRY_RED;
2: SPRITESET_SEMAPHORE_EXIT_RED;
3: SPRITESET_SEMAPHORE_COMBO_RED;
4: SPRITESET_SEMAPHORE_PBS_RED;
5: SPRITESET_SEMAPHORE_PBS_ONE_WAY_RED;
}
// -----------------------------------------------------------------------------
switch (FEAT_RAILTYPES, SELF, SWITCH_SEMAPHORE_SIGNALS, getbits(extra_callback_info2, 0, 8)) {
0: SEMAPHORE_SIGNALS_RED;
1: SEMAPHORE_SIGNALS_GREEN;
}
// *********************************************************************************************************************
// ---------------------------------------------------------------------------------------------------------------------
// *********************************************************************************************************************
// #############################################################################
// SEARCHLIGHT SIGNALS
// =============================================================================
// BLOCK SIGNAL
// *********************************************************************************************************************
spriteset(SPRITESET_SEARCHLIGHTS_BLOCK_RED, "GRAPHICS/50_SIGNAL_GRAPHICS/20_SEARCHLIGHT_SIGNALS/10_BLOCK_SIGNALS_SEARCHLIGHTS.PNG") {
tmpl_signals(00, 40)
}
// -----------------------------------------------------------------------------
spriteset(SPRITESET_SEARCHLIGHTS_BLOCK_GREEN, "GRAPHICS/50_SIGNAL_GRAPHICS/20_SEARCHLIGHT_SIGNALS/10_BLOCK_SIGNALS_SEARCHLIGHTS.PNG") {
tmpl_signals(00, 00)
}
// *********************************************************************************************************************
spriteset (SPRITESET_SEARCHLIGHTS_ENTRY_RED, "GRAPHICS/50_SIGNAL_GRAPHICS/20_SEARCHLIGHT_SIGNALS/20_ENTRY_SIGNALS_SEARCHLIGHTS.PNG") {
tmpl_signals(00, 40)
}
// -----------------------------------------------------------------------------
spriteset (SPRITESET_SEARCHLIGHTS_ENTRY_GREEN, "GRAPHICS/50_SIGNAL_GRAPHICS/20_SEARCHLIGHT_SIGNALS/20_ENTRY_SIGNALS_SEARCHLIGHTS.PNG") {
tmpl_signals(00, 00)
}
// *********************************************************************************************************************
spriteset (SPRITESET_SEARCHLIGHTS_EXIT_RED, "GRAPHICS/50_SIGNAL_GRAPHICS/20_SEARCHLIGHT_SIGNALS/30_EXIT_SIGNALS_SEARCHLIGHTS.PNG") {
tmpl_signals(00, 40)
}
// -----------------------------------------------------------------------------
spriteset (SPRITESET_SEARCHLIGHTS_EXIT_GREEN, "GRAPHICS/50_SIGNAL_GRAPHICS/20_SEARCHLIGHT_SIGNALS/30_EXIT_SIGNALS_SEARCHLIGHTS.PNG") {
tmpl_signals(00, 00)
}
// *********************************************************************************************************************
spriteset (SPRITESET_SEARCHLIGHTS_COMBO_RED, "GRAPHICS/50_SIGNAL_GRAPHICS/20_SEARCHLIGHT_SIGNALS/40_COMBO_SIGNALS_SEARCHLIGHTS.PNG") {
tmpl_signals(00, 40)
}
// -----------------------------------------------------------------------------
spriteset (SPRITESET_SEARCHLIGHTS_COMBO_GREEN, "GRAPHICS/50_SIGNAL_GRAPHICS/20_SEARCHLIGHT_SIGNALS/40_COMBO_SIGNALS_SEARCHLIGHTS.PNG") {
tmpl_signals(00, 00)
}
// *********************************************************************************************************************
spriteset (SPRITESET_SEARCHLIGHTS_PBS_RED, "GRAPHICS/50_SIGNAL_GRAPHICS/20_SEARCHLIGHT_SIGNALS/50_PBS_SIGNALS_SEARCHLIGHTS.PNG") {
tmpl_signals(00, 40)
}
// -----------------------------------------------------------------------------
spriteset (SPRITESET_SEARCHLIGHTS_PBS_GREEN, "GRAPHICS/50_SIGNAL_GRAPHICS/20_SEARCHLIGHT_SIGNALS/50_PBS_SIGNALS_SEARCHLIGHTS.PNG") {
tmpl_signals(00, 00)
}
// *********************************************************************************************************************
spriteset (SPRITESET_SEARCHLIGHTS_PBS_ONE_WAY_RED, "GRAPHICS/50_SIGNAL_GRAPHICS/20_SEARCHLIGHT_SIGNALS/60_PBS_ONE_WAY_SIGNALS_SEARCHLIGHTS.PNG") {
tmpl_signals(00, 40)
}
// -----------------------------------------------------------------------------
spriteset (SPRITESET_SEARCHLIGHTS_PBS_ONE_WAY_GREEN, "GRAPHICS/50_SIGNAL_GRAPHICS/20_SEARCHLIGHT_SIGNALS/60_PBS_ONE_WAY_SIGNALS_SEARCHLIGHTS.PNG") {
tmpl_signals(00, 00)
}
// *********************************************************************************************************************
// ---------------------------------------------------------------------------------------------------------------------
// *********************************************************************************************************************
switch (FEAT_RAILTYPES, SELF, SEARCHLIGHT_SIGNALS_GREEN, getbits(extra_callback_info2, 16, 8)) {
0: SPRITESET_SEARCHLIGHTS_BLOCK_GREEN;
1: SPRITESET_SEARCHLIGHTS_ENTRY_GREEN;
2: SPRITESET_SEARCHLIGHTS_EXIT_GREEN;
3: SPRITESET_SEARCHLIGHTS_COMBO_GREEN;
4: SPRITESET_SEARCHLIGHTS_PBS_GREEN;
5: SPRITESET_SEARCHLIGHTS_PBS_ONE_WAY_GREEN;
}
// -----------------------------------------------------------------------------
switch (FEAT_RAILTYPES, SELF, SEARCHLIGHT_SIGNALS_RED, getbits(extra_callback_info2, 16, 8)) {
0: SPRITESET_SEARCHLIGHTS_BLOCK_RED;
1: SPRITESET_SEARCHLIGHTS_ENTRY_RED;
2: SPRITESET_SEARCHLIGHTS_EXIT_RED;
3: SPRITESET_SEARCHLIGHTS_COMBO_RED;
4: SPRITESET_SEARCHLIGHTS_PBS_RED;
5: SPRITESET_SEARCHLIGHTS_PBS_ONE_WAY_RED;
}
// -----------------------------------------------------------------------------
switch (FEAT_RAILTYPES, SELF, SWITCH_SEARCHLIGHTS_SIGNALS, getbits(extra_callback_info2, 0, 8)) {
0: SEARCHLIGHT_SIGNALS_RED;
1: SEARCHLIGHT_SIGNALS_GREEN;
}
// *********************************************************************************************************************
// ---------------------------------------------------------------------------------------------------------------------
// *********************************************************************************************************************
switch (FEAT_RAILTYPES, SELF, SWITCH_SIGNALS_10_SEMAPHORES_AND_SEARCHLIGHTS, getbits(extra_callback_info2, 9, 9)) {
00: SWITCH_SEARCHLIGHTS_SIGNALS;
01: SWITCH_SEMAPHORE_SIGNALS;
}