From 8b01cb6c302787eb3158d82692e083c8b7b1e23d Mon Sep 17 00:00:00 2001 From: Thomas Perl Date: Wed, 22 Oct 2008 21:08:23 +0200 Subject: [PATCH] More in-game weather (fog) + fill_image_offset() function Add support for having in-game fog clouds to make gameplay harder. This needed an addition of the offset to the fill_image function, so we have this now too, allowing arbitrary offsets to shift the repeated image on the start for a moving effect. --- data/fog.png | Bin 0 -> 25667 bytes data/fog2.png | Bin 0 -> 26285 bytes game.c | 17 +++++++++++++++++ game.h | 1 + graphics.c | 15 ++++++++++----- graphics.h | 5 ++++- 6 files changed, 32 insertions(+), 6 deletions(-) create mode 100644 data/fog.png create mode 100644 data/fog2.png diff --git a/data/fog.png b/data/fog.png new file mode 100644 index 0000000000000000000000000000000000000000..c80ed7f9678256e630350e543cc582f43d884ce2 GIT binary patch literal 25667 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 AX#fBK literal 0 HcwPel00001 diff --git a/data/fog2.png b/data/fog2.png new file mode 100644 index 0000000000000000000000000000000000000000..6f71317d0dd89fad5e01875884d983f891bb745b GIT binary patch literal 26285 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 literal 0 HcwPel00001 diff --git a/game.c b/game.c index 292f67e..bc2370e 100644 --- a/game.c +++ b/game.c @@ -62,6 +62,7 @@ GameState *gamestate_new() { 0.0, 0.0, 0, + 0, 0 }; @@ -285,6 +286,9 @@ bool step( GameState* s) { if (keys['r']) { s->rain += 10; } + if (keys['t']) { + s->fog++; + } if( s->court_type > GR_CTT_LAST) { s->court_type = GR_CTT_FIRST; } else if (s->court_type < GR_CTT_FIRST) { @@ -437,6 +441,19 @@ void render( GameState* s) { line_horiz( GAME_Y_MIN, 100, 100, 100); line_horiz( GAME_Y_MAX, 100, 100, 100); #endif + switch (s->fog) { + default: + case 4: + fill_image_offset(GR_FOG2, 0, 0, WIDTH, HEIGHT, -s->time/150, 0); + case 3: + fill_image_offset(GR_FOG, 0, 0, WIDTH, HEIGHT, -s->time/100, 20); + case 2: + fill_image_offset(GR_FOG2, 0, 0, WIDTH, HEIGHT, -s->time/180, 80); + case 1: + fill_image_offset(GR_FOG, 0, 0, WIDTH, HEIGHT, s->time/200, 0); + case 0: + break; + } updatescr(); } diff --git a/game.h b/game.h index 2545762..2ef528d 100644 --- a/game.h +++ b/game.h @@ -115,6 +115,7 @@ typedef struct { float joystick_x; unsigned char joystick_a; unsigned int rain; + unsigned int fog; } GameState; #define PI 3.1415 diff --git a/graphics.c b/graphics.c index a9d77c7..7f4f5d7 100644 --- a/graphics.c +++ b/graphics.c @@ -57,7 +57,9 @@ static const ResourceData graphics[] = { RESOURCE(btnplay), RESOURCE(btnresume), RESOURCE(btnquit), - RESOURCE(stadium) + RESOURCE(stadium), + RESOURCE(fog), + RESOURCE(fog2) }; void init_graphics() { @@ -176,7 +178,7 @@ void show_sprite( image_id id, int pos, int items, int x_offset, int y_offset, i update_rect2(dst); } -void fill_image( image_id id, int x, int y, int w, int h) { +void fill_image_offset( image_id id, int x, int y, int w, int h, int offset_x, int offset_y) { SDL_Surface *bitmap; SDL_Rect src, dst; int dx = 0, dy = 0, cx, cy; @@ -184,24 +186,27 @@ void fill_image( image_id id, int x, int y, int w, int h) { if( id >= GR_COUNT) return; bitmap = images[id].data; - src.x = src.y = 0; + src.y = offset_y % bitmap->h; while( dy < h) { - src.h = dst.h = cy = (h-dy > bitmap->h)?(bitmap->h):(h-dy); + src.h = dst.h = cy = (h-dy > bitmap->h-src.y)?(bitmap->h-src.y):(h-dy); dst.y = y+dy; dx = 0; + src.x = offset_x % bitmap->w; while( dx < w) { - src.w = dst.w = cx = (w-dx > bitmap->w)?(bitmap->w):(w-dx); + src.w = dst.w = cx = (w-dx > bitmap->w-src.x)?(bitmap->w-src.x):(w-dx); dst.x = x+dx; SDL_BlitSurface( bitmap, &src, screen, &dst); update_rect2(dst); dx += cx; + src.x = 0; } dy += cy; + src.y = 0; } } diff --git a/graphics.h b/graphics.h index a86d86a..80b4b35 100644 --- a/graphics.h +++ b/graphics.h @@ -61,6 +61,8 @@ enum { GR_BTN_RESUME, GR_BTN_QUIT, GR_STADIUM, + GR_FOG, + GR_FOG2, GR_COUNT }; @@ -86,7 +88,8 @@ void show_sprite(image_id, int, int, int, int, int); void line_horiz( int y, Uint8 r, Uint8 g, Uint8 b); void line_vert( int x, Uint8 r, Uint8 g, Uint8 b); void rectangle( int x, int y, int w, int h, Uint8 r, Uint8 g, Uint8 b); -void fill_image(image_id id, int x, int y, int w, int h); +void fill_image_offset(image_id id, int x, int y, int w, int h, int offset_x, int offset_y); +#define fill_image(id, x, y, w, h) fill_image_offset(id, x, y, w, h, 0, 0) void draw_button( int x, int y, int w, int h, Uint8 r, Uint8 g, Uint8 b, char pressed); void draw_button_text( char* s, int x, int y, int w, int h, Uint8 r, Uint8 g, Uint8 b, char pressed); #define draw_button_object(button,mx,my) (draw_button_text(button.text, button.x, button.y, button.w, button.h, button.r, button.g, button.b, M_POS_BUTTON(button, mx, my))) -- 2.11.4.GIT