Fixed missile control routine; Improved ID_CROCODILE_GOD;

This commit is contained in:
MontyTRC89 2021-08-20 16:03:53 +02:00
parent 4991da66f6
commit db15fce51e
3 changed files with 10 additions and 30 deletions

View file

@ -298,26 +298,15 @@ namespace ten::entities::all
}
else
{
int shockwaveValue = 0;
byte r, g, b, life;
if (fx->flag1)
{
if (fx->flag1 == 3 || fx->flag1 == 4)
{
shockwaveValue = 268451968;
r = 128;
g = 64;
b = 0;
life = 16;
TriggerShockwave(&fx->pos, 32, 160, 64, 128, 64, 0, 16, 0, 0);
}
else if (fx->flag1 == 5)
{
shockwaveValue = 276848640;
r = 0;
g = 96;
b = 128;
life = 16;
TriggerShockwave(&fx->pos, 32, 160, 64, 0, 96, 128, 16, 0, 0);
}
else
{
@ -332,27 +321,18 @@ namespace ten::entities::all
fx->pos.yPos += 256;
TriggerShockwave(&fx->pos, 48, 240, 48, 0, 112, 128, 16, 0, 2);
}
}
else
{
shockwaveValue = 276856832;
r = 0;
g = 128;
b = 128;
life = 16;
TriggerShockwave(&fx->pos, 32, 160, 64, 0, 128, 128, 16, 0, 0);
}
}
}
else
{
shockwaveValue = 268468288;
r = 64;
g = 128;
b = 0;
life = 16;
TriggerShockwave(&fx->pos, 32, 160, 64, 64, 128, 0, 16, 0, 0);
}
TriggerShockwave(&fx->pos, 32, 160, 64, r, g, b, life, 0, 0);
}
KillEffect(fxNum);

View file

@ -30,7 +30,7 @@ namespace ten::entities::tr4
fx->roomNumber = roomNumber;
fx->counter = 16 * counter + 15;
fx->objectNumber = ID_ENERGY_BUBBLES;
fx->frameNumber = Objects[fx->objectNumber].meshIndex + 5 * 2;
fx->frameNumber = Objects[fx->objectNumber].meshIndex + 5;
fx->speed = (GetRandomControl() & 0x1F) + 96;
fx->flag1 = 6;
}
@ -107,7 +107,7 @@ namespace ten::entities::tr4
static bool ShootFrame(ITEM_INFO* item)
{
short frameNumber = (item->frameNumber - g_Level.Anims[item->objectNumber].frameBase);
short frameNumber = (item->frameNumber - g_Level.Anims[item->animNumber].frameBase);
if (frameNumber == 45
//|| frameNumber == 50
//|| frameNumber == 55
@ -281,7 +281,7 @@ namespace ten::entities::tr4
break;
case STATE_MUTANT_SHOOT:
frameNumber = (item->frameNumber - g_Level.Anims[item->objectNumber].frameBase);
frameNumber = (item->frameNumber - g_Level.Anims[item->animNumber].frameBase);
if (frameNumber >= 94 && frameNumber <= 96)
{
PHD_3DPOS src;
@ -304,7 +304,7 @@ namespace ten::entities::tr4
break;
case STATE_MUTANT_LOCUST1:
frameNumber = (item->frameNumber - g_Level.Anims[item->objectNumber].frameBase);
frameNumber = (item->frameNumber - g_Level.Anims[item->animNumber].frameBase);
if (frameNumber >= 60 && frameNumber <= 120)
ten::entities::tr4::SpawnLocust(item);
break;

View file

@ -109,7 +109,7 @@ enum GAME_OBJECT_ID : short
ID_LION,
ID_DOBERMAN,
ID_HAMMERHEAD, // TR4 - OK
ID_CROCODILE_GOD, // TR4 Citadel Gate Mutant
ID_CROCODILE_GOD, // TR4 - OK (needs accurate testing)
ID_LOCUSTS_EMITTER, // TR4 - OK
/* Humans */