A simple fix for the Lost Soul issue:
Code: Select all
Pain:
TNT1 a 0 a_jumpif(CallACS("PinkyToggle")==0,"+2")
TNT1 a 0 A_JumpIfHealthLower(55,3) // Not sure if this jump value is right since it's been a bit since I've used decorate
LSTP A 3 Bright
LSTP B 3 Bright A_Pain
Goto See
TNT1 A 0 A_DamageSelf(10000, "Massacre", DMSS_KILL)
Goto Death // Hypothetically this shouldn't matter but just in case
It might need a few tweaks, but this will still only fix half the problem. Anything with the
SKULLFLY flag cannot enter its Pain state while it has it, so charging Lost Souls will be immune to this check unless you add the health check every tic the moment A_SkullAttack is called (well, it doesn't have to be every tic, but that will be the most responsive). Given how prone Lost Souls are to getting stuck in their attack due to the original Doom's buggy handling of charging, this issue is going to show up a lot. I agree with LOL_DUDE here, changing the health value on spawn is a better solution, even if it's permanent for any enemy already spawned in with the option on.