--- cityhand.c.old Tue Jul 25 13:34:10 2000 +++ cityhand.c Fri Aug 4 01:24:23 2000 @@ -91,41 +91,46 @@ } /**************************************************************** -... +Come up with a default name when a new city is about to be built. +Handle running out of names etc. gracefully. Maybe we should keep +track of which names have been rejected by the player, so that we do +not suggest them again? *****************************************************************/ char *city_name_suggestion(struct player *pplayer) { char **nptr; - int i, j, k; - static int n_misc=0; - static char tempname[100]; + int i, j; + static int n_misc = -1; + static char tempname[MAX_LEN_NAME]; freelog(LOG_VERBOSE, "Suggesting city name for %s", pplayer->name); - if (!n_misc) { - for (i=0; misc_city_names[i]; i++) {} - n_misc = i; - } - for(nptr=get_nation_by_plr(pplayer)->default_city_names; *nptr; nptr++) { if(!game_find_city_by_name(*nptr)) return *nptr; } + if (n_misc == -1) + for (n_misc = 0; misc_city_names[n_misc]; n_misc++) + ; + j = myrand(n_misc); + for (i=0; i