1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2024-12-30 03:50:34 +00:00

shmup: fixed redundant and incorrect revival of mirror spirits

This commit is contained in:
Zeno Rogue 2020-12-25 06:10:12 +01:00
parent 1612b767b3
commit a614af8dbe

View File

@ -1829,12 +1829,10 @@ void moveBullet(monster *m, int delta) {
// Orb of Winter protects from fireballs // Orb of Winter protects from fireballs
if(m->type == moFireball && ((isPlayer(m2) && markOrb(itOrbWinter)) || m2->type == moWitchWinter)) if(m->type == moFireball && ((isPlayer(m2) && markOrb(itOrbWinter)) || m2->type == moWitchWinter))
continue; continue;
bool revive = m2->type == moMirrorSpirit && !m2->dead; int ms = mirrorspirits;
killMonster(m2, m->parent ? m->parent->type : moNone); killMonster(m2, m->get_parenttype());
if(revive && m2->dead) { if(mirrorspirits > ms) {
hr::kills[moMirrorSpirit]--;
multi::kills[cpid]--; multi::kills[cpid]--;
mirrorspirits++;
} }
if(m2->dead && m2->type == moAsteroid) { if(m2->dead && m2->type == moAsteroid) {
gainItem(itAsteroid); gainItem(itAsteroid);