diff --git a/language.version b/language.version index 801d02a66..72e24af85 100644 --- a/language.version +++ b/language.version @@ -1,2 +1,2 @@ [default] -SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r755 \cu(Fri 15 Jan 18:16:13 CET 2021)"; +SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r756 \cu(Fri 15 Jan 23:03:25 CET 2021)"; diff --git a/zscript/swwm_danmaku.zsc b/zscript/swwm_danmaku.zsc index aab724874..1a456699f 100644 --- a/zscript/swwm_danmaku.zsc +++ b/zscript/swwm_danmaku.zsc @@ -277,6 +277,7 @@ Class EvisceratorChunk : Actor if ( (HitNormal dot RealHitNormal) < 0 ) HitNormal *= -.5; vel = FRandom[Eviscerator](.8,.95)*((vel dot HitNormal)*HitNormal*(FRandom[Eviscerator](-1.8,-1.))+vel); bHITOWNER = true; + lasthit = null; if ( (vel.length() > 20) && !Random[Eviscerator](0,2) ) { let l = Spawn("ChunkImpact",pos); @@ -353,6 +354,14 @@ Class EvisceratorChunk : Actor vel *= .65; // reduce velocity as it rips return 1; } + // HACK + if ( !victim.bNOBLOOD && !victim.bDORMANT && !victim.bINVULNERABLE ) ExplodeMissile(null,victim); + else + { + BlockingMobj = victim; + A_HandleBounce(); + lasthit = victim; + } return -1; } States