From ac66e3e28f35c6939d3af68d1f0e26eb9b34e377 Mon Sep 17 00:00:00 2001 From: tron Date: Wed, 20 Jul 2005 15:29:28 +0000 Subject: (svn r2650) Convert many explicit shifts+ands to extract bits to invocations of GB - should be a bit nicer to read --- vehicle.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'vehicle.c') diff --git a/vehicle.c b/vehicle.c index d12ba127f..7d1734f70 100644 --- a/vehicle.c +++ b/vehicle.c @@ -612,8 +612,8 @@ void ViewportAddVehicles(DrawPixelInfo *dpi) static void ChimneySmokeInit(Vehicle *v) { uint32 r = Random(); - v->cur_image = SPR_CHIMNEY_SMOKE_0 + (r & 7); - v->progress = (r >> 16) & 7; + v->cur_image = SPR_CHIMNEY_SMOKE_0 + GB(r, 0, 3); + v->progress = GB(r, 16, 3); } static void ChimneySmokeTick(Vehicle *v) @@ -1299,8 +1299,8 @@ void CheckVehicleBreakdown(Vehicle *v) /* check if to break down */ if (_breakdown_chance[(uint)min(rel, 0xffff) >> 10] <= v->breakdown_chance) { - v->breakdown_ctr = (byte)(((r >> 16) & 0x3F) + 0x3F); - v->breakdown_delay = (byte)(((r >> 24) & 0x7F) | 0x80); + v->breakdown_ctr = GB(r, 16, 6) + 0x3F; + v->breakdown_delay = GB(r, 24, 7) + 0x80; v->breakdown_chance = 0; } } -- cgit v1.2.3-54-g00ecf