From 268b05225fe8b52465d670ee6923ed0d034d00f4 Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Sat, 25 Jan 2014 16:14:53 +0100 Subject: [PATCH] subs: Factor out shp_nav_put_one() Signed-off-by: Markus Armbruster --- src/lib/subs/shpsub.c | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/src/lib/subs/shpsub.c b/src/lib/subs/shpsub.c index 6587945d..272f5127 100644 --- a/src/lib/subs/shpsub.c +++ b/src/lib/subs/shpsub.c @@ -53,6 +53,7 @@ #include "unit.h" #include "xy.h" +static void shp_nav_put_one(struct ulist *); static int shp_check_one_mines(struct ulist *); static int shp_hit_mine(struct shpstr *); static void shp_stays(natid, char *, struct ulist *); @@ -193,13 +194,19 @@ shp_nav_put(struct emp_qelem *list, natid actor) sp = &mlp->unit.ship; mpr(actor, "%s stopped at %s\n", prship(sp), xyas(sp->shp_x, sp->shp_y, actor)); - sp->shp_mobil = (int)mlp->mobil; - putship(sp->shp_uid, sp); - emp_remque(qp); - free(qp); + shp_nav_put_one(mlp); } } +static void +shp_nav_put_one(struct ulist *mlp) +{ + mlp->unit.ship.shp_mobil = (int)mlp->mobil; + putship(mlp->unit.ship.shp_uid, &mlp->unit.ship); + emp_remque(&mlp->queue); + free(mlp); +} + int shp_sweep(struct emp_qelem *ship_list, int verbose, int takemob, natid actor) { @@ -317,10 +324,7 @@ shp_stays(natid actor, char *str, struct ulist *mlp) mpr(actor, "%s %s & stays in %s\n", prship(&mlp->unit.ship), str, xyas(mlp->unit.ship.shp_x, mlp->unit.ship.shp_y, actor)); - mlp->unit.ship.shp_mobil = (int)mlp->mobil; - putship(mlp->unit.ship.shp_uid, &mlp->unit.ship); - emp_remque(&mlp->queue); - free(mlp); + shp_nav_put_one(mlp); } /*