- Blood: commented out cultist code that should not be entered due to the 'isrunning' bug.

This commit is contained in:
Christoph Oelckers 2021-03-01 22:28:21 +01:00
parent 4b9a1465af
commit a7dc86583f

View file

@ -304,6 +304,7 @@ static void cultThinkChase(DBloodActor* actor)
actor->dudeSlope = DivScale(pTarget->z-pSprite->z, nDist, 10); actor->dudeSlope = DivScale(pTarget->z-pSprite->z, nDist, 10);
switch (pSprite->type) { switch (pSprite->type) {
case kDudeCultistTommy: case kDudeCultistTommy:
#if 0 // apparently this can never be entered.
if (nDist < 0x1e00 && nDist > 0xe00 && abs(nDeltaAngle) < 85 && !TargetNearExplosion(pTarget) if (nDist < 0x1e00 && nDist > 0xe00 && abs(nDeltaAngle) < 85 && !TargetNearExplosion(pTarget)
&& (pTarget->flags&2) && gGameOptions.nDifficulty > 2 && IsPlayerSprite(pTarget) && gPlayer[pTarget->type-kDudePlayer1].isRunning && (pTarget->flags&2) && gGameOptions.nDifficulty > 2 && IsPlayerSprite(pTarget) && gPlayer[pTarget->type-kDudePlayer1].isRunning
&& Chance(0x8000)) && Chance(0x8000))
@ -327,7 +328,9 @@ static void cultThinkChase(DBloodActor* actor)
break; break;
} }
} }
else if (nDist < 0x4600 && abs(nDeltaAngle) < 28) else
#endif
if (nDist < 0x4600 && abs(nDeltaAngle) < 28)
{ {
int hit = HitScan(pSprite, pSprite->z, dx, dy, 0, CLIPMASK1, 0); int hit = HitScan(pSprite, pSprite->z, dx, dy, 0, CLIPMASK1, 0);
switch (hit) switch (hit)
@ -373,7 +376,7 @@ static void cultThinkChase(DBloodActor* actor)
break; break;
case kDudeCultistShotgun: case kDudeCultistShotgun:
if (nDist < 0x2c00 && nDist > 0x1400 && !TargetNearExplosion(pTarget) if (nDist < 0x2c00 && nDist > 0x1400 && !TargetNearExplosion(pTarget)
&& (pTarget->flags&2) && gGameOptions.nDifficulty >= 2 && IsPlayerSprite(pTarget) && !gPlayer[pTarget->type-kDudePlayer1].isRunning && (pTarget->flags&2) && gGameOptions.nDifficulty >= 2 && IsPlayerSprite(pTarget) /*&& !gPlayer[pTarget->type-kDudePlayer1].isRunning*/
&& Chance(0x8000)) && Chance(0x8000))
{ {
int hit = HitScan(pSprite, pSprite->z, dx, dy, 0, CLIPMASK1, 0); int hit = HitScan(pSprite, pSprite->z, dx, dy, 0, CLIPMASK1, 0);
@ -440,6 +443,7 @@ static void cultThinkChase(DBloodActor* actor)
} }
break; break;
case kDudeCultistTesla: case kDudeCultistTesla:
#if 0
if (nDist < 0x1e00 && nDist > 0xe00 && !TargetNearExplosion(pTarget) if (nDist < 0x1e00 && nDist > 0xe00 && !TargetNearExplosion(pTarget)
&& (pTarget->flags&2) && gGameOptions.nDifficulty > 2 && IsPlayerSprite(pTarget) && gPlayer[pTarget->type-kDudePlayer1].isRunning && (pTarget->flags&2) && gGameOptions.nDifficulty > 2 && IsPlayerSprite(pTarget) && gPlayer[pTarget->type-kDudePlayer1].isRunning
&& Chance(0x8000)) && Chance(0x8000))
@ -463,7 +467,9 @@ static void cultThinkChase(DBloodActor* actor)
break; break;
} }
} }
else if (nDist < 0x3200 && abs(nDeltaAngle) < 28) else
#endif
if (nDist < 0x3200 && abs(nDeltaAngle) < 28)
{ {
int hit = HitScan(pSprite, pSprite->z, dx, dy, 0, CLIPMASK1, 0); int hit = HitScan(pSprite, pSprite->z, dx, dy, 0, CLIPMASK1, 0);
switch (hit) switch (hit)
@ -552,6 +558,7 @@ static void cultThinkChase(DBloodActor* actor)
} }
break; break;
case kDudeCultistBeast: case kDudeCultistBeast:
#if 0
if (nDist < 0x1e00 && nDist > 0xe00 && !TargetNearExplosion(pTarget) if (nDist < 0x1e00 && nDist > 0xe00 && !TargetNearExplosion(pTarget)
&& (pTarget->flags&2) && gGameOptions.nDifficulty > 2 && IsPlayerSprite(pTarget) && gPlayer[pTarget->type-kDudePlayer1].isRunning && (pTarget->flags&2) && gGameOptions.nDifficulty > 2 && IsPlayerSprite(pTarget) && gPlayer[pTarget->type-kDudePlayer1].isRunning
&& Chance(0x8000)) && Chance(0x8000))
@ -575,7 +582,9 @@ static void cultThinkChase(DBloodActor* actor)
break; break;
} }
} }
else if (nDist < 0x3200 && abs(nDeltaAngle) < 28) else
#endif
if (nDist < 0x3200 && abs(nDeltaAngle) < 28)
{ {
int hit = HitScan(pSprite, pSprite->z, dx, dy, 0, CLIPMASK1, 0); int hit = HitScan(pSprite, pSprite->z, dx, dy, 0, CLIPMASK1, 0);
switch (hit) switch (hit)