changeset 4473:f5507d57082f draft

(svn r6258) Reduce the number of induction variables and inner scopes for clarity
author tron <tron@openttd.org>
date Thu, 31 Aug 2006 08:11:08 +0000
parents be6ec1c0ed04
children 6c7b80bc9f8c
files roadveh_gui.c
diffstat 1 files changed, 28 insertions(+), 37 deletions(-) [+]
line wrap: on
line diff
--- a/roadveh_gui.c
+++ b/roadveh_gui.c
@@ -469,50 +469,41 @@
 
 static void DrawNewRoadVehWindow(Window *w)
 {
-	if (w->window_number == 0)
-		w->disabled_state = 1 << 5;
+	EngineID selected_id;
+	EngineID e;
+	uint count;
+	int pos;
+	int sel;
+	int y;
 
-	// setup scroller
-	{
-		int count = 0;
-		int num = NUM_ROAD_ENGINES;
-		const Engine *e = GetEngine(ROAD_ENGINES_INDEX);
+	if (w->window_number == 0) w->disabled_state = 1 << 5;
 
-		do {
-			if (HASBIT(e->player_avail, _local_player))
-				count++;
-		} while (++e,--num);
-		SetVScrollCount(w, count);
+	count = 0;
+	for (e = ROAD_ENGINES_INDEX; e < ROAD_ENGINES_INDEX + NUM_ROAD_ENGINES; e++) {
+		if (HASBIT(GetEngine(e)->player_avail, _local_player)) count++;
 	}
+	SetVScrollCount(w, count);
 
 	DrawWindowWidgets(w);
 
-	{
-		int num = NUM_ROAD_ENGINES;
-		const Engine *e = GetEngine(ROAD_ENGINES_INDEX);
-		int x = 1;
-		int y = 15;
-		int sel = WP(w,buildtrain_d).sel_index;
-		int pos = w->vscroll.pos;
-		EngineID engine_id = ROAD_ENGINES_INDEX;
-		EngineID selected_id = INVALID_ENGINE;
+	y = 15;
+	sel = WP(w,buildtrain_d).sel_index;
+	pos = w->vscroll.pos;
+	selected_id = INVALID_ENGINE;
+	for (e = ROAD_ENGINES_INDEX; e < ROAD_ENGINES_INDEX + NUM_ROAD_ENGINES; e++) {
+		if (!HASBIT(GetEngine(e)->player_avail, _local_player)) continue;
+		if (sel == 0) selected_id = e;
+		if (IS_INT_INSIDE(--pos, -w->vscroll.cap, 0)) {
+			DrawString(60, y + 2, GetCustomEngineName(e), sel == 0 ? 0xC : 0x10);
+			DrawRoadVehEngine(30, y + 6, e, GetEnginePalette(e, _local_player));
+			y += 14;
+		}
+		sel--;
+	}
 
-		do {
-			if (HASBIT(e->player_avail, _local_player)) {
-				if (sel==0) selected_id = engine_id;
-				if (IS_INT_INSIDE(--pos, -w->vscroll.cap, 0)) {
-					DrawString(x+59, y+2, GetCustomEngineName(engine_id), sel==0 ? 0xC : 0x10);
-					DrawRoadVehEngine(x+29, y+6, engine_id, GetEnginePalette(engine_id, _local_player));
-					y += 14;
-				}
-				sel--;
-			}
-		} while (++engine_id, ++e,--num);
-
-		WP(w,buildtrain_d).sel_engine = selected_id;
-		if (selected_id != INVALID_ENGINE) {
-			DrawRoadVehPurchaseInfo(2, w->widget[4].top + 1, selected_id);
-		}
+	WP(w,buildtrain_d).sel_engine = selected_id;
+	if (selected_id != INVALID_ENGINE) {
+		DrawRoadVehPurchaseInfo(2, w->widget[4].top + 1, selected_id);
 	}
 }