mirror of
https://github.com/ZDoom/raze-gles.git
synced 2024-12-28 12:30:46 +00:00
- all iterators in Exhumed handled.
This commit is contained in:
parent
a8e7d1ef74
commit
db4f0d041e
7 changed files with 34 additions and 53 deletions
|
@ -194,7 +194,10 @@ void ShutDown(void)
|
||||||
|
|
||||||
void DoClockBeep()
|
void DoClockBeep()
|
||||||
{
|
{
|
||||||
for (int i = headspritestat[407]; i != -1; i = nextspritestat[i]) {
|
int i;
|
||||||
|
StatIterator it(407);
|
||||||
|
while ((i = it.NextIndex()) >= 0)
|
||||||
|
{
|
||||||
PlayFX2(StaticSound[kSound74], i);
|
PlayFX2(StaticSound[kSound74], i);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -207,7 +210,9 @@ void DoRedAlert(int nVal)
|
||||||
nRedTicks = 30;
|
nRedTicks = 30;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int i = headspritestat[405]; i != -1; i = nextspritestat[i])
|
int i;
|
||||||
|
StatIterator it(405);
|
||||||
|
while ((i = it.NextIndex()) >= 0)
|
||||||
{
|
{
|
||||||
if (nVal)
|
if (nVal)
|
||||||
{
|
{
|
||||||
|
@ -533,9 +538,7 @@ void GameInterface::app_init()
|
||||||
|
|
||||||
void mychangespritesect(int nSprite, int nSector)
|
void mychangespritesect(int nSprite, int nSector)
|
||||||
{
|
{
|
||||||
DoKenTest();
|
|
||||||
changespritesect(nSprite, nSector);
|
changespritesect(nSprite, nSector);
|
||||||
DoKenTest();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void mydeletesprite(int nSprite)
|
void mydeletesprite(int nSprite)
|
||||||
|
|
|
@ -298,7 +298,9 @@ void AddFlash(short nSector, int x, int y, int z, int val)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (short nSprite = headspritesect[nSector]; nSprite >= 0; nSprite = nextspritesect[nSprite])
|
int nSprite;
|
||||||
|
SectIterator it(nSector);
|
||||||
|
while ((nSprite = it.NextIndex()) >= 0)
|
||||||
{
|
{
|
||||||
if (sprite[nSprite].pal < 4)
|
if (sprite[nSprite].pal < 4)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1001,7 +1001,8 @@ void MoveSector(short nSector, int nAngle, int *nXVel, int *nYVel)
|
||||||
// GREEN
|
// GREEN
|
||||||
if (yvect || xvect)
|
if (yvect || xvect)
|
||||||
{
|
{
|
||||||
for (i = headspritesect[nSector]; i != -1; i = nextspritesect[i])
|
SectIterator it(nSector);
|
||||||
|
while ((i = it.NextIndex()) >= 0)
|
||||||
{
|
{
|
||||||
if (sprite[i].statnum < 99)
|
if (sprite[i].statnum < 99)
|
||||||
{
|
{
|
||||||
|
@ -1027,7 +1028,8 @@ void MoveSector(short nSector, int nAngle, int *nXVel, int *nYVel)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = headspritesect[nNextSector]; i != -1; i = nextspritesect[i])
|
it.Reset(nNextSector);
|
||||||
|
while ((i = it.NextIndex()) >= 0)
|
||||||
{
|
{
|
||||||
if (sprite[i].statnum >= 99)
|
if (sprite[i].statnum >= 99)
|
||||||
{
|
{
|
||||||
|
@ -1078,7 +1080,8 @@ void MoveSector(short nSector, int nAngle, int *nXVel, int *nYVel)
|
||||||
|
|
||||||
if (!(nSectFlag & kSectUnderwater))
|
if (!(nSectFlag & kSectUnderwater))
|
||||||
{
|
{
|
||||||
for (i = headspritesect[nSector]; i != -1; i = nextspritesect[i])
|
SectIterator it(nSector);
|
||||||
|
while ((i = it.NextIndex()) >= 0)
|
||||||
{
|
{
|
||||||
if (sprite[i].statnum >= 99 && nZVal == sprite[i].z && !(sprite[i].cstat & 0x8000))
|
if (sprite[i].statnum >= 99 && nZVal == sprite[i].z && !(sprite[i].cstat & 0x8000))
|
||||||
{
|
{
|
||||||
|
|
|
@ -490,11 +490,11 @@ int CheckSectorSprites(short nSector, int nVal)
|
||||||
|
|
||||||
if (nVal)
|
if (nVal)
|
||||||
{
|
{
|
||||||
short nSprite = headspritesect[nSector];
|
|
||||||
|
|
||||||
int nZDiff = sector[nSector].floorz - sector[nSector].ceilingz;
|
int nZDiff = sector[nSector].floorz - sector[nSector].ceilingz;
|
||||||
|
|
||||||
while (nSprite != -1)
|
int nSprite;
|
||||||
|
SectIterator it(nSector);
|
||||||
|
while ((nSprite = it.NextIndex()) >= 0)
|
||||||
{
|
{
|
||||||
if ((sprite[nSprite].cstat & 0x101) && (nZDiff < GetSpriteHeight(nSprite)))
|
if ((sprite[nSprite].cstat & 0x101) && (nZDiff < GetSpriteHeight(nSprite)))
|
||||||
{
|
{
|
||||||
|
@ -515,12 +515,13 @@ int CheckSectorSprites(short nSector, int nVal)
|
||||||
sprite[nSprite].sectnum | 0x4000);
|
sprite[nSprite].sectnum | 0x4000);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
nSprite = nextspritesect[nSprite];
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
for (int i = headspritesect[nSector]; i != -1; i = nextspritesect[i])
|
int i;
|
||||||
|
SectIterator it(nSector);
|
||||||
|
while ((i = it.NextIndex()) >= 0)
|
||||||
{
|
{
|
||||||
if (sprite[i].cstat & 0x101) {
|
if (sprite[i].cstat & 0x101) {
|
||||||
return 1;
|
return 1;
|
||||||
|
@ -535,15 +536,13 @@ int CheckSectorSprites(short nSector, int nVal)
|
||||||
// done
|
// done
|
||||||
void MoveSectorSprites(int nSector, int z)
|
void MoveSectorSprites(int nSector, int z)
|
||||||
{
|
{
|
||||||
int nSprite = headspritesect[nSector];
|
int nSprite;
|
||||||
|
SectIterator it(nSector);
|
||||||
while (nSprite != -1)
|
while ((nSprite = it.NextIndex()) >= 0)
|
||||||
{
|
{
|
||||||
if (sprite[nSprite].statnum != 200) {
|
if (sprite[nSprite].statnum != 200) {
|
||||||
sprite[nSprite].z += z;
|
sprite[nSprite].z += z;
|
||||||
}
|
}
|
||||||
|
|
||||||
nSprite = nextspritesect[nSprite];
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1621,7 +1620,6 @@ void KillCreatures()
|
||||||
{
|
{
|
||||||
signed int v0;
|
signed int v0;
|
||||||
signed int v1;
|
signed int v1;
|
||||||
int i;
|
|
||||||
|
|
||||||
v0 = 99;
|
v0 = 99;
|
||||||
v1 = 99;
|
v1 = 99;
|
||||||
|
@ -1630,7 +1628,9 @@ void KillCreatures()
|
||||||
{
|
{
|
||||||
if (v0 != 100)
|
if (v0 != 100)
|
||||||
{
|
{
|
||||||
for (i = headspritestat[v1]; i != -1; i = nextspritestat[i])
|
int i;
|
||||||
|
StatIterator it(v1);
|
||||||
|
while ((i = it.NextIndex()) >= 0)
|
||||||
{
|
{
|
||||||
runlist_DamageEnemy(i, -1, 1600);
|
runlist_DamageEnemy(i, -1, 1600);
|
||||||
}
|
}
|
||||||
|
|
|
@ -161,11 +161,10 @@ void feebtag(int x, int y, int z, int nSector, short *nSprite, int nVal2, int nV
|
||||||
{
|
{
|
||||||
if (nSector != -1)
|
if (nSector != -1)
|
||||||
{
|
{
|
||||||
short i = headspritesect[nSector];
|
int i;
|
||||||
|
SectIterator it(nSector);
|
||||||
while (i != -1)
|
while ((i = it.NextIndex()) >= 0)
|
||||||
{
|
{
|
||||||
short nNextSprite = nextspritesect[i];
|
|
||||||
short nStat = sprite[i].statnum;
|
short nStat = sprite[i].statnum;
|
||||||
|
|
||||||
if (nStat >= 900 && !(sprite[i].cstat & 0x8000))
|
if (nStat >= 900 && !(sprite[i].cstat & 0x8000))
|
||||||
|
@ -193,8 +192,6 @@ void feebtag(int x, int y, int z, int nSector, short *nSprite, int nVal2, int nV
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
i = nNextSprite;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -666,31 +663,6 @@ void PlayAlert(const char *str)
|
||||||
PlayLocalSound(StaticSound[kSound63], 0);
|
PlayLocalSound(StaticSound[kSound63], 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DoKenTest()
|
|
||||||
{
|
|
||||||
int nPlayerSprite = PlayerList[0].nSprite;
|
|
||||||
if ((unsigned int)nPlayerSprite >= kMaxSprites)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
int nSector = sprite[nPlayerSprite].sectnum;
|
|
||||||
if ((unsigned int)nSector >= kMaxSectors)
|
|
||||||
{
|
|
||||||
Printf("DoKenTest: (unsigned int)nSector >= kMaxSectors\n");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
for (int i = headspritesect[nSector]; ; i = nextspritesect[i])
|
|
||||||
{
|
|
||||||
if (i == -1) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (nextspritesect[i] == i) {
|
|
||||||
I_Error("ERROR in Ken's linked list!\n");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void pickupMessage(int no)
|
static void pickupMessage(int no)
|
||||||
{
|
{
|
||||||
|
|
|
@ -28,7 +28,6 @@ void RestoreSavePoint(int nPlayer, int *x, int *y, int *z, short *nSector, short
|
||||||
void SetSavePoint(int nPlayer, int x, int y, int z, short nSector, short nAngle);
|
void SetSavePoint(int nPlayer, int x, int y, int z, short nSector, short nAngle);
|
||||||
void InitPlayer();
|
void InitPlayer();
|
||||||
void InitPlayerKeys(short nPlayer);
|
void InitPlayerKeys(short nPlayer);
|
||||||
void DoKenTest();
|
|
||||||
int GrabPlayer();
|
int GrabPlayer();
|
||||||
void InitPlayerInventory(short nPlayer);
|
void InitPlayerInventory(short nPlayer);
|
||||||
void RestartPlayer(short nPlayer);
|
void RestartPlayer(short nPlayer);
|
||||||
|
|
|
@ -274,7 +274,9 @@ int FindSnakeEnemy(short nSnake)
|
||||||
|
|
||||||
int nEnemy = -1;
|
int nEnemy = -1;
|
||||||
|
|
||||||
for (int i = headspritesect[nSector]; i >= 0; i = nextspritesect[i])
|
int i;
|
||||||
|
SectIterator it(nSector);
|
||||||
|
while ((i = it.NextIndex()) >= 0)
|
||||||
{
|
{
|
||||||
if (sprite[i].statnum >= 90 && sprite[i].statnum < 150 && (sprite[i].cstat & 0x101))
|
if (sprite[i].statnum >= 90 && sprite[i].statnum < 150 && (sprite[i].cstat & 0x101))
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue