diff --git a/src/hardware/hw_main.c b/src/hardware/hw_main.c index 3cdb48058..f23209379 100644 --- a/src/hardware/hw_main.c +++ b/src/hardware/hw_main.c @@ -5380,8 +5380,7 @@ static void HWR_ProjectSprite(mobj_t *thing) I_Error("sprframes NULL for sprite %d\n", thing->sprite); #endif - if (sprframe->rotate != SRF_SINGLE) - ang = R_PointToAngle (thing->x, thing->y) - mobjangle; + ang = R_PointToAngle (thing->x, thing->y) - mobjangle; if (sprframe->rotate == SRF_SINGLE) { @@ -5390,7 +5389,7 @@ static void HWR_ProjectSprite(mobj_t *thing) lumpoff = sprframe->lumpid[0]; //Fab: see note above flip = sprframe->flip; // Will only be 0x00 or 0xFF - if (papersprite && (R_PointToAngle (thing->x, thing->y) - mobjangle < ANGLE_180)) + if (papersprite && ang < ANGLE_180) { if (flip) flip = 0; @@ -5411,6 +5410,14 @@ static void HWR_ProjectSprite(mobj_t *thing) //Fab: lumpid is the index for spritewidth,spriteoffset... tables lumpoff = sprframe->lumpid[rot]; flip = sprframe->flip & (1<skin && ((skin_t *)thing->skin)->flags & SF_HIRES) @@ -5418,16 +5425,8 @@ static void HWR_ProjectSprite(mobj_t *thing) if (papersprite) { - if (flip && sprframe->rotate != SRF_SINGLE) - { - rightsin = FIXED_TO_FLOAT(FINESINE((mobjangle+ANGLE_180)>>ANGLETOFINESHIFT)); - rightcos = FIXED_TO_FLOAT(FINECOSINE((mobjangle+ANGLE_180)>>ANGLETOFINESHIFT)); - } - else - { - rightsin = FIXED_TO_FLOAT(FINESINE((mobjangle)>>ANGLETOFINESHIFT)); - rightcos = FIXED_TO_FLOAT(FINECOSINE((mobjangle)>>ANGLETOFINESHIFT)); - } + rightsin = FIXED_TO_FLOAT(FINESINE((mobjangle)>>ANGLETOFINESHIFT)); + rightcos = FIXED_TO_FLOAT(FINECOSINE((mobjangle)>>ANGLETOFINESHIFT)); } else {