More work towards Legacy of Rust support (with caveats).

As of this commit, do not consider the experience when playing that new
expansion to be complete. I've only partially written some of the mission texts
and rudimentarily enhanced some boss fights.

Currently there is one major limitation in that the intermission texts cannot
be replaced, as they're hardcoded inside the UMAPINFO. I don't know if I can
work around that.
This commit is contained in:
Mari the Deer 2025-08-20 15:50:07 +02:00
commit 2aa0ea4680
16 changed files with 414 additions and 43 deletions

View file

@ -80,7 +80,8 @@ extend Class SWWMHandler
else if ( SWWMUtility.IsEviternity() )
{
// we have to do some heavy lifting here because episodes don't match clusters
if ( level.levelnum <= 5 ) clust = 1;
if ( level.levelnum <= 0 ) {}
else if ( level.levelnum <= 5 ) clust = 1;
else if ( level.levelnum <= 10 ) clust = 2;
else if ( level.levelnum <= 15 ) clust = 3;
else if ( level.levelnum <= 20 ) clust = 4;
@ -93,6 +94,15 @@ extend Class SWWMHandler
else clust = 8;
}
}
else if ( SWWMUtility.IsLegacyOfRust() )
{
// clusters must be manually assigned
if ( level.levelnum <= 0 ) {}
if ( (level.levelnum <= 7) || (level.levelnum == 15) ) clust = 28;
else if ( (level.levelnum <= 14) || (level.levelnum == 16) ) clust = 29;
if ( (level.levelnum == 15) || (level.levelnum == 16) )
secret = true;
}
else
{
if ( (gameinfo.gametype&GAME_DOOM) && ((level.cluster == 9) || (level.cluster == 10)) )