Fix for laser trap not killing some enemies.

This commit is contained in:
Steve 2018-03-11 07:51:29 +00:00
parent 60261932b0
commit 04416e52ab
1 changed files with 25 additions and 26 deletions

View File

@ -123,24 +123,32 @@ static void touch(Entity *other)
{ {
other->dx = rrnd(-12, 12); other->dx = rrnd(-12, 12);
other->dy = rrnd(-8, 0); other->dy = rrnd(-8, 0);
}
if (t->offTime != 0) if (t->offTime != 0)
{ {
swapSelf(other); swapSelf(other);
other->applyDamage((int) (other->healthMax / 4)); other->applyDamage((int) (other->healthMax / 4));
swapSelf(other); swapSelf(other);
} }
else else
{ {
/* instant kill */ /* instant kill */
swapSelf(other); swapSelf(other);
other->applyDamage((int) other->health); other->applyDamage((int) other->health);
swapSelf(other); swapSelf(other);
} }
playBattleSound(SND_FLESH_HIT, other->uniqueId % MAX_SND_CHANNELS, other->x, other->y); playBattleSound(SND_FLESH_HIT, other->uniqueId % MAX_SND_CHANNELS, other->x, other->y);
playBattleSound(SND_ELECTRIC_HIT, self->uniqueId % MAX_SND_CHANNELS, self->x, self->y);
playBattleSound(SND_ELECTRIC_HIT, self->uniqueId % MAX_SND_CHANNELS, self->x, self->y); if (other->flags & EF_EXPLODES)
{
addSparkParticles(t->x, t->y);
}
else
{
addSmallFleshChunk(t->x, t->y);
} }
if (other == (Entity*)world.bob && world.bob->stunTimer == 0) if (other == (Entity*)world.bob && world.bob->stunTimer == 0)
@ -148,15 +156,6 @@ static void touch(Entity *other)
stunBob(); stunBob();
} }
} }
if (other->flags & EF_EXPLODES)
{
addSparkParticles(t->x, t->y);
}
else
{
addSmallFleshChunk(t->x, t->y);
}
} }
} }