diff options
author | bjarni <bjarni@openttd.org> | 2006-03-18 13:15:34 +0000 |
---|---|---|
committer | bjarni <bjarni@openttd.org> | 2006-03-18 13:15:34 +0000 |
commit | b610872f35209ab796aae289c9a01c26b86f1b03 (patch) | |
tree | ecfc7fb7e9d5ecef78443a7db65f4ca27d1c8ee7 /train_cmd.c | |
parent | a36f8a46faefa319720079aab6bc38cd272ccdb8 (diff) | |
download | openttd-b610872f35209ab796aae289c9a01c26b86f1b03.tar.xz |
(svn r3945) cleaned the layout in CmdReverseTrainDirection a bit (made a bit messy in last commit)
Diffstat (limited to 'train_cmd.c')
-rw-r--r-- | train_cmd.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/train_cmd.c b/train_cmd.c index b38089300..2f59fb314 100644 --- a/train_cmd.c +++ b/train_cmd.c @@ -1595,6 +1595,7 @@ static void ReverseTrainDirection(Vehicle *v) if (v->type != VEH_Train || !CheckOwnership(v->owner)) return CMD_ERROR; if (p2) { + // turn a single unit around Vehicle *front; if (IsMultiheaded(v) || HASBIT(RailVehInfo(v->engine_type)->callbackmask, CBM_ARTIC_ENGINE)) { @@ -1606,16 +1607,15 @@ static void ReverseTrainDirection(Vehicle *v) if (CheckTrainStoppedInDepot(front) < 0) { return_cmd_error(STR_881A_TRAINS_CAN_ONLY_BE_ALTERED); } - } -// if (v->u.rail.track & 0x80 || IsTileDepotType(v->tile, TRANSPORT_RAIL)) -// return CMD_ERROR; - - if (v->u.rail.crash_anim_pos != 0 || v->breakdown_ctr != 0) return CMD_ERROR; - if (flags & DC_EXEC) { - if (p2) { + if (flags & DC_EXEC) { v->u.rail.flags ^= 1 << VRF_REVERSE_DIRECTION; - } else { + } + } else { + //turn the whole train around + if (v->u.rail.crash_anim_pos != 0 || v->breakdown_ctr != 0) return CMD_ERROR; + + if (flags & DC_EXEC) { if (_patches.realistic_acceleration && v->cur_speed != 0) { TOGGLEBIT(v->u.rail.flags, VRF_REVERSING); } else { |