|
|
|
|
@ -19,17 +19,16 @@ int stonendx;
|
|
|
|
|
|
|
|
|
|
void InitDead() |
|
|
|
|
{ |
|
|
|
|
int i, d, nd, mi; |
|
|
|
|
int mtypes[MAXMONSTERS]; |
|
|
|
|
|
|
|
|
|
for (i = 0; i < MAXMONSTERS; i++) |
|
|
|
|
for (int i = 0; i < MAXMONSTERS; i++) |
|
|
|
|
mtypes[i] = 0; |
|
|
|
|
|
|
|
|
|
nd = 0; |
|
|
|
|
int nd = 0; |
|
|
|
|
|
|
|
|
|
for (i = 0; i < nummtypes; i++) { |
|
|
|
|
for (int i = 0; i < nummtypes; i++) { |
|
|
|
|
if (mtypes[Monsters[i].mtype] == 0) { |
|
|
|
|
for (d = 0; d < 8; d++) |
|
|
|
|
for (int d = 0; d < 8; d++) |
|
|
|
|
dead[nd]._deadData[d] = Monsters[i].Anims[MA_DEATH].Data[d]; |
|
|
|
|
dead[nd]._deadFrame = Monsters[i].Anims[MA_DEATH].Frames; |
|
|
|
|
dead[nd]._deadWidth = Monsters[i].width; |
|
|
|
|
@ -41,7 +40,7 @@ void InitDead()
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
for (d = 0; d < 8; d++) |
|
|
|
|
for (int d = 0; d < 8; d++) |
|
|
|
|
dead[nd]._deadData[d] = misfiledata[MFILE_BLODBUR].mAnimData[0]; |
|
|
|
|
dead[nd]._deadFrame = 8; |
|
|
|
|
dead[nd]._deadWidth = 128; |
|
|
|
|
@ -49,7 +48,7 @@ void InitDead()
|
|
|
|
|
dead[nd]._deadtrans = 0; |
|
|
|
|
nd++; |
|
|
|
|
|
|
|
|
|
for (d = 0; d < 8; d++) |
|
|
|
|
for (int d = 0; d < 8; d++) |
|
|
|
|
dead[nd]._deadData[d] = misfiledata[MFILE_SHATTER1].mAnimData[0]; |
|
|
|
|
dead[nd]._deadFrame = 12; |
|
|
|
|
dead[nd]._deadWidth = 128; |
|
|
|
|
@ -58,10 +57,10 @@ void InitDead()
|
|
|
|
|
stonendx = nd + 1; |
|
|
|
|
nd++; |
|
|
|
|
|
|
|
|
|
for (i = 0; i < nummonsters; i++) { |
|
|
|
|
mi = monstactive[i]; |
|
|
|
|
for (int i = 0; i < nummonsters; i++) { |
|
|
|
|
int mi = monstactive[i]; |
|
|
|
|
if (monster[mi]._uniqtype != 0) { |
|
|
|
|
for (d = 0; d < 8; d++) |
|
|
|
|
for (int d = 0; d < 8; d++) |
|
|
|
|
dead[nd]._deadData[d] = monster[mi].MType->Anims[MA_DEATH].Data[d]; |
|
|
|
|
dead[nd]._deadFrame = monster[mi].MType->Anims[MA_DEATH].Frames; |
|
|
|
|
dead[nd]._deadWidth = monster[mi].MType->width; |
|
|
|
|
@ -82,14 +81,11 @@ void AddDead(int dx, int dy, char dv, int ddir)
|
|
|
|
|
|
|
|
|
|
void SetDead() |
|
|
|
|
{ |
|
|
|
|
int i, mi; |
|
|
|
|
int dx, dy; |
|
|
|
|
|
|
|
|
|
for (i = 0; i < nummonsters; i++) { |
|
|
|
|
mi = monstactive[i]; |
|
|
|
|
for (int i = 0; i < nummonsters; i++) { |
|
|
|
|
int mi = monstactive[i]; |
|
|
|
|
if (monster[mi]._uniqtype != 0) { |
|
|
|
|
for (dx = 0; dx < MAXDUNX; dx++) { |
|
|
|
|
for (dy = 0; dy < MAXDUNY; dy++) { |
|
|
|
|
for (int dx = 0; dx < MAXDUNX; dx++) { |
|
|
|
|
for (int dy = 0; dy < MAXDUNY; dy++) { |
|
|
|
|
if ((dDead[dx][dy] & 0x1F) == monster[mi]._udeadval) |
|
|
|
|
ChangeLightXY(monster[mi].mlid, dx, dy); |
|
|
|
|
} |
|
|
|
|
|