snxtitem_all(&ni, EF_LAND);
while (nxtitem(&ni, &land)) {
if (land.lnd_own == coun) {
- makelost(EF_LAND, land.lnd_own, land.lnd_uid,
- land.lnd_x, land.lnd_y);
- land.lnd_own = 0;
+ land.lnd_effic = 0;
pr("Land unit %d wiped\n", land.lnd_uid);
putland(land.lnd_uid, &land);
}
if (dam > 100)
dam = 100;
own = plane.pln_own;
- if (dam > plane.pln_effic) {
+ if (dam > plane.pln_effic)
plane.pln_effic = 0;
- makelost(EF_PLANE, plane.pln_own, plane.pln_uid,
- plane.pln_x, plane.pln_y);
- plane.pln_own = 0;
- } else
+ else
plane.pln_effic -= dam;
plane.pln_mobil = (dam * plane.pln_mobil / 100.0);
if (own == player->cnum) {
getland(pp->pln_land, &land);
take_plane_off_land(pp, &land);
}
- makelost(EF_PLANE, pp->pln_own, pp->pln_uid, pp->pln_x, pp->pln_y);
- pp->pln_own = 0;
- putplane(pp->pln_uid, pp);
- } else
- putplane(pp->pln_uid, pp);
+ }
+ putplane(pp->pln_uid, pp);
if (disp > 0)
return 1;
ship->shp_own = (natid)arg;
makenotlost(EF_SHIP, ship->shp_own, ship->shp_uid,
ship->shp_x, ship->shp_y);
- } else if (!arg) {
+ } else if (!arg)
ship->shp_effic = 0;
- makelost(EF_SHIP, ship->shp_own, ship->shp_uid,
- ship->shp_x, ship->shp_y);
- ship->shp_own = (natid)0;
- }
break;
case 'L':
if (!sarg_xy(p, &newx, &newy))
land->lnd_own = (natid)arg;
makenotlost(EF_LAND, land->lnd_own, land->lnd_uid,
land->lnd_x, land->lnd_y);
- } else if (!arg) {
- makelost(EF_LAND, land->lnd_own, land->lnd_uid,
- land->lnd_x, land->lnd_y);
+ } else if (!arg)
land->lnd_effic = 0;
- land->lnd_own = (natid)0;
- }
break;
case 'L':
if (!sarg_xy(p, &newx, &newy))
plane->pln_x, plane->pln_y);
wu(player->cnum, plane->pln_own,
"%s given to you by deity intervention!\n", prplane(plane));
- } else if (!arg) {
+ } else if (!arg)
plane->pln_effic = 0;
- makelost(EF_PLANE, plane->pln_own, plane->pln_uid,
- plane->pln_x, plane->pln_y);
- plane->pln_own = (natid)0;
- }
break;
case 'e':
plane->pln_effic = errcheck(arg, PLANE_MINEFF, 100);
if (!ship.shp_own) {
pr("%s: ship #%d was sunk!\n",
prplane(&plane), ship.shp_uid);
- makelost(EF_PLANE, plane.pln_own, plane.pln_uid,
- plane.pln_x, plane.pln_y);
- plane.pln_own = 0;
+ plane.pln_effic = 0;
putplane(plane.pln_uid, &plane);
continue;
}
if (ship.shp_own != player->cnum && rel != ALLIED) {
pr("%s: you or an ally do not own ship #%d\n",
prplane(&plane), ship.shp_uid);
- makelost(EF_PLANE, plane.pln_own, plane.pln_uid,
- plane.pln_x, plane.pln_y);
- plane.pln_own = 0;
+ plane.pln_effic = 0;
putplane(plane.pln_uid, &plane);
continue;
}
if (retval != RET_OK)
return retval;
if (gone) {
- makelost(EF_PLANE, plane.pln_own, plane.pln_uid,
- plane.pln_x, plane.pln_y);
- plane.pln_own = 0;
+ plane.pln_effic = 0;
putplane(plane.pln_uid, &plane);
}
}
pr("3... 2... 1... Blastoff!!!\n");
if (chance(0.07 + (100 - pp->pln_effic) / 100.0)) {
pr("KABOOOOM! Range safety officer detonates booster!\n");
- makelost(EF_PLANE, pp->pln_own, pp->pln_uid, pp->pln_x, pp->pln_y);
- pp->pln_own = 0;
+ pp->pln_effic = 0;
return RET_OK;
}
i = pp->pln_tech + pp->pln_effic;
putland(land.lnd_uid, &land);
}
}
- makelost(EF_SHIP, item.ship.shp_own, item.ship.shp_uid,
- item.ship.shp_x, item.ship.shp_y);
- item.ship.shp_own = 0;
+ item.ship.shp_effic = 0;
putship(item.ship.shp_uid, &item.ship);
} else if (type == EF_LAND) {
eff = item.land.lnd_effic / 100.0;
putplane(plane.pln_uid, &plane);
}
}
- makelost(EF_LAND, item.land.lnd_own, item.land.lnd_uid,
- item.land.lnd_x, item.land.lnd_y);
- item.land.lnd_own = 0;
+ item.land.lnd_effic = 0;
putland(item.land.lnd_uid, &item.land);
} else {
eff = item.land.lnd_effic / 100.0;
sect.sct_item[I_LCM] += pp->pl_lcm * 2 / 3 * eff;
sect.sct_item[I_HCM] += pp->pl_hcm * 2 / 3 * eff;
sect.sct_item[I_MILIT] += pp->pl_crew;
- makelost(EF_PLANE, item.plane.pln_own, item.plane.pln_uid,
- item.plane.pln_x, item.plane.pln_y);
- item.plane.pln_own = 0;
+ item.plane.pln_effic = 0;
putplane(item.plane.pln_uid, &item.plane);
}
pr(" scrapped in %s\n",
getship(item.plane.pln_ship, &ship);
take_plane_off_ship(&item.plane, &ship);
}
- makelost(EF_PLANE, item.plane.pln_own, item.plane.pln_uid,
- item.plane.pln_x, item.plane.pln_y);
- item.plane.pln_own = 0;
+ item.plane.pln_effic = 0;
putplane(item.plane.pln_uid, &item.plane);
}
pr(" scuttled in %s\n",
wu(0, plane.pln_own, "Plane %d scuttled in %s\n",
plane.pln_uid,
xyas(plane.pln_x, plane.pln_y, plane.pln_own));
- makelost(EF_PLANE, plane.pln_own, plane.pln_uid,
- plane.pln_x, plane.pln_y);
- plane.pln_own = 0;
+ plane.pln_effic = 0;
} else {
wu(0, plane.pln_own,
"Plane %d transferred off ship %d to %s\n",
scuttle_land(&land);
}
}
- makelost(EF_SHIP, sp->shp_own, sp->shp_uid, sp->shp_x, sp->shp_y);
- sp->shp_own = 0;
+ sp->shp_effic = 0;
putship(sp->shp_uid, sp);
}
wu(0, plane.pln_own, "Plane %d scuttled in %s\n",
plane.pln_uid,
xyas(plane.pln_x, plane.pln_y, plane.pln_own));
- makelost(EF_PLANE, plane.pln_own, plane.pln_uid,
- plane.pln_x, plane.pln_y);
- plane.pln_own = 0;
+ plane.pln_effic = 0;
} else {
wu(0, plane.pln_own,
"Plane %d transferred off unit %d to %s\n",
scuttle_land(&land);
}
}
- makelost(EF_LAND, lp->lnd_own, lp->lnd_uid, lp->lnd_x, lp->lnd_y);
- lp->lnd_own = 0;
+ lp->lnd_effic = 0;
putland(lp->lnd_uid, lp);
}
mpr(land.lnd_own, "\07");
mpr(land.lnd_own, " AARGH! %s tumbles to its doom!\n",
prland(&land));
- makelost(EF_LAND, land.lnd_own, land.lnd_uid,
- land.lnd_x, land.lnd_y);
- land.lnd_own = 0;
land.lnd_effic = 0;
putland(land.lnd_uid, &land);
}
mpr(plane.pln_own, "\07");
mpr(plane.pln_own, " AARGH! %s tumbles to its doom!\n",
prplane(&plane));
- makelost(EF_PLANE, plane.pln_own, plane.pln_uid,
- plane.pln_x, plane.pln_y);
- plane.pln_own = 0;
plane.pln_effic = 0;
putplane(plane.pln_uid, &plane);
}
mpr(nuke.nuk_own, "\07");
mpr(nuke.nuk_own, " %s sinks to the bottom of the sea!\n",
prnuke(&nuke));
- makelost(EF_NUKE, nuke.nuk_own, nuke.nuk_uid,
- nuke.nuk_x, nuke.nuk_y);
- nuke.nuk_own = 0;
nuke.nuk_effic = 0;
putnuke(nuke.nuk_uid, &nuke);
}
getland(pp->pln_land, &land);
take_plane_off_land(pp, &land);
}
- makelost(EF_PLANE, pp->pln_own, pp->pln_uid, pp->pln_x, pp->pln_y);
- pp->pln_own = 0;
+ pp->pln_effic = 0;
putplane(pp->pln_uid, pp);
emp_remque(&plp->queue);
free(plp);
continue;
if (roll(100) >= damage)
continue;
- makelost(EF_NUKE, nuke.nuk_own, nuke.nuk_uid,
- nuke.nuk_x, nuke.nuk_y);
- nuke.nuk_own = 0;
+ nuke.nuk_effic = 0;
if (own == bombown) {
mpr(bombown, "%s at %s destroyed\n",
prnuke(&nuke), xyas(nuke.nuk_x, nuke.nuk_y, own));
struct lchrstr *lcp;
if (lp->lnd_effic < LAND_MINEFF) {
- makelost(EF_LAND, lp->lnd_own, lp->lnd_uid, lp->lnd_x, lp->lnd_y);
- lp->lnd_own = 0;
putland(lp->lnd_uid, lp);
return 0;
}
struct lchrstr *lcp;
if (lp->lnd_effic < LAND_MINEFF) {
- makelost(EF_LAND, lp->lnd_own, lp->lnd_uid, lp->lnd_x, lp->lnd_y);
- lp->lnd_own = 0;
putland(lp->lnd_uid, lp);
return 0;
}
}
/* use up missiles */
- if (plp->pcp->pl_flags & P_M) {
- makelost(EF_PLANE, pp->pln_own, pp->pln_uid,
- pp->pln_x, pp->pln_y);
- pp->pln_own = 0;
- }
+ if (plp->pcp->pl_flags & P_M)
+ pp->pln_effic = 0;
}
return dam;
destroyed = 1;
}
/* zap the missile */
- makelost(EF_PLANE, pp->pln_own, pp->pln_uid, pp->pln_x, pp->pln_y);
- pp->pln_own = 0;
+ pp->pln_effic = 0;
putplane(pp->pln_uid, pp);
emp_remque(qp);
free(qp);
newdam = pln_damage(&plp->plane, x, y, 'p', &nukedam, 0);
collateral_damage(x, y, newdam, 0);
}
- makelost(EF_PLANE, plp->plane.pln_own, plp->plane.pln_uid,
- plp->plane.pln_x, plp->plane.pln_y);
- plp->plane.pln_own = 0;
+ plp->plane.pln_effic = 0;
putplane(plp->plane.pln_uid, &plp->plane);
emp_remque(qp);
free(qp);
for (i = 0; NULL != (np = getnukep(i)); i++) {
if (np->nuk_own && np->nuk_plane == n) {
mpr(np->nuk_own, "%s lost!\n", prnuke(np));
- makelost(EF_NUKE, np->nuk_own, np->nuk_uid,
- np->nuk_x, np->nuk_y);
- np->nuk_own = 0;
np->nuk_effic = 0;
np->nuk_plane = -1;
putnuke(np->nuk_uid, np);
for (i = 0; NULL != (lp = getlandp(i)); i++) {
if (lp->lnd_own && lp->lnd_ship == n) {
mpr(lp->lnd_own, "%s sunk!\n", prland(lp));
- makelost(EF_LAND, lp->lnd_own, lp->lnd_uid,
- lp->lnd_x, lp->lnd_y);
- lp->lnd_own = 0;
lp->lnd_effic = 0;
lp->lnd_ship = -1;
lp->lnd_land = -1;
for (i = 0; NULL != (pp = getplanep(i)); i++) {
if (pp->pln_own && pp->pln_ship == n) {
mpr(pp->pln_own, "%s sunk!\n", prplane(pp));
- makelost(EF_PLANE, pp->pln_own, pp->pln_uid,
- pp->pln_x, pp->pln_y);
- pp->pln_own = 0;
pp->pln_effic = 0;
pp->pln_ship = -1;
pp->pln_land = -1;