Eviternity 2 changed some monsters.

This commit is contained in:
Mari the Deer 2024-09-30 21:24:34 +02:00
commit d3ce281abb
10 changed files with 148 additions and 93 deletions

View file

@ -99,8 +99,8 @@ extend Class SWWMHandler
ui Font mSmallFont, mTinyFont;
bool archangelus_zapped; // skips second phase dialogue
bool eviternatus_zapped; // bonus dlg for ynykron survival
bool eviternatus_postzap; // so the bonus dlg doesn't play twice
bool origin_zapped; // bonus dlg for ynykron survival
bool origin_postzap; // so the bonus dlg doesn't play twice
enum EVanillaMap
{
@ -471,15 +471,15 @@ extend Class SWWMHandler
}
else if ( bossmap == MAP_EVIIMAP30 )
{
if ( e.Thing.GetClassName() == "EviternatusAntaSpawner" )
if ( (e.Thing.GetClassName() == "The_Origin_Phase_1_Spawner") || (e.Thing.GetClassName() == "The_Absolute_Origin_Phase_1_Spawner") )
{
bossactors.Push(e.Thing);
bossviewactor = e.Thing;
bosstag = "$BT_EVITERNATUS";
bosstag = "$BT_ORIGIN";
// hack to avoid "all clear" between phases
level.total_monsters += 3;
}
else if ( e.Thing.GetClassName() == "EviternatusAnta" )
else if ( (e.Thing.GetClassName() == "The_Origin_Phase_1") || (e.Thing.GetClassName() == "The_Absolute_Origin_Phase_1") )
{
// first phase
bossactors.Clear();
@ -487,13 +487,13 @@ extend Class SWWMHandler
initialized = false;
bossactors.Push(e.Thing);
e.Thing.StartHealth = e.Thing.Health *= 5;
bosstag = "$BT_EVITERNATUS";
bosstag = "$BT_ORIGIN";
e.Thing.GiveInventory('BossMarker',1);
e.Thing.GiveInventory('EndgameBossMarker',1);
// undo the hack (part 1)
level.total_monsters--;
}
else if ( e.Thing.GetClassName() == "EviternatusBete" )
else if ( (e.Thing.GetClassName() == "The_Origin_Phase_2") || (e.Thing.GetClassName() == "The_Absolute_Origin_Phase_2") )
{
// second phase
bossactors.Clear();
@ -501,19 +501,19 @@ extend Class SWWMHandler
initialized = false;
bossactors.Push(e.Thing);
e.Thing.StartHealth = e.Thing.Health *= 5;
bosstag = "$BT_EVITERNATUS";
bosstag = "$BT_ORIGIN";
e.Thing.GiveInventory('BossMarker',1);
e.Thing.GiveInventory('EndgameBossMarker',1);
if ( eviternatus_zapped )
if ( origin_zapped )
{
eviternatus_postzap = true;
origin_postzap = true;
SendInterfaceEvent(consoleplayer,"swwmsetdialogue.EV2N");
}
else SendInterfaceEvent(consoleplayer,"swwmsetdialogue.EV2L");
// undo the hack (part 2)
level.total_monsters--;
}
else if ( e.Thing.GetClassName() == "EviternatusCeph" )
else if ( (e.Thing.GetClassName() == "The_Origin_Phase_3") || (e.Thing.GetClassName() == "The_Absolute_Origin_Phase_3") )
{
// third phase
bossactors.Clear();
@ -521,12 +521,12 @@ extend Class SWWMHandler
initialized = false;
bossactors.Push(e.Thing);
e.Thing.StartHealth = e.Thing.Health *= 5;
bosstag = "$BT_EVITERNATUS";
bosstag = "$BT_ORIGIN";
e.Thing.GiveInventory('BossMarker',1);
e.Thing.GiveInventory('EndgameBossMarker',1);
if ( eviternatus_zapped )
if ( origin_zapped )
{
if ( eviternatus_postzap )
if ( origin_postzap )
SendInterfaceEvent(consoleplayer,"swwmsetdialogue.EV2O");
else SendInterfaceEvent(consoleplayer,"swwmsetdialogue.EV2N");
}
@ -581,12 +581,12 @@ extend Class SWWMHandler
else if ( bossmap == MAP_EVIIMAP30 )
{
highesttic = gametic;
if ( a.GetClassName() == "EviternatusAnta" )
lastcombat = AddOneliner("eviternatus1",1,40);
else if ( a.GetClassName() == "EviternatusBete" )
lastcombat = AddOneliner("eviternatus2",1,40);
else if ( a.GetClassName() == "EviternatusCeph" )
lastcombat = AddOneliner("eviternatus3",1,40);
if ( (a.GetClassName() == "The_Origin_Phase_1") || (a.GetClassName() == "The_Absolute_Origin_Phase_1") )
lastcombat = AddOneliner("origin1",1,40);
else if ( (a.GetClassName() == "The_Origin_Phase_2") || (a.GetClassName() == "The_Absolute_Origin_Phase_2") )
lastcombat = AddOneliner("origin2",1,40);
else if ( (a.GetClassName() == "The_Origin_Phase_3") || (a.GetClassName() == "The_Absolute_Origin_Phase_3") )
lastcombat = AddOneliner("origin3",1,40);
}
break;
}