Fix interpolation of sprites in sectors with SE_31_FLOOR_RISE_FALL

git-svn-id: https://svn.eduke32.com/eduke32@6135 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
terminx 2017-05-19 02:28:40 +00:00
parent 0e231ce97e
commit abfbfec0f0

View file

@ -5540,6 +5540,15 @@ static void HandleSE31(int spriteNum, int setFloorZ, int spriteZ, int SEdir, int
pData[0] = 0; pData[0] = 0;
pData[3] = pSprite->hitag; pData[3] = pSprite->hitag;
for (bssize_t SPRITES_OF_SECT(pSprite->sectnum, j))
{
if (sprite[j].zvel == 0 && sprite[j].statnum != STAT_EFFECTOR && sprite[j].statnum != STAT_PROJECTILE)
{
actor[j].bpos.z = sprite[j].z;
actor[j].floorz = pSector->floorz;
}
}
A_CallSound(pSprite->sectnum, spriteNum); A_CallSound(pSprite->sectnum, spriteNum);
} }
else else
@ -5560,7 +5569,8 @@ static void HandleSE31(int spriteNum, int setFloorZ, int spriteZ, int SEdir, int
if (sprite[j].zvel == 0 && sprite[j].statnum != STAT_EFFECTOR && sprite[j].statnum != STAT_PROJECTILE) if (sprite[j].zvel == 0 && sprite[j].statnum != STAT_EFFECTOR && sprite[j].statnum != STAT_PROJECTILE)
{ {
actor[j].bpos.z = sprite[j].z += zChange; actor[j].bpos.z = sprite[j].z;
sprite[j].z += zChange;
actor[j].floorz = pSector->floorz; actor[j].floorz = pSector->floorz;
} }
} }