diff -Nurd -X freeciv.current/diff_ignore freeciv.current/client/goto.c work2/client/goto.c --- freeciv.current/client/goto.c Sun Aug 26 11:16:47 2001 +++ work2/client/goto.c Mon Aug 27 16:33:40 2001 @@ -399,7 +399,7 @@ move_cost = SINGLE_MOVE; } else if (psrctile->move_cost[dir] != -3) {/*is -3 if sea units can move between*/ continue; - } else if (unit_flag(punit->type, F_TRIREME) && !is_coastline(x1, y1)) { + } else if (unit_flag(punit->type, F_TRIREME) && trireme_loss_pct(unit_owner(punit), x1, y1)>0) { move_cost = 2*SINGLE_MOVE+1; } else { move_cost = SINGLE_MOVE; diff -Nurd -X freeciv.current/diff_ignore freeciv.current/server/gotohand.c work2/server/gotohand.c --- freeciv.current/server/gotohand.c Sun Aug 26 12:23:14 2001 +++ work2/server/gotohand.c Mon Aug 27 16:34:24 2001 @@ -778,7 +778,7 @@ if (psrctile->move_cost[dir] != -3 /* is -3 if sea units can move between */ && (dest_x != x1 || dest_y != y1)) /* allow ships to target a shore */ continue; - else if (unit_flag(punit->type, F_TRIREME) && !is_coastline(x1, y1)) { + else if (unit_flag(punit->type, F_TRIREME) && trireme_loss_pct(unit_owner(punit), x1, y1)>0) { move_cost = 2*SINGLE_MOVE+1; } else { move_cost = SINGLE_MOVE;