diff --git a/include/empobj.h b/include/empobj.h index a7b2e947..19184a65 100644 --- a/include/empobj.h +++ b/include/empobj.h @@ -84,10 +84,12 @@ union empobj_storage { struct trtstr treaty; }; +struct empobj_chr; + extern char *obj_nameof(struct empobj *gp); extern struct empobj *get_empobjp(int type, int id); extern int put_empobj(struct empobj *gp); -extern void *get_empobj_chr(struct empobj *gp); +extern struct empobj_chr *get_empobj_chr(struct empobj *gp); extern char *emp_obj_chr_name(struct empobj *gp); extern int get_empobj_mob_max(int type); diff --git a/src/lib/common/empobj.c b/src/lib/common/empobj.c index 21431064..b53c330b 100644 --- a/src/lib/common/empobj.c +++ b/src/lib/common/empobj.c @@ -81,20 +81,20 @@ put_empobj(struct empobj *gp) } } -void * +struct empobj_chr * get_empobj_chr(struct empobj *gp) { switch (gp->ef_type) { case EF_LAND: - return &lchr[(int)gp->type]; + return (struct empobj_chr *)&lchr[(int)gp->type]; case EF_SHIP: - return &mchr[(int)gp->type]; + return (struct empobj_chr *)&mchr[(int)gp->type]; case EF_PLANE: - return &plchr[(int)gp->type]; + return (struct empobj_chr *)&plchr[(int)gp->type]; case EF_NUKE: - return &nchr[(int)gp->type]; + return (struct empobj_chr *)&nchr[(int)gp->type]; case EF_SECTOR: - return &dchr[(int)gp->type]; + return (struct empobj_chr *)&dchr[(int)gp->type]; } CANT_REACH(); return NULL;