Fix ctrl-click signal cycling setting
This commit is contained in:
@@ -274,10 +274,10 @@ static void GenericPlaceSignals(TileIndex tile)
|
|||||||
/* Which signals should we cycle through? */
|
/* Which signals should we cycle through? */
|
||||||
uint8 cycle_types;
|
uint8 cycle_types;
|
||||||
|
|
||||||
if (_settings_client.gui.cycle_signal_types == SIGNAL_CYCLE_ALL && _settings_client.gui.signal_gui_mode == SIGNAL_GUI_ALL) {
|
if (_settings_client.gui.cycle_signal_types == SIGNAL_CYCLE_ALL && (_settings_client.gui.signal_gui_mode == SIGNAL_GUI_ALL || _settings_game.vehicle.train_braking_model == TBM_REALISTIC)) {
|
||||||
cycle_types = SIGTYPE_NORMAL | (SIGTYPE_LAST << 3);
|
cycle_types = SIGNAL_CYCLE_ALL;
|
||||||
} else {
|
} else {
|
||||||
cycle_types = SIGTYPE_PBS | (SIGTYPE_LAST << 3);
|
cycle_types = SIGNAL_CYCLE_PATH;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (w != nullptr) {
|
if (w != nullptr) {
|
||||||
|
@@ -114,8 +114,8 @@ static inline bool IsSignalSpritePBS(SignalType type)
|
|||||||
|
|
||||||
static inline SignalType NextSignalType(SignalType cur, uint which_signals)
|
static inline SignalType NextSignalType(SignalType cur, uint which_signals)
|
||||||
{
|
{
|
||||||
bool pbs = (which_signals != 0);
|
bool pbs = true;
|
||||||
bool block = (which_signals != 1);
|
bool block = (which_signals == SIGNAL_CYCLE_ALL);
|
||||||
|
|
||||||
switch(cur) {
|
switch(cur) {
|
||||||
case SIGTYPE_NORMAL: return block ? SIGTYPE_ENTRY : SIGTYPE_PBS;
|
case SIGTYPE_NORMAL: return block ? SIGTYPE_ENTRY : SIGTYPE_PBS;
|
||||||
|
Reference in New Issue
Block a user