X-Git-Url: https://jasonwoof.com/gitweb/?p=vor.git;a=blobdiff_plain;f=main.c;h=ea1f5364db5892431060b71e8cbf359ec46252bd;hp=60ee8f099c696ac34fe5514527ee7bde1dd5300c;hb=1d9107a3d43b3f57087edee14f1eaf7c1f3db54e;hpb=7981a2b8d152e6372aea8191f8c2197f866a450b diff --git a/main.c b/main.c index 60ee8f0..ea1f536 100644 --- a/main.c +++ b/main.c @@ -19,9 +19,6 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ -#ifndef WIN32 -# include -#endif #include #include #include @@ -44,6 +41,10 @@ #include "sprite.h" #include "sound.h" +#ifdef WIN32 +#define SDL_SetAlpha(surf, flag, alpha) +#endif + // ************************************* VARS // SDL_Surface global variables SDL_Surface @@ -137,22 +138,20 @@ init_engine_dots() { void new_bang_dots(int xbang, int ybang, int dx, int dy, SDL_Surface *s) { - int x,y,endcount; - uint16_t *pixel,c; + int i, n, x, y; + uint16_t *pixel, c; uint32_t colorkey; int row_inc; - double theta,r; - int begin_generate; + double theta, r; - begin_generate = SDL_GetTicks(); + n = 24.0 * t_frame; pixel = s->pixels; row_inc = s->pitch/sizeof(uint16_t) - s->w; colorkey = s->format->colorkey; SDL_LockSurface(s); - endcount = 0; - while (endcount<3) { + for(i=0; ipixels; for(y=0; yh; y++) { for(x = 0; xw; x++) { @@ -160,26 +159,21 @@ new_bang_dots(int xbang, int ybang, int dx, int dy, SDL_Surface *s) if(c && c != colorkey) { theta = frnd()*M_PI*2; r = frnd(); r = 1 - r*r; - // r = 1 - frnd()*frnd(); bdot[bd2].dx = 45*r*cos(theta) + dx; bdot[bd2].dy = 45*r*sin(theta) + dy; bdot[bd2].x = x + xbang; bdot[bd2].y = y + ybang; - bdot[bd2].c = 0; + bdot[bd2].c = (i < n-3) ? 0 : c; bdot[bd2].life = 100; bdot[bd2].decay = frnd()*3 + 1; bdot[bd2].active = 1; - // Replace the last few bang dots with the pixels from the exploding object - if(endcount>0) bdot[bd2].c = c; - bd2 = (bd2+1) % MAXBANGDOTS; } pixel += row_inc; } } - if(SDL_GetTicks() - begin_generate > 7) endcount++; } SDL_UnlockSurface(s); @@ -309,7 +303,7 @@ drawdots(SDL_Surface *s) { // Create engine dots out the side we're moving from for(m = 0; m<4; m++) { if(ship.jets & 1<