summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--roadveh_cmd.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/roadveh_cmd.c b/roadveh_cmd.c
index b81eee206..130bed239 100644
--- a/roadveh_cmd.c
+++ b/roadveh_cmd.c
@@ -1294,11 +1294,10 @@ again:
}
if (IS_BYTE_INSIDE(_m[v->tile].m5, 0x43, 0x4B)) {
RoadStop *rs = GetRoadStopByTile(v->tile, GetRoadStopType(v->tile));
- byte *b = &rs->status;
- //we have reached a loading bay, mark it as used
- //and clear the usage bit (0x80) of the stop
- *b = (*b | ((v->u.road.state&2)?2:1)) & ~0x80;
+ // reached a loading bay, mark it as used and clear the usage bit
+ SETBIT(rs->status, v->u.road.state & 2 ? 1 : 0); // occupied bay
+ CLRBIT(rs->status, 7); // usage bit
}
}
@@ -1385,7 +1384,6 @@ again:
if (v->u.road.state >= 0x20 &&
_road_veh_data_1[v->u.road.state - 0x20 + (_opt.road_side<<4)] == v->u.road.frame) {
RoadStop *rs = GetRoadStopByTile(v->tile, GetRoadStopType(v->tile));
- byte *b = &rs->status;
st = GetStation(_m[v->tile].m2);
@@ -1393,7 +1391,7 @@ again:
v->current_order.type != OT_GOTO_DEPOT) {
Order old_order;
- *b &= ~0x80;
+ CLRBIT(rs->status, 7);
v->last_station_visited = _m[v->tile].m2;
@@ -1419,14 +1417,14 @@ again:
}
if (v->current_order.type != OT_GOTO_DEPOT) {
- if (*b&0x80) {
+ if (HASBIT(rs->status, 7)) {
v->cur_speed = 0;
return;
}
v->current_order.type = OT_NOTHING;
v->current_order.flags = 0;
}
- *b |= 0x80;
+ SETBIT(rs->status, 7);
if (rs == v->u.road.slot) {
//we have arrived at the correct station