Merge dodistribute() parameters dist_i_cost, dist_e_cost

Only one of them is used, depending on argument imex.  Replace them by
a single parameter path_cost.
This commit is contained in:
Markus Armbruster 2011-02-18 19:07:31 +01:00
parent d1bdeb4353
commit 791ba26c5e
3 changed files with 8 additions and 9 deletions

View file

@ -694,7 +694,7 @@ extern void delete_old_announcements(void);
/* deliver.c */ /* deliver.c */
extern void dodeliver(struct sctstr *); extern void dodeliver(struct sctstr *);
/* distribute.c */ /* distribute.c */
extern int dodistribute(struct sctstr *, int, double, double); extern int dodistribute(struct sctstr *, int, double);
/* finish.c */ /* finish.c */
extern void finish_sects(int); extern void finish_sects(int);
/* human.c */ /* human.c */

View file

@ -51,8 +51,7 @@
#define IMPORT_BONUS 10.0 #define IMPORT_BONUS 10.0
int int
dodistribute(struct sctstr *sp, int imex, dodistribute(struct sctstr *sp, int imex, double path_cost)
double dist_i_cost, double dist_e_cost)
{ {
struct ichrstr *ip; struct ichrstr *ip;
struct sctstr *dist; struct sctstr *dist;
@ -72,7 +71,7 @@ dodistribute(struct sctstr *sp, int imex,
if ((sp->sct_dist_x == sp->sct_x) && (sp->sct_dist_y == sp->sct_y)) if ((sp->sct_dist_x == sp->sct_x) && (sp->sct_dist_y == sp->sct_y))
return 0; return 0;
if (dist_e_cost < 0.0) { if (path_cost < 0.0) {
if (sp->sct_own != 0) { if (sp->sct_own != 0) {
if (imex == EXPORT) /* only want this once */ if (imex == EXPORT) /* only want this once */
wu(0, sp->sct_own, "No path to dist sector for %s\n", wu(0, sp->sct_own, "No path to dist sector for %s\n",
@ -87,7 +86,7 @@ dodistribute(struct sctstr *sp, int imex,
DPRINTF("distribute: %d,%d to %d,%d pathcost %g\n", DPRINTF("distribute: %d,%d to %d,%d pathcost %g\n",
sp->sct_x, sp->sct_y, sp->sct_dist_x, sp->sct_dist_y, sp->sct_x, sp->sct_y, sp->sct_dist_x, sp->sct_dist_y,
imex == IMPORT ? dist_i_cost : dist_e_cost); path_cost);
lplague = rplague = changed = 0; lplague = rplague = changed = 0;
for (item = I_NONE + 1; item <= I_MAX; item++) { for (item = I_NONE + 1; item <= I_MAX; item++) {
@ -138,7 +137,7 @@ dodistribute(struct sctstr *sp, int imex,
continue; continue;
} }
pack = ip->i_pkg[dist_packing]; pack = ip->i_pkg[dist_packing];
mcost = dist_i_cost / pack * ip->i_lbs / IMPORT_BONUS; mcost = path_cost / pack * ip->i_lbs / IMPORT_BONUS;
if (dist->sct_mobil < mcost * amt) if (dist->sct_mobil < mcost * amt)
amt = dist->sct_mobil / mcost; amt = dist->sct_mobil / mcost;
@ -169,7 +168,7 @@ dodistribute(struct sctstr *sp, int imex,
if (amt > amt_sect) if (amt > amt_sect)
amt = amt_sect; amt = amt_sect;
pack = MAX(ip->i_pkg[sect_packing], ip->i_pkg[dist_packing]); pack = MAX(ip->i_pkg[sect_packing], ip->i_pkg[dist_packing]);
mcost = dist_e_cost / pack * ip->i_lbs / EXPORT_BONUS; mcost = path_cost / pack * ip->i_lbs / EXPORT_BONUS;
if (sp->sct_mobil < mcost * amt) if (sp->sct_mobil < mcost * amt)
amt = sp->sct_mobil / mcost; amt = sp->sct_mobil / mcost;
if (amt > ITEM_MAX - amt_dist) if (amt > ITEM_MAX - amt_dist)

View file

@ -122,7 +122,7 @@ finish_sects(int etu)
continue; continue;
/* Get the pointer */ /* Get the pointer */
infptr = &g_distptrs[sp->sct_uid]; infptr = &g_distptrs[sp->sct_uid];
dodistribute(sp, EXPORT, infptr->imcost, infptr->excost); dodistribute(sp, EXPORT, infptr->excost);
} }
logerror("done exporting\n"); logerror("done exporting\n");
@ -135,7 +135,7 @@ finish_sects(int etu)
np = getnatp(sp->sct_own); np = getnatp(sp->sct_own);
if (np->nat_money < 0) if (np->nat_money < 0)
continue; continue;
dodistribute(sp, IMPORT, infptr->imcost, infptr->excost); dodistribute(sp, IMPORT, infptr->imcost);
sp->sct_off = 0; sp->sct_off = 0;
} }
logerror("done importing\n"); logerror("done importing\n");