(get_empobj_mob_max): New. Return maximum mobility based on ef_type.

(miss): Use new get_empobj_mob_max().
This commit is contained in:
Ron Koenderink 2006-07-24 13:40:12 +00:00
parent 6db2e6ec63
commit b70653815c
3 changed files with 21 additions and 13 deletions

View file

@ -87,5 +87,6 @@ union empobj_storage {
extern char *obj_nameof(struct empobj *gp); extern char *obj_nameof(struct empobj *gp);
extern int put_empobj(struct empobj *gp); extern int put_empobj(struct empobj *gp);
extern void *get_empobj_chr(struct empobj *gp); extern void *get_empobj_chr(struct empobj *gp);
extern int get_empobj_mob_max(int ef_type);
#endif #endif

View file

@ -178,20 +178,8 @@ mission(void)
desired_radius = 9999; desired_radius = 9999;
} }
switch (type) { if ((mobmax = get_empobj_mob_max(type)) == -1)
case EF_SHIP:
mobmax = ship_mob_max;
break;
case EF_LAND:
mobmax = land_mob_max;
break;
case EF_PLANE:
mobmax = plane_mob_max;
break;
default:
CANT_HAPPEN("bad TYPE");
return RET_FAIL; return RET_FAIL;
}
mobused = ldround(mission_mob_cost * (double)mobmax, 1); mobused = ldround(mission_mob_cost * (double)mobmax, 1);

View file

@ -37,6 +37,7 @@
#include "empobj.h" #include "empobj.h"
#include "file.h" #include "file.h"
#include "optlist.h"
#include "prototypes.h" #include "prototypes.h"
char * char *
@ -101,3 +102,21 @@ get_empobj_chr(struct empobj *gp)
} }
return cp; return cp;
} }
int
get_empobj_mob_max(int ef_type)
{
switch (ef_type) {
case EF_SHIP:
return ship_mob_max;
case EF_LAND:
return land_mob_max;
case EF_PLANE:
return plane_mob_max;
case EF_SECTOR:
return sect_mob_max;
default:
CANT_REACH();
return -1;
}
}