src/main_gui.cpp
branchgamebalance
changeset 9910 0b2aebc8283e
parent 9909 dce9a6923bb7
child 9911 0b8b245a2391
equal deleted inserted replaced
9909:dce9a6923bb7 9910:0b2aebc8283e
    87 		if (!_network_server) {
    87 		if (!_network_server) {
    88 			SEND_COMMAND(PACKET_CLIENT_CHAT)(NETWORK_ACTION_GIVE_MONEY, DESTTYPE_TEAM, id, msg);
    88 			SEND_COMMAND(PACKET_CLIENT_CHAT)(NETWORK_ACTION_GIVE_MONEY, DESTTYPE_TEAM, id, msg);
    89 		} else {
    89 		} else {
    90 			NetworkServer_HandleChat(NETWORK_ACTION_GIVE_MONEY, DESTTYPE_TEAM, id, msg, NETWORK_SERVER_INDEX);
    90 			NetworkServer_HandleChat(NETWORK_ACTION_GIVE_MONEY, DESTTYPE_TEAM, id, msg, NETWORK_SERVER_INDEX);
    91 		}
    91 		}
    92 	}	break;
    92 	} break;
    93 #endif /* ENABLE_NETWORK */
    93 #endif /* ENABLE_NETWORK */
    94 		default: NOT_REACHED();
    94 		default: NOT_REACHED();
    95 	}
    95 	}
    96 
    96 
    97 	_rename_id = _rename_what = -1;
    97 	_rename_id = _rename_what = -1;
   145 	_fast_forward ^= true;
   145 	_fast_forward ^= true;
   146 	SndPlayFx(SND_15_BEEP);
   146 	SndPlayFx(SND_15_BEEP);
   147 }
   147 }
   148 
   148 
   149 
   149 
       
   150 /** Toggle all transparency options, except for signs */
       
   151 static void ToggleTransparency()
       
   152 {
       
   153 	static byte trans_opt = ~0;
       
   154 
       
   155 	if (GB(_transparent_opt, 1, 7) == 0) {
       
   156 		SB(_transparent_opt, 1, 7, GB(trans_opt, 1, 7));
       
   157 	} else {
       
   158 		trans_opt = _transparent_opt;
       
   159 		SB(_transparent_opt, 1, 7, 0);
       
   160 	}
       
   161 
       
   162 	MarkWholeScreenDirty();
       
   163 }
       
   164 
       
   165 
   150 static void MenuClickSettings(int index)
   166 static void MenuClickSettings(int index)
   151 {
   167 {
   152 	switch (index) {
   168 	switch (index) {
   153 		case 0: ShowGameOptions();      return;
   169 		case 0: ShowGameOptions();      return;
   154 		case 1: ShowGameDifficulty();   return;
   170 		case 1: ShowGameDifficulty();   return;
   159 		case  6: _display_opt ^= DO_SHOW_STATION_NAMES; break;
   175 		case  6: _display_opt ^= DO_SHOW_STATION_NAMES; break;
   160 		case  7: _display_opt ^= DO_SHOW_SIGNS;         break;
   176 		case  7: _display_opt ^= DO_SHOW_SIGNS;         break;
   161 		case  8: _display_opt ^= DO_WAYPOINTS;          break;
   177 		case  8: _display_opt ^= DO_WAYPOINTS;          break;
   162 		case  9: _display_opt ^= DO_FULL_ANIMATION;     break;
   178 		case  9: _display_opt ^= DO_FULL_ANIMATION;     break;
   163 		case 10: _display_opt ^= DO_FULL_DETAIL;        break;
   179 		case 10: _display_opt ^= DO_FULL_DETAIL;        break;
   164 		case 11: TOGGLEBIT(_transparent_opt, TO_BUILDINGS); break;
   180 		case 11: ToggleTransparency(); break;
   165 		case 12: TOGGLEBIT(_transparent_opt, TO_SIGNS);     break;
   181 		case 12: TOGGLEBIT(_transparent_opt, TO_SIGNS); break;
   166 	}
   182 	}
   167 	MarkWholeScreenDirty();
   183 	MarkWholeScreenDirty();
   168 }
   184 }
   169 
   185 
   170 static void MenuClickSaveLoad(int index)
   186 static void MenuClickSaveLoad(int index)
   962 	if (_display_opt & DO_SHOW_STATION_NAMES) SETBIT(x,  6);
   978 	if (_display_opt & DO_SHOW_STATION_NAMES) SETBIT(x,  6);
   963 	if (_display_opt & DO_SHOW_SIGNS)         SETBIT(x,  7);
   979 	if (_display_opt & DO_SHOW_SIGNS)         SETBIT(x,  7);
   964 	if (_display_opt & DO_WAYPOINTS)          SETBIT(x,  8);
   980 	if (_display_opt & DO_WAYPOINTS)          SETBIT(x,  8);
   965 	if (_display_opt & DO_FULL_ANIMATION)     SETBIT(x,  9);
   981 	if (_display_opt & DO_FULL_ANIMATION)     SETBIT(x,  9);
   966 	if (_display_opt & DO_FULL_DETAIL)        SETBIT(x, 10);
   982 	if (_display_opt & DO_FULL_DETAIL)        SETBIT(x, 10);
   967 	if (HASBIT(_transparent_opt, TO_BUILDINGS)) SETBIT(x, 11);
   983 	if (GB(_transparent_opt, 1, 7) != 0)      SETBIT(x, 11);
   968 	if (HASBIT(_transparent_opt, TO_SIGNS))     SETBIT(x, 12);
   984 	if (HASBIT(_transparent_opt, TO_SIGNS))   SETBIT(x, 12);
   969 	WP(w,menu_d).checked_items = x;
   985 	WP(w,menu_d).checked_items = x;
   970 }
   986 }
   971 
   987 
   972 
   988 
   973 static void ToolbarScenSaveOrLoad(Window *w)
   989 static void ToolbarScenSaveOrLoad(Window *w)
  2353 
  2369 
  2354 			case 'X' | WKC_CTRL:
  2370 			case 'X' | WKC_CTRL:
  2355 				ShowTransparencyToolbar();
  2371 				ShowTransparencyToolbar();
  2356 				break;
  2372 				break;
  2357 
  2373 
  2358 			case 'X': {
  2374 			case 'X':
  2359 				/* Toggle all transparency options except for signs */
  2375 				ToggleTransparency();
  2360 				static byte trans_opt = ~0;
       
  2361 				if (GB(_transparent_opt, 1, 7) == 0) {
       
  2362 					SB(_transparent_opt, 1, 7, GB(trans_opt, 1, 7));
       
  2363 				} else {
       
  2364 					trans_opt = _transparent_opt;
       
  2365 					SB(_transparent_opt, 1, 7, 0);
       
  2366 				}
       
  2367 				MarkWholeScreenDirty();
       
  2368 				break;
  2376 				break;
  2369 			}
       
  2370 
  2377 
  2371 #ifdef ENABLE_NETWORK
  2378 #ifdef ENABLE_NETWORK
  2372 			case WKC_RETURN: case 'T': // smart chat; send to team if any, otherwise to all
  2379 			case WKC_RETURN: case 'T': // smart chat; send to team if any, otherwise to all
  2373 				if (_networking) {
  2380 				if (_networking) {
  2374 					const NetworkClientInfo *cio = NetworkFindClientInfoFromIndex(_network_own_client_index);
  2381 					const NetworkClientInfo *cio = NetworkFindClientInfoFromIndex(_network_own_client_index);