Update to make catagories

This commit is contained in:
2026-02-15 13:11:32 -05:00
parent ad8310f143
commit 53b0b4317d
7 changed files with 1209 additions and 23 deletions

View File

@@ -0,0 +1,368 @@
return {
WepFire = {
"Base.83Cheetah",
"Base.AKM",
"Base.AKSport",
"Base.Anaconda",
"Base.AR15",
"Base.AR180",
"Base.AssaultRifle",
"Base.AssaultRifle2",
"Base.Auto5",
"Base.Auto5_Alt",
"Base.BenelliM3",
"Base.BenelliM3_Alt",
"Base.Beretta682",
"Base.Beretta682_Alt",
"Base.Beretta92FS",
"Base.BHP",
"Base.Bobcat",
"Base.Brown3006BAR",
"Base.Brown308BAR",
"Base.BrownCitori",
"Base.BrownCitori_Alt",
"Base.Buckmark",
"Base.CalicoPistol",
"Base.CalicoRifle",
"Base.CAR15",
"Base.Colt9mm",
"Base.ColtArmy",
"Base.ColtDet",
"Base.Command1911",
"Base.CZ75B",
"Base.DE357",
"Base.DeltaElite",
"Base.Dissy",
"Base.DoubleBarrelShotgun",
"Base.DoubleBarrelShotgun_Alt",
"Base.DoubleBarrelShotgunSawnoff",
"Base.DoubleBarrelShotgunSawnoff_Alt",
"Base.FAL",
"Base.Glock17",
"Base.Glock17L",
"Base.Glock19",
"Base.Glock20",
"Base.Glock21",
"Base.Glock22",
"Base.Glock23",
"Base.Glock24",
"Base.Gov1911",
"Base.GP100",
"Base.GP100_Alt",
"Base.GP101",
"Base.GP101_Alt",
"Base.Hammerless",
"Base.HBAR",
"Base.HK91",
"Base.HuntingRifle",
"Base.Ithaca37",
"Base.Ithaca37_Alt",
"Base.Ithaca37Riot",
"Base.Ithaca37Riot_Alt",
"Base.J22",
"Base.Javelina",
"Base.L395K",
"Base.L395K_Alt",
"Base.Longslide",
"Base.M1903",
"Base.M1917",
"Base.M1A",
"Base.M1ABush",
"Base.M1Carbine",
"Base.M1Garand",
"Base.M24",
"Base.M249",
"Base.M3GreaseGun",
"Base.M590",
"Base.M590_Alt",
"Base.M60",
"Base.M635",
"Base.M723",
"Base.M727",
"Base.M733",
"Base.M870",
"Base.M870_Alt",
"Base.MAC10",
"Base.Marlin3363030",
"Base.Marlin33644",
"Base.Marlin39A",
"Base.Marlin45",
"Base.Marlin60",
"Base.Marlin9",
"Base.Mauser98K",
"Base.Mini14",
"Base.Mini30",
"Base.Moss500",
"Base.Moss500_Alt",
"Base.Moss590",
"Base.Moss590_Alt",
"Base.MP5",
"Base.Officer1911",
"Base.P226",
"Base.P228",
"Base.P380",
"Base.P7M13",
"Base.P7M8",
"Base.Pistol",
"Base.Pistol2",
"Base.Pistol3",
"Base.PPK",
"Base.Python",
"Base.Python_Alt",
"Base.R223Rem788",
"Base.R223RugM77",
"Base.R3006Rem700",
"Base.R3006RugM77",
"Base.R3030Rem788",
"Base.R308Rem700",
"Base.R308RugM77",
"Base.R44Rem788",
"Base.Raven25",
"Base.Rem1100",
"Base.Rem1100_Alt",
"Base.Rem1187P",
"Base.Rem1187P_Alt",
"Base.Rem223760",
"Base.Rem3006760",
"Base.Rem308760",
"Base.Rem870P",
"Base.Rem870P_Alt",
"Base.Revolver",
"Base.Revolver_Long",
"Base.Revolver_Short",
"Base.Rug1022",
"Base.Rugmark",
"Base.RugP89",
"Base.RugP90",
"Base.SavageFox",
"Base.SavageFox_Alt",
"Base.SecuritySix",
"Base.SecuritySix_Alt",
"Base.Shotgun",
"Base.Shotgun_Alt",
"Base.ShotgunSawnoff",
"Base.ShotgunSawnoff_Alt",
"Base.SKS",
"Base.SOAuto5",
"Base.SOAuto5_Alt",
"Base.SOBeretta682",
"Base.SOBeretta682_Alt",
"Base.SOBrownCitori",
"Base.SOBrownCitori_Alt",
"Base.SOIthaca37",
"Base.SOIthaca37_Alt",
"Base.SOL395K",
"Base.SOL395K_Alt",
"Base.SOM24",
"Base.SOMoss500",
"Base.SOMoss500_Alt",
"Base.SOR223Rem700",
"Base.SOR223Rem788",
"Base.SOR3006Rem700",
"Base.SOR3030Rem788",
"Base.SOR308Rem700",
"Base.SOR308Rem788",
"Base.SOR44Rem788",
"Base.SORem1100",
"Base.SORem1100_Alt",
"Base.SOSavageFox",
"Base.SOSavageFox_Alt",
"Base.SOW223WinM70",
"Base.SOW3006WinM70",
"Base.SOW308WinM70",
"Base.SOWin1200",
"Base.SOWin1200_Alt",
"Base.SOWin1400",
"Base.SOWin1400_Alt",
"Base.SOWin1912",
"Base.SOWin1912_Alt",
"Base.SOWin37",
"Base.SOWin37_Alt",
"Base.SPAS12",
"Base.SPAS12_Alt",
"Base.SW10",
"Base.SW17",
"Base.SW4006",
"Base.SW4506",
"Base.SW586",
"Base.SW586_Alt",
"Base.SW5906",
"Base.SW65",
"Base.SW65_Alt",
"Base.T56",
"Base.TEC9",
"Base.USP40",
"Base.USP9",
"Base.Uzi",
"Base.Valmet",
"Base.VarmintRifle",
"Base.W223WinM70",
"Base.W3006WinM70",
"Base.W308WinM70",
"Base.Win1200",
"Base.Win1200_Alt",
"Base.Win1200Def",
"Base.Win1200Def_Alt",
"Base.Win1400",
"Base.Win1400_Alt",
"Base.Win1912",
"Base.Win1912_Alt",
"Base.Win30067400",
"Base.Win3087400",
"Base.Win37",
"Base.Win37_Alt",
"Base.Win61",
"Base.Win69",
"Base.Win943030",
"Base.Win94357",
"Base.Win94357_Alt",
"Base.Win9445",
},
WepAmmoMag = {
"Base.100CalicoMag",
"Base.1022Mag",
"Base.10M14Mag",
"Base.15BHPMag",
"Base.17BHPMag",
"Base.1908Mag",
"Base.1911MagExtend",
"Base.1911MagExtendSS",
"Base.1911MagSS",
"Base.20M16AR180Mag",
"Base.20M16Mag",
"Base.20M9Mag",
"Base.20MP5Mag",
"Base.223Rem760Mag",
"Base.223RemMag",
"Base.25Rug1022Mag",
"Base.25UziColtSMGMag",
"Base.25UziMag",
"Base.3006BARMag",
"Base.3006clip",
"Base.3006Rem760Mag",
"Base.3006WinMag",
"Base.3030RemMag",
"Base.308BARMag",
"Base.308Clip",
"Base.308Rem760Mag",
"Base.308WinMag",
"Base.30M14Mag",
"Base.30M16AR180Mag",
"Base.30M1CarMag",
"Base.30Mini14Mag",
"Base.4006Mag",
"Base.40AKMag",
"Base.40AR180Mag",
"Base.40M16AR180Mag",
"Base.44Clip",
"Base.44RemMag",
"Base.4506Mag",
"Base.45Clip",
"Base.45Moonclip",
"Base.556Clip",
"Base.5906Mag",
"Base.83Mag",
"Base.9mmClip",
"Base.AK5Mag",
"Base.AKBakeMag",
"Base.AKDrumMag",
"Base.AKMag",
"Base.AR180Mag",
"Base.BetaCMag",
"Base.BHPMag",
"Base.BHPMagSS",
"Base.BobcatMag",
"Base.BuckMag",
"Base.CalicoMag",
"Base.ColtSMGMag",
"Base.CZ75BMag",
"Base.DE357Mag",
"Base.DeltaEliteMag",
"Base.DeltaEliteMagBlue",
"Base.DeltaEliteMagExtend",
"Base.DeltaEliteMagExtendBlue",
"Base.EblocClip",
"Base.FALMag",
"Base.G17ExtMag",
"Base.G17Mag",
"Base.G17StickMag",
"Base.G19ExtMag",
"Base.G19Mag",
"Base.G20Mag",
"Base.G21Mag",
"Base.G22Mag",
"Base.G23Mag",
"Base.HK91Mag",
"Base.HKS10A357",
"Base.HKS10A38",
"Base.HKS22K",
"Base.HKS29M44",
"Base.HKS36A357",
"Base.HKS36A38",
"Base.HKS586A357",
"Base.HKS586A38",
"Base.HKSDSA38",
"Base.HKSMK3A357",
"Base.HKSMK3A38",
"Base.HKSPYA357",
"Base.HKSPYA38",
"Base.J22Mag",
"Base.L395KMag",
"Base.L395KMagSlugs",
"Base.M14Clip",
"Base.M1CarMag",
"Base.M249Box",
"Base.M3GreaseMag",
"Base.M60Box",
"Base.MAC10Mag",
"Base.MACGreaseMag",
"Base.MarkMag",
"Base.Mauserclip",
"Base.Mini14Mag",
"Base.Mini30Mag",
"Base.MP5Mag",
"Base.OfficerMag",
"Base.P226Mag",
"Base.P228Mag",
"Base.P380Mag",
"Base.P7M13Mag",
"Base.P7M8Mag",
"Base.P89Mag",
"Base.P90Mag",
"Base.PPKMag",
"Base.R25Mag",
"Base.Size3CompII357",
"Base.Size3CompII38",
"Base.Size3CompIII357",
"Base.Size3CompIII38",
"Base.Size4CompII357",
"Base.Size4CompII38",
"Base.Size4CompIII357",
"Base.Size4CompIII38",
"Base.Size5CompII357",
"Base.Size5CompII38",
"Base.Size5CompIII357",
"Base.Size5CompIII38",
"Base.Size6CompII357",
"Base.Size6CompII38",
"Base.Size6CompIII357",
"Base.Size6CompIII38",
"Base.SKSclip",
"Base.SpeedStrip357",
"Base.SpeedStrip38",
"Base.SpeedStrip44",
"Base.TEC9Mag",
"Base.TherARMag",
"Base.TherMini14Mag",
"Base.USP40Mag",
"Base.USP9Mag",
"Base.UziColtSMGMag",
"Base.UziMag",
"Base.ValmetMag",
"Base.Win69AMag",
},
}

View File

@@ -0,0 +1,135 @@
local OFBCGuns93ModPackInjector = {
installed = false,
tickHookAdded = false,
}
local APPLY_MODS_MODULE = "BetterContainers/Categorize/Categories/_applyMods"
local GUNS93_PACK_PATH = "mods/guns93_items"
local BC_MOD_IDS = {
"EURY_CONTAINERS",
"REORDER_CONTAINERS",
"\\EURY_CONTAINERS",
"\\REORDER_CONTAINERS",
}
local GUNS93_MOD_IDS = {
"guns93",
"\\guns93",
}
local function getActivatedModsList()
if type(getActivatedMods) ~= "function" then
return nil
end
local mods = getActivatedMods()
if not mods or type(mods.contains) ~= "function" then
return nil
end
return mods
end
local function isBetterContainersActive()
local mods = getActivatedModsList()
if not mods then
return nil
end
for i = 1, #BC_MOD_IDS do
if mods:contains(BC_MOD_IDS[i]) then
return true
end
end
return false
end
local function isGuns93Active()
local mods = getActivatedModsList()
if not mods then
return false
end
for i = 1, #GUNS93_MOD_IDS do
if mods:contains(GUNS93_MOD_IDS[i]) then
return true
end
end
return false
end
local function installApplyModsWrapper()
if OFBCGuns93ModPackInjector.installed then
return true
end
local bcState = isBetterContainersActive()
if bcState == false then
OFBCGuns93ModPackInjector.installed = true
return true
end
if bcState == nil then
return false
end
if _G.OF_GUNS93_BC_APPLYMODS_WRAPPED then
OFBCGuns93ModPackInjector.installed = true
return true
end
local ok, applyMods = pcall(require, APPLY_MODS_MODULE)
if not ok or type(applyMods) ~= "function" then
return false
end
if type(package) ~= "table" or type(package.loaded) ~= "table" then
return false
end
local function wrappedApplyMods(loadCategoryFile, dlog)
applyMods(loadCategoryFile, dlog)
if not isGuns93Active() then
return
end
if type(loadCategoryFile) == "function" then
loadCategoryFile(GUNS93_PACK_PATH)
if dlog then
dlog("Loaded category pack guns93_items")
end
end
end
package.loaded[APPLY_MODS_MODULE] = wrappedApplyMods
_G.OF_GUNS93_BC_APPLYMODS_WRAPPED = true
OFBCGuns93ModPackInjector.installed = true
return true
end
local function tryInstallOnTick()
if installApplyModsWrapper() then
OFBCGuns93ModPackInjector.tickHookAdded = false
Events.OnTick.Remove(tryInstallOnTick)
end
end
local function ensureTickHook()
if OFBCGuns93ModPackInjector.tickHookAdded then
return
end
OFBCGuns93ModPackInjector.tickHookAdded = true
Events.OnTick.Add(tryInstallOnTick)
end
if not installApplyModsWrapper() then
ensureTickHook()
end
if Events.OnMainMenuEnter and type(Events.OnMainMenuEnter.Add) == "function" then
Events.OnMainMenuEnter.Add(installApplyModsWrapper)
end