For all remaining calls, the uid can be obtained from parameter llp.
static int take_def(int combat_mode, struct emp_qelem *list,
struct combat *off, struct combat *def);
static int take_def(int combat_mode, struct emp_qelem *list,
struct combat *off, struct combat *def);
-static int get_land(int combat_mode, struct combat *def, int uid,
+static int get_land(int combat_mode, struct combat *def,
struct ulist *llp, int victim_land);
char *att_mode[] = {
struct ulist *llp, int victim_land);
char *att_mode[] = {
next = qp->q_forw;
llp = (struct ulist *)qp;
if (check &&
next = qp->q_forw;
llp = (struct ulist *)qp;
if (check &&
- !get_land(combat_mode, NULL, llp->unit.land.lnd_uid, llp, 0))
+ !get_land(combat_mode, NULL, llp, 0))
continue;
if (combat_mode == A_ATTACK) {
w = -1;
continue;
if (combat_mode == A_ATTACK) {
w = -1;
for (qp = list->q_forw; qp != list; qp = next) {
next = qp->q_forw;
llp = (struct ulist *)qp;
for (qp = list->q_forw; qp != list; qp = next) {
next = qp->q_forw;
llp = (struct ulist *)qp;
- if (check && !get_land(A_DEFEND, def, llp->unit.land.lnd_uid, llp, 1))
+ if (check && !get_land(A_DEFEND, def, llp, 1))
continue;
d_unit = defense_val(&llp->unit.land);
if (!llp->supplied)
continue;
d_unit = defense_val(&llp->unit.land);
if (!llp->supplied)
-get_land(int combat_mode, struct combat *def, int uid, struct ulist *llp,
+get_land(int combat_mode, struct combat *def, struct ulist *llp,
int victim_land)
{
struct lndstr *lp = &llp->unit.land;
char buf[512];
int victim_land)
{
struct lndstr *lp = &llp->unit.land;
char buf[512];
+ getland(llp->unit.land.lnd_uid, lp);
if (lp->lnd_effic < LAND_MINEFF) {
sprintf(buf, "was destroyed and is no longer a part of the %s",
if (lp->lnd_effic < LAND_MINEFF) {
sprintf(buf, "was destroyed and is no longer a part of the %s",
emp_remque((struct emp_qelem *)llp);
free(llp);
} else
emp_remque((struct emp_qelem *)llp);
free(llp);
} else
- get_land(A_ATTACK, NULL, llp->unit.land.lnd_uid, llp, 0);
+ get_land(A_ATTACK, NULL, llp, 0);
*answerp = 'N';
if (*answerp == 'Y')
continue;
*answerp = 'N';
if (*answerp == 'Y')
continue;
- if (!get_land(A_ATTACK, def, llp->unit.land.lnd_uid, llp, 0))
+ if (!get_land(A_ATTACK, def, llp, 0))
continue;
if (*answerp != 'N') {
sprintf(prompt, "Move in with %s (%c %d%%) [ynYNq?] ",
continue;
if (*answerp != 'N') {
sprintf(prompt, "Move in with %s (%c %d%%) [ynYNq?] ",
*answerp = att_prompt(prompt, llp->unit.land.lnd_army);
if (player->aborted || att_get_combat(def, 0) < 0)
*answerp = 'N';
*answerp = att_prompt(prompt, llp->unit.land.lnd_army);
if (player->aborted || att_get_combat(def, 0) < 0)
*answerp = 'N';
- if (!get_land(A_ATTACK, def, llp->unit.land.lnd_uid, llp, 0))
+ if (!get_land(A_ATTACK, def, llp, 0))
continue;
}
if (*answerp == 'y' || *answerp == 'Y')
continue;
}
if (*answerp == 'y' || *answerp == 'Y')
for (qp = olist->q_forw; qp != olist; qp = next) {
next = qp->q_forw;
llp = (struct ulist *)qp;
for (qp = olist->q_forw; qp != olist; qp = next) {
next = qp->q_forw;
llp = (struct ulist *)qp;
- if (!get_land(A_ATTACK, def, llp->unit.land.lnd_uid, llp, 0))
+ if (!get_land(A_ATTACK, def, llp, 0))
continue;
sprintf(buf, "stays in %s",
xyas(llp->unit.land.lnd_x, llp->unit.land.lnd_y,
continue;
sprintf(buf, "stays in %s",
xyas(llp->unit.land.lnd_x, llp->unit.land.lnd_y,
for (qp = olist->q_forw; qp != olist; qp = next) {
next = qp->q_forw;
llp = (struct ulist *)qp;
for (qp = olist->q_forw; qp != olist; qp = next) {
next = qp->q_forw;
llp = (struct ulist *)qp;
- if (!get_land(combat_mode, def, llp->unit.land.lnd_uid, llp, 0))
+ if (!get_land(combat_mode, def, llp, 0))
continue;
take_move_in_mob(combat_mode, llp, off, def);
llp->unit.land.lnd_x = def->x;
continue;
take_move_in_mob(combat_mode, llp, off, def);
llp->unit.land.lnd_x = def->x;