#define put_empobj(type, n, p) ef_write((type), (n), (p))
#define get_empobjp(type, n) ((struct empobj *)ef_ptr((type), (n)))
-extern char *obj_nameof(struct empobj *gp);
extern char *empobj_chr_name(struct empobj *gp);
extern int get_empobj_mob_max(int type);
extern int unit_nplane(int, int, int *, int *, int *);
extern void unit_onresize(int);
+extern char *unit_nameof(struct empobj *);
extern void unit_list(struct emp_qelem *);
extern void unit_put(struct emp_qelem *list, natid actor);
extern char *unit_path(int, struct empobj *, char *);
#include <ctype.h>
#include "commands.h"
-#include "empobj.h"
#include "item.h"
#include "land.h"
#include "optlist.h"
gift(natid givee, natid giver, void *ptr, char *mesg)
{
if (giver != givee)
- wu(0, givee, "%s %s %s\n", cname(giver), obj_nameof(ptr), mesg);
+ wu(0, givee, "%s %s %s\n", cname(giver), unit_nameof(ptr), mesg);
unit_give_away(ptr, givee, 0);
}
#include <config.h>
#include "commands.h"
-#include "empobj.h"
#include "mission.h"
#include "optlist.h"
#include "path.h"
+#include "unit.h"
static int clear_mission(struct nstr_item *);
static int show_mission(struct nstr_item *);
if (mission == MI_RESERVE) {
if (!lnd_can_attack((struct lndstr *)gp)) {
pr("%s is not designed to fight ground troops\n",
- obj_nameof(gp));
+ unit_nameof(gp));
continue;
}
if (!lchr[gp->type].l_rad) {
- pr("%s cannot react anywhere!\n", obj_nameof(gp));
+ pr("%s cannot react anywhere!\n", unit_nameof(gp));
continue;
}
}
if ((mission == MI_INTERDICT) && (type == EF_SHIP))
if (mchr[(int)gp->type].m_glim == 0) {
- pr("%s: cannot fire at range!\n", obj_nameof(gp));
+ pr("%s: cannot fire at range!\n", unit_nameof(gp));
continue;
}
if ((mission == MI_INTERDICT) && (type == EF_LAND))
if (lchr[(int)gp->type].l_dam == 0) {
- pr("%s: cannot fire at range!\n", obj_nameof(gp));
+ pr("%s: cannot fire at range!\n", unit_nameof(gp));
continue;
}
if (type == EF_PLANE && nuk_on_plane((struct plnstr *)gp) >= 0) {
pr("%s can't perform a mission while it carries a nuclear weapon",
- obj_nameof(gp));
+ unit_nameof(gp));
continue;
}
range = oprange(gp);
if (range < mapdist(gp->x, gp->y, x, y)) {
pr("%s: out of range! (range %d)\n",
- obj_nameof(gp), range);
+ unit_nameof(gp), range);
continue;
}
gp->opx = x;
num++;
pr("%s on %s mission, centered on %s, radius %d\n",
- obj_nameof(gp), mission_name(mission),
+ unit_nameof(gp), mission_name(mission),
xyas(x, y, player->cnum), gp->radius);
}
if (num == 0) {
pr("Thing x,y op-sect rad mission\n");
first = 0;
}
- pr("%-25s", obj_nameof(gp));
+ pr("%-25s", unit_nameof(gp));
prxy(" %3d,%-3d", gp->x, gp->y);
switch (gp->mission) {
case MI_INTERDICT:
#include "map.h"
#include "optlist.h"
#include "path.h"
-#include "empobj.h"
#include "unit.h"
static void pr_leader_change(struct empobj *leader);
type = leader->ef_type;
pr("%s is %s\n",
type == EF_SHIP ? "Flagship" : "Leader",
- obj_nameof(leader));
+ unit_nameof(leader));
if (player->argp[2]) {
strcpy(buf, player->argp[2]);
{
pr("Changing %s to %s\n",
leader->ef_type == EF_SHIP ? "flagship" : "leader",
- obj_nameof(leader));
+ unit_nameof(leader));
}
static struct empobj *
#include "commands.h"
#include "optlist.h"
-#include "empobj.h"
+#include "unit.h"
int
rada(void)
spy = lchr[item.land.lnd_type].l_spy;
}
- pr("%s at ", obj_nameof(&item.gen));
+ pr("%s at ", unit_nameof(&item.gen));
radmap(item.gen.x, item.gen.y, item.gen.effic,
item.gen.tech, spy, tf);
}
#include <ctype.h>
#include "commands.h"
-#include "empobj.h"
#include "optlist.h"
#include "unit.h"
if (!player->owner
&& relations_with(sect.sct_own, player->cnum) != ALLIED) {
pr("%s is not in an allied sector!\n",
- obj_nameof(&item.gen));
+ unit_nameof(&item.gen));
continue;
}
if (type == EF_PLANE
}
pr("%s scrapped in %s\n",
- obj_nameof(&item.gen),
+ unit_nameof(&item.gen),
xyas(item.gen.x, item.gen.y, player->cnum));
unit_drop_cargo(&item.gen, sect.sct_own);
if (type == EF_SHIP) {
#include <ctype.h>
#include "commands.h"
-#include "empobj.h"
#include "news.h"
#include "optlist.h"
#include "unit.h"
}
}
pr("%s scuttled in %s\n",
- obj_nameof(&item.gen),
+ unit_nameof(&item.gen),
xyas(item.gen.x, item.gen.y, player->cnum));
getsect(item.gen.x, item.gen.y, §);
if (sect.sct_own == item.gen.own)
#include "empobj.h"
#include "file.h"
#include "optlist.h"
-#include "prototypes.h"
-
-char *
-obj_nameof(struct empobj *gp)
-{
- switch (gp->ef_type) {
- case EF_SHIP:
- return prship((struct shpstr *)gp);
- case EF_PLANE:
- return prplane((struct plnstr *)gp);
- case EF_LAND:
- return prland((struct lndstr *)gp);
- case EF_NUKE:
- return prnuke((struct nukstr *)gp);
- }
- CANT_REACH();
- return "The Beast #666";
-}
char *
empobj_chr_name(struct empobj *gp)
#include <config.h>
-#include "empobj.h"
#include "file.h"
#include "path.h"
#include "player.h"
#include "prototypes.h"
#include "unit.h"
+char *
+unit_nameof(struct empobj *gp)
+{
+ switch (gp->ef_type) {
+ case EF_SHIP:
+ return prship((struct shpstr *)gp);
+ case EF_PLANE:
+ return prplane((struct plnstr *)gp);
+ case EF_LAND:
+ return prland((struct lndstr *)gp);
+ case EF_NUKE:
+ return prnuke((struct nukstr *)gp);
+ }
+ CANT_REACH();
+ return "The Beast #666";
+}
+
void
unit_list(struct emp_qelem *unit_list)
{
&& unit->ef_type != EF_SHIP))
continue;
if (actor) {
- mpr(actor, "%s stopped at %s\n", obj_nameof(unit),
+ mpr(actor, "%s stopped at %s\n", unit_nameof(unit),
xyas(unit->x, unit->y, actor));
if (unit->ef_type == EF_LAND) {
if (ulp->mobil < -127)
if (((struct mchrstr *)ulp->chrp)->m_flags & M_OIL)
pr("[oil:%d] ", sect.sct_oil);
}
- pr("%s @ %s %d%% %s\n", obj_nameof(&ulp->unit.gen),
+ pr("%s @ %s %d%% %s\n", unit_nameof(&ulp->unit.gen),
xyas(ulp->unit.gen.x, ulp->unit.gen.y, player->cnum),
sect.sct_effic, dchr[sect.sct_type].d_name);
}
snxtitem_cargo(&ni, cargo_type, carrier->ef_type, carrier->uid);
while (nxtitem(&ni, &obj)) {
if (!carrier->own) {
- mpr(obj.gen.own, "%s lost!\n", obj_nameof(&obj.gen));
+ mpr(obj.gen.own, "%s lost!\n", unit_nameof(&obj.gen));
obj.gen.effic = 0;
} else {
/* mission op-area centered on the obj travels with it */
break;
}
mpr(cargo.gen.own, "%s transferred off %s %d to %s\n",
- obj_nameof(&cargo.gen),
+ unit_nameof(&cargo.gen),
ef_nameof(unit->ef_type), unit->uid,
xyas(cargo.gen.x, cargo.gen.y, cargo.gen.own));
if (newown)
if (giver) {
mpr(unit->own, "%s given to %s\n",
- obj_nameof(unit), cname(recipient));
+ unit_nameof(unit), cname(recipient));
mpr(recipient, "%s given to you by %s\n",
- obj_nameof(unit), cname(giver));
+ unit_nameof(unit), cname(giver));
}
unit->own = recipient;