? diff ? unfog_fix1.diff ? game_state1.diff ? po/a Index: client/packhand.c =================================================================== RCS file: /home/freeciv/CVS/freeciv/client/packhand.c,v retrieving revision 1.206 diff -u -r1.206 packhand.c --- client/packhand.c 2002/01/16 03:16:25 1.206 +++ client/packhand.c 2002/01/21 16:10:08 @@ -294,6 +294,17 @@ **************************************************************************/ void handle_game_state(struct packet_generic_integer *packet) { + int client_game_running_state_via_connect = 0; + int client_game_running_state_via_reconnect = 0; + + if (packet->value == CLIENT_GAME_RUNNING_STATE_VIA_CONNECT) { + client_game_running_state_via_connect = 1; + packet->value = CLIENT_GAME_RUNNING_STATE; + } else if (packet->value == CLIENT_GAME_RUNNING_STATE_VIA_RECONNECT) { + client_game_running_state_via_reconnect = 1; + packet->value = CLIENT_GAME_RUNNING_STATE; + } + if(get_client_state()==CLIENT_SELECT_RACE_STATE && packet->value==CLIENT_GAME_RUNNING_STATE && game.player_ptr->nation == MAX_NUM_NATIONS) { Index: common/game.h =================================================================== RCS file: /home/freeciv/CVS/freeciv/common/game.h,v retrieving revision 1.96 diff -u -r1.96 game.h --- common/game.h 2002/01/12 01:08:50 1.96 +++ common/game.h 2002/01/21 16:10:09 @@ -38,7 +38,9 @@ CLIENT_PRE_GAME_STATE, CLIENT_SELECT_RACE_STATE, CLIENT_WAITING_FOR_GAME_START_STATE, - CLIENT_GAME_RUNNING_STATE + CLIENT_GAME_RUNNING_STATE, + CLIENT_GAME_RUNNING_STATE_VIA_CONNECT, + CLIENT_GAME_RUNNING_STATE_VIA_RECONNECT }; struct unit; Index: server/srv_main.c =================================================================== RCS file: /home/freeciv/CVS/freeciv/server/srv_main.c,v retrieving revision 1.54 diff -u -r1.54 srv_main.c --- server/srv_main.c 2001/12/09 15:50:52 1.54 +++ server/srv_main.c 2002/01/21 16:10:12 @@ -1344,7 +1344,8 @@ if(server_state==RUN_GAME_STATE) { send_rulesets(&pconn->self); send_all_info(&pconn->self); - send_game_state(&pconn->self, CLIENT_GAME_RUNNING_STATE); + send_game_state(&pconn->self, + CLIENT_GAME_RUNNING_STATE_VIA_RECONNECT); send_player_info(NULL,NULL); send_diplomatic_meetings(pconn); } @@ -1965,7 +1966,8 @@ game.is_new_game = 0; - send_game_state(&game.est_connections, CLIENT_GAME_RUNNING_STATE); + send_game_state(&game.est_connections, + CLIENT_GAME_RUNNING_STATE_VIA_CONNECT); /*** Where the action is. ***/ main_loop();