summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--order_gui.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/order_gui.c b/order_gui.c
index 399cf0fe0..af6f1ae33 100644
--- a/order_gui.c
+++ b/order_gui.c
@@ -20,6 +20,7 @@
#include "depot.h"
#include "waypoint.h"
#include "train.h"
+#include "water_map.h"
static int OrderGetSel(const Window* w)
{
@@ -232,13 +233,11 @@ static Order GetOrderCmdFromTile(const Vehicle *v, TileIndex tile)
if (v->type != VEH_Ship) break;
if (IsTileDepotType(tile, TRANSPORT_WATER) &&
IsTileOwner(tile, _local_player)) {
- switch (_m[tile].m5) {
- case 0x81: tile -= TileDiffXY(1, 0); break;
- case 0x83: tile -= TileDiffXY(0, 1); break;
- }
+ TileIndex tile2 = GetOtherShipDepotTile(tile);
+
order.type = OT_GOTO_DEPOT;
order.flags = OF_PART_OF_ORDERS;
- order.station = GetDepotByTile(tile)->index;
+ order.station = GetDepotByTile(tile < tile2 ? tile : tile2)->index;
return order;
}