mirror of
https://github.com/ZDoom/raze-gles.git
synced 2024-11-11 07:11:39 +00:00
Queen AI fixes. Still need to check Head and Egg code.
This commit is contained in:
parent
6da91a4c1f
commit
4ca74ee06a
1 changed files with 13 additions and 16 deletions
|
@ -12,6 +12,7 @@
|
|||
#include "anims.h"
|
||||
#include "player.h"
|
||||
#include "sound.h"
|
||||
#include "names.h"
|
||||
#include <assert.h>
|
||||
|
||||
#define kMaxQueens 1
|
||||
|
@ -1161,10 +1162,6 @@ void FuncQueenHead(int a, int nDamage, int nRun)
|
|||
|
||||
int BuildQueen(int nSprite, int x, int y, int z, int nSector, int nAngle, int nChannel)
|
||||
{
|
||||
int xVal = x;
|
||||
int yVal = y;
|
||||
int zVal = z;
|
||||
|
||||
QueenCount--;
|
||||
|
||||
short nQueen = QueenCount;
|
||||
|
@ -1179,16 +1176,17 @@ int BuildQueen(int nSprite, int x, int y, int z, int nSector, int nAngle, int nC
|
|||
else
|
||||
{
|
||||
changespritestat(nSprite, 121);
|
||||
yVal = sprite[nSprite].y;
|
||||
zVal = sector[sprite[nSprite].sectnum].floorz;
|
||||
x = sprite[nSprite].x;
|
||||
y = sprite[nSprite].y;
|
||||
z = sector[sprite[nSprite].sectnum].floorz;
|
||||
nAngle = sprite[nSprite].ang;
|
||||
}
|
||||
|
||||
assert(nSprite >= 0 && nSprite < kMaxSprites);
|
||||
|
||||
sprite[nSprite].x = xVal;
|
||||
sprite[nSprite].y = yVal;
|
||||
sprite[nSprite].z = zVal;
|
||||
sprite[nSprite].x = x;
|
||||
sprite[nSprite].y = y;
|
||||
sprite[nSprite].z = z;
|
||||
sprite[nSprite].cstat = 0x101;
|
||||
sprite[nSprite].pal = 0;
|
||||
sprite[nSprite].shade = -12;
|
||||
|
@ -1199,8 +1197,8 @@ int BuildQueen(int nSprite, int x, int y, int z, int nSector, int nAngle, int nC
|
|||
sprite[nSprite].yoffset = 0;
|
||||
sprite[nSprite].picnum = 1;
|
||||
sprite[nSprite].ang = nAngle;
|
||||
sprite[nSprite].yvel = 0;
|
||||
sprite[nSprite].xvel = 0;
|
||||
sprite[nSprite].yvel = 0;
|
||||
sprite[nSprite].zvel = 0;
|
||||
sprite[nSprite].lotag = runlist_HeadRun() + 1;
|
||||
sprite[nSprite].extra = -1;
|
||||
|
@ -1305,18 +1303,16 @@ void FuncQueen(int a, int nDamage, int nRun)
|
|||
|
||||
QueenList[nQueen].field_A++;
|
||||
|
||||
short dx = QueenList[nQueen].field_A;
|
||||
|
||||
if (QueenList[nQueen].field_A == 1)
|
||||
{
|
||||
QueenList[nQueen].nHealth = 20; //4000;
|
||||
QueenList[nQueen].nHealth = 4000;
|
||||
QueenList[nQueen].nAction = 7;
|
||||
|
||||
BuildAnim(-1, 36, 0, sprite[nSprite].x, sprite[nSprite].y, sprite[nSprite].z - 7680, sprite[nSprite].sectnum, sprite[nSprite].xrepeat, 4);
|
||||
}
|
||||
else if (QueenList[nQueen].field_A == 2)
|
||||
{
|
||||
QueenList[nQueen].nHealth = 20; // 4000;
|
||||
QueenList[nQueen].nHealth = 4000;
|
||||
QueenList[nQueen].nAction = 7;
|
||||
|
||||
DestroyAllEggs();
|
||||
|
@ -1325,6 +1321,7 @@ void FuncQueen(int a, int nDamage, int nRun)
|
|||
{
|
||||
QueenList[nQueen].nAction = 8;
|
||||
QueenList[nQueen].nHealth = 0;
|
||||
QueenList[nQueen].field_C = 5;
|
||||
|
||||
nCreaturesLeft--;
|
||||
}
|
||||
|
@ -1570,14 +1567,14 @@ void FuncQueen(int a, int nDamage, int nRun)
|
|||
{
|
||||
short nChunkSprite = BuildCreatureChunk(nSprite, seq_GetSeqPicnum(kSeqQueen, 57, 0)) & 0xFFFF;
|
||||
|
||||
sprite[nChunkSprite].picnum = i % 3 + 3117;
|
||||
sprite[nChunkSprite].picnum = kTile3117 + (i % 3);
|
||||
sprite[nChunkSprite].yrepeat = 100;
|
||||
sprite[nChunkSprite].xrepeat = 100;
|
||||
}
|
||||
|
||||
short nChunkSprite = BuildCreatureChunk(nSprite, seq_GetSeqPicnum(kSeqQueen, 57, 0));
|
||||
|
||||
sprite[nChunkSprite].picnum = 3126;
|
||||
sprite[nChunkSprite].picnum = kTile3126;
|
||||
sprite[nChunkSprite].yrepeat = 100;
|
||||
sprite[nChunkSprite].xrepeat = 100;
|
||||
PlayFXAtXYZ(
|
||||
|
|
Loading…
Reference in a new issue