From 2fbfa82fe8329c1f3bb2badedaaf81025283d963 Mon Sep 17 00:00:00 2001 From: Mitchell Richters Date: Sat, 28 Aug 2021 16:41:51 +1000 Subject: [PATCH] - Blood: Add interpolated weapon QAVs to `WeaponInit()` and `WeaponPrecache()` functions. --- source/games/blood/src/weapon.cpp | 34 +++++++++++++++++++++---------- 1 file changed, 23 insertions(+), 11 deletions(-) diff --git a/source/games/blood/src/weapon.cpp b/source/games/blood/src/weapon.cpp index 2dfda4e0d..8e07d2111 100644 --- a/source/games/blood/src/weapon.cpp +++ b/source/games/blood/src/weapon.cpp @@ -228,23 +228,35 @@ void SpawnShellEject(PLAYER *pPlayer, int a2, int a3) void WeaponInit(void) { - for (int i = 0; i < kQAVEnd; i++) + auto doInit = [](const int base) { - auto pQAV = getQAV(i); - if (!pQAV) - I_Error("Could not load QAV %d\n", i); - pQAV->nSprite = -1; - } + for (int i = base; i < (kQAVEnd + base); i++) + { + auto pQAV = getQAV(i); + if (!pQAV) + I_Error("Could not load QAV %d\n", i); + pQAV->nSprite = -1; + } + }; + + doInit(0); + doInit(10000); } void WeaponPrecache() { - for (int i = 0; i < kQAVEnd; i++) + auto doPrecache = [](const int base) { - auto pQAV = getQAV(i); - if (pQAV) - pQAV->Precache(); - } + for (int i = base; i < (kQAVEnd + base); i++) + { + auto pQAV = getQAV(i); + if (pQAV) + pQAV->Precache(); + } + }; + + doPrecache(0); + doPrecache(10000); } void WeaponDraw(PLAYER *pPlayer, int shade, double xpos, double ypos, int palnum)