main_gui.c
changeset 4887 71da70810c22
parent 4848 45f848b46222
child 4889 02a05885ce68
equal deleted inserted replaced
4886:19d09a4386ad 4887:71da70810c22
  2324 				_display_opt ^= DO_TRANS_BUILDINGS;
  2324 				_display_opt ^= DO_TRANS_BUILDINGS;
  2325 				MarkWholeScreenDirty();
  2325 				MarkWholeScreenDirty();
  2326 				break;
  2326 				break;
  2327 
  2327 
  2328 #ifdef ENABLE_NETWORK
  2328 #ifdef ENABLE_NETWORK
  2329 			case WKC_RETURN: case 'T' | WKC_SHIFT:
  2329 			case WKC_RETURN: case 'T': // smart chat; send to team if any, otherwise to all
       
  2330 				if (_networking) {
       
  2331 					const NetworkClientInfo *ci;
       
  2332 					const NetworkClientInfo *cio = NetworkFindClientInfoFromIndex(_network_own_client_index);
       
  2333 					bool has_team = false;
       
  2334 
       
  2335 					/* Only players actually playing can speak to team. Eg spectators cannot */
       
  2336 					if (IsValidPlayer(cio->client_playas)) {
       
  2337 						FOR_ALL_ACTIVE_CLIENT_INFOS(ci) {
       
  2338 							if (ci->client_playas == cio->client_playas && ci != cio) {
       
  2339 								has_team = true;
       
  2340 								break;
       
  2341 							}
       
  2342 						}
       
  2343 					}
       
  2344 
       
  2345 					ShowNetworkChatQueryWindow(has_team ? DESTTYPE_PLAYER : DESTTYPE_BROADCAST, ci->client_playas);
       
  2346 					break;
       
  2347 				}
       
  2348 				break;
       
  2349 
       
  2350 			case WKC_SHIFT | WKC_RETURN: case WKC_SHIFT | 'T': // send text message to all players
  2330 				if (_networking) ShowNetworkChatQueryWindow(DESTTYPE_BROADCAST, 0);
  2351 				if (_networking) ShowNetworkChatQueryWindow(DESTTYPE_BROADCAST, 0);
       
  2352 				break;
       
  2353 
       
  2354 			case WKC_CTRL | WKC_RETURN: case WKC_CTRL | 'T': // send text to all team mates
       
  2355 				if (_networking) {
       
  2356 					const NetworkClientInfo *ci = NetworkFindClientInfoFromIndex(_network_own_client_index);
       
  2357 					ShowNetworkChatQueryWindow(DESTTYPE_PLAYER, ci->client_playas);
       
  2358 				}
  2331 				break;
  2359 				break;
  2332 #endif
  2360 #endif
  2333 
  2361 
  2334 			default: return;
  2362 			default: return;
  2335 		}
  2363 		}