}
static int
-load_comm_ok(struct sctstr *sectp, i_type item, int move_amt)
+load_comm_ok(struct sctstr *sectp, natid unit_own,
+ i_type item, int move_amt)
{
if (!move_amt)
return 0;
- if (sectp->sct_oldown != player->cnum && item == I_CIVIL) {
+ if (sectp->sct_oldown != unit_own && item == I_CIVIL) {
pr("%s civilians refuse to %s at %s!\n",
- move_amt < 0 ? "Your" : "Foreign",
+ (move_amt < 0 ? unit_own : sectp->sct_oldown) == player->cnum
+ ? "Your" : "Foreign",
move_amt < 0 ? "disembark" : "board",
xyas(sectp->sct_x, sectp->sct_y, player->cnum));
return 0;
move_amt = sect_amt;
if (move_amt < sect_amt - ITEM_MAX)
move_amt = sect_amt - ITEM_MAX;
- if (!load_comm_ok(sectp, item, move_amt))
+ if (!load_comm_ok(sectp, sp->shp_own, item, move_amt))
return RET_OK;
if (!want_to_abandon(sectp, item, move_amt, 0))
return RET_FAIL;
move_amt = sect_amt;
if (move_amt < sect_amt - ITEM_MAX)
move_amt = sect_amt - ITEM_MAX;
- if (!load_comm_ok(sectp, item, move_amt))
+ if (!load_comm_ok(sectp, lp->lnd_own, item, move_amt))
return RET_OK;
if (sectp->sct_own != player->cnum && move_amt > 0) {
pr("Sector %s is not yours.\n",