mirror of https://github.com/OpenTTD/OpenTTD
(svn r5853) -Fix: [elrails] FS#178 Electric Trains can leave Conventional Depot
now the user will get an error if he tries to start the train and the status bar will say "no power" instead of "stopped" Electric trains already driving in and out of non-electrified depots will still do so, but you can't start new onesrelease/0.5
parent
7eefc54011
commit
466452c351
|
@ -2529,6 +2529,8 @@ STR_886F_TRANSFER :{BLACK}Transfer
|
|||
STR_TRAIN_STOPPING :{RED}Stopping
|
||||
STR_TRAIN_STOPPING_VEL :{RED}Stopping, {VELOCITY}
|
||||
STR_INCOMPATIBLE_RAIL_TYPES :Incompatible rail types
|
||||
STR_TRAIN_NO_POWER :{RED}No power
|
||||
STR_TRAIN_START_NO_CATENARY :This track lacks catenary, so the train can't start
|
||||
|
||||
##id 0x9000
|
||||
STR_9000_ROAD_VEHICLE_IN_THE_WAY :{WHITE}Road vehicle in the way
|
||||
|
|
|
@ -1243,6 +1243,8 @@ int32 CmdStartStopTrain(TileIndex tile, uint32 flags, uint32 p1, uint32 p2)
|
|||
return_cmd_error(error);
|
||||
}
|
||||
|
||||
if (v->vehstatus & VS_STOPPED && v->u.rail.cached_power == 0) return_cmd_error(STR_TRAIN_START_NO_CATENARY);
|
||||
|
||||
if (flags & DC_EXEC) {
|
||||
if (v->vehstatus & VS_STOPPED && v->u.rail.track == 0x80) {
|
||||
DeleteVehicleNews(p1, STR_8814_TRAIN_IS_WAITING_IN_DEPOT);
|
||||
|
|
|
@ -954,7 +954,11 @@ static void TrainViewWndProc(Window *w, WindowEvent *e)
|
|||
str = STR_885C_BROKEN_DOWN;
|
||||
} else if (v->vehstatus & VS_STOPPED) {
|
||||
if (v->u.rail.last_speed == 0) {
|
||||
str = STR_8861_STOPPED;
|
||||
if (v->u.rail.cached_power == 0) {
|
||||
str = STR_TRAIN_NO_POWER;
|
||||
} else {
|
||||
str = STR_8861_STOPPED;
|
||||
}
|
||||
} else {
|
||||
SetDParam(0, v->u.rail.last_speed);
|
||||
str = STR_TRAIN_STOPPING + _patches.vehicle_speed;
|
||||
|
|
Loading…
Reference in New Issue