Index: client/options.c =================================================================== RCS file: /home/freeciv/CVS/freeciv/client/options.c,v retrieving revision 1.71 diff -u -r1.71 options.c --- client/options.c 17 Nov 2002 02:21:11 -0000 1.71 +++ client/options.c 19 Nov 2002 12:37:22 -0000 @@ -69,6 +69,8 @@ bool auto_turn_done = FALSE; bool meta_accelerators = TRUE; bool map_scrollbars = TRUE; +bool ask_city_name = 1; +bool popup_new_cities = 1; #define GEN_INT_OPTION(oname, desc) { #oname, desc, COT_INT, \ &oname, NULL, NULL, 0, NULL, \ @@ -116,6 +118,8 @@ GEN_BOOL_OPTION(auto_turn_done, N_("End Turn when done moving")), GEN_BOOL_OPTION(meta_accelerators, N_("Use Alt/Meta for accelerators (GTK only)")), GEN_BOOL_OPTION(map_scrollbars, N_("Show Map Scrollbars (GTK only)")), + GEN_BOOL_OPTION(ask_city_name, N_("Prompt for city names")), + GEN_BOOL_OPTION(popup_new_cities, N_("Pop up city dialog for new cities")), GEN_OPTION_TERMINATOR }; #undef GEN_INT_OPTION Index: client/options.h =================================================================== RCS file: /home/freeciv/CVS/freeciv/client/options.h,v retrieving revision 1.24 diff -u -r1.24 options.h --- client/options.h 14 Nov 2002 09:22:09 -0000 1.24 +++ client/options.h 19 Nov 2002 12:37:22 -0000 @@ -43,6 +43,8 @@ extern bool auto_turn_done; extern bool meta_accelerators; extern bool map_scrollbars; +extern bool ask_city_name; +extern bool popup_new_cities; enum client_option_type { COT_BOOL, Index: client/packhand.c =================================================================== RCS file: /home/freeciv/CVS/freeciv/client/packhand.c,v retrieving revision 1.261 diff -u -r1.261 packhand.c --- client/packhand.c 14 Nov 2002 09:14:51 -0000 1.261 +++ client/packhand.c 19 Nov 2002 12:37:22 -0000 @@ -443,7 +443,8 @@ (unit_list_size(&(map_get_tile(pcity->x, pcity->y)->units)) > 0); popup = (city_is_new && get_client_state()==CLIENT_GAME_RUNNING_STATE && - pcity->owner==game.player_idx) || packet->diplomat_investigate; + pcity->owner==game.player_idx && popup_new_cities) + || packet->diplomat_investigate; if (city_is_new && !city_has_changed_owner) { agents_city_new(pcity); @@ -2237,7 +2238,14 @@ punit = player_find_unit_by_id(game.player_ptr, packet->id); if (punit) { - popup_newcity_dialog(punit, packet->name); + if (ask_city_name) { + popup_newcity_dialog(punit, packet->name); + } else { + struct packet_unit_request req; + req.unit_id = packet->id; + sz_strlcpy(req.name, packet->name); + send_packet_unit_request(&aconnection, &req, PACKET_UNIT_BUILD_CITY); + } return; } /* maybe unit died; ignore */