diff --git a/include/nat.h b/include/nat.h index a1700ced..fe5aeec5 100644 --- a/include/nat.h +++ b/include/nat.h @@ -206,8 +206,7 @@ extern int nat_accepts(natid, natid, enum rej_comm); extern int in_contact(natid, natid); extern void agecontact(struct natstr *np); extern int influx(struct natstr *np); -extern struct natstr *nat_reset(struct natstr *, natid, char *, char *, - enum nat_status); +extern void nat_reset(natid, char *, char *, enum nat_status); /* src/lib/subs/natsub.c */ extern int check_nat_name(char *, natid); diff --git a/src/lib/commands/add.c b/src/lib/commands/add.c index 1998e5ca..891da131 100644 --- a/src/lib/commands/add.c +++ b/src/lib/commands/add.c @@ -28,7 +28,7 @@ * * Known contributors to this file: * Steve McClure, 2000 - * Markus Armbruster, 2004-2013 + * Markus Armbruster, 2004-2016 */ #include @@ -117,7 +117,7 @@ add(void) pr("%s is logged in!\n", prnat(natp)); return RET_FAIL; } - nat_reset(natp, natp->nat_cnum, cntryname, pname, stat); - putnat(natp); - return 0; + + nat_reset(natp->nat_cnum, cntryname, pname, stat); + return RET_OK; } diff --git a/src/lib/common/nat.c b/src/lib/common/nat.c index b51eb66f..3d657996 100644 --- a/src/lib/common/nat.c +++ b/src/lib/common/nat.c @@ -125,37 +125,37 @@ influx(struct natstr *np) } /* - * Initialize @natp for country #@cnum in status @stat. + * Initialize country #@cnum in status @stat. * @stat must be STAT_UNUSED, STAT_NEW, STAT_VIS or STAT_GOD. * Also wipe realms and telegrams. */ -struct natstr * -nat_reset(struct natstr *natp, natid cnum, char *name, char *rep, - enum nat_status stat) +void +nat_reset(natid cnum, char *name, char *rep, enum nat_status stat) { + struct natstr nat; struct realmstr newrealm; char buf[1024]; int i; - ef_blank(EF_NATION, cnum, natp); - natp->nat_stat = stat; - strncpy(natp->nat_cnam, name, sizeof(natp->nat_cnam) - 1); - strncpy(natp->nat_pnam, rep, sizeof(natp->nat_pnam) - 1); + ef_blank(EF_NATION, cnum, &nat); + nat.nat_stat = stat; + strncpy(nat.nat_cnam, name, sizeof(nat.nat_cnam) - 1); + strncpy(nat.nat_pnam, rep, sizeof(nat.nat_pnam) - 1); if (stat == STAT_GOD) - natp->nat_money = 123456789; + nat.nat_money = 123456789; for (i = 0; i < MAXNOR; i++) { ef_blank(EF_REALM, i + cnum * MAXNOR, &newrealm); putrealm(&newrealm); } mailbox_create(mailbox(buf, cnum)); - /* FIXME natp->nat_ann = #annos */ - natp->nat_level[NAT_HLEV] = start_happiness; - natp->nat_level[NAT_RLEV] = start_research; - natp->nat_level[NAT_TLEV] = start_technology; - natp->nat_level[NAT_ELEV] = start_education; + /* FIXME nat.nat_ann = #annos */ + nat.nat_level[NAT_HLEV] = start_happiness; + nat.nat_level[NAT_RLEV] = start_research; + nat.nat_level[NAT_TLEV] = start_technology; + nat.nat_level[NAT_ELEV] = start_education; for (i = 0; i < MAXNOC; i++) - natp->nat_relate[i] = NEUTRAL; - natp->nat_flags = + nat.nat_relate[i] = NEUTRAL; + nat.nat_flags = NF_FLASH | NF_BEEP | NF_COASTWATCH | NF_SONAR | NF_TECHLISTS; - return natp; + putnat(&nat); } diff --git a/src/util/files.c b/src/util/files.c index 722b4894..af8541cb 100644 --- a/src/util/files.c +++ b/src/util/files.c @@ -30,7 +30,7 @@ * Thomas Ruschak * Ken Stevens, 1995 * Steve McClure, 1998 - * Markus Armbruster, 2004-2011 + * Markus Armbruster, 2004-2016 */ #include @@ -60,7 +60,6 @@ int main(int argc, char *argv[]) { char buf[255]; - struct natstr nat; int i; int opt; char *config_file = NULL; @@ -135,9 +134,8 @@ main(int argc, char *argv[]) if (mailbox_create(annfil) < 0) exit(1); - nat_reset(&nat, 0, "POGO", "peter", STAT_GOD); - putnat(&nat); - printf("All praise to %s!\n", nat.nat_cnam); + nat_reset(0, "POGO", "peter", STAT_GOD); + printf("All praise to POGO!\n"); for (i = 0; i < EF_MAX; i++) { if (!EF_IS_GAME_STATE(i))