Don't use inventory tokens for mapper-toggleable store/revive. Tokens are icky.

This commit is contained in:
Mari the Deer 2023-02-18 11:54:30 +01:00
commit a2855dfc9a
9 changed files with 31 additions and 32 deletions

View file

@ -123,6 +123,8 @@ Class Demolitionist : PlayerPawn
double bobtime, oldbobtime, oldbob;
SWWMHandler hnd;
Default
{
Tag "$T_DEMOLITIONIST";
@ -363,7 +365,7 @@ Class Demolitionist : PlayerPawn
damage = 0;
if ( (swwm_strictuntouchable >= 2) && (damage > 0) && player )
{
let hnd = SWWMHandler(EventHandler.Find("SWWMHandler"));
if ( !hnd ) hnd = SWWMHandler(EventHandler.Find("SWWMHandler"));
if ( hnd ) hnd.tookdamage[PlayerNumber()] = true;
}
if ( (mod == 'Crush') && player && (player.mo == self) )
@ -559,7 +561,7 @@ Class Demolitionist : PlayerPawn
if ( !player ) return false;
int score = 100;
// last secret (this is called before counting it up, so have to subtract)
let hnd = SWWMHandler(EventHandler.Find("SWWMHandler"));
if ( !hnd ) hnd = SWWMHandler(EventHandler.Find("SWWMHandler"));
if ( !deathmatch && !(gameinfo.gametype&GAME_Hexen) && (level.found_secrets == level.total_secrets-1) && (!hnd || !hnd.allsecrets) )
{
if ( hnd ) hnd.allsecrets = true;
@ -718,7 +720,7 @@ Class Demolitionist : PlayerPawn
}
}
// re-add ourselves to the "suckable list" (otherwise the Ynykron Singularity won't hurt us)
let hnd = SWWMHandler(EventHandler.Find("SWWMHandler"));
if ( !hnd ) hnd = SWWMHandler(EventHandler.Find("SWWMHandler"));
if ( hnd && (hnd.SuckableActors.Find(self) >= hnd.SuckableActors.Size()) )
hnd.SuckableActors.Push(self);
}