From f005fa3c149f672cbe419956fb5c07b167c591b4 Mon Sep 17 00:00:00 2001 From: Marisa Kirisame Date: Mon, 19 Aug 2019 20:19:26 +0200 Subject: [PATCH] Another fix to something that can fail catastrophically if monsters spontaneously cease to exist in the middle of a DamageMobj call. Small adjustment to translocator module (hitbox uses master rather than target pointer), for safety. Removed some leftover sounds. --- sounds/AmmoSnd.ogg | Bin 7639 -> 0 bytes sounds/PulseFly.ogg | Bin 12077 -> 0 bytes zscript/translocator.zsc | 24 ++++++++++++------------ zscript/utcommon.zsc | 4 +++- 4 files changed, 15 insertions(+), 13 deletions(-) delete mode 100644 sounds/AmmoSnd.ogg delete mode 100644 sounds/PulseFly.ogg diff --git a/sounds/AmmoSnd.ogg b/sounds/AmmoSnd.ogg deleted file mode 100644 index b152af7b260238e4b4d156ebf90016a46164fb53..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7639 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 PA>Q)d#GScr0lyglp3_%= diff --git a/sounds/PulseFly.ogg b/sounds/PulseFly.ogg deleted file mode 100644 index 7b2d36eafe4284f52411892944449a5f1812fe7c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12077 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 D`p^*1 diff --git a/zscript/translocator.zsc b/zscript/translocator.zsc index 74713f4..01cd5b9 100644 --- a/zscript/translocator.zsc +++ b/zscript/translocator.zsc @@ -13,34 +13,34 @@ Class ModuleHitbox : Actor } override int DamageMobj( Actor inflictor, Actor source, int damage, Name mod, int flags, double angle ) { - if ( target ) + if ( master ) { - if ( inflictor ) target.vel += level.Vec3Diff(inflictor.pos,pos).unit()*damage*0.2; - else if ( source ) target.vel += level.Vec3Diff(source.pos,pos).unit()*damage*0.2; - target.vel.z = 5; + if ( inflictor ) master.vel += level.Vec3Diff(inflictor.pos,pos).unit()*damage*0.2; + else if ( source ) master.vel += level.Vec3Diff(source.pos,pos).unit()*damage*0.2; + master.vel.z = 5; } - if ( !target || (target.target && ((target.target == source) || target.target.isTeammate(source))) ) return 0; - target.bAMBUSH = true; + if ( !master || (master.target && ((master.target == source) || master.target.isTeammate(source))) ) return 0; + master.bAMBUSH = true; return 0; } override void Tick() { Super.Tick(); - if ( !target ) + if ( !master ) { Destroy(); return; } - SetOrigin(target.pos,true); - if ( target.bMISSILE ) return; + SetOrigin(master.pos,true); + if ( master.bMISSILE ) return; let bi = BlockThingsIterator.Create(self,32); while ( bi.Next() ) { - if ( !bi.Thing || (bi.Thing != target.target) ) continue; + if ( !bi.Thing || (bi.Thing != master.target) ) continue; if ( (Distance2D(bi.Thing)-bi.Thing.radius <= radius) && ((bi.Thing.pos.z <= pos.z+height) && (bi.Thing.pos.z+bi.Thing.height >= pos.z-height)) ) { A_PlaySound("misc/i_pkup"); - target.Destroy(); + master.Destroy(); return; } } @@ -149,7 +149,7 @@ Class TranslocatorModule : Actor return; } b = Spawn("ModuleHitbox",pos); - b.target = self; + b.master = self; A_PlaySound("transloc/hum",CHAN_VOICE,0.5,true,2.0); } diff --git a/zscript/utcommon.zsc b/zscript/utcommon.zsc index 45e4de4..345afc8 100644 --- a/zscript/utcommon.zsc +++ b/zscript/utcommon.zsc @@ -1974,7 +1974,7 @@ Class ShredCorpseHitbox : Actor override void Tick() { Super.Tick(); - if ( (!(target is 'UTPlayer') && !flak_corpsedamage) || !target || (target.Health > 0) || target.InStateSequence(target.CurState,target.FindState("XDeath")) ) + if ( (!(target is 'UTPlayer') && !flak_corpsedamage) || !target || (target.Health > 0) || target.InStateSequence(target.CurState,target.FindState("XDeath",true)) ) { Destroy(); return; @@ -1995,6 +1995,8 @@ Class ShredCorpseHitbox : Actor } override int DamageMobj( Actor inflictor, Actor source, int damage, Name mod, int flags, double angle ) { + // somehow target can spontaneously stop existing while this is happening + if ( !target ) return 0; if ( (target is 'UTPlayer') && (mod == 'Zapped') && (target.sprite == target.GetSpriteIndex('PLD9')) ) { // keep the zapping action on