From 3047d0d36ce7a5e14bb7a875f68d4be59ab770e3 Mon Sep 17 00:00:00 2001 From: "Elizabeth M." Date: Sat, 31 May 2025 15:24:54 -0700 Subject: [PATCH] Deprecated .50AE replaced with NDM --- CVARINFO | 12 +-- KEYCONF | 2 +- LANGUAGE | 11 +-- MENUDEF | 60 +++++++-------- README.md | 2 +- TEXTURES | 33 +++++--- ZSCRIPT.zsc | 4 +- sprites/9mmNDM/NDMBA0 | Bin 0 -> 6443 bytes ...ore 420 Frei.zsc => 066 Bore 451 Frei.zsc} | 4 + zscript/HDBulletLib/Ammunition/9mmNDM.zsc | 71 ++++++++++++++++++ zscript/HDBulletLib/Ammunition/Slugs.zsc | 6 +- zscript/HDBulletLib/SpawnHandler.zsc | 28 +++---- 12 files changed, 158 insertions(+), 75 deletions(-) create mode 100644 sprites/9mmNDM/NDMBA0 rename zscript/HDBulletLib/Ammunition/{069 Bore 420 Frei.zsc => 066 Bore 451 Frei.zsc} (94%) create mode 100644 zscript/HDBulletLib/Ammunition/9mmNDM.zsc diff --git a/CVARINFO b/CVARINFO index 233405c..2b6c0a7 100644 --- a/CVARINFO +++ b/CVARINFO @@ -18,20 +18,20 @@ server int hdb_12gslug_shell_spawn_bias = -1; server int hdb_12gslug_casing_spawn_bias = -1; server bool hdb_12gslug_persistent_spawning = false; -// .420 Frei +// .451 Frei server int hdb_420frei_box_spawn_bias = -1; server int hdb_420frei_casing_spawn_bias = -1; server bool hdb_420frei_persistent_spawning = false; -// .069 Bore +// .066 Bore server int hdb_069bore_box_spawn_bias = -1; server int hdb_069bore_casing_spawn_bias = -1; server bool hdb_069bore_persistent_spawning = false; -// .50 AE -server int hdb_50ae_box_spawn_bias = -1; -server int hdb_50ae_casing_spawn_bias = -1; -server bool hdb_50ae_persistent_spawning = false; +// 9mm NDM +server int hdb_ndm_box_spawn_bias = -1; +server int hdb_ndm_casing_spawn_bias = -1; +server bool hdb_ndm_persistent_spawning = false; // .50 OMG server int hdb_50omg_box_spawn_bias = -1; diff --git a/KEYCONF b/KEYCONF index fa62058..a06d0c9 100644 --- a/KEYCONF +++ b/KEYCONF @@ -5,7 +5,7 @@ alias hdb_500sw_reset_cvars "resetcvar hdb_500sw_shellbox_spawn_bias; alias hdb_12gslug_reset_cvars "resetcvar hdb_12gslug_shellbox_spawn_bias; resetcvar hdb_12gslug_shell_spawn_bias; resetcvar hdb_12gslug_casing_spawn_bias; resetcvar hdb_12gslug_persistent_spawning" alias hdb_420frei_reset_cvars "resetcvar hdb_420frei_box_spawn_bias; resetcvar hdb_420frei_casing_spawn_bias; resetcvar hdb_420frei_persistent_spawning" alias hdb_069bore_reset_cvars "resetcvar hdb_069bore_box_spawn_bias; resetcvar hdb_069bore_casing_spawn_bias; resetcvar hdb_069bore_persistent_spawning" -alias hdb_50ae_reset_cvars "resetcvar hdb_50ae_box_spawn_bias; resetcvar hdb_50ae_casing_spawn_bias; resetcvar hdb_50ae_persistent_spawning" +alias hdb_ndm_reset_cvars "resetcvar hdb_ndm_box_spawn_bias; resetcvar hdb_ndm_casing_spawn_bias; resetcvar hdb_ndm_persistent_spawning" alias hdb_50OMG_reset_cvars "resetcvar hdb_50omg_box_spawn_bias; resetcvar hdb_50omg_casing_spawn_bias; resetcvar hdb_50omg_persistent_spawning" alias hdb_45ACP_reset_cvars "resetcvar hdb_45acp_box_spawn_bias; resetcvar hdb_45acp_casing_spawn_bias; resetcvar hdb_45acp_persistent_spawning" alias hdb_10mmAuto_reset_cvars "resetcvar hdb_10mm_box_spawn_bias; resetcvar hdb_10mm_casing_spawn_bias; resetcvar hdb_10mm_persistent_spawning" diff --git a/LANGUAGE b/LANGUAGE index de337b9..a272d05 100644 --- a/LANGUAGE +++ b/LANGUAGE @@ -12,8 +12,10 @@ MENU_WITHALL = "With All"; // All of these are for the individual rounds to allow external mods to modify their tags. This can be incredibly helpful for resprites that may want to change lorebits. - [Ted] TAG_069BORE = ".066 bore shell"; TAG_420FREI = ".451 Frei round"; -TAG_420FREI_BOX = ".451 Frei Boxes"; -TAG_069BORE_BOX = ".066 Bore Boxes"; +TAG_420FREI_BOX = ".451 Frei Box"; +TAG_069BORE_BOX = ".066 Bore Box"; +TAG_NDM = "Nail Driver Maximum round"; +TAG_NDMBOX = "Nail Driver Maximum Box"; TAG_500SWL = ".500 S&W light"; TAG_500SWH = ".500 S&W heavy"; TAG_500SW = ".500 S&W"; @@ -21,7 +23,6 @@ TAG_EXPLSHL = "Explosive Shotgun Slugs"; TAG_FLARESHELL = "Flare Shells"; TAG_G45LC = "Golden .45 LC round"; TAG_45LC = ".45 LC Round"; -TAG_50AE = ".50 AE round"; TAG_50AM = ".50 Action Mega"; TAG_50OMG = ".50 OMG round"; TAG_MUSKETBALL = "Lead Ball"; @@ -47,8 +48,6 @@ TAG_300SAVAGEBRASS=".300 Savage casing"; TAG_762TOKAREV="7.62 Tokarev round"; TAG_762TOKAREVBRASS="7.62 Tokarev casing"; -PICKUP_50AE="Picked up a .50 AE round."; -PICKUP_50AEBOX="Picked up some .50 Action Express ammo."; PICKUP_10MM="Picked up a 10mm round."; PICKUP_10MMBRASS="Picked up some 10mm brass."; PICKUP_10MMBOX="Picked up a box of 10mm rounds."; @@ -106,6 +105,8 @@ PICKUP_420FREI="Picked up a .451 Frei round."; PICKUP_420FREIBOX="Picked up some .451 Frei ammo."; PICKUP_069BORE="Picked up a .066 bore shell."; PICKUP_069BOREBOX="Picked up some .066 bore shells."; +PICKUP_NDM="Picked up a 9mm NDM round."; +PICKUP_NDMBOX="Picked up some 9mm NDM ammo."; TAG_BELTLINKS="Belt Links"; TAG_776BELTLINK="Small Belt Link"; diff --git a/MENUDEF b/MENUDEF index f9483cf..b4175d3 100644 --- a/MENUDEF +++ b/MENUDEF @@ -25,14 +25,12 @@ OptionMenu "HDBulletLibMenu" StaticText "" SafeCommand "Reset all options", "hdb_reset_cvars" StaticText "" - StaticText "Created by Accensus", "cyan" - Submenu "$TAG_50AE", "50AE", 0, 1 - StaticText "" StaticText "Created by Peppergrinder Team", "purple" Submenu "$TAG_12SLUG", "12GaugeSlugs", 0, 1 Submenu "$TAG_500SW", "500SW", 0, 1 Submenu "$TAG_420FREI", "420Frei", 0, 1 Submenu "$TAG_069BORE", "069Bore", 0, 1 + Submenu "$TAG_NDM", "9mmNDM", 0, 1 StaticText "" StaticText "Created by Bogus", "white" Submenu "$TAG_50OMG", "50OMG", 0, 1 @@ -73,34 +71,6 @@ OptionMenu "HDBulletLibMenu" Submenu "$TAG_3006", "3006", 0, 1 } -OptionMenu 50AE -{ - Title "------ .50 AE Options ------" - StaticText "Notice:", "Cyan" - StaticText "Setting 'spawn rate' to Replace All will suppress", "white" - StaticText "spawns of that given type.", "white" - StaticText "" - StaticText "Spawn Options", "Cyan" - StaticText "Control the spawn rate of .50 AE on Clip Boxes", "white" - ScaleSlider "Spawn Rate: ", "hdb_50ae_box_spawn_bias", -1, 999, 1, "$MENU_REPLACEALL", "$MENU_DISABLED" - SafeCommand "Reset spawn options", "resetcvar hdb_50ae_box_spawn_bias" - StaticText "" - StaticText "Control the spawn rate of .50 AE casings", "white" - ScaleSlider "Spawn Rate: ", "hdb_50ae_casing_spawn_bias", -1, 999, 1, "$MENU_REPLACEALL", "$MENU_DISABLED" - SafeCommand "Reset spawn options", "resetcvar hdb_50ae_casing_spawn_bias" - StaticText "" - StaticText "Enable/Disable .50 AE from spawning in Ammo Boxes and Backpacks.", "Cyan" - FlagOption "$TAG_50AE", "hdblib_enableammo_1", "OnOff", 0 - StaticText "" - StaticText "Control whether replacements happen after a mapload.", "white" - Option "Persistent Spawns: ", "hdb_50ae_persistent_spawning", "OnOff" - SafeCommand "Reset persistence options", "resetcvar hdb_50ae_persistent_spawning" - StaticText "" - StaticText "" - StaticText "Reset Options", "Cyan" - SafeCommand "Reset all options", "hdb_50ae_reset_cvars" -} - OptionMenu 500SW { Title "------ .500 S&W Options ------" @@ -222,6 +192,34 @@ OptionMenu 069Bore SafeCommand "Reset all options", "hdb_069bore_reset_cvars" } +OptionMenu 9mmNDM +{ + Title "------ Nail Driver Maximum Options ------" + StaticText "Notice:", "purple" + StaticText "Setting 'spawn rate' to Replace All will suppress", "white" + StaticText "spawns of that given type.", "white" + StaticText "" + StaticText "Spawn Options", "purple" + StaticText "Control the spawn rate of NDM on Clip Boxes", "white" + ScaleSlider "Spawn Rate: ", "hdb_ndm_box_spawn_bias", -1, 999, 1, "$MENU_REPLACEALL", "$MENU_DISABLED" + SafeCommand "Reset spawn options", "resetcvar hdb_ndm_box_spawn_bias" + StaticText "" + StaticText "Control the spawn rate of NDM casings", "white" + ScaleSlider "Spawn Rate: ", "hdb_ndm_casing_spawn_bias", -1, 999, 1, "$MENU_REPLACEALL", "$MENU_DISABLED" + SafeCommand "Reset spawn options", "resetcvar hdb_ndm_casing_spawn_bias" + StaticText "" + StaticText "Enable/Disable NDM from spawning in Ammo Boxes and Backpacks.", "purple" + FlagOption "$TAG_NDM", "hdblib_enableammo_1", "OnOff", 18 + StaticText "" + StaticText "Control whether replacements happen after a mapload.", "white" + Option "Persistent Spawns: ", "hdb_ndm_persistent_spawning", "OnOff" + SafeCommand "Reset persistence options", "resetcvar hdb_ndm_persistent_spawning" + StaticText "" + StaticText "" + StaticText "Reset Options", "purple" + SafeCommand "Reset all options", "hdb_ndm_reset_cvars" +} + OptionMenu 50OMG { Title "------ .50 OMG Options ------" diff --git a/README.md b/README.md index 1aa2fd6..e801019 100644 --- a/README.md +++ b/README.md @@ -21,7 +21,7 @@ It's better to opt-in than it is to opt-out in this case. Check out the menu. Currently Includes: - .50 AE by Accensus -- 12 Gauge Slugs, .500 S&W Lights and Heavies, .451 Frei and .066 Bore by the Peppergrinder team +- 12 Gauge Slugs, .500 S&W Lights and Heavies, .451 Frei, .066 Bore, and 9mm NDM by the Peppergrinder team - .50 OMG by Bogus - .45 ACP and 4-Gauge Buckshot by Popguy - 10mm Auto, .45 LC, Golden .45 LC, Less-Lethal Shells, Explosive Slugs and Flare Shells by Swampyrad diff --git a/TEXTURES b/TEXTURES index af154e8..efb932f 100644 --- a/TEXTURES +++ b/TEXTURES @@ -1,5 +1,5 @@ // Texture definitions generated by SLADE3 -// on Sun Aug 6 19:23:59 2023 +// on Sat May 31 14:54:42 2025 Sprite "SLUGA0", 15, 7 { @@ -1039,7 +1039,6 @@ Sprite "G50YA0", 10, 7 } } -// .069 Bore & .420 Frei Sprite "42TEA0", 10, 6 { Offset 5, 6 @@ -1211,7 +1210,6 @@ Sprite "LLS4A0", 15, 7 } } -//fumbled shell sprites Sprite "ELLSA1", 3, 4 { Offset 1, 4 @@ -1272,7 +1270,6 @@ Sprite "ELLSE5", 3, 4 Patch "ELLSE5", 0, 0 } -//single flare shells Sprite "FLARA0", 3, 10 { XScale 0.500 @@ -1281,7 +1278,6 @@ Sprite "FLARA0", 3, 10 Patch "FLARA0", 0, 0 } -//four flare shells Sprite "FLA4A0", 15, 10 { XScale 0.500 @@ -1290,7 +1286,6 @@ Sprite "FLA4A0", 15, 10 Patch "FLA4A0", 0, 0 } -//flare shellbox Sprite "FLBXA0", 32, 12 { Offset 16, 12 @@ -1321,7 +1316,6 @@ Sprite "XLBXA0", 32, 12 Patch "XLBXA0", 0, 0 } -//fumbled shell sprites Sprite "XLLSA1", 3, 4 { Offset 1, 4 @@ -1486,11 +1480,6 @@ Sprite "T710A0", 40, 23 Patch "T710A0", 0, 0 } -// End of texture definitions - -//Belt Links - -//Large Sprite "HW0LA0", 14, 6 { Offset 7, 6 @@ -1508,3 +1497,23 @@ Sprite "HW1LA0", 56, 6 Offset 29, 6 Patch "ATCN_ST1", 0, 0 } + +Sprite "TNNDA0", 10, 4 +{ + Offset 5, 4 + Patch "TEN9A0", 0, 0 + { + Translation "64:111=@72[128,13,0]", "128:167=#[91,168,244]" + } +} + +Sprite "NRNDA0", 1, 3 +{ + Offset 1, 3 + Patch "TEN9A0", 0, -1 + { + Translation "64:111=@72[128,13,0]", "128:167=#[91,168,244]" + } +} + +// End of texture definitions diff --git a/ZSCRIPT.zsc b/ZSCRIPT.zsc index 2ea06ca..1460983 100644 --- a/ZSCRIPT.zsc +++ b/ZSCRIPT.zsc @@ -2,7 +2,6 @@ version "4.10" #include "zscript/HDBulletLib/SpawnHandler.zsc" -#include "zscript/HDBulletLib/Ammunition/50AE.zsc" #include "zscript/HDBulletLib/Ammunition/Slugs.zsc" #include "zscript/HDBulletLib/Ammunition/500S&W.zsc" #include "zscript/HDBulletLib/Ammunition/50OMG.zsc" @@ -18,7 +17,8 @@ version "4.10" #include "zscript/HDBulletLib/Ammunition/5mm.zsc" #include "zscript/HDBulletLib/Ammunition/6mmFlechettes.zsc" #include "zscript/HDBulletLib/Ammunition/50AM.zsc" -#include "zscript/HDBulletLib/Ammunition/069 Bore 420 Frei.zsc" +#include "zscript/HDBulletLib/Ammunition/066 Bore 451 Frei.zsc" +#include "zscript/HDBulletLib/Ammunition/9mmNDM.zsc" #include "zscript/HDBulletLib/Ammunition/Thunder & Tortoise Rockets.zsc" #include "zscript/HDBulletLib/Ammunition/20mm Grenades.zsc" #include "zscript/HDBulletLib/Ammunition/30-06.zsc" diff --git a/sprites/9mmNDM/NDMBA0 b/sprites/9mmNDM/NDMBA0 new file mode 100644 index 0000000000000000000000000000000000000000..67e83085db76264e84638d6fab07d60af2e72069 GIT binary patch literal 6443 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 FV1hCJOy&Rp literal 0 HcmV?d00001 diff --git a/zscript/HDBulletLib/Ammunition/069 Bore 420 Frei.zsc b/zscript/HDBulletLib/Ammunition/066 Bore 451 Frei.zsc similarity index 94% rename from zscript/HDBulletLib/Ammunition/069 Bore 420 Frei.zsc rename to zscript/HDBulletLib/Ammunition/066 Bore 451 Frei.zsc index a6408bd..90df994 100644 --- a/zscript/HDBulletLib/Ammunition/069 Bore 420 Frei.zsc +++ b/zscript/HDBulletLib/Ammunition/066 Bore 451 Frei.zsc @@ -1,3 +1,7 @@ +// ------------------------------------------------------------ +// CREATED BY a1337spy +// ------------------------------------------------------------ + const HDLD_420="4fr"; const HDLD_069BORE="66b"; const ENC_420=1; diff --git a/zscript/HDBulletLib/Ammunition/9mmNDM.zsc b/zscript/HDBulletLib/Ammunition/9mmNDM.zsc new file mode 100644 index 0000000..346c882 --- /dev/null +++ b/zscript/HDBulletLib/Ammunition/9mmNDM.zsc @@ -0,0 +1,71 @@ +// ------------------------------------------------------------ +// CREATED BY Sledge +// ------------------------------------------------------------ + +class HDSpentNDM:HDSpent9mm{ + default{ + Translation "128:167=#[91,168,244]"; + } +} +////////////////////////////////////////////////////// +const HDLD_NDM="ndm"; + +class HDB_NDM:HDBulletActor{ + default{ + pushfactor 0.4; + mass 60; + speed 740; + accuracy 450; + stamina 762; + woundhealth 30; + hdbulletactor.hardness 15; + } +} + +class HDNDMLoose:HDRoundAmmo{ + default{ + +inventory.ignoreskill + +cannotpush + +forcexybillboard + +rollsprite +rollcenter + +hdpickup.multipickup + xscale 0.7; + yscale 0.6; + inventory.pickupmessage "$PICKUP_NDM"; + hdpickup.refid HDLD_NDM; + tag "$TAG_NDM"; + hdpickup.bulk ENC_9; + inventory.icon "TNNDA0"; + } + override void SplitPickup(){ + SplitPickupBoxableRound(10,60,"HDNDMBoxPickup","TNNDA0","NRNDA0"); + } + override void GetItemsThatUseThis(){ + itemsthatusethis.push("HDGuillotine"); + itemsthatusethis.push("HDBreakerP90"); + } + states{ + spawn: + NRND A -1; + TNND A -1; + } +} + +class HDNDMBoxPickup:HDUPK{ + default{ + //$Category "Ammo/Hideous Destructor/" + //$Title "Box of 9mm" + //$Sprite "9BOXA0" + + tag "$TAG_NDMBOX"; + scale 0.4; + hdupk.amount 60; + hdupk.pickupsound "weapons/pocket"; + hdupk.pickupmessage "$PICKUP_NDMBOX"; + hdupk.pickuptype "HDNDMLoose"; + } + states{ + spawn: + NDMB A -1; + } +} \ No newline at end of file diff --git a/zscript/HDBulletLib/Ammunition/Slugs.zsc b/zscript/HDBulletLib/Ammunition/Slugs.zsc index 57c782b..fa2a821 100644 --- a/zscript/HDBulletLib/Ammunition/Slugs.zsc +++ b/zscript/HDBulletLib/Ammunition/Slugs.zsc @@ -1,6 +1,6 @@ -// ------------------------------ -// CREATED BY SLEDGE -// ------------------------------ +// ------------------------------------------------------------ +// CREATED BY Sledge & prettyFist +// ------------------------------------------------------------ class HDB_Slug : HDBulletActor { diff --git a/zscript/HDBulletLib/SpawnHandler.zsc b/zscript/HDBulletLib/SpawnHandler.zsc index 11f1506..cc7ab92 100644 --- a/zscript/HDBulletLib/SpawnHandler.zsc +++ b/zscript/HDBulletLib/SpawnHandler.zsc @@ -3,7 +3,6 @@ const HDCONST_HDBLEVENT = HDCONST_BPSPAWNPOOLEVENT + 1; class HDBulletLibHandler : EventHandler { // [Ace] Order here must match order in menu. And zscript files. - [Ted] static const class RemovedClasses[] = { - 'HD50AEAmmo', 'HDSlugAmmo', 'HD500SWLightAmmo', 'HD500SWHeavyAmmo', @@ -22,6 +21,7 @@ class HDBulletLibHandler : EventHandler { 'HD50AM_Ammo', 'HDAurochsAmmo', 'HD069BoreAmmo', + 'HDNDMLoose', 'TenMilBrass', 'Wan_ThuRKTAmmo', 'Wan_TortRKTAmmo', @@ -241,34 +241,34 @@ class HDBulletLibAmmoSpawner: EventHandler { spawns_12gslugcase.push(addAmmoEntry('HDSpentShell', hdb_12gslug_casing_spawn_bias)); addAmmo('HDSpentSlug', spawns_12gslugcase, hdb_12gslug_persistent_spawning); - // .420 Frei Box Pickup + // .451 Frei Box Pickup Array spawns_420freibox; spawns_420freibox.push(addAmmoEntry('ClipBoxPickup', hdb_420frei_box_spawn_bias)); addAmmo('HD420BoxPickup', spawns_420freibox, hdb_420frei_persistent_spawning); - // .420 Frei Casing + // .451 Frei Casing Array spawns_420freicasing; spawns_420freicasing.push(addAmmoEntry('HDSpent9mm', hdb_420frei_casing_spawn_bias)); spawns_420freicasing.push(addAmmoEntry('HDSpent355', hdb_420frei_casing_spawn_bias)); addAmmo('HDSpent420', spawns_420freicasing, hdb_420frei_persistent_spawning); - // .069 Bore Box Pickup + // .066 Bore Box Pickup Array spawns_069borebox; spawns_069borebox.push(addAmmoEntry('ShellBoxRandom', hdb_069bore_box_spawn_bias)); addAmmo('HD069BoreBox', spawns_069borebox, hdb_069bore_persistent_spawning); - // .069 Bore Casing + // .066 Bore Casing Array spawns_069borecasing; spawns_069borecasing.push(addAmmoEntry('HDSpentShell', hdb_069bore_casing_spawn_bias)); addAmmo('HDSpent069Bore', spawns_069borecasing, hdb_069bore_persistent_spawning); - // .50 AE Box Pickup - Array spawns_50aebox; - spawns_50aebox.push(addAmmoEntry('ClipBoxPickup', hdb_50ae_box_spawn_bias)); - addAmmo('HD50AEBoxPickup', spawns_50aebox, hdb_50ae_persistent_spawning); - // .50 AE Casing - Array spawns_50aecasing; - spawns_50aecasing.push(addAmmoEntry('HDSpent9mm', hdb_50ae_casing_spawn_bias)); - spawns_50aecasing.push(addAmmoEntry('HDSpent355', hdb_50ae_casing_spawn_bias)); - addAmmo('HDSpent50AE', spawns_50aecasing, hdb_50ae_persistent_spawning); + // 9mm NDM Box Pickup + Array spawns_NDMbox; + spawns_NDMbox.push(addAmmoEntry('ClipBoxPickup', hdb_NDM_box_spawn_bias)); + addAmmo('HDNDMBoxPickup', spawns_NDMbox, hdb_NDM_persistent_spawning); + // 9mm NDM Casing + Array spawns_NDMcasing; + spawns_NDMcasing.push(addAmmoEntry('HDSpent9mm', hdb_NDM_casing_spawn_bias)); + spawns_NDMcasing.push(addAmmoEntry('HDSpent355', hdb_NDM_casing_spawn_bias)); + addAmmo('HDSpentNDM', spawns_NDMcasing, hdb_NDM_persistent_spawning); // .50 OMG Box Pickup Array spawns_50omgbox;