From 23d25db601359bc11c21f4cfe955fc2ae73b3fce Mon Sep 17 00:00:00 2001 From: Denis Pauk Date: Tue, 10 Apr 2018 23:24:53 +0300 Subject: [PATCH] Little different shape of particle --- src/client/refresh/soft/sw_part.c | 14 ++++++++++---- src/common/clientserver.c | 2 +- src/common/header/common.h | 2 +- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/client/refresh/soft/sw_part.c b/src/client/refresh/soft/sw_part.c index 29bc03f1..f7d8e6fc 100644 --- a/src/client/refresh/soft/sw_part.c +++ b/src/client/refresh/soft/sw_part.c @@ -54,7 +54,7 @@ static void R_DrawParticle(partparms_t *partparms) byte *pdest; zvalue_t *pz; int color = pparticle->color; - int i, izi, pix, count, u, v; + int i, izi, pix, count, u, v, min_int, max_int; /* ** transform the particle @@ -107,6 +107,9 @@ static void R_DrawParticle(partparms_t *partparms) */ count = pix; + min_int = pix / 2; + max_int = (pix * 2) - min_int; + switch (level) { case PARTICLE_33 : for ( ; count ; count--, pz += d_zwidth, pdest += r_screenwidth) @@ -114,7 +117,8 @@ static void R_DrawParticle(partparms_t *partparms) //FIXME--do it in blocks of 8? for (i=0 ; i= min_int && pos <= max_int && pz[i] <= izi) { pz[i] = izi; pdest[i] = vid_alphamap[color + ((int)pdest[i]<<8)]; @@ -130,7 +134,8 @@ static void R_DrawParticle(partparms_t *partparms) { for (i=0 ; i= min_int && pos <= max_int && pz[i] <= izi) { pz[i] = izi; pdest[i] = vid_alphamap[color_part + (int)pdest[i]]; @@ -145,7 +150,8 @@ static void R_DrawParticle(partparms_t *partparms) { for (i=0 ; i= min_int && pos <= max_int && pz[i] <= izi) { pz[i] = izi; pdest[i] = color; diff --git a/src/common/clientserver.c b/src/common/clientserver.c index 4a3cbca9..3171ca60 100644 --- a/src/common/clientserver.c +++ b/src/common/clientserver.c @@ -41,7 +41,7 @@ static int rd_buffersize; static void (*rd_flush)(int target, char *buffer); void -Com_BeginRedirect(int target, char *buffer, int buffersize, void (*flush)) +Com_BeginRedirect(int target, char *buffer, int buffersize, void (*flush)(int, char *)) { if (!target || !buffer || !buffersize || !flush) { diff --git a/src/common/header/common.h b/src/common/header/common.h index 4f6b5a08..e463d146 100644 --- a/src/common/header/common.h +++ b/src/common/header/common.h @@ -708,7 +708,7 @@ void FS_CreatePath(char *path); #define PRINT_ALL 0 #define PRINT_DEVELOPER 1 /* only print when "developer 1" */ -void Com_BeginRedirect(int target, char *buffer, int buffersize, void (*flush)); +void Com_BeginRedirect(int target, char *buffer, int buffersize, void (*flush)(int, char *)); void Com_EndRedirect(void); void Com_Printf(char *fmt, ...) __attribute__ ((format (printf, 1, 2))); void Com_DPrintf(char *fmt, ...) __attribute__ ((format (printf, 1, 2)));