mirror of https://github.com/OpenTTD/OpenTTD
(svn r3466) - Codechange: Some changes to increase readability of signals code.
parent
ff8b3f980f
commit
f4e7d3203a
2
rail.h
2
rail.h
|
@ -42,7 +42,7 @@ typedef enum RailTileSubtypes {
|
|||
} RailTileSubtype;
|
||||
|
||||
typedef enum SignalTypes {
|
||||
/* Stored in m4[0..1] for MP_RAILWAY */
|
||||
/* Stored in m4[0..2] for MP_RAILWAY */
|
||||
SIGTYPE_NORMAL = 0, // normal signal
|
||||
SIGTYPE_ENTRY = 1, // presignal block entry
|
||||
SIGTYPE_EXIT = 2, // presignal block exit
|
||||
|
|
|
@ -757,7 +757,7 @@ int32 CmdBuildSingleSignal(int x, int y, uint32 flags, uint32 p1, uint32 p2)
|
|||
_m[tile].m5 |= RAIL_TYPE_SIGNALS; // change into signals
|
||||
_m[tile].m2 |= 0xF0; // all signals are on
|
||||
_m[tile].m3 &= ~0xF0; // no signals built by default
|
||||
_m[tile].m4 = semaphore ? 0x08 : 0;
|
||||
_m[tile].m4 = semaphore ? SIG_SEMAPHORE_MASK : 0;
|
||||
}
|
||||
|
||||
if (p2 == 0) {
|
||||
|
@ -767,7 +767,7 @@ int32 CmdBuildSingleSignal(int x, int y, uint32 flags, uint32 p1, uint32 p2)
|
|||
} else {
|
||||
if (pre_signal) {
|
||||
// cycle between normal -> pre -> exit -> combo -> pbs ->...
|
||||
byte type = ((GetSignalType(tile, track) + 1) % 5);
|
||||
byte type = (GetSignalType(tile, track) + 1) % SIGTYPE_END;
|
||||
SB(_m[tile].m4, 0, 3, type);
|
||||
} else {
|
||||
// cycle between two-way -> one-way -> one-way -> ...
|
||||
|
|
Loading…
Reference in New Issue