mirror of
https://github.com/ZDoom/gzdoom.git
synced 2024-11-22 20:21:26 +00:00
- fixed edge case where both Mancubus and Arachnotron have the same replacement and trigger a boss action.
This commit is contained in:
parent
36189027b0
commit
148e7cd361
1 changed files with 6 additions and 2 deletions
|
@ -3153,13 +3153,17 @@ void A_BossDeath(AActor *self)
|
||||||
}
|
}
|
||||||
if (Level->flags & LEVEL_MAP07SPECIAL)
|
if (Level->flags & LEVEL_MAP07SPECIAL)
|
||||||
{
|
{
|
||||||
if (type == NAME_Fatso)
|
PClassActor * fatso = PClass::FindActor(NAME_Fatso);
|
||||||
|
PClassActor * arachnotron = PClass::FindActor(NAME_Arachnotron);
|
||||||
|
bool samereplacement = (type == NAME_Fatso || type == NAME_Arachnotron) && fatso && arachnotron && fatso->GetReplacement(Level) == arachnotron->GetReplacement(Level);
|
||||||
|
|
||||||
|
if (type == NAME_Fatso || samereplacement)
|
||||||
{
|
{
|
||||||
Level->EV_DoFloor (DFloor::floorLowerToLowest, NULL, 666, 1., 0, -1, 0, false);
|
Level->EV_DoFloor (DFloor::floorLowerToLowest, NULL, 666, 1., 0, -1, 0, false);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (type == NAME_Arachnotron)
|
if (type == NAME_Arachnotron || samereplacement)
|
||||||
{
|
{
|
||||||
Level->EV_DoFloor (DFloor::floorRaiseByTexture, NULL, 667, 1., 0, -1, 0, false);
|
Level->EV_DoFloor (DFloor::floorRaiseByTexture, NULL, 667, 1., 0, -1, 0, false);
|
||||||
return;
|
return;
|
||||||
|
|
Loading…
Reference in a new issue