src/player_gui.cpp
branchgamebalance
changeset 9913 e79cd19772dd
parent 9912 1ac8aac92385
equal deleted inserted replaced
9912:1ac8aac92385 9913:e79cd19772dd
   154 	switch (e->event) {
   154 	switch (e->event) {
   155 	case WE_PAINT: {
   155 	case WE_PAINT: {
   156 		PlayerID player = (PlayerID)w->window_number;
   156 		PlayerID player = (PlayerID)w->window_number;
   157 		const Player *p = GetPlayer(player);
   157 		const Player *p = GetPlayer(player);
   158 
   158 
       
   159 		/* Borrow/repay buttons only exist for local player */
   159 		if (player == _local_player) {
   160 		if (player == _local_player) {
   160 			/* borrow/repay buttons only exist for local player */
   161 			/* Borrow button only shows when there is any more money to loan */
       
   162 			SetWindowWidgetDisabledState(w, 6, p->current_loan == _economy.max_loan);
       
   163 
       
   164 			/* Repay button only shows when there is any more money to repay */
   161 			SetWindowWidgetDisabledState(w, 7, p->current_loan == 0);
   165 			SetWindowWidgetDisabledState(w, 7, p->current_loan == 0);
   162 		}
   166 		}
   163 
   167 
   164 		SetDParam(0, p->name_1);
   168 		SetDParam(0, p->name_1);
   165 		SetDParam(1, p->name_2);
   169 		SetDParam(1, p->name_2);
   166 		SetDParam(2, GetPlayerNameString(player, 3));
   170 		SetDParam(2, GetPlayerNameString(player, 3));
   167 		SetDParam(4, 10000);
   171 		SetDParam(4, LOAN_INTERVAL);
   168 		DrawWindowWidgets(w);
   172 		DrawWindowWidgets(w);
   169 
   173 
   170 		DrawPlayerEconomyStats(p, (byte)WP(w, def_d).data_1);
   174 		DrawPlayerEconomyStats(p, (byte)WP(w, def_d).data_1);
   171 	} break;
   175 	} break;
   172 
   176 
   323 static void SelectPlayerLiveryWndProc(Window *w, WindowEvent *e)
   327 static void SelectPlayerLiveryWndProc(Window *w, WindowEvent *e)
   324 {
   328 {
   325 	switch (e->event) {
   329 	switch (e->event) {
   326 		case WE_CREATE:
   330 		case WE_CREATE:
   327 			LowerWindowWidget(w, WP(w, livery_d).livery_class + 2);
   331 			LowerWindowWidget(w, WP(w, livery_d).livery_class + 2);
   328 			if (!HASBIT(_loaded_newgrf_features, GRFLOADED_2CC)) {
   332 			if (!_loaded_newgrf_features.has_2CC) {
   329 				HideWindowWidget(w, 11);
   333 				HideWindowWidget(w, 11);
   330 				HideWindowWidget(w, 12);
   334 				HideWindowWidget(w, 12);
   331 			}
   335 			}
   332 			break;
   336 			break;
   333 
   337 
   365 					DrawString(15, y, STR_LIVERY_DEFAULT + scheme, sel ? 0xC : 0x10);
   369 					DrawString(15, y, STR_LIVERY_DEFAULT + scheme, sel ? 0xC : 0x10);
   366 
   370 
   367 					DrawSprite(SPR_SQUARE, GENERAL_SPRITE_COLOR(p->livery[scheme].colour1), 152, y);
   371 					DrawSprite(SPR_SQUARE, GENERAL_SPRITE_COLOR(p->livery[scheme].colour1), 152, y);
   368 					DrawString(165, y, STR_00D1_DARK_BLUE + p->livery[scheme].colour1, sel ? 0xC : 2);
   372 					DrawString(165, y, STR_00D1_DARK_BLUE + p->livery[scheme].colour1, sel ? 0xC : 2);
   369 
   373 
   370 					if (HASBIT(_loaded_newgrf_features, GRFLOADED_2CC)) {
   374 					if (_loaded_newgrf_features.has_2CC) {
   371 						DrawSprite(SPR_SQUARE, GENERAL_SPRITE_COLOR(p->livery[scheme].colour2), 277, y);
   375 						DrawSprite(SPR_SQUARE, GENERAL_SPRITE_COLOR(p->livery[scheme].colour2), 277, y);
   372 						DrawString(290, y, STR_00D1_DARK_BLUE + p->livery[scheme].colour2, sel ? 0xC : 2);
   376 						DrawString(290, y, STR_00D1_DARK_BLUE + p->livery[scheme].colour2, sel ? 0xC : 2);
   373 					}
   377 					}
   374 
   378 
   375 					y += 14;
   379 					y += 14;
   793 					}
   797 					}
   794 					break;
   798 					break;
   795 				}
   799 				}
   796 
   800 
   797 				case PCW_WIDGET_COLOR_SCHEME: {
   801 				case PCW_WIDGET_COLOR_SCHEME: {
   798 					Window *wf = AllocateWindowDescFront(HASBIT(_loaded_newgrf_features, GRFLOADED_2CC) ? &_select_player_livery_2cc_desc : &_select_player_livery_desc, w->window_number);
   802 					Window *wf = AllocateWindowDescFront(_loaded_newgrf_features.has_2CC ? &_select_player_livery_2cc_desc : &_select_player_livery_desc, w->window_number);
   799 					if (wf != NULL) {
   803 					if (wf != NULL) {
   800 						wf->caption_color = wf->window_number;
   804 						wf->caption_color = wf->window_number;
   801 						WP(wf, livery_d).livery_class = LC_OTHER;
   805 						WP(wf, livery_d).livery_class = LC_OTHER;
   802 						WP(wf, livery_d).sel = 1;
   806 						WP(wf, livery_d).sel = 1;
   803 						LowerWindowWidget(wf, 2);
   807 						LowerWindowWidget(wf, 2);