diff --git a/brightmaps/deface/defaced_MARBFAC2.png b/brightmaps/deface/defaced_MARBFAC2.png new file mode 100644 index 000000000..63ca0f321 Binary files /dev/null and b/brightmaps/deface/defaced_MARBFAC2.png differ diff --git a/brightmaps/deface/defaced_MARBFAC3.png b/brightmaps/deface/defaced_MARBFAC3.png new file mode 100644 index 000000000..f4da4a3ae Binary files /dev/null and b/brightmaps/deface/defaced_MARBFAC3.png differ diff --git a/brightmaps/deface/defaced_MARBFAC4.png b/brightmaps/deface/defaced_MARBFAC4.png new file mode 100644 index 000000000..a19b3def7 Binary files /dev/null and b/brightmaps/deface/defaced_MARBFAC4.png differ diff --git a/brightmaps/deface/defaced_MARBFACE.png b/brightmaps/deface/defaced_MARBFACE.png new file mode 100644 index 000000000..5d27fcccf Binary files /dev/null and b/brightmaps/deface/defaced_MARBFACE.png differ diff --git a/brightmaps/deface/defaced_ZZWOLF12.png b/brightmaps/deface/defaced_ZZWOLF12.png new file mode 100644 index 000000000..8b1cddf25 Binary files /dev/null and b/brightmaps/deface/defaced_ZZWOLF12.png differ diff --git a/brightmaps/deface/defaced_ZZWOLF13.png b/brightmaps/deface/defaced_ZZWOLF13.png new file mode 100644 index 000000000..1209716e5 Binary files /dev/null and b/brightmaps/deface/defaced_ZZWOLF13.png differ diff --git a/brightmaps/deface/defaced_ZZWOLF2.png b/brightmaps/deface/defaced_ZZWOLF2.png new file mode 100644 index 000000000..5a8c2581e Binary files /dev/null and b/brightmaps/deface/defaced_ZZWOLF2.png differ diff --git a/brightmaps/deface/defaced_ZZWOLF3.png b/brightmaps/deface/defaced_ZZWOLF3.png new file mode 100644 index 000000000..62cdf91b0 Binary files /dev/null and b/brightmaps/deface/defaced_ZZWOLF3.png differ diff --git a/brightmaps/deface/defaced_ZZWOLF4.png b/brightmaps/deface/defaced_ZZWOLF4.png new file mode 100644 index 000000000..bee2d81ce Binary files /dev/null and b/brightmaps/deface/defaced_ZZWOLF4.png differ diff --git a/brightmaps/deface/defaced_ZZWOLF6.png b/brightmaps/deface/defaced_ZZWOLF6.png new file mode 100644 index 000000000..43da8154c Binary files /dev/null and b/brightmaps/deface/defaced_ZZWOLF6.png differ diff --git a/brightmaps/deface/defaced_ZZWOLF7.png b/brightmaps/deface/defaced_ZZWOLF7.png new file mode 100644 index 000000000..ece684363 Binary files /dev/null and b/brightmaps/deface/defaced_ZZWOLF7.png differ diff --git a/gldefs.misc b/gldefs.misc index 0fe04ecc0..bf3e39759 100644 --- a/gldefs.misc +++ b/gldefs.misc @@ -32,3 +32,47 @@ HardwareShader Sprite "MBRNB0" { Shader "shaders/glsl/Whew.fp" } +Brightmap texture "textures/deface/defaced_MARBFAC2.png" +{ + Map "brightmaps/deface/defaced_MARBFAC2.png" +} +Brightmap texture "textures/deface/defaced_MARBFAC3.png" +{ + Map "brightmaps/deface/defaced_MARBFAC3.png" +} +Brightmap texture "textures/deface/defaced_MARBFAC4.png" +{ + Map "brightmaps/deface/defaced_MARBFAC4.png" +} +Brightmap texture "textures/deface/defaced_MARBFACE.png" +{ + Map "brightmaps/deface/defaced_MARBFACE.png" +} +Brightmap texture "textures/deface/defaced_ZZWOLF2.png" +{ + Map "brightmaps/deface/defaced_ZZWOLF2.png" +} +Brightmap texture "textures/deface/defaced_ZZWOLF3.png" +{ + Map "brightmaps/deface/defaced_ZZWOLF3.png" +} +Brightmap texture "textures/deface/defaced_ZZWOLF4.png" +{ + Map "brightmaps/deface/defaced_ZZWOLF4.png" +} +Brightmap texture "textures/deface/defaced_ZZWOLF6.png" +{ + Map "brightmaps/deface/defaced_ZZWOLF6.png" +} +Brightmap texture "textures/deface/defaced_ZZWOLF7.png" +{ + Map "brightmaps/deface/defaced_ZZWOLF7.png" +} +Brightmap texture "textures/deface/defaced_ZZWOLF12.png" +{ + Map "brightmaps/deface/defaced_ZZWOLF12.png" +} +Brightmap texture "textures/deface/defaced_ZZWOLF13.png" +{ + Map "brightmaps/deface/defaced_ZZWOLF13.png" +} diff --git a/language.version b/language.version index 9f1e2ccd8..ec94e7b8e 100644 --- a/language.version +++ b/language.version @@ -1,3 +1,3 @@ [default] -SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r390 \cu(Sun 21 Mar 01:54:37 CET 2021)\c-"; -SWWM_SHORTVER="\cw0.9.11b-pre r390 \cu(2021-03-21 01:54:37)\c-"; +SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r392 \cu(Sun 21 Mar 03:35:14 CET 2021)\c-"; +SWWM_SHORTVER="\cw0.9.11b-pre r392 \cu(2021-03-21 03:35:14)\c-"; diff --git a/textures/deface/defaced_MARBFAC2.png b/textures/deface/defaced_MARBFAC2.png new file mode 100644 index 000000000..a63c4cdb6 Binary files /dev/null and b/textures/deface/defaced_MARBFAC2.png differ diff --git a/textures/deface/defaced_MARBFAC3.png b/textures/deface/defaced_MARBFAC3.png new file mode 100644 index 000000000..0898e6199 Binary files /dev/null and b/textures/deface/defaced_MARBFAC3.png differ diff --git a/textures/deface/defaced_MARBFAC4.png b/textures/deface/defaced_MARBFAC4.png new file mode 100644 index 000000000..34caf5689 Binary files /dev/null and b/textures/deface/defaced_MARBFAC4.png differ diff --git a/textures/deface/defaced_MARBFACE.png b/textures/deface/defaced_MARBFACE.png new file mode 100644 index 000000000..9f5abb9a1 Binary files /dev/null and b/textures/deface/defaced_MARBFACE.png differ diff --git a/textures/deface/defaced_ZZWOLF12.png b/textures/deface/defaced_ZZWOLF12.png new file mode 100644 index 000000000..d0db8c7c8 Binary files /dev/null and b/textures/deface/defaced_ZZWOLF12.png differ diff --git a/textures/deface/defaced_ZZWOLF13.png b/textures/deface/defaced_ZZWOLF13.png new file mode 100644 index 000000000..161d9d0fa Binary files /dev/null and b/textures/deface/defaced_ZZWOLF13.png differ diff --git a/textures/deface/defaced_ZZWOLF2.png b/textures/deface/defaced_ZZWOLF2.png new file mode 100644 index 000000000..630d7c995 Binary files /dev/null and b/textures/deface/defaced_ZZWOLF2.png differ diff --git a/textures/deface/defaced_ZZWOLF3.png b/textures/deface/defaced_ZZWOLF3.png new file mode 100644 index 000000000..d51e71030 Binary files /dev/null and b/textures/deface/defaced_ZZWOLF3.png differ diff --git a/textures/deface/defaced_ZZWOLF4.png b/textures/deface/defaced_ZZWOLF4.png new file mode 100644 index 000000000..d7788325d Binary files /dev/null and b/textures/deface/defaced_ZZWOLF4.png differ diff --git a/textures/deface/defaced_ZZWOLF6.png b/textures/deface/defaced_ZZWOLF6.png new file mode 100644 index 000000000..02e7cfe21 Binary files /dev/null and b/textures/deface/defaced_ZZWOLF6.png differ diff --git a/textures/deface/defaced_ZZWOLF7.png b/textures/deface/defaced_ZZWOLF7.png new file mode 100644 index 000000000..b263ba757 Binary files /dev/null and b/textures/deface/defaced_ZZWOLF7.png differ diff --git a/zscript/handler/swwm_handler_worldthings.zsc b/zscript/handler/swwm_handler_worldthings.zsc index 07c72bc06..e116d4c7a 100644 --- a/zscript/handler/swwm_handler_worldthings.zsc +++ b/zscript/handler/swwm_handler_worldthings.zsc @@ -343,7 +343,7 @@ extend Class SWWMHandler SWWMShadow.Track(e.Thing); } // Ynykron vortex optimization (faster than a thinker iterator) - if ( e.Thing.bSHOOTABLE || e.Thing.bMISSILE || (e.Thing is 'Inventory') ) + if ( e.Thing.bSHOOTABLE || (e.Thing.bMISSILE && !e.Thing.IsZeroDamage()) || (e.Thing is 'Inventory') ) SuckableActors.Push(e.Thing); // vanilla blood color changes if ( (e.Thing.GetClass() == "BaronOfHell") || (e.Thing.GetClass() == "HellKnight") || (e.Thing.GetClass() == "Bishop") || (e.Thing.GetClass() == "Korax") ) diff --git a/zscript/swwm_blod.zsc b/zscript/swwm_blod.zsc index 00ef1572c..6e948bfad 100644 --- a/zscript/swwm_blod.zsc +++ b/zscript/swwm_blod.zsc @@ -244,6 +244,7 @@ Class mkBloodDrop : Actor } master.tracer = self; } + bMISSILE = false; dead = true; if ( d.Hit3DFloor ) { @@ -275,6 +276,7 @@ Class mkBloodDrop : Actor // hit the ceiling SetOrigin(d.HitLocation-(0,0,1),true); A_StartSound("misc/blooddrop",volume:.1); + bMISSILE = false; dead = true; onceiling = true; if ( d.Hit3DFloor ) diff --git a/zscript/swwm_gesture_fx.zsc b/zscript/swwm_gesture_fx.zsc index f8d4be9fa..9dcf2bb51 100644 --- a/zscript/swwm_gesture_fx.zsc +++ b/zscript/swwm_gesture_fx.zsc @@ -220,7 +220,7 @@ Class LoveHeart : Actor A_AttachLight('LOVELIGHT',DynamicLight.PointLight,Color(255,176,208),80,80,DYNAMICLIGHT.LF_ATTENUATE); special2 = 25; } - void CheckNaziRemove() + void CheckDefaceTexture() { TextureID HitTexture; Line HitLine; @@ -291,7 +291,7 @@ Class LoveHeart : Actor } bool remove; TextureID replacewith; - [remove, replacewith] = SWWMUtility.NaziTexRemover(HitTexture); + [remove, replacewith] = SWWMUtility.DefaceTexture(HitTexture); if ( !remove ) return; A_StartSound("bestsound",CHAN_ITEMEXTRA,CHANF_OVERLAP); if ( HitLine ) @@ -325,7 +325,7 @@ Class LoveHeart : Actor } action void A_HeartBurst() { - invoker.CheckNaziRemove(); + invoker.CheckDefaceTexture(); // use line if ( BlockingLine ) { diff --git a/zscript/swwm_player.zsc b/zscript/swwm_player.zsc index 16ee5612f..e326adfbe 100644 --- a/zscript/swwm_player.zsc +++ b/zscript/swwm_player.zsc @@ -501,7 +501,7 @@ Class Demolitionist : PlayerPawn SWWMItemSense.Spawn(self,i); } } - void CheckNaziRemove() + void CheckDefaceTexture() { if ( player.usedown ) return; @@ -510,7 +510,7 @@ Class Demolitionist : PlayerPawn if ( d.HitType == TRACE_HitNone ) return; bool remove; TextureID replacewith; - [remove, replacewith] = SWWMUtility.NaziTexRemover(d.HitTexture); + [remove, replacewith] = SWWMUtility.DefaceTexture(d.HitTexture); if ( !remove ) return; player.usedown = true; A_StartSound("bestsound",CHAN_ITEMEXTRA,CHANF_OVERLAP); @@ -711,7 +711,7 @@ Class Demolitionist : PlayerPawn if ( player && (player.mo == self) && (player.playerstate != PST_DEAD) && (player.cmd.buttons&BT_USE) ) { if ( !player.usedown ) lastuse = gametic; - CheckNaziRemove(); + CheckDefaceTexture(); } Super.PlayerThink(); if ( (gametic == lastuse) && IsActorPlayingSound(CHAN_VOICE,"*usefail") ) diff --git a/zscript/utility/swwm_utility.zsc b/zscript/utility/swwm_utility.zsc index a9bd70812..cb4d6c6e1 100644 --- a/zscript/utility/swwm_utility.zsc +++ b/zscript/utility/swwm_utility.zsc @@ -1567,15 +1567,31 @@ Class SWWMUtility return false; } - static bool, TextureID NaziTexRemover( TextureID checkme ) + static bool, TextureID DefaceTexture( TextureID checkme ) { String tn = TexMan.GetName(checkme); - if ( (tn ~== "ZZWOLF2") || (tn ~== "ZZWOLF3") || (tn ~== "ZZWOLF4") ) - return true, TexMan.CheckForTexture("ZZWOLF1",TexMan.Type_Any); - if ( (tn ~== "ZZWOLF6") || (tn ~== "ZZWOLF7") ) - return true, TexMan.CheckForTexture("ZZWOLF5",TexMan.Type_Any); - if ( (tn ~== "ZZWOLF12") || (tn ~== "ZZWOLF13") ) - return true, TexMan.CheckForTexture("ZZWOLF11",TexMan.Type_Any); + if ( (tn ~== "MARBFAC2") ) + return true, TexMan.CheckForTexture("textures/deface/defaced_MARBFAC2.png",TexMan.Type_Any); + if ( (tn ~== "MARBFAC3") ) + return true, TexMan.CheckForTexture("textures/deface/defaced_MARBFAC3.png",TexMan.Type_Any); + if ( (tn ~== "MARBFAC4") ) + return true, TexMan.CheckForTexture("textures/deface/defaced_MARBFAC4.png",TexMan.Type_Any); + if ( (tn ~== "MARBFACE") ) + return true, TexMan.CheckForTexture("textures/deface/defaced_MARBFACE.png",TexMan.Type_Any); + if ( (tn ~== "ZZWOLF2") ) + return true, TexMan.CheckForTexture("textures/deface/defaced_ZZWOLF2.png",TexMan.Type_Any); + if ( (tn ~== "ZZWOLF3") ) + return true, TexMan.CheckForTexture("textures/deface/defaced_ZZWOLF3.png",TexMan.Type_Any); + if ( (tn ~== "ZZWOLF4") ) + return true, TexMan.CheckForTexture("textures/deface/defaced_ZZWOLF4.png",TexMan.Type_Any); + if ( (tn ~== "ZZWOLF6") ) + return true, TexMan.CheckForTexture("textures/deface/defaced_ZZWOLF6.png",TexMan.Type_Any); + if ( (tn ~== "ZZWOLF7") ) + return true, TexMan.CheckForTexture("textures/deface/defaced_ZZWOLF7.png",TexMan.Type_Any); + if ( (tn ~== "ZZWOLF12") ) + return true, TexMan.CheckForTexture("textures/deface/defaced_ZZWOLF12.png",TexMan.Type_Any); + if ( (tn ~== "ZZWOLF13") ) + return true, TexMan.CheckForTexture("textures/deface/defaced_ZZWOLF13.png",TexMan.Type_Any); return false, checkme; }