w = n;
}
if (w < 0) {
- lnd_print(llp, "is in a sector not owned by you");
+ lnd_print(player->cnum, llp,
+ "is in a sector not owned by you");
lnd_delete(llp);
continue;
}
if (lp->lnd_own != player->cnum) {
sprintf(buf, "was destroyed and is no longer a part of the %s",
att_mode[combat_mode]);
- lnd_print(llp, buf);
+ lnd_print(player->cnum, llp, buf);
lnd_delete(llp);
return 0;
}
sprintf(buf,
"left to fight another battle and is no longer a part of the %s",
att_mode[combat_mode]);
- lnd_print(llp, buf);
+ lnd_print(player->cnum, llp, buf);
lnd_delete(llp);
return 0;
}
if (lp->lnd_effic < llp->eff) {
sprintf(buf, "damaged from %d%% to %d%%",
llp->eff, lp->lnd_effic);
- lnd_print(llp, buf);
+ lnd_print(player->cnum, llp, buf);
}
llp->eff = llp->unit.land.lnd_effic;
if (lp->lnd_effic < LAND_MINEFF) {
sprintf(buf, "was destroyed and is no longer a part of the defense");
- lnd_print(llp, buf);
+ lnd_print(llp->unit.land.lnd_own, llp, buf);
lnd_delete(llp);
return 0;
}
if (lp->lnd_x != def->x || lp->lnd_y != def->y) {
- lnd_print(llp,
+ lnd_print(llp->unit.land.lnd_own, llp,
"left to go fight another battle and is no longer a part of the defense");
lnd_delete(llp);
return 0;
llp = (struct ulist *)qp;
if (llp->unit.land.lnd_ship >= 0) {
llp->unit.land.lnd_effic = 0;
- lnd_print(llp, "cannot return to the ship, and dies!");
+ lnd_print(player->cnum, llp,
+ "cannot return to the ship, and dies!");
lnd_delete(llp);
}
}
xyas(llp->x, llp->y, llp->unit.land.lnd_own));
llp->unit.land.lnd_x = llp->x;
llp->unit.land.lnd_y = llp->y;
- lnd_print(llp, buf);
+ lnd_print(llp->unit.land.lnd_own, llp, buf);
lnd_delete(llp);
}
}
if (def->type == EF_SHIP) {
llp->unit.land.lnd_ship = def->shp_uid;
sprintf(buf, "boards %s", prcom(0, def));
- lnd_print(llp, buf);
+ lnd_print(player->cnum, llp, buf);
delete_me = llp;
} else {
llp->unit.land.lnd_ship = -1;
sprintf(buf, "moves in to occupy %s",
xyas(def->x, def->y, player->cnum));
- lnd_print(llp, buf);
+ lnd_print(player->cnum, llp, buf);
lnd_delete(llp);
}
}
sprintf(buf, "stays in %s",
xyas(llp->unit.land.lnd_x, llp->unit.land.lnd_y,
player->cnum));
- lnd_print(llp, buf);
+ lnd_print(player->cnum, llp, buf);
lnd_delete(llp);
}
if (QEMPTY(olist))
sprintf(buf, "stays in %s",
xyas(llp->unit.land.lnd_x, llp->unit.land.lnd_y,
player->cnum));
- lnd_print(llp, buf);
+ lnd_print(player->cnum, llp, buf);
lnd_delete(llp);
}
return;
for (qp = olist->q_forw; qp != olist; qp = next) {
next = qp->q_forw;
llp = (struct ulist *)qp;
- lnd_print(llp, buf);
+ lnd_print(player->cnum, llp, buf);
}
if (QEMPTY(olist))
return;
}
void
-lnd_print(struct ulist *llp, char *s)
+lnd_print(natid actor, struct ulist *llp, char *s)
{
- if (llp->unit.land.lnd_own == player->cnum)
+ if (actor == player->cnum)
pr("%s %s\n", prland(&llp->unit.land), s);
else
- wu(0, llp->unit.land.lnd_own, "%s %s\n", prland(&llp->unit.land), s);
+ wu(0, actor, "%s %s\n", prland(&llp->unit.land), s);
}
void
combat_mode ? att_mode[combat_mode] : "defending",
xyas(llp->unit.land.lnd_x, llp->unit.land.lnd_y,
llp->unit.land.lnd_own));
- lnd_print(llp, buf);
+ lnd_print(llp->unit.land.lnd_own, llp, buf);
lnd_delete(llp);
/* Since we killed the unit, we killed all the mil on it */
return taken;
ret_chance = llp->unit.land.lnd_retreat - llp->unit.land.lnd_effic;
if (roll(100) < ret_chance) {
pr("\n");
- lnd_print(llp, "fails morale check!");
+ lnd_print(llp->unit.land.lnd_own, llp, "fails morale check!");
llp->unit.land.lnd_mission = 0;
llp->unit.land.lnd_harden = 0;
if (llp->unit.land.lnd_ship >= 0 || llp->unit.land.lnd_land >= 0)
sprintf(buf, "retreats at %d%% efficiency to %s!",
llp->unit.land.lnd_effic,
xyas(bx, by, llp->unit.land.lnd_own));
- lnd_print(llp, buf);
+ lnd_print(llp->unit.land.lnd_own, llp, buf);
lnd_delete(llp);
}
} else { /* attacking from a sector */
else
llp->unit.land.lnd_mobil -= (int)llp->mobil;
llp->mobil = 0.0;
- lnd_print(llp, buf);
+ lnd_print(llp->unit.land.lnd_own, llp, buf);
lnd_delete(llp);
}
}
lnd_submil(&llp->unit.land,
((struct lchrstr *)llp->chrp)->l_item[I_MILIT] / 10);
if (llp->unit.land.lnd_effic < LAND_MINEFF) {
- lnd_print(llp, "has nowhere to retreat, and dies!");
+ lnd_print(llp->unit.land.lnd_own, llp,
+ "has nowhere to retreat, and dies!");
lnd_delete(llp);
} else
- lnd_print(llp,
+ lnd_print(llp->unit.land.lnd_own, llp,
"has nowhere to retreat and takes extra losses!");
}