From e980917c84d9c4fd7c06896fde52aa94b210dab3 Mon Sep 17 00:00:00 2001 From: UndeadZeratul Date: Mon, 17 Jul 2023 20:23:28 -0500 Subject: [PATCH 1/3] Fix SNDINFO paths --- SNDINFO.majestic | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/SNDINFO.majestic b/SNDINFO.majestic index 20874c2..ac7c33a 100644 --- a/SNDINFO.majestic +++ b/SNDINFO.majestic @@ -1,8 +1,8 @@ -Majestic/Fire "Sounds/MajesticFire.ogg" -Majestic/MagOut "Sounds/MajesticMagOut.wav" -Majestic/MagIn "Sounds/MajesticMagIn.wav" -Majestic/Eject "Sounds/MajesticMagEject.wav" -Majestic/Charge "Sounds/MajesticCharge.ogg" -Majestic/Hammer "Sounds/MajesticHammer.wav" -Majestic/BatteryOut "Sounds/MajesticBatteryOut.ogg" -Majestic/BatteryIn "Sounds/MajesticBatteryIn.wav" \ No newline at end of file +Majestic/Fire "Sounds/Majestic/MajesticFire.ogg" +Majestic/MagOut "Sounds/Majestic/MajesticMagOut.wav" +Majestic/MagIn "Sounds/Majestic/MajesticMagIn.wav" +Majestic/Eject "Sounds/Majestic/MajesticMagEject.wav" +Majestic/Charge "Sounds/Majestic/MajesticCharge.ogg" +Majestic/Hammer "Sounds/Majestic/MajesticHammer.wav" +Majestic/BatteryOut "Sounds/Majestic/MajesticBatteryOut.ogg" +Majestic/BatteryIn "Sounds/Majestic/MajesticBatteryIn.wav" \ No newline at end of file From 1b9dac7e3ec7929a2df567e4a326fe2cab558f18 Mon Sep 17 00:00:00 2001 From: UndeadZeratul Date: Mon, 17 Jul 2023 21:53:57 -0500 Subject: [PATCH 2/3] Fix Majestic Animation Frames Somehow these got mixed up between the old ZIPs, the maintained git repos, and here... Not sure what happened, but these should be fixed now --- TEXTURES.majestic | 64 ++++++++++++++---- patches/Majestic/{MJSTCGE0.png => MJCFA0.png} | Bin patches/Majestic/{MJSTCGA0.png => MJCGA0.png} | Bin patches/Majestic/{MJSTCGB0.png => MJCGB0.png} | Bin patches/Majestic/{MJSTCGC0.png => MJCGC0.png} | Bin patches/Majestic/{MJSTCGD0.png => MJCGD0.png} | Bin 6 files changed, 51 insertions(+), 13 deletions(-) rename patches/Majestic/{MJSTCGE0.png => MJCFA0.png} (100%) rename patches/Majestic/{MJSTCGA0.png => MJCGA0.png} (100%) rename patches/Majestic/{MJSTCGB0.png => MJCGB0.png} (100%) rename patches/Majestic/{MJSTCGC0.png => MJCGC0.png} (100%) rename patches/Majestic/{MJSTCGD0.png => MJCGD0.png} (100%) diff --git a/TEXTURES.majestic b/TEXTURES.majestic index 0cd2aad..88ecda4 100644 --- a/TEXTURES.majestic +++ b/TEXTURES.majestic @@ -1,5 +1,5 @@ // Texture definitions generated by SLADE3 -// on Sun Jul 4 03:06:28 2021 +// on Mon Jul 17 21:15:06 2023 Sprite "MJMGA0", 15, 10 { @@ -78,7 +78,7 @@ Sprite "MJCGA0", 89, 119 XScale 1.200 YScale 1.400 Offset -165, -128 - Patch "MJSTCGA0", 0, 0 + Patch "MJCGA0", 0, 0 } Sprite "MJCGB0", 89, 119 @@ -86,7 +86,7 @@ Sprite "MJCGB0", 89, 119 XScale 1.200 YScale 1.400 Offset -165, -128 - Patch "MJSTCGB0", 0, 0 + Patch "MJCGB0", 0, 0 } Sprite "MJCGC0", 89, 119 @@ -94,7 +94,7 @@ Sprite "MJCGC0", 89, 119 XScale 1.200 YScale 1.400 Offset -165, -128 - Patch "MJSTCGC0", 0, 0 + Patch "MJCGC0", 0, 0 } Sprite "MJCGD0", 89, 119 @@ -102,15 +102,31 @@ Sprite "MJCGD0", 89, 119 XScale 1.200 YScale 1.400 Offset -165, -128 - Patch "MJSTCGD0", 0, 0 + Patch "MJCGD0", 0, 0 } -Sprite "MJCGE0", 110, 156 +Sprite "MJCFA0", 110, 156 { XScale 1.200 YScale 1.400 Offset -144, -91 - Patch "MJSTCGE0", 0, 0 + Patch "MJCFA0", 0, 0 +} + +Sprite "MJCFB0", 89, 119 +{ + XScale 1.100 + YScale 1.400 + Offset -149, -131 + Patch "MJCGA0", 0, 0 +} + +Sprite "MJCFC0", 89, 119 +{ + XScale 1.200 + YScale 1.400 + Offset -165, -128 + Patch "MJCGA0", 0, 0 } Sprite "MJ2GA0", 89, 119 @@ -118,7 +134,7 @@ Sprite "MJ2GA0", 89, 119 XScale 1.200 YScale 1.400 Offset -130, -128 - Patch "MJSTCGA0", 0, 0 + Patch "MJCGA0", 0, 0 { FlipX } @@ -129,7 +145,7 @@ Sprite "MJ2GB0", 89, 119 XScale 1.200 YScale 1.400 Offset -130, -128 - Patch "MJSTCGB0", 0, 0 + Patch "MJCGB0", 0, 0 { FlipX } @@ -140,7 +156,7 @@ Sprite "MJ2GC0", 89, 119 XScale 1.200 YScale 1.400 Offset -130, -128 - Patch "MJSTCGC0", 0, 0 + Patch "MJCGC0", 0, 0 { FlipX } @@ -151,18 +167,40 @@ Sprite "MJ2GD0", 89, 119 XScale 1.200 YScale 1.400 Offset -130, -128 - Patch "MJSTCGD0", 0, 0 + Patch "MJCGD0", 0, 0 { FlipX } } -Sprite "MJ2GE0", 110, 156 +Sprite "MJ2FA0", 110, 156 { XScale 1.200 YScale 1.400 Offset -130, -91 - Patch "MJSTCGE0", 0, 0 + Patch "MJCFA0", 0, 0 + { + FlipX + } +} + +Sprite "MJ2FB0", 89, 119 +{ + XScale 1.100 + YScale 1.400 + Offset -114, -131 + Patch "MJCGA0", 0, 0 + { + FlipX + } +} + +Sprite "MJ2FC0", 89, 119 +{ + XScale 1.200 + YScale 1.400 + Offset -130, -128 + Patch "MJCGA0", 0, 0 { FlipX } diff --git a/patches/Majestic/MJSTCGE0.png b/patches/Majestic/MJCFA0.png similarity index 100% rename from patches/Majestic/MJSTCGE0.png rename to patches/Majestic/MJCFA0.png diff --git a/patches/Majestic/MJSTCGA0.png b/patches/Majestic/MJCGA0.png similarity index 100% rename from patches/Majestic/MJSTCGA0.png rename to patches/Majestic/MJCGA0.png diff --git a/patches/Majestic/MJSTCGB0.png b/patches/Majestic/MJCGB0.png similarity index 100% rename from patches/Majestic/MJSTCGB0.png rename to patches/Majestic/MJCGB0.png diff --git a/patches/Majestic/MJSTCGC0.png b/patches/Majestic/MJCGC0.png similarity index 100% rename from patches/Majestic/MJSTCGC0.png rename to patches/Majestic/MJCGC0.png diff --git a/patches/Majestic/MJSTCGD0.png b/patches/Majestic/MJCGD0.png similarity index 100% rename from patches/Majestic/MJSTCGD0.png rename to patches/Majestic/MJCGD0.png From c9c9d3782ca4e7ff6b69ce6085fa8b6d33de449d Mon Sep 17 00:00:00 2001 From: UndeadZeratul Date: Tue, 18 Jul 2023 07:59:51 -0500 Subject: [PATCH 3/3] Pull in Viper's Quick Swap logic --- TEXTURES.majestic | 14 +-- zscript/accensus/weapons/Majestic/majestic.zs | 91 +++++++++++++++++-- 2 files changed, 90 insertions(+), 15 deletions(-) diff --git a/TEXTURES.majestic b/TEXTURES.majestic index 88ecda4..3bd0aba 100644 --- a/TEXTURES.majestic +++ b/TEXTURES.majestic @@ -1,5 +1,5 @@ // Texture definitions generated by SLADE3 -// on Mon Jul 17 21:15:06 2023 +// on Tue Jul 18 07:52:17 2023 Sprite "MJMGA0", 15, 10 { @@ -105,7 +105,7 @@ Sprite "MJCGD0", 89, 119 Patch "MJCGD0", 0, 0 } -Sprite "MJCFA0", 110, 156 +Sprite "MJCGE0", 110, 156 { XScale 1.200 YScale 1.400 @@ -113,7 +113,7 @@ Sprite "MJCFA0", 110, 156 Patch "MJCFA0", 0, 0 } -Sprite "MJCFB0", 89, 119 +Sprite "MJCGF0", 89, 119 { XScale 1.100 YScale 1.400 @@ -121,7 +121,7 @@ Sprite "MJCFB0", 89, 119 Patch "MJCGA0", 0, 0 } -Sprite "MJCFC0", 89, 119 +Sprite "MJCGG0", 89, 119 { XScale 1.200 YScale 1.400 @@ -173,7 +173,7 @@ Sprite "MJ2GD0", 89, 119 } } -Sprite "MJ2FA0", 110, 156 +Sprite "MJ2GE0", 110, 156 { XScale 1.200 YScale 1.400 @@ -184,7 +184,7 @@ Sprite "MJ2FA0", 110, 156 } } -Sprite "MJ2FB0", 89, 119 +Sprite "MJ2GF0", 89, 119 { XScale 1.100 YScale 1.400 @@ -195,7 +195,7 @@ Sprite "MJ2FB0", 89, 119 } } -Sprite "MJ2FC0", 89, 119 +Sprite "MJ2GG0", 89, 119 { XScale 1.200 YScale 1.400 diff --git a/zscript/accensus/weapons/Majestic/majestic.zs b/zscript/accensus/weapons/Majestic/majestic.zs index 2e92bff..c7fc06e 100644 --- a/zscript/accensus/weapons/Majestic/majestic.zs +++ b/zscript/accensus/weapons/Majestic/majestic.zs @@ -225,6 +225,13 @@ class HDMajestic : HDHandgun } } + action void A_CheckMajesticHand() + { + bool right = !invoker.wronghand; + right = right && Wads.CheckNumForName("id", 0) != -1 || !right && Wads.CheckNumForName("id", 0) == -1; + player.GetPSprite(PSP_WEAPON).sprite = GetSpriteIndex(right ? "MJCGA0" : "MJ2GA0"); + } + const MaxCharge = 60; const Tiers = 3; private int Charge; @@ -254,6 +261,7 @@ class HDMajestic : HDHandgun Ready: MJCG # 1 { + A_CheckMajesticHand(); A_WeaponReady(WRF_NOFIRE | (invoker.Charge == 0 ? WRF_ALL : 0)); if (PressingFire() && invoker.WeaponStatus[MJProp_Mag] > 0 || invoker.Charge > 0 && player.GetPSprite(PSP_WEAPON).frame == 1) @@ -311,10 +319,12 @@ class HDMajestic : HDHandgun } Goto ReadyEnd; Select0: - MJCG A 1 A_CheckMajesticFrame(); + MJCG A 0 A_CheckMajesticHand(); + #### A 1 A_CheckMajesticFrame(); Goto Select0Small; Deselect0: - MJCG A 1 + MJCG A 0 A_CheckMajesticHand(); + #### A 1 { invoker.MustCancel = false; A_CheckMajesticFrame(); @@ -326,15 +336,15 @@ class HDMajestic : HDHandgun Goto Ready; Fire: - MJCG B 1; - MJCG A 1 + #### B 1; + #### A 1 { HDPlayerPawn(self).gunbraced = false; } - MJCF A 1 Bright A_FireMajestic(false); - MJCF B 1; - MJCF C 1; - MJCG A 2 A_CheckMajesticFrame(); + #### E 1 Bright A_FireMajestic(false); + #### F 1; + #### G 1; + #### A 2 A_CheckMajesticFrame(); Goto Ready; Reload: @@ -449,6 +459,71 @@ class HDMajestic : HDHandgun #### # 1 Offset(2, 38); #### # 1 Offset(1, 34); Goto Nope; + + + Firemode: + SwapPistols: + #### A 0 A_SwapHandguns(); + #### A 0 A_JumpIf(player.GetPSprite(PSP_WEAPON).sprite == GetSpriteIndex("MJCGA0"), "SwapPistols2"); + SwapPistols1: + TNT1 A 0 A_Overlay(1026, "lowerleft"); + TNT1 A 0 A_Overlay(1025, "raiseright"); + TNT1 A 5; + MJCG A 0; + Goto Nope; + SwapPistols2: + TNT1 A 0 A_Overlay(1026, "lowerright"); + TNT1 A 0 A_Overlay(1025, "raiseleft"); + TNT1 A 5; + MJ2G A 0; + Goto Nope; + LowerLeft: + MJCG # 0 A_WeaponBusy(true); + #### # 1 Offset(-6, 38); + #### # 1 Offset(-12, 48); + #### # 1 Offset(-20, 60); + #### # 1 Offset(-34, 76); + #### # 1 Offset(-50, 86); + stop; + LowerRight: + MJ2G # 0 A_WeaponBusy(true); + #### # 1 Offset(6, 38); + #### # 1 Offset(12, 48); + #### # 1 Offset(20, 60); + #### # 1 Offset(34, 76); + #### # 1 Offset(50, 86); + Stop; + RaiseLeft: + MJCG # 0 A_WeaponBusy(false); + #### # 1 Offset(-50, 86); + #### # 1 Offset(-34, 76); + #### # 1 Offset(-20, 60); + #### # 1 Offset(-12, 48); + #### # 1 Offset(-6, 38); + Stop; + RaiseRight: + MJ2G # 0 A_WeaponBusy(false); + #### # 1 Offset(50, 86); + #### # 1 Offset(34, 76); + #### # 1 Offset(20, 60); + #### # 1 Offset(12, 48); + #### # 1 Offset(6, 38); + Stop; + WhyAreYouSmiling: + #### A 0 A_WeaponBusy(true); + #### # 1 Offset(0, 48); + #### # 1 Offset(0, 60); + #### # 1 Offset(0, 76); + TNT1 A 7; + TNT1 A 0 + { + invoker.wronghand = !invoker.wronghand; + A_CheckMajesticHand(); + } + #### # 1 Offset(0, 76); + #### # 1 Offset(0, 60); + #### # 1 Offset(0, 48); + Goto Nope; } }