diff --git a/source/games/blood/src/qav.cpp b/source/games/blood/src/qav.cpp index e8fa5ef69..801142c6e 100644 --- a/source/games/blood/src/qav.cpp +++ b/source/games/blood/src/qav.cpp @@ -1046,6 +1046,30 @@ static void qavRepairTileData(QAV* pQAV) // Set frame 0 tile 3 picnum to 3311. pQAV->frames[0].tiles[3].picnum = 3311; break; + case kQAV2SGUNFIR: + { + // 2SGUNFIR's overlay sizes vary from tile to tile and don't interpolate properly. + // Use repaired tiles from Phredreeke where the overlays are baked in. + constexpr int tilearray[2][8] = { + { + 9306, 9307, 9308, 9309, 9305, 9306, 9307, 3240 + }, + { + 3240, 9307, 9306, 9305, 9309, 9308, 9307, 9306 + } + }; + + // Loop through each frame to remove overlay and replace use of 3240 with that from tilearray and disable overlays. + for (i = 0; i < pQAV->nFrames; i++) + { + pQAV->frames[i].tiles[0].picnum = tilearray[0][i]; + pQAV->frames[i].tiles[4].picnum = -1; + + pQAV->frames[i].tiles[2].picnum = tilearray[1][i]; + pQAV->frames[i].tiles[5].picnum = -1; + } + break; + } default: return; } diff --git a/wadsrc/static/filter/blood/engine/engine.def b/wadsrc/static/filter/blood/engine/engine.def index 2d63f1c5f..128a463bd 100644 --- a/wadsrc/static/filter/blood/engine/engine.def +++ b/wadsrc/static/filter/blood/engine/engine.def @@ -66,3 +66,8 @@ tilefromtexture 9301 { file "tiles/9301(3227+3229).png" } tilefromtexture 9302 { file "tiles/9302(3227+3230).png" } tilefromtexture 9303 { file "tiles/9303(3227+3231).png" } tilefromtexture 9304 { file "tiles/9304(3227+3232).png" } +tilefromtexture 9305 { file "tiles/9305(3240+3228).png" } +tilefromtexture 9306 { file "tiles/9306(3240+3229).png" } +tilefromtexture 9307 { file "tiles/9307(3240+3230).png" } +tilefromtexture 9308 { file "tiles/9308(3240+3231).png" } +tilefromtexture 9309 { file "tiles/9309(3240+3232).png" } diff --git a/wadsrc/static/filter/blood/tiles/9305(3240+3228).png b/wadsrc/static/filter/blood/tiles/9305(3240+3228).png new file mode 100644 index 000000000..5b5ae0b93 Binary files /dev/null and b/wadsrc/static/filter/blood/tiles/9305(3240+3228).png differ diff --git a/wadsrc/static/filter/blood/tiles/9306(3240+3229).png b/wadsrc/static/filter/blood/tiles/9306(3240+3229).png new file mode 100644 index 000000000..d49f9437e Binary files /dev/null and b/wadsrc/static/filter/blood/tiles/9306(3240+3229).png differ diff --git a/wadsrc/static/filter/blood/tiles/9307(3240+3230).png b/wadsrc/static/filter/blood/tiles/9307(3240+3230).png new file mode 100644 index 000000000..8f42a7deb Binary files /dev/null and b/wadsrc/static/filter/blood/tiles/9307(3240+3230).png differ diff --git a/wadsrc/static/filter/blood/tiles/9308(3240+3231).png b/wadsrc/static/filter/blood/tiles/9308(3240+3231).png new file mode 100644 index 000000000..cebf313f7 Binary files /dev/null and b/wadsrc/static/filter/blood/tiles/9308(3240+3231).png differ diff --git a/wadsrc/static/filter/blood/tiles/9309(3240+3232).png b/wadsrc/static/filter/blood/tiles/9309(3240+3232).png new file mode 100644 index 000000000..642428459 Binary files /dev/null and b/wadsrc/static/filter/blood/tiles/9309(3240+3232).png differ