mirror of
https://github.com/ZDoom/raze-gles.git
synced 2024-12-30 13:21:04 +00:00
- Blood: eliminated gameclock in weapon draw code
This commit is contained in:
parent
4b45ee150f
commit
d0a3e1781e
7 changed files with 13 additions and 13 deletions
|
@ -97,7 +97,7 @@ static void viewBurnTime(int gScale)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void hudDraw(PLAYER *gView, int nSectnum, int defaultHoriz, double bobx, double boby, double zDelta, int basepal)
|
void hudDraw(PLAYER *gView, int nSectnum, int defaultHoriz, double bobx, double boby, double zDelta, int basepal, int smoothratio)
|
||||||
{
|
{
|
||||||
if (gViewPos == 0)
|
if (gViewPos == 0)
|
||||||
{
|
{
|
||||||
|
@ -129,14 +129,14 @@ void hudDraw(PLAYER *gView, int nSectnum, int defaultHoriz, double bobx, double
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef NOONE_EXTENSIONS
|
#ifdef NOONE_EXTENSIONS
|
||||||
if (gView->sceneQav < 0) WeaponDraw(gView, nShade, cX, cY, nPalette);
|
if (gView->sceneQav < 0) WeaponDraw(gView, nShade, cX, cY, nPalette, smoothratio);
|
||||||
else if (gView->pXSprite->health > 0) playerQavSceneDraw(gView, nShade, cX, cY, nPalette);
|
else if (gView->pXSprite->health > 0) playerQavSceneDraw(gView, nShade, cX, cY, nPalette, smoothratio);
|
||||||
else {
|
else {
|
||||||
gView->sceneQav = gView->weaponQav = -1;
|
gView->sceneQav = gView->weaponQav = -1;
|
||||||
gView->weaponTimer = gView->curWeapon = 0;
|
gView->weaponTimer = gView->curWeapon = 0;
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
WeaponDraw(gView, nShade, cX, cY, nPalette);
|
WeaponDraw(gView, nShade, cX, cY, nPalette, smoothratio);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
if (gViewPos == 0 && gView->pXSprite->burnTime > 60)
|
if (gViewPos == 0 && gView->pXSprite->burnTime > 60)
|
||||||
|
|
|
@ -48,7 +48,7 @@ struct PLAYER;
|
||||||
extern QAV* weaponQAV[];
|
extern QAV* weaponQAV[];
|
||||||
|
|
||||||
void WeaponInit(void);
|
void WeaponInit(void);
|
||||||
void WeaponDraw(PLAYER *pPlayer, int a2, double a3, double a4, int a5);
|
void WeaponDraw(PLAYER *pPlayer, int a2, double a3, double a4, int a5, int smoothratio);
|
||||||
void WeaponRaise(PLAYER *pPlayer);
|
void WeaponRaise(PLAYER *pPlayer);
|
||||||
void WeaponLower(PLAYER *pPlayer);
|
void WeaponLower(PLAYER *pPlayer);
|
||||||
char WeaponUpgrade(PLAYER *pPlayer, char newWeapon);
|
char WeaponUpgrade(PLAYER *pPlayer, char newWeapon);
|
||||||
|
|
|
@ -4792,7 +4792,7 @@ void playerQavSceneProcess(PLAYER* pPlayer, QAVSCENE* pQavScene) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void playerQavSceneDraw(PLAYER* pPlayer, int a2, double a3, double a4, int a5) {
|
void playerQavSceneDraw(PLAYER* pPlayer, int a2, double a3, double a4, int a5, int smoothratio) {
|
||||||
if (pPlayer == NULL || pPlayer->sceneQav == -1) return;
|
if (pPlayer == NULL || pPlayer->sceneQav == -1) return;
|
||||||
|
|
||||||
QAVSCENE* pQavScene = &gPlayerCtrl[pPlayer->nPlayer].qavScene;
|
QAVSCENE* pQavScene = &gPlayerCtrl[pPlayer->nPlayer].qavScene;
|
||||||
|
@ -4801,7 +4801,7 @@ void playerQavSceneDraw(PLAYER* pPlayer, int a2, double a3, double a4, int a5) {
|
||||||
if (pQavScene->qavResrc != NULL) {
|
if (pQavScene->qavResrc != NULL) {
|
||||||
|
|
||||||
QAV* pQAV = pQavScene->qavResrc;
|
QAV* pQAV = pQavScene->qavResrc;
|
||||||
int v4 = (pPlayer->weaponTimer == 0) ? gameclock % pQAV->at10 : pQAV->at10 - pPlayer->weaponTimer;
|
int v4 = (pPlayer->weaponTimer == 0) ? ((gFrameClock + mulscale16(4, smoothratio)) % pQAV->at10) : pQAV->at10 - pPlayer->weaponTimer;
|
||||||
|
|
||||||
int flags = 2; int nInv = powerupCheck(pPlayer, kPwUpShadowCloak);
|
int flags = 2; int nInv = powerupCheck(pPlayer, kPwUpShadowCloak);
|
||||||
if (nInv >= 120 * 8 || (nInv != 0 && (gFrameClock & 32))) {
|
if (nInv >= 120 * 8 || (nInv != 0 && (gFrameClock & 32))) {
|
||||||
|
|
|
@ -314,7 +314,7 @@ void playerDeactivateShrooms(PLAYER* pPlayer);
|
||||||
QAV* playerQavSceneLoad(int qavId);
|
QAV* playerQavSceneLoad(int qavId);
|
||||||
void playerQavSceneProcess(PLAYER* pPlayer, QAVSCENE* pQavScene);
|
void playerQavSceneProcess(PLAYER* pPlayer, QAVSCENE* pQavScene);
|
||||||
void playerQavScenePlay(PLAYER* pPlayer);
|
void playerQavScenePlay(PLAYER* pPlayer);
|
||||||
void playerQavSceneDraw(PLAYER* pPlayer, int a2, double a3, double a4, int a5);
|
void playerQavSceneDraw(PLAYER* pPlayer, int a2, double a3, double a4, int a5, int smoothratio);
|
||||||
void playerQavSceneReset(PLAYER* pPlayer);
|
void playerQavSceneReset(PLAYER* pPlayer);
|
||||||
// ------------------------------------------------------------------------- //
|
// ------------------------------------------------------------------------- //
|
||||||
void callbackUniMissileBurst(int nSprite);
|
void callbackUniMissileBurst(int nSprite);
|
||||||
|
|
|
@ -981,7 +981,7 @@ void viewDrawScreen(bool sceneonly)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
hudDraw(gView, nSectnum, defaultHoriz, v4c, v48, zDelta, basepal);
|
hudDraw(gView, nSectnum, defaultHoriz, v4c, v48, zDelta, basepal, (int)gInterpolate);
|
||||||
}
|
}
|
||||||
UpdateDacs(0, true); // keep the view palette active only for the actual 3D view and its overlays.
|
UpdateDacs(0, true); // keep the view palette active only for the actual 3D view and its overlays.
|
||||||
if (automapMode != am_off)
|
if (automapMode != am_off)
|
||||||
|
|
|
@ -142,7 +142,7 @@ extern LOCATION gPrevSpriteLoc[kMaxSprites];
|
||||||
extern int gLastPal;
|
extern int gLastPal;
|
||||||
extern double gInterpolate;
|
extern double gInterpolate;
|
||||||
|
|
||||||
void hudDraw(PLAYER* gView, int nSectnum, int defaultHoriz, double bobx, double boby, double zDelta, int basepal);
|
void hudDraw(PLAYER* gView, int nSectnum, int defaultHoriz, double bobx, double boby, double zDelta, int basepal, int smoothratio);
|
||||||
void viewInitializePrediction(void);
|
void viewInitializePrediction(void);
|
||||||
void viewUpdatePrediction(InputPacket *pInput);
|
void viewUpdatePrediction(InputPacket *pInput);
|
||||||
void viewCorrectPrediction(void);
|
void viewCorrectPrediction(void);
|
||||||
|
|
|
@ -232,7 +232,7 @@ void WeaponPrecache(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void WeaponDraw(PLAYER *pPlayer, int a2, double a3, double a4, int a5)
|
void WeaponDraw(PLAYER *pPlayer, int a2, double a3, double a4, int a5, int smoothratio)
|
||||||
{
|
{
|
||||||
dassert(pPlayer != NULL);
|
dassert(pPlayer != NULL);
|
||||||
if (pPlayer->weaponQav == -1)
|
if (pPlayer->weaponQav == -1)
|
||||||
|
@ -240,14 +240,14 @@ void WeaponDraw(PLAYER *pPlayer, int a2, double a3, double a4, int a5)
|
||||||
QAV * pQAV = weaponQAV[pPlayer->weaponQav];
|
QAV * pQAV = weaponQAV[pPlayer->weaponQav];
|
||||||
int v4;
|
int v4;
|
||||||
if (pPlayer->weaponTimer == 0)
|
if (pPlayer->weaponTimer == 0)
|
||||||
v4 = gameclock % pQAV->at10;
|
v4 = (gFrameClock + mulscale16(4, smoothratio)) % pQAV->at10;
|
||||||
else
|
else
|
||||||
v4 = pQAV->at10 - pPlayer->weaponTimer;
|
v4 = pQAV->at10 - pPlayer->weaponTimer;
|
||||||
pQAV->x = int(a3);
|
pQAV->x = int(a3);
|
||||||
pQAV->y = int(a4);
|
pQAV->y = int(a4);
|
||||||
int flags = 2;
|
int flags = 2;
|
||||||
int nInv = powerupCheck(pPlayer, kPwUpShadowCloak);
|
int nInv = powerupCheck(pPlayer, kPwUpShadowCloak);
|
||||||
if (nInv >= 120 * 8 || (nInv != 0 && (gameclock & 32)))
|
if (nInv >= 120 * 8 || (nInv != 0 && (gFrameClock & 32)))
|
||||||
{
|
{
|
||||||
a2 = -128;
|
a2 = -128;
|
||||||
flags |= 1;
|
flags |= 1;
|
||||||
|
|
Loading…
Reference in a new issue