Merge branch 'public_flatsprite'

# Conflicts:
#	src/hardware/hw_main.c
#	src/r_things.c
This commit is contained in:
Monster Iestyn 2018-06-11 19:53:16 +01:00
commit e39bbab532
1 changed files with 12 additions and 13 deletions

View File

@ -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<<rot);
if (papersprite && ang < ANGLE_180)
{
if (flip)
flip = 0;
else
flip = 1<<rot;
}
}
if (thing->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
{