- Blood: Add interpolation repair for kQAVFLARFIR2 (res_id: 43).

This commit is contained in:
Mitchell Richters 2021-08-12 13:44:32 +10:00
parent dfa3a52fa8
commit e70b395d76

View file

@ -749,6 +749,26 @@ static void qavRepairTileData(QAV* pQAV)
pQAV->frames[i].tiles[0].y = xs_CRoundToInt(pQAV->frames[0].tiles[0].y - (double(pQAV->frames[0].tiles[0].y - -30) / lastframe) * i); pQAV->frames[i].tiles[0].y = xs_CRoundToInt(pQAV->frames[0].tiles[0].y - (double(pQAV->frames[0].tiles[0].y - -30) / lastframe) * i);
} }
break; break;
case kQAVFLARFIR2:
// FLARFIR2 has several index swaps that require accomodating.
// For frames 4 until end, move tile index 0 to 1 and disable original index of 0.
for (i = 4; i < pQAV->nFrames; i++)
{
pQAV->frames[i].tiles[1] = pQAV->frames[i].tiles[0];
pQAV->frames[i].tiles[0].picnum = -1;
}
// For frame 1, move tile indices 1 and 2 into 2 and 3, and disable original index of 1.
pQAV->frames[1].tiles[3] = pQAV->frames[1].tiles[2];
pQAV->frames[1].tiles[2] = pQAV->frames[1].tiles[1];
pQAV->frames[1].tiles[1].picnum = -1;
// For frame 0, move tile indices 0 and 1 into 2 and 4, and disable original indices.
pQAV->frames[0].tiles[4] = pQAV->frames[0].tiles[1];
pQAV->frames[0].tiles[2] = pQAV->frames[0].tiles[0];
pQAV->frames[0].tiles[1].picnum = -1;
pQAV->frames[0].tiles[0].picnum = -1;
break;
default: default:
return; return;
} }