From b8bdc32b3cf608b63e025836d33964ebfa81fba1 Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Tue, 10 Jun 2008 07:29:04 +0200 Subject: [PATCH] Fix unlimbering, it had no effect Broken by mismerging the rebase of Hvy Metal I in commit 5d0f5e69, except for fire command when the target was out of range. --- src/lib/commands/mfir.c | 4 ++-- src/lib/subs/lndsub.c | 2 +- src/lib/subs/mission.c | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/lib/commands/mfir.c b/src/lib/commands/mfir.c index 68677b498..d277727b7 100644 --- a/src/lib/commands/mfir.c +++ b/src/lib/commands/mfir.c @@ -349,6 +349,7 @@ multifire(void) range2 = -1; } + lnd_unlimber(&fland); dam = lnd_fire(&fland); putland(fland.lnd_uid, &fland); if (dam < 0) { @@ -356,7 +357,6 @@ multifire(void) continue; } - lnd_unlimber(&fland); if (target == targ_ship) { if (chance(lnd_acc(&fland) / 100.0)) dam = ldround(dam / 2.0, 1); @@ -713,13 +713,13 @@ quiet_bigdef(int type, struct emp_qelem *list, natid own, natid aown, if (fp) dam2 = fp->defdam; else { + lnd_unlimber(&land); dam2 = lnd_fire(&land); putland(land.lnd_uid, &land); } if (dam2 < 0) continue; - lnd_unlimber(&land); (*nfiring)++; if (!fp) add_to_flist(list, (struct empobj *)&land, dam2, 0); diff --git a/src/lib/subs/lndsub.c b/src/lib/subs/lndsub.c index 578c1af0a..62cfd8216 100644 --- a/src/lib/subs/lndsub.c +++ b/src/lib/subs/lndsub.c @@ -1142,12 +1142,12 @@ lnd_support(natid victim, natid attacker, coord x, coord y, int defending) if (dist > range) continue; + lnd_unlimber(&land); dam2 = lnd_fire(&land); putland(land.lnd_uid, &land); if (dam2 < 0) continue; - lnd_unlimber(&land); if (defending) nreport(land.lnd_own, N_FIRE_BACK, victim, 1); else diff --git a/src/lib/subs/mission.c b/src/lib/subs/mission.c index 340f2f570..129448c10 100644 --- a/src/lib/subs/mission.c +++ b/src/lib/subs/mission.c @@ -444,12 +444,12 @@ perform_mission(coord x, coord y, natid victim, struct emp_qelem *list, if (md > range) continue; + lnd_unlimber(lp); dam2 = lnd_fire(lp); putland(lp->lnd_uid, lp); if (dam2 < 0) continue; - lnd_unlimber(lp); if (sect.sct_type == SCT_WATER) { if (chance(lnd_acc(lp) / 100.0)) dam2 = ldround(dam2 / 2.0, 1); -- 2.43.0