Merge pull request #10 from Ghostrider-DbD-/Version-0.42

Version 0 42
This commit is contained in:
Ghostrider [GRG] 2017-10-24 07:15:48 -04:00 committed by GitHub
commit 2e26a3bbb8
44 changed files with 1629 additions and 4873 deletions

10
changelog.hpp Normal file
View File

@ -0,0 +1,10 @@
10/18/17
0.41
Added an optional check to see if the class name has a price.
This should be helpful when screening for new classnames after a mod is updated.
10/4/2017
0.4 Added an option whereby setting GRG_Root = "STR" will only include classnames beginning with STR.
Did some bug fixing and optimization.
Add some output to systemChat so the user knows that things are happening.

View File

@ -0,0 +1,26 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
Lists magazines that should excluded from the output for the script.
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
// Magazines
/*
Add the class names of any magazines you wish to exclude to _baseMagazines using the formating shown in the example below.
For example, if you wish to exclude smoke rounds add:
"VehicleMagazine",
"SmokeLauncherMag",
"SmokeLauncherMag_boat"
*/
_excludedMagazines = [
];

View File

@ -0,0 +1,299 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
Lists weapons that should excluded from the output for the script.
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
/*
Include any classnames you wish to exclude from the lists generated by the tool by adding them to _airBase using the formating below.
The list below includes the default Arma 3 UAVs of APEX.
"B_UAV_01_F",
"O_UAV_01_F",
"I_UAV_01_F",
"UAV_02_base_F",
"UAV_02_CAS_base_F",
"B_UAV_02_F",
"O_UAV_02_F",
"I_UAV_02_F",
"B_UAV_02_CAS_F",
"O_UAV_02_CAS_F",
"I_UAV_02_CAS_F"
*/
_excludedVehicles = [
// Cars
"Exile_Bike_QuadBike_Black",
"Exile_Bike_QuadBike_Blue",
"Exile_Bike_QuadBike_Csat",
"Exile_Bike_QuadBike_Fia",
"Exile_Bike_QuadBike_Guerilla01",
"Exile_Bike_QuadBike_Guerilla02",
"Exile_Bike_QuadBike_Nato",
"Exile_Bike_QuadBike_Red",
"Exile_Bike_QuadBike_White",
"Exile_Car_BRDM2_HQ",
"Exile_Car_BTR40_Camo",
"Exile_Car_BTR40_Green",
"Exile_Car_BTR40_MG_Camo",
"Exile_Car_BTR40_MG_Green",
"Exile_Car_Golf_Black",
"Exile_Car_Golf_Red",
"Exile_Car_Hatchback_Beige",
"Exile_Car_Hatchback_BeigeCustom",
"Exile_Car_Hatchback_Black",
"Exile_Car_Hatchback_Blue",
"Exile_Car_Hatchback_BlueCustom",
"Exile_Car_Hatchback_Dark",
"Exile_Car_Hatchback_Green",
"Exile_Car_Hatchback_Grey",
"Exile_Car_Hatchback_Rusty1",
"Exile_Car_Hatchback_Rusty2",
"Exile_Car_Hatchback_Rusty3",
"Exile_Car_Hatchback_Sport_Admin",
"Exile_Car_Hatchback_Sport_Beige",
"Exile_Car_Hatchback_Sport_Blue",
"Exile_Car_Hatchback_Sport_Green",
"Exile_Car_Hatchback_Sport_Orange",
"Exile_Car_Hatchback_Sport_Red",
"Exile_Car_Hatchback_Sport_White",
"Exile_Car_Hatchback_Yellow",
"Exile_Car_HEMMT",
"Exile_Car_HMMWV_M134_Desert",
"Exile_Car_HMMWV_M134_Green",
"Exile_Car_HMMWV_M2_Desert",
"Exile_Car_HMMWV_M2_Green",
"Exile_Car_HMMWV_MEV_Desert",
"Exile_Car_HMMWV_MEV_Green",
"Exile_Car_HMMWV_UNA_Desert",
"Exile_Car_HMMWV_UNA_Green",
"Exile_Car_Hunter",
"Exile_Car_Ifrit",
"Exile_Car_Ikarus_Blue",
"Exile_Car_Ikarus_Party",
"Exile_Car_Ikarus_Red",
"Exile_Car_Kart_Black",
"Exile_Car_Kart_Blue",
"Exile_Car_Kart_BluKing",
"Exile_Car_Kart_Green",
"Exile_Car_Kart_Orange",
"Exile_Car_Kart_RedStone",
"Exile_Car_Kart_Vrana",
"Exile_Car_Kart_White",
"Exile_Car_Kart_Yellow",
"Exile_Car_Lada_Green",
"Exile_Car_Lada_Hipster",
"Exile_Car_Lada_Red",
"Exile_Car_Lada_Taxi",
"Exile_Car_Lada_White",
"Exile_Car_LandRover_Ambulance_Desert",
"Exile_Car_LandRover_Ambulance_Green",
"Exile_Car_LandRover_Ambulance_Sand",
"Exile_Car_LandRover_Desert",
"Exile_Car_LandRover_Green",
"Exile_Car_LandRover_Red",
"Exile_Car_LandRover_Sand",
"Exile_Car_LandRover_Urban",
"Exile_Car_MB4WD",
"Exile_Car_MB4WDOpen",
"Exile_Car_Octavius_Black",
"Exile_Car_Octavius_White",
"Exile_Car_Offroad_Armed_Guerilla01",
"Exile_Car_Offroad_Armed_Guerilla02",
"Exile_Car_Offroad_Armed_Guerilla03",
"Exile_Car_Offroad_Armed_Guerilla04",
"Exile_Car_Offroad_Armed_Guerilla05",
"Exile_Car_Offroad_Armed_Guerilla06",
"Exile_Car_Offroad_Armed_Guerilla07",
"Exile_Car_Offroad_Armed_Guerilla08",
"Exile_Car_Offroad_Armed_Guerilla09",
"Exile_Car_Offroad_Armed_Guerilla10",
"Exile_Car_Offroad_Armed_Guerilla11",
"Exile_Car_Offroad_Armed_Guerilla12",
"Exile_Car_Offroad_Beige",
"Exile_Car_Offroad_Blue",
"Exile_Car_Offroad_BlueCustom",
"Exile_Car_Offroad_DarkRed",
"Exile_Car_Offroad_Guerilla01",
"Exile_Car_Offroad_Guerilla02",
"Exile_Car_Offroad_Guerilla03",
"Exile_Car_Offroad_Guerilla04",
"Exile_Car_Offroad_Guerilla05",
"Exile_Car_Offroad_Guerilla06",
"Exile_Car_Offroad_Guerilla07",
"Exile_Car_Offroad_Guerilla08",
"Exile_Car_Offroad_Guerilla09",
"Exile_Car_Offroad_Guerilla10",
"Exile_Car_Offroad_Guerilla11",
"Exile_Car_Offroad_Guerilla12",
"Exile_Car_Offroad_Red",
"Exile_Car_Offroad_Repair_Beige",
"Exile_Car_Offroad_Repair_Blue",
"Exile_Car_Offroad_Repair_BlueCustom",
"Exile_Car_Offroad_Repair_Civillian",
"Exile_Car_Offroad_Repair_DarkRed",
"Exile_Car_Offroad_Repair_Guerilla01",
"Exile_Car_Offroad_Repair_Guerilla02",
"Exile_Car_Offroad_Repair_Guerilla03",
"Exile_Car_Offroad_Repair_Guerilla04",
"Exile_Car_Offroad_Repair_Guerilla05",
"Exile_Car_Offroad_Repair_Guerilla06",
"Exile_Car_Offroad_Repair_Guerilla07",
"Exile_Car_Offroad_Repair_Guerilla08",
"Exile_Car_Offroad_Repair_Guerilla09",
"Exile_Car_Offroad_Repair_Guerilla10",
"Exile_Car_Offroad_Repair_Guerilla11",
"Exile_Car_Offroad_Repair_Guerilla12",
"Exile_Car_Offroad_Repair_Red",
"Exile_Car_Offroad_Repair_White",
"Exile_Car_Offroad_Rusty1",
"Exile_Car_Offroad_Rusty2",
"Exile_Car_Offroad_Rusty3",
"Exile_Car_Offroad_White",
"Exile_Car_OldTractor_Red",
"Exile_Car_ProwlerLight",
"Exile_Car_ProwlerUnarmed",
"Exile_Car_QilinUnarmed",
"Exile_Car_Strider",
"Exile_Car_SUV_Armed_Black",
"Exile_Car_SUV_Black",
"Exile_Car_SUV_Grey",
"Exile_Car_SUV_Orange",
"Exile_Car_SUV_Red",
"Exile_Car_SUV_Rusty1",
"Exile_Car_SUV_Rusty2",
"Exile_Car_SUV_Rusty3",
"Exile_Car_SUVXL_Black",
"Exile_Car_Tempest",
"Exile_Car_TowTractor_White",
"Exile_Car_Tractor_Red",
"Exile_Car_UAZ_Green",
"Exile_Car_UAZ_Open_Green",
"Exile_Car_Ural_Covered_Blue",
"Exile_Car_Ural_Covered_Military",
"Exile_Car_Ural_Covered_Worker",
"Exile_Car_Ural_Covered_Yellow",
"Exile_Car_Ural_Open_Blue",
"Exile_Car_Ural_Open_Military",
"Exile_Car_Ural_Open_Worker",
"Exile_Car_Ural_Open_Yellow",
"Exile_Car_V3S_Covered",
"Exile_Car_V3S_Open",
"Exile_Car_Van_Black",
"Exile_Car_Van_Box_Black",
"Exile_Car_Van_Box_Guerilla01",
"Exile_Car_Van_Box_Guerilla02",
"Exile_Car_Van_Box_Guerilla03",
"Exile_Car_Van_Box_Guerilla04",
"Exile_Car_Van_Box_Guerilla05",
"Exile_Car_Van_Box_Guerilla06",
"Exile_Car_Van_Box_Guerilla07",
"Exile_Car_Van_Box_Guerilla08",
"Exile_Car_Van_Box_Red",
"Exile_Car_Van_Box_White",
"Exile_Car_Van_Fuel_Black",
"Exile_Car_Van_Fuel_Guerilla01",
"Exile_Car_Van_Fuel_Guerilla02",
"Exile_Car_Van_Fuel_Guerilla03",
"Exile_Car_Van_Fuel_Red",
"Exile_Car_Van_Fuel_White",
"Exile_Car_Van_Guerilla01",
"Exile_Car_Van_Guerilla02",
"Exile_Car_Van_Guerilla03",
"Exile_Car_Van_Guerilla04",
"Exile_Car_Van_Guerilla05",
"Exile_Car_Van_Guerilla06",
"Exile_Car_Van_Guerilla07",
"Exile_Car_Van_Guerilla08",
"Exile_Car_Van_Red",
"Exile_Car_Van_White",
"Exile_Car_Volha_Black",
"Exile_Car_Volha_Blue",
"Exile_Car_Volha_White",
"Exile_Car_Zamak",
// Tanks
// Boats
"Exile_Boat_MotorBoat_Orange",
"Exile_Boat_MotorBoat_Police",
"Exile_Boat_MotorBoat_White",
"Exile_Boat_RHIB",
"Exile_Boat_RubberDuck_Black",
"Exile_Boat_RubberDuck_Blue",
"Exile_Boat_RubberDuck_CSAT",
"Exile_Boat_RubberDuck_Digital",
"Exile_Boat_RubberDuck_Orange",
"Exile_Boat_SDV_CSAT",
"Exile_Boat_SDV_Digital",
"Exile_Boat_SDV_Grey",
"Exile_Boat_WaterScooter",
// Helis
"Exile_Chopper_Hellcat_FIA",
"Exile_Chopper_Hellcat_Green",
"Exile_Chopper_Huey_Armed_Desert",
"Exile_Chopper_Huey_Armed_Green",
"Exile_Chopper_Huey_Desert",
"Exile_Chopper_Huey_Green",
"Exile_Chopper_Hummingbird_Civillian_Blue",
"Exile_Chopper_Hummingbird_Civillian_BlueLine",
"Exile_Chopper_Hummingbird_Civillian_Digital",
"Exile_Chopper_Hummingbird_Civillian_Elliptical",
"Exile_Chopper_Hummingbird_Civillian_Furious",
"Exile_Chopper_Hummingbird_Civillian_GrayWatcher",
"Exile_Chopper_Hummingbird_Civillian_ION",
"Exile_Chopper_Hummingbird_Civillian_Jeans",
"Exile_Chopper_Hummingbird_Civillian_Light",
"Exile_Chopper_Hummingbird_Civillian_Red",
"Exile_Chopper_Hummingbird_Civillian_Shadow",
"Exile_Chopper_Hummingbird_Civillian_Sheriff",
"Exile_Chopper_Hummingbird_Civillian_Speedy",
"Exile_Chopper_Hummingbird_Civillian_Sunset",
"Exile_Chopper_Hummingbird_Civillian_Vrana",
"Exile_Chopper_Hummingbird_Civillian_Wasp",
"Exile_Chopper_Hummingbird_Civillian_Wave",
"Exile_Chopper_Hummingbird_Green",
"Exile_Chopper_Huron_Black",
"Exile_Chopper_Huron_Green",
"Exile_Chopper_Mohawk_FIA",
"Exile_Chopper_Orca_Black",
"Exile_Chopper_Orca_BlackCustom",
"Exile_Chopper_Orca_CSAT",
"Exile_Chopper_Taru_Black",
"Exile_Chopper_Taru_Covered_Black",
"Exile_Chopper_Taru_Covered_CSAT",
"Exile_Chopper_Taru_CSAT",
"Exile_Chopper_Taru_Transport_Black",
"Exile_Chopper_Taru_Transport_CSAT",
// Planes
"Exile_Plane_AN2_Green",
"Exile_Plane_AN2_Stripe",
"Exile_Plane_AN2_White",
"Exile_Plane_BlackfishInfantry",
"Exile_Plane_BlackfishVehicle",
"Exile_Plane_Ceasar",
"Exile_Plane_Cessna"
];

View File

@ -0,0 +1,226 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
Lists weapons that should excluded from the output for the script.
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
/*
Include any classnames you wish to exclude from the lists generated by the tool by adding them to _knownWeapons using the formating below.
The list below includes the default Arma 3 MX series of assaault rifles as of APEX.
"arifle_MX_Base_F",
"arifle_MXC_F",
"arifle_MX_F",
"arifle_MXM_F",
"arifle_MXC_Black_F",
"arifle_MX_Black_F",
"arifle_MXM_Black_F"
*/
_excludedWeapons = [
/*
Exile Trader Item Lists
*/
// Assault Rifles
"Exile_Weapon_AK107",
"Exile_Weapon_AK74",
"Exile_Weapon_AK47",
"Exile_Weapon_AKM",
"Exile_Weapon_AKS",
"Exile_Weapon_AKS_Gold",
"exile_arifle_M16A4",
"Exile_Weapon_M16A4",
"exile_arifle_M16A2",
"Exile_Weapon_M16A2",
"exile_arifle_M4",
"Exile_Weapon_M4",
"Exile_Weapon_DMR",
"Exile_Weapon_ksvk",
"Exile_Weapon_LeeEnfield",
"Exile_Weapon_CZ550",
"Exile_Weapon_SVD",
"Exile_Weapon_SVDCamo",
"Exile_Weapon_VSSVintorez",
"Exile_Weapon_RPK",
"Exile_Weapon_M1014",
// Assault Rifles with GL
"Exile_Weapon_AK107_GL",
"Exile_Weapon_AK74_GL",
// LMGs
"Exile_Weapon_PK",
"Exile_Weapon_PKP",
// SMGs
// Snipers
"exile_weapons_m107",
"Exile_Weapon_m107",
// DMRs
// Launchers
// Handguns
"Exile_Weapon_Colt1911",
"Exile_Weapon_Makarov",
"Exile_Weapon_Taurus",
"Exile_Weapon_TaurusGold",
"exile_rifle_SA61",
"Exile_Weapon_SA61",
// Shotguns
// Throwables
"Exile_Melee_Axe",
"Exile_Melee_Shovel",
"Exile_Melee_SledgeHammer",
// Magazines
"Exile_Magazine_Swing",
"Exile_Magazine_Boing",
"Exile_Magazine_Swoosh",
"Exile_Magazine_30Rnd_545x39_AK",
"Exile_Magazine_30Rnd_545x39_AK_Green",
"Exile_Magazine_30Rnd_545x39_AK_Red",
"Exile_Magazine_30Rnd_545x39_AK_White",
"Exile_Magazine_30Rnd_545x39_AK_Yellow",
"Exile_Magazine_30Rnd_762x39_AK",
"30Rnd_556x45_Stanag",
"30Rnd_556x45_Stanag_green",
"30Rnd_556x45_Stanag_red",
"30Rnd_556x45_Stanag_Tracer_Red",
"30Rnd_556x45_Stanag_Tracer_Green",
"30Rnd_556x45_Stanag_Tracer_Yellow",
"Exile_Magazine_20Rnd_762x51_DMR",
"Exile_Magazine_20Rnd_762x51_DMR_Yellow",
"Exile_Magazine_20Rnd_762x51_DMR_Red",
"Exile_Magazine_20Rnd_762x51_DMR_Green",
"Exile_Magazine_5Rnd_127x108_APDS_KSVK",
"Exile_Magazine_5Rnd_127x108_KSVK",
"Exile_Magazine_5Rnd_127x108_KSVK_Bullet_Cam_Mag",
"Exile_Magazine_5Rnd_127x108_APDS_KSVK_Bullet_Cam_Mag",
"10Rnd_127x99_m107",
"Exile_Magazine_10Rnd_127x99_m107",
"Exile_Magazine_10Rnd_127x99_m107_Bullet_Cam_Mag",
"Exile_Magazine_10Rnd_303",
"Exile_Magazine_5Rnd_22LR",
"Exile_Magazine_10Rnd_762x54",
"Exile_Magazine_10Rnd_9x39",
"Exile_Magazine_20Rnd_9x39",
"Exile_Magazine_45Rnd_545x39_RPK_Green",
"Exile_Magazine_75Rnd_545x39_RPK_Green",
"Exile_Magazine_100Rnd_762x54_PK_Green",
"Exile_Magazine_7Rnd_45ACP",
"Exile_Magazine_8Rnd_9x18",
"Exile_Magazine_6Rnd_45ACP",
"10Rnd_765x17ball",
"20Rnd_765x17ball",
"Exile_Magazine_10Rnd_765x17_SA61",
"Exile_Magazine_20Rnd_765x17_SA61",
"Exile_Magazine_8Rnd_74Slug",
"Exile_Magazine_8Rnd_74Pellets",
// Optics
"optic_Nightstalker",
"optic_tws",
"optic_tws_mg",
"optic_NVS",
"optic_DMS",
"optic_LRPS",
"optic_ams",
"optic_AMS_snd",
"optic_AMS_khk",
"optic_KHS_blk",
"optic_KHS_tan",
"optic_KHS_hex",
"optic_KHS_old",
"optic_SOS",
"optic_MRCO",
"optic_Arco",
"optic_aco",
"optic_ACO_grn",
"optic_aco_smg",
"optic_ACO_grn_smg",
"optic_hamr",
"optic_Holosight",
"optic_Holosight_smg",
"optic_Hamr_khk_F",
"optic_SOS_khk_F",
"optic_Arco_ghex_F",
"optic_Arco_blk_F",
"optic_DMS_ghex_F",
"optic_ERCO_blk_F",
"optic_ERCO_khk_F",
"optic_ERCO_snd_F",
"optic_LRPS_ghex_F",
"optic_LRPS_tna_F",
"optic_Holosight_blk_F",
"optic_Holosight_khk_F",
"optic_Holosight_smg_blk_F",
"optic_Holosight_smg_khk_F",
"optic_Hamr",
"optic_AMS",
// Muzzles
"muzzle_snds_M",
"muzzle_snds_L",
// Pointers
"acc_flashlight",
"acc_pointer_IR",
// Underbarrel
"bipod_01_F_snd",
"bipod_01_F_blk",
"bipod_01_F_mtp",
"bipod_01_F_khk",
"bipod_02_F_blk",
"bipod_02_F_tan",
"bipod_02_F_hex",
"bipod_03_F_blk",
"bipod_03_F_oli"
];

View File

@ -0,0 +1,67 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
Lists weapons that should excluded from the output for the script.
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
/*
Include any classnames you wish to exclude from the lists generated by the tool using the formating below.
The list below includes certains default Arma 3 glasses as of APEX.
"G_Sport_Red",
"G_Tactical_Black",
"G_Aviator",
"G_Lady_Mirror",
"G_Lady_Dark",
"G_Lady_Red",
"G_Lady_Blue",
"G_Diving",
"G_B_Diving",
"G_O_Diving",
"G_I_Diving"
*/
_excludedWearables = [
// Uniforms
"Exile_Uniform_BambiOverall",
"Exile_Uniform_ExileCustoms",
"Exile_Uniform_Wetsuit_AAF",
"Exile_Uniform_Wetsuit_CSAT",
"Exile_Uniform_Wetsuit_NATO",
"Exile_Uniform_Woodland",
// Headgear
"Exile_Cap_Exile",
"Exile_Headgear_SafetyHelmet",
"Exile_Headgear_SantaHat",
// Vests
"Exile_Vest_Rebreather_AAF",
"Exile_Vest_Rebreather_CSAT",
"Exile_Vest_Rebreather_NATO",
"Exile_Vest_Snow",
// Backpacks
// Glasses
"Exile_Glasses_Diving_AAF",
"Exile_Glasses_Diving_CSAT",
"Exile_Glasses_Diving_NATO"
];

View File

@ -1,266 +0,0 @@
_airBase = [
"Air",
"Helicopter",
"Plane",
"ParachuteBase",
"GNT_C185",
"GNT_C185F",
"GNT_C185T",
"Heli_Transport_02_base_F",
"Heli_Transport_CDN888",
"Heli_Transport_CDN808",
"Heli_Transport_DK09",
"Heli_Transport_DK10",
"Heli_Transport_DZ",
"GunShip",
"TransportHelicopter",
"UAV",
"Fighter",
"CargoAirplane",
"Plane_Base_F",
"Plane_CAS_01_base_F",
"B_Parachute_02_F",
"Helicopter_Base_F",
"Helicopter_Base_H",
"Heli_Light_01_base_F",
"Heli_Light_01_unarmed_base_F",
"Heli_Light_01_civil_base_F",
"Heli_Light_01_armed_base_F",
"Heli_Light_01_dynamicLoadout_base_F",
"B_Heli_Light_01_F",
"B_Heli_Light_01_armed_F",
"B_Heli_Light_01_dynamicLoadout_F",
"C_Heli_Light_01_civil_F",
"C_Heli_light_01_blue_F",
"C_Heli_light_01_red_F",
"C_Heli_light_01_ion_F",
"C_Heli_light_01_blueLine_F",
"C_Heli_light_01_digital_F",
"C_Heli_light_01_elliptical_F",
"C_Heli_light_01_furious_F",
"C_Heli_light_01_graywatcher_F",
"C_Heli_light_01_jeans_F",
"C_Heli_light_01_light_F",
"C_Heli_light_01_shadow_F",
"C_Heli_light_01_sheriff_F",
"C_Heli_light_01_speedy_F",
"C_Heli_light_01_sunset_F",
"C_Heli_light_01_vrana_F",
"C_Heli_light_01_wasp_F",
"C_Heli_light_01_wave_F",
"C_Heli_light_01_stripped_F",
"C_Heli_light_01_luxe_F",
"B_Heli_Light_01_stripped_F",
"Heli_Light_02_base_F",
"Heli_Light_02_unarmed_base_F",
"Heli_Light_02_dynamicLoadout_base_F",
"O_Heli_Light_02_dynamicLoadout_F",
"O_Heli_Light_02_F",
"O_Heli_Light_02_unarmed_F",
"O_Heli_Light_02_v2_F",
"ParachuteWest",
"ParachuteEast",
"ParachuteG",
"Parachute",
"NonSteerable_Parachute_F",
"Paraglide",
"Steerable_Parachute_F",
"Heli_Attack_01_base_F",
"Heli_Attack_01_dynamicLoadout_base_F",
"B_Heli_Attack_01_F",
"B_Heli_Attack_01_dynamicLoadout_F",
"Heli_Attack_02_base_F",
"Heli_Attack_02_dynamicLoadout_base_F",
"O_Heli_Attack_02_F",
"O_Heli_Attack_02_black_F",
"O_Heli_Attack_02_dynamicLoadout_F",
"O_Heli_Attack_02_dynamicLoadout_black_F",
"Heli_Transport_01_base_F",
"B_Heli_Transport_01_F",
"B_Heli_Transport_01_camo_F",
"I_Heli_Transport_02_F",
"Parachute_02_base_F",
"O_Parachute_02_F",
"I_Parachute_02_F",
"Plane_Fighter_03_base_F",
"Plane_Fighter_03_dynamicLoadout_base_F",
"I_Plane_Fighter_03_CAS_F",
"I_Plane_Fighter_03_AA_F",
"I_Plane_Fighter_03_dynamicLoadout_F",
"Heli_light_03_base_F",
"Heli_light_03_dynamicLoadout_base_F",
"Heli_light_03_unarmed_base_F",
"I_Heli_light_03_F",
"I_Heli_light_03_dynamicLoadout_F",
"I_Heli_light_03_unarmed_F",
"I_Heli_light_03_base_F",
"I_Heli_light_03_unarmed_base_F",
"Plane_CAS_01_dynamicLoadout_base_F",
"B_Plane_CAS_01_F",
"B_Plane_CAS_01_dynamicLoadout_F",
"Plane_CAS_02_base_F",
"Plane_CAS_02_dynamicLoadout_base_F",
"O_Plane_CAS_02_F",
"O_Plane_CAS_02_dynamicLoadout_F",
"UAV_01_base_F",
"B_UAV_01_F",
"O_UAV_01_F",
"I_UAV_01_F",
"UAV_02_base_F",
"UAV_02_CAS_base_F",
"B_UAV_02_F",
"O_UAV_02_F",
"I_UAV_02_F",
"B_UAV_02_CAS_F",
"O_UAV_02_CAS_F",
"I_UAV_02_CAS_F",
"UAV_02_dynamicLoadout_base_F",
"B_UAV_02_dynamicLoadout_F",
"O_UAV_02_dynamicLoadout_F",
"I_UAV_02_dynamicLoadout_F",
"Heli_Transport_03_base_F",
"B_Heli_Transport_03_F",
"Heli_Transport_03_unarmed_base_F",
"B_Heli_Transport_03_unarmed_F",
"B_Heli_Transport_03_black_F",
"B_Heli_Transport_03_unarmed_green_F",
"B_Heli_Transport_03_base_F",
"B_Heli_Transport_03_unarmed_base_F",
"Heli_Transport_04_base_F",
"O_Heli_Transport_04_F",
"O_Heli_Transport_04_ammo_F",
"O_Heli_Transport_04_bench_F",
"O_Heli_Transport_04_box_F",
"O_Heli_Transport_04_covered_F",
"O_Heli_Transport_04_fuel_F",
"O_Heli_Transport_04_medevac_F",
"O_Heli_Transport_04_repair_F",
"O_Heli_Transport_04_black_F",
"O_Heli_Transport_04_ammo_black_F",
"O_Heli_Transport_04_bench_black_F",
"O_Heli_Transport_04_box_black_F",
"O_Heli_Transport_04_covered_black_F",
"O_Heli_Transport_04_fuel_black_F",
"O_Heli_Transport_04_medevac_black_F",
"O_Heli_Transport_04_repair_black_F",
"Exile_Chopper_Hellcat_Abstract",
"Exile_Chopper_Hellcat_Green",
"Exile_Chopper_Hellcat_FIA",
"UH1H_Clo",
"Exile_Chopper_Huey_Abstract",
"Exile_Chopper_Huey_Green",
"Exile_Chopper_Huey_Desert",
"UH1H_M240",
"Exile_Chopper_Huey_Armed_Abstract",
"Exile_Chopper_Huey_Armed_Green",
"Exile_Chopper_Huey_Armed_Desert",
"Exile_Chopper_Hummingbird_Abstract",
"Exile_Chopper_Hummingbird_Green",
"Exile_Chopper_Hummingbird_Civillian_Abstract",
"Exile_Chopper_Hummingbird_Civillian_Blue",
"Exile_Chopper_Hummingbird_Civillian_Red",
"Exile_Chopper_Hummingbird_Civillian_ION",
"Exile_Chopper_Hummingbird_Civillian_BlueLine",
"Exile_Chopper_Hummingbird_Civillian_Digital",
"Exile_Chopper_Hummingbird_Civillian_Elliptical",
"Exile_Chopper_Hummingbird_Civillian_Furious",
"Exile_Chopper_Hummingbird_Civillian_GrayWatcher",
"Exile_Chopper_Hummingbird_Civillian_Jeans",
"Exile_Chopper_Hummingbird_Civillian_Light",
"Exile_Chopper_Hummingbird_Civillian_Shadow",
"Exile_Chopper_Hummingbird_Civillian_Sheriff",
"Exile_Chopper_Hummingbird_Civillian_Speedy",
"Exile_Chopper_Hummingbird_Civillian_Sunset",
"Exile_Chopper_Hummingbird_Civillian_Vrana",
"Exile_Chopper_Hummingbird_Civillian_Wasp",
"Exile_Chopper_Hummingbird_Civillian_Wave",
"Exile_Chopper_Huron_Abstract",
"Exile_Chopper_Huron_Black",
"Exile_Chopper_Huron_Green",
"Exile_Chopper_Mohawk_Abstract",
"Exile_Chopper_Mohawk_FIA",
"Exile_Chopper_Orca_Abstract",
"Exile_Chopper_Orca_CSAT",
"Exile_Chopper_Orca_Black",
"Exile_Chopper_Orca_BlackCustom",
"Exile_Chopper_Taru_Abstract",
"Exile_Chopper_Taru_CSAT",
"Exile_Chopper_Taru_Black",
"Exile_Chopper_Taru_Covered_Abstract",
"Exile_Chopper_Taru_Covered_CSAT",
"Exile_Chopper_Taru_Covered_Black",
"Exile_Chopper_Taru_Transport_Abstract",
"Exile_Chopper_Taru_Transport_CSAT",
"Exile_Chopper_Taru_Transport_Black",
"an2_base",
"Exile_Plane_AN2_Abstract",
"Exile_Plane_AN2_Green",
"Exile_Plane_AN2_White",
"Exile_Plane_AN2_Stripe",
"B_T_VTOL_01_infantry_F",
"Exile_Plane_BlackfishInfantry",
"B_T_VTOL_01_vehicle_F",
"Exile_Plane_BlackfishVehicle",
"C_Plane_Civil_01_F",
"Exile_Plane_Ceasar",
"Exile_Plane_Cessna",
"An2_tk",
"An2_af",
"An2_a2",
"UH1H_base",
"UH1HL_base",
"UH1H_Closed",
"UH1H_Closed_TK",
"UH1H_M240_TK",
"VTOL_Base_F",
"I_C_Heli_Light_01_civil_F",
"B_CTRG_Heli_Transport_01_sand_F",
"B_CTRG_Heli_Transport_01_tropic_F",
"Plane_Civil_01_base_F",
"C_Plane_Civil_01_racing_F",
"I_C_Plane_Civil_01_F",
"UAV_03_base_F",
"UAV_03_dynamicLoadout_base_F",
"B_T_UAV_03_F",
"B_T_UAV_03_dynamicLoadout_F",
"UAV_04_base_F",
"O_T_UAV_04_CAS_F",
"VTOL_01_base_F",
"VTOL_01_armed_base_F",
"VTOL_01_unarmed_base_F",
"VTOL_01_infantry_base_F",
"VTOL_01_vehicle_base_F",
"B_T_VTOL_01_armed_F",
"B_T_VTOL_01_infantry_blue_F",
"B_T_VTOL_01_infantry_olive_F",
"B_T_VTOL_01_vehicle_blue_F",
"B_T_VTOL_01_vehicle_olive_F",
"B_T_VTOL_01_armed_blue_F",
"B_T_VTOL_01_armed_olive_F",
"VTOL_02_base_F",
"VTOL_02_infantry_base_F",
"VTOL_02_vehicle_base_F",
"VTOL_02_infantry_dynamicLoadout_base_F",
"VTOL_02_vehicle_dynamicLoadout_base_F",
"O_T_VTOL_02_infantry_F",
"O_T_VTOL_02_vehicle_F",
"O_T_VTOL_02_infantry_dynamicLoadout_F",
"O_T_VTOL_02_vehicle_dynamicLoadout_F",
"O_T_VTOL_02_infantry_hex_F",
"O_T_VTOL_02_infantry_ghex_F",
"O_T_VTOL_02_infantry_grey_F",
"O_T_VTOL_02_vehicle_hex_F",
"O_T_VTOL_02_vehicle_ghex_F",
"O_T_VTOL_02_vehicle_grey_F",
"Plane_Fighter_01_Base_F",
"B_Plane_Fighter_01_F",
"B_Plane_Fighter_01_Stealth_F",
"Plane_Fighter_02_Base_F",
"O_Plane_Fighter_02_F",
"O_Plane_Fighter_02_Stealth_F",
"Plane_Fighter_04_Base_F",
"I_Plane_Fighter_04_F",
"UAV_05_Base_F",
"B_UAV_05_F"
];

View File

@ -1,18 +0,0 @@
_airBase = [];
#include "airBase.sqf"
_veh = (configfile >> "CfgVehicles") call BIS_fnc_getCfgSubClasses;
_veh sort true;
systemChat format[" _veh contains %1 entries",count _veh];
_index = 0;
_aircraft = [];
_clipboard = "";
{
if ( (_x isKindOf "Air") && !(_x in _airBase) ) then
{
//_air pushback _x;
_clipboard = _clipboard + format['"%1",%2',_x,endl];
};
}forEach _veh;
copyToClipboard _clipboard;

View File

@ -1,33 +0,0 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_vehiclesBase = [];
#include "vehiclesBase.sqf"
_veh = (configfile >> "CfgVehicles") call BIS_fnc_getCfgSubClasses;
_veh sort true;
_cars = [];
_clipboard = "";
{
if (_x isKindOf "Air" && !(_x in _vehiclesBase)) then
{
_cars pushback _x;
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 15000; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 15000; };%2",_x,endl];
};
};
}forEach _veh;
copyToClipboard _clipboard;
systemChat "Vehicles Pricelist Generated";

View File

@ -1,174 +0,0 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
This list of headgear will be excluded from the output of the relevant scripts.
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_baseHeadgear = [
"Exile_Cap_Exile",
"H_Bandanna_blu",
"H_Bandanna_camo",
"H_Bandanna_cbr",
"H_Bandanna_gry",
"H_Bandanna_khk",
"H_Bandanna_khk_hs",
"H_Bandanna_mcamo",
"H_Bandanna_sand",
"H_Bandanna_sgg",
"H_Bandanna_surfer",
"H_Bandanna_surfer_blk",
"H_Bandanna_surfer_grn",
"H_BandMask_blk",
"H_BandMask_demon",
"H_BandMask_khk",
"H_BandMask_reaper",
"H_Beret_02",
"H_Beret_blk",
"H_Beret_blk_POLICE",
"H_Beret_brn_SF",
"H_Beret_Colonel",
"H_Beret_gen_F",
"H_Beret_grn",
"H_Beret_grn_SF",
"H_Beret_ocamo",
"H_Beret_red",
"H_Booniehat_dgtl",
"H_Booniehat_dirty",
"H_Booniehat_grn",
"H_Booniehat_indp",
"H_Booniehat_khk",
"H_Booniehat_khk_hs",
"H_Booniehat_mcamo",
"H_Booniehat_oli",
"H_Booniehat_tan",
"H_Booniehat_tna_F",
"H_Cap_blk",
"H_Cap_blk_CMMG",
"H_Cap_blk_ION",
"H_Cap_blk_Raven",
"H_Cap_blk_Syndikat_F",
"H_Cap_blu",
"H_Cap_brn_SPECOPS",
"H_Cap_grn",
"H_Cap_grn_BI",
"H_Cap_grn_Syndikat_F",
"H_Cap_headphones",
"H_Cap_khaki_specops_UK",
"H_Cap_marshal",
"H_Cap_oli",
"H_Cap_oli_hs",
"H_Cap_oli_Syndikat_F",
"H_Cap_police",
"H_Cap_press",
"H_Cap_red",
"H_Cap_surfer",
"H_Cap_tan",
"H_Cap_tan_specops_US",
"H_Cap_tan_Syndikat_F",
"H_Cap_usblack",
"H_CrewHelmetHeli_B",
"H_CrewHelmetHeli_I",
"H_CrewHelmetHeli_O",
"H_Hat_blue",
"H_Hat_brown",
"H_Hat_camo",
"H_Hat_checker",
"H_Hat_grey",
"H_Hat_tan",
"H_Helmet_Kerry",
"H_Helmet_Skate",
"H_HelmetB",
"H_HelmetB_black",
"H_HelmetB_camo",
"H_HelmetB_desert",
"H_HelmetB_Enh_tna_F",
"H_HelmetB_grass",
"H_HelmetB_light",
"H_HelmetB_light_black",
"H_HelmetB_light_desert",
"H_HelmetB_light_grass",
"H_HelmetB_light_sand",
"H_HelmetB_light_snakeskin",
"H_HelmetB_Light_tna_F",
"H_HelmetB_paint",
"H_HelmetB_plain_blk",
"H_HelmetB_plain_mcamo",
"H_HelmetB_sand",
"H_HelmetB_snakeskin",
"H_HelmetB_TI_tna_F",
"H_HelmetB_tna_F",
"H_HelmetCrew_B",
"H_HelmetCrew_I",
"H_HelmetCrew_O",
"H_HelmetCrew_O_ghex_F",
"H_HelmetIA",
"H_HelmetIA_camo",
"H_HelmetIA_net",
"H_HelmetLeaderO_ghex_F",
"H_HelmetLeaderO_ocamo",
"H_HelmetLeaderO_oucamo",
"H_HelmetO_ghex_F",
"H_HelmetO_ocamo",
"H_HelmetO_oucamo",
"H_HelmetO_ViperSP_ghex_F",
"H_HelmetO_ViperSP_hex_F",
"H_HelmetSpecB",
"H_HelmetSpecB_blk",
"H_HelmetSpecB_paint1",
"H_HelmetSpecB_paint2",
"H_HelmetSpecB_sand",
"H_HelmetSpecB_snakeskin",
"H_HelmetSpecO_blk",
"H_HelmetSpecO_ghex_F",
"H_HelmetSpecO_ocamo",
"H_MilCap_blue",
"H_MilCap_dgtl",
"H_MilCap_gen_F",
"H_MilCap_ghex_F",
"H_MilCap_gry",
"H_MilCap_mcamo",
"H_MilCap_ocamo",
"H_MilCap_oucamo",
"H_MilCap_rucamo",
"H_MilCap_tna_F",
"H_PilotHelmetFighter_B",
"H_PilotHelmetFighter_I",
"H_PilotHelmetFighter_O",
"H_PilotHelmetHeli_B",
"H_PilotHelmetHeli_I",
"H_PilotHelmetHeli_O",
"H_RacingHelmet_1_black_F",
"H_RacingHelmet_1_blue_F",
"H_RacingHelmet_1_F",
"H_RacingHelmet_1_green_F",
"H_RacingHelmet_1_orange_F",
"H_RacingHelmet_1_red_F",
"H_RacingHelmet_1_white_F",
"H_RacingHelmet_1_yellow_F",
"H_RacingHelmet_2_F",
"H_RacingHelmet_3_F",
"H_RacingHelmet_4_F",
"H_Shemag_khk",
"H_Shemag_olive",
"H_Shemag_olive_hs",
"H_Shemag_tan",
"H_ShemagOpen_khk",
"H_ShemagOpen_tan",
"H_StrawHat",
"H_StrawHat_dark",
"H_TurbanO_blk",
"H_Watchcap_blk",
"H_Watchcap_camo",
"H_Watchcap_cbr",
"H_Watchcap_khk",
"H_Watchcap_sgg",
"HelmetBase"
];

View File

@ -1,797 +0,0 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
Lists magazines that should excluded from the output for the script.
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_baseMagazines = [
// Magazines
"100Rnd_580x42_Mag_F",
"100Rnd_580x42_Mag_Tracer_F",
"100Rnd_65x39_caseless_mag",
"100Rnd_65x39_caseless_mag_Tracer",
"100Rnd_762x54_PK_Tracer_Green",
"100Rnd_762x54_PK_Tracer_Red",
"100Rnd_762x54_PK_Tracer_White",
"100Rnd_762x54_PK_Tracer_Yellow",
"10Rnd_127x54_Mag",
"10Rnd_127x99_m107",
"10Rnd_338_Mag",
"10Rnd_50BW_Mag_F",
"10Rnd_762x51_Mag",
"10Rnd_762x54_Mag",
"10Rnd_762x54_SVD",
"10Rnd_765x17ball",
"10Rnd_93x64_DMR_05_Mag",
"10Rnd_9x21_Mag",
"10Rnd_9x39_VSS",
"10x_303_M",
"11Rnd_45ACP_Mag",
"120Rnd_CMFlare_Chaff_Magazine",
"120Rnd_CMFlareMagazine",
"130Rnd_338_Mag",
"150Rnd_556x45_Drum_Mag_F",
"150Rnd_556x45_Drum_Mag_Tracer_F",
"150Rnd_762x51_Box",
"150Rnd_762x51_Box_Tracer",
"150Rnd_762x54_Box",
"150Rnd_762x54_Box_Tracer",
"150Rnd_93x64_Mag",
"168Rnd_CMFlare_Chaff_Magazine",
"16Rnd_9x21_green_Mag",
"16Rnd_9x21_Mag",
"16Rnd_9x21_red_Mag",
"16Rnd_9x21_yellow_Mag",
"192Rnd_CMFlare_Chaff_Magazine",
"1Rnd_HE_Grenade_shell",
"1Rnd_Smoke_Grenade_shell",
"1Rnd_SmokeBlue_Grenade_shell",
"1Rnd_SmokeGreen_Grenade_shell",
"1Rnd_SmokeOrange_Grenade_shell",
"1Rnd_SmokePurple_Grenade_shell",
"1Rnd_SmokeRed_Grenade_shell",
"1Rnd_SmokeYellow_Grenade_shell",
"200Rnd_556x45_Box_F",
"200Rnd_556x45_Box_Red_F",
"200Rnd_556x45_Box_Tracer_F",
"200Rnd_556x45_Box_Tracer_Red_F",
"200Rnd_65x39_cased_Box",
"200Rnd_65x39_cased_Box_Tracer",
"20Rnd_556x45_UW_mag",
"20Rnd_650x39_Cased_Mag_F",
"20Rnd_762x51_DMR",
"20Rnd_762x51_Mag",
"20Rnd_765x17ball",
"20Rnd_9x39_VSS",
"20Rnd_Green_Tracer_762x51_DMR",
"20Rnd_Red_Tracer_762x51_DMR",
"20Rnd_Yellow_Tracer_762x51_DMR",
"240Rnd_CMFlare_Chaff_Magazine",
"240Rnd_CMFlareMagazine",
"300Rnd_CMFlare_Chaff_Magazine",
"30Rnd_45ACP_Mag_SMG_01",
"30Rnd_45ACP_Mag_SMG_01_Tracer_Green",
"30Rnd_45ACP_Mag_SMG_01_Tracer_Red",
"30Rnd_45ACP_Mag_SMG_01_Tracer_Yellow",
"30Rnd_545x39_AK",
"30Rnd_545x39_Mag_F",
"30Rnd_545x39_Mag_Green_F",
"30Rnd_545x39_Mag_Tracer_F",
"30Rnd_545x39_Mag_Tracer_Green_F",
"30Rnd_556x45_Stanag",
"30Rnd_556x45_Stanag_green",
"30Rnd_556x45_Stanag_red",
"30Rnd_556x45_Stanag_Tracer_Green",
"30Rnd_556x45_Stanag_Tracer_Red",
"30Rnd_556x45_Stanag_Tracer_Yellow",
"30Rnd_580x42_Mag_F",
"30Rnd_580x42_Mag_Tracer_F",
"30Rnd_65x39_caseless_green",
"30Rnd_65x39_caseless_green_mag_Tracer",
"30Rnd_65x39_caseless_mag",
"30Rnd_65x39_caseless_mag_Tracer",
"30Rnd_762x39_AK47_M",
"30Rnd_762x39_Mag_F",
"30Rnd_762x39_Mag_Green_F",
"30Rnd_762x39_Mag_Tracer_F",
"30Rnd_762x39_Mag_Tracer_Green_F",
"30Rnd_9x21_Green_Mag",
"30Rnd_9x21_Mag",
"30Rnd_9x21_Mag_SMG_02",
"30Rnd_9x21_Mag_SMG_02_Tracer_Green",
"30Rnd_9x21_Mag_SMG_02_Tracer_Red",
"30Rnd_9x21_Mag_SMG_02_Tracer_Yellow",
"30Rnd_9x21_Red_Mag",
"30Rnd_9x21_Yellow_Mag",
"30Rnd_Green_Tracer_545x39_AK",
"30Rnd_Red_Tracer_545x39_AK",
"30Rnd_White_Tracer_545x39_AK",
"30Rnd_Yellow_Tracer_545x39_AK",
"3Rnd_HE_Grenade_shell",
"3Rnd_Smoke_Grenade_shell",
"3Rnd_SmokeBlue_Grenade_shell",
"3Rnd_SmokeGreen_Grenade_shell",
"3Rnd_SmokeOrange_Grenade_shell",
"3Rnd_SmokePurple_Grenade_shell",
"3Rnd_SmokeRed_Grenade_shell",
"3Rnd_SmokeYellow_Grenade_shell",
"3Rnd_UGL_FlareCIR_F",
"3Rnd_UGL_FlareGreen_F",
"3Rnd_UGL_FlareRed_F",
"3Rnd_UGL_FlareWhite_F",
"3Rnd_UGL_FlareYellow_F",
"45Rnd_Green_Tracer_545x39_RPK",
"50Rnd_UK59_762x54_Tracer_Green",
"556",
"5Rnd_127x108_APDS_KSVK",
"5Rnd_127x108_APDS_Mag",
"5Rnd_127x108_KSVK",
"5Rnd_127x108_Mag",
"5x_22_LR_17_HMR_M",
"60Rnd_CMFlare_Chaff_Magazine",
"60Rnd_CMFlareMagazine",
"6Rnd_45ACP",
"6Rnd_45ACP_Cylinder",
"6Rnd_GreenSignal_F",
"6Rnd_RedSignal_F",
"75Rnd_Green_Tracer_545x39_RPK",
"762",
"7Rnd_408_Mag",
"7Rnd_45ACP_1911",
"8Rnd_9x18_Makarov",
"8Rnd_9x18_MakarovSD",
"8Rnd_B_Beneli_74Pellets",
"8rnd_B_Beneli_74Slug",
"9Rnd_45ACP_Mag",
"Alsatain_Ck",
"Alsatian_Raw",
"APERSBoundingMine_Range_Mag",
"APERSMine_Range_Mag",
"APERSTripMine_Wire_Mag",
"ATMine_Range_Mag",
"B_IR_Grenade",
"burlap",
"CA_Magazine",
"CatShark_Ck",
"CatShark_Raw",
"Chicken_Ck",
"Chicken_Raw",
"ClaymoreDirectionalMine_Remote_Mag",
"cornerDoubleBarrier_1_kit",
"DemoCharge_Remote_Mag",
"domeSmall_Kit",
"doubleBarrier_1_kit",
"Exile_AbstractItem",
"Exile_Item_AlsatianSteak_Cooked",
"Exile_Item_AlsatianSteak_Raw",
"Exile_Item_Bandage",
"Exile_Item_BaseCameraKit",
"Exile_Item_BBQSandwich",
"Exile_Item_BBQSandwich_Cooked",
"Exile_Item_BeefParts",
"Exile_Item_Beer",
"Exile_Item_BreachingCharge_BigMomma",
"Exile_Item_BreachingCharge_Metal",
"Exile_Item_BreachingCharge_Wood",
"Exile_Item_Bullets_556",
"Exile_Item_Bullets_762",
"Exile_Item_BurlapSack",
"Exile_Item_BushKit_Green",
"Exile_Item_CamoTentKit",
"Exile_Item_CampFireKit",
"Exile_Item_Can_Empty",
"Exile_Item_CanOpener",
"Exile_Item_CarWheel",
"Exile_Item_CatFood",
"Exile_Item_CatFood_Cooked",
"Exile_Item_CatSharkFilet_Cooked",
"Exile_Item_CatSharkFilet_Raw",
"Exile_Item_Cement",
"Exile_Item_Cheathas",
"Exile_Item_ChickenFilet_Cooked",
"Exile_Item_ChickenFilet_Raw",
"Exile_Item_ChocolateMilk",
"Exile_Item_ChristmasTinner",
"Exile_Item_ChristmasTinner_Cooked",
"Exile_Item_CockONut",
"Exile_Item_Codelock",
"Exile_Item_ConcreteDoorKit",
"Exile_Item_ConcreteDoorwayKit",
"Exile_Item_ConcreteFloorKit",
"Exile_Item_ConcreteFloorPortKit",
"Exile_Item_ConcreteGateKit",
"Exile_Item_ConcreteStairsKit",
"Exile_Item_ConcreteSupportKit",
"Exile_Item_ConcreteWallKit",
"Exile_Item_ConcreteWindowKit",
"Exile_Item_CookingPot",
"Exile_Item_CordlessScrewdriver",
"Exile_Item_Defibrillator",
"Exile_Item_DogFood",
"Exile_Item_DogFood_Cooked",
"Exile_Item_DsNuts",
"Exile_Item_DuctTape",
"Exile_Item_EMRE",
"Exile_Item_EnergyDrink",
"Exile_Item_ExtensionCord",
"Exile_Item_FinSteak_Cooked",
"Exile_Item_FinSteak_Raw",
"Exile_Item_FireExtinguisher",
"Exile_Item_Flag",
"Exile_Item_FlagStolen1",
"Exile_Item_FlagStolen10",
"Exile_Item_FlagStolen2",
"Exile_Item_FlagStolen3",
"Exile_Item_FlagStolen4",
"Exile_Item_FlagStolen5",
"Exile_Item_FlagStolen6",
"Exile_Item_FlagStolen7",
"Exile_Item_FlagStolen8",
"Exile_Item_FlagStolen9",
"Exile_Item_FloodLightKit",
"Exile_Item_Foolbox",
"Exile_Item_FortificationUpgrade",
"Exile_Item_FuelBarrelEmpty",
"Exile_Item_FuelBarrelFull",
"Exile_Item_FuelCanisterEmpty",
"Exile_Item_FuelCanisterFull",
"Exile_Item_GloriousKnakworst",
"Exile_Item_GloriousKnakworst_Cooked",
"Exile_Item_GoatSteak_Cooked",
"Exile_Item_GoatSteak_Raw",
"Exile_Item_Grinder",
"Exile_Item_Hammer",
"Exile_Item_Handsaw",
"Exile_Item_HBarrier5Kit",
"Exile_Item_Heatpack",
"Exile_Item_InstaDoc",
"Exile_Item_InstantCoffee",
"Exile_Item_JunkMetal",
"Exile_Item_Knife",
"Exile_Item_Laptop",
"Exile_Item_Leaves",
"Exile_Item_LightBulb",
"Exile_Item_MacasCheese",
"Exile_Item_MacasCheese_Cooked",
"Exile_Item_MackerelFilet_Cooked",
"Exile_Item_MackerelFilet_Raw",
"Exile_Item_Magazine01",
"Exile_Item_Magazine02",
"Exile_Item_Magazine03",
"Exile_Item_Magazine04",
"Exile_Item_Matches",
"Exile_Item_MetalBoard",
"Exile_Item_MetalHedgehogKit",
"Exile_Item_MetalPole",
"Exile_Item_MetalScrews",
"Exile_Item_MetalWire",
"Exile_Item_MobilePhone",
"Exile_Item_Moobar",
"Exile_Item_MountainDupe",
"Exile_Item_MulletFilet_Cooked",
"Exile_Item_MulletFilet_Raw",
"Exile_Item_Noodles",
"Exile_Item_OilCanister",
"Exile_Item_OrnateFilet_Cooked",
"Exile_Item_OrnateFilet_Raw",
"Exile_Item_PlasticBottleCoffee",
"Exile_Item_PlasticBottleDirtyWater",
"Exile_Item_PlasticBottleEmpty",
"Exile_Item_PlasticBottleFreshWater",
"Exile_Item_PlasticBottleSaltWater",
"Exile_Item_Pliers",
"Exile_Item_PortableGeneratorKit",
"Exile_Item_PowerDrink",
"Exile_Item_RabbitSteak_Cooked",
"Exile_Item_RabbitSteak_Raw",
"Exile_Item_Raisins",
"Exile_Item_RazorWireKit",
"Exile_Item_RepairKitConcrete",
"Exile_Item_RepairKitMetal",
"Exile_Item_RepairKitWood",
"Exile_Item_RoosterFilet_Cooked",
"Exile_Item_RoosterFilet_Raw",
"Exile_Item_Rope",
"Exile_Item_RubberDuck",
"Exile_Item_SafeKit",
"Exile_Item_SalemaFilet_Cooked",
"Exile_Item_SalemaFilet_Raw",
"Exile_Item_Sand",
"Exile_Item_SandBagsKit_Corner",
"Exile_Item_SandBagsKit_Long",
"Exile_Item_SausageGravy",
"Exile_Item_SausageGravy_Cooked",
"Exile_Item_Screwdriver",
"Exile_Item_SeedAstics",
"Exile_Item_SheepSteak_Cooked",
"Exile_Item_SheepSteak_Raw",
"Exile_Item_Shovel",
"Exile_Item_SleepingMat",
"Exile_Item_SnakeFilet_Cooked",
"Exile_Item_SnakeFilet_Raw",
"Exile_Item_SprayCan_Black",
"Exile_Item_SprayCan_Blue",
"Exile_Item_SprayCan_Green",
"Exile_Item_SprayCan_Red",
"Exile_Item_SprayCan_White",
"Exile_Item_Storagecratekit",
"Exile_Item_Surstromming",
"Exile_Item_Surstromming_Cooked",
"Exile_Item_ThermalScannerPro",
"Exile_Item_ToiletPaper",
"Exile_Item_TunaFilet_Cooked",
"Exile_Item_TunaFilet_Raw",
"Exile_Item_TurtleFilet_Cooked",
"Exile_Item_TurtleFilet_Raw",
"Exile_Item_Vishpirin",
"Exile_Item_WaterBarrelKit",
"Exile_Item_WaterCanisterDirtyWater",
"Exile_Item_WaterCanisterEmpty",
"Exile_Item_WeaponParts",
"Exile_Item_WireFenceKit",
"Exile_Item_WoodDoorKit",
"Exile_Item_WoodDoorwayKit",
"Exile_Item_WoodDrawBridgeKit",
"Exile_Item_WoodFloorKit",
"Exile_Item_WoodFloorPortKit",
"Exile_Item_WoodFloorPortSmallKit",
"Exile_Item_WoodGateKit",
"Exile_Item_WoodLadderKit",
"Exile_Item_WoodLog",
"Exile_Item_WoodPlank",
"Exile_Item_WoodStairsKit",
"Exile_Item_WoodSticks",
"Exile_Item_WoodSupportKit",
"Exile_Item_WoodWallHalfKit",
"Exile_Item_WoodWallKit",
"Exile_Item_WoodWindowKit",
"Exile_Item_WorkBenchKit",
"Exile_Item_Wrench",
"Exile_Magazine_100Rnd_762x54_PK_Green",
"Exile_Magazine_10Rnd_127x99_m107",
"Exile_Magazine_10Rnd_127x99_m107_Bullet_Cam_Mag",
"Exile_Magazine_10Rnd_303",
"Exile_Magazine_10Rnd_338_Bullet_Cam_Mag",
"Exile_Magazine_10Rnd_762x54",
"Exile_Magazine_10Rnd_765x17_SA61",
"Exile_Magazine_10Rnd_93x64_DMR_05_Bullet_Cam_Mag",
"Exile_Magazine_10Rnd_9x39",
"Exile_Magazine_20Rnd_762x51_DMR",
"Exile_Magazine_20Rnd_762x51_DMR_Green",
"Exile_Magazine_20Rnd_762x51_DMR_Red",
"Exile_Magazine_20Rnd_762x51_DMR_Yellow",
"Exile_Magazine_20Rnd_765x17_SA61",
"Exile_Magazine_20Rnd_9x39",
"Exile_Magazine_30Rnd_545x39_AK",
"Exile_Magazine_30Rnd_545x39_AK_Green",
"Exile_Magazine_30Rnd_545x39_AK_Red",
"Exile_Magazine_30Rnd_545x39_AK_White",
"Exile_Magazine_30Rnd_545x39_AK_Yellow",
"Exile_Magazine_30Rnd_762x39_AK",
"Exile_Magazine_45Rnd_545x39_RPK_Green",
"Exile_Magazine_5Rnd_127x108_APDS_Bullet_Cam_Mag",
"Exile_Magazine_5Rnd_127x108_APDS_KSVK",
"Exile_Magazine_5Rnd_127x108_APDS_KSVK_Bullet_Cam_Mag",
"Exile_Magazine_5Rnd_127x108_Bullet_Cam_Mag",
"Exile_Magazine_5Rnd_127x108_KSVK",
"Exile_Magazine_5Rnd_127x108_KSVK_Bullet_Cam_Mag",
"Exile_Magazine_5Rnd_22LR",
"Exile_Magazine_6Rnd_45ACP",
"Exile_Magazine_75Rnd_545x39_RPK_Green",
"Exile_Magazine_7Rnd_408_Bullet_Cam_Mag",
"Exile_Magazine_7Rnd_45ACP",
"Exile_Magazine_8Rnd_74Pellets",
"Exile_Magazine_8Rnd_74Slug",
"Exile_Magazine_8Rnd_9x18",
"Exile_Magazine_Battery",
"Exile_Magazine_Boing",
"Exile_Magazine_Swing",
"Exile_Magazine_Swoosh",
"Fin_Ck",
"Fin_Raw",
"FlareGreen_F",
"FlareRed_F",
"FlareWhite_F",
"FlareYellow_F",
"gasPump_Kit",
"Goat_Ck",
"Goat_Raw",
"I_IR_Grenade",
"IEDLandBig_Remote_Mag",
"IEDLandSmall_Remote_Mag",
"IEDUrbanBig_Remote_Mag",
"IEDUrbanSmall_Remote_Mag",
"in005_1Rnd_12Gauge_Pellets",
"in005_1Rnd_12Gauge_Slug",
"in005_2Rnd_12Gauge_Pellets",
"in005_2Rnd_12Gauge_Slug",
"ladder_1_kit",
"Laserbatteries",
"longBarrier_1_kit",
"longDoubleBarrier_1_kit",
"Mackrel_Ck",
"Mackrel_Raw",
"metalShelves_Kit",
"MiniGrenade",
"Mullet_Ck",
"Mullet_Raw",
"O_IR_Grenade",
"Ornate_Ck",
"Ornate_Raw",
"Rabbit_Ck",
"Rabbit_Raw",
"rds_dummy_mag",
"Rooster_Ck",
"Rooster_Raw",
"Salema_Ck",
"Salema_Raw",
"SatchelCharge_Remote_Mag",
"Sheep_Ck",
"Sheep_Raw",
"singleBarrier_1_kit",
"SLAMDirectionalMine_Wire_Mag",
"smallBunker_1_kit",
"Snake_Ck",
"Snake_Raw",
"spraycan_blk",
"spraycan_blu",
"spraycan_grn",
"spraycan_red",
"spraycan_wht",
"tallStoneTower_1_kit",
"tallStoneWall_1_kit",
"tallTower_1_kit",
"Tuna_Ck",
"Tuna_Raw",
"Turtle_Ck",
"Turtle_Raw",
"UGL_FlareCIR_F",
"UGL_FlareGreen_F",
"UGL_FlareRed_F",
"UGL_FlareWhite_F",
"UGL_FlareYellow_F",
"wpn_prt",
// Grenades, Smoke Grenades, Chemlights and Flares
"Chemlight_blue",
"Chemlight_green",
"Chemlight_red",
"Chemlight_yellow",
"Exile_Item_ZipTie",
"HandGrenade",
"HandGrenade_Stone",
"SmokeShell",
"SmokeShellBlue",
"SmokeShellGreen",
"SmokeShellOrange",
"SmokeShellPurple",
"SmokeShellRed",
"SmokeShellYellow",
"TinCanGrenade_01",
// Launcher Rounds
"CA_LauncherMagazine",
"NLAW_F",
"RPG32_F",
"RPG32_HE_F",
"RPG7_F",
"Titan_AA",
"Titan_AP",
"Titan_AT",
// Vehicle Ammo
"1000Rnd_20mm_shells",
"1000Rnd_25mm_shells",
"1000Rnd_65x39_Belt",
"1000Rnd_65x39_Belt_Green",
"1000Rnd_65x39_Belt_Tracer_Green",
"1000Rnd_65x39_Belt_Tracer_Red",
"1000Rnd_65x39_Belt_Tracer_Yellow",
"1000Rnd_65x39_Belt_Yellow",
"1000Rnd_762x51_Belt",
"1000Rnd_762x51_Belt_Green",
"1000Rnd_762x51_Belt_Red",
"1000Rnd_762x51_Belt_T_Green",
"1000Rnd_762x51_Belt_T_Red",
"1000Rnd_762x51_Belt_T_Yellow",
"1000Rnd_762x51_Belt_Yellow",
"1000Rnd_Gatling_30mm_Plane_CAS_01_F",
"100Rnd_105mm_HEAT_MP",
"100Rnd_127x107_DSHKM_M",
"100Rnd_127x99_M",
"100Rnd_127x99_mag",
"100Rnd_127x99_mag_Tracer_Green",
"100Rnd_127x99_mag_Tracer_Red",
"100Rnd_127x99_mag_Tracer_Yellow",
"100Rnd_Green_Tracer_127x107_DSHKM_M",
"100Rnd_Green_Tracer_127x99_M",
"100Rnd_Green_Tracer_762x54_PKT_M",
"100Rnd_Red_Tracer_127x99_M",
"100Rnd_Red_Tracer_762x54_PKT_M",
"100Rnd_White_Tracer_127x99_M",
"100Rnd_White_Tracer_762x54_PKT_M",
"100Rnd_Yellow_Tracer_127x99_M",
"100Rnd_Yellow_Tracer_762x54_PKT_M",
"12Rnd_125mm_HE",
"12Rnd_125mm_HE_T_Green",
"12Rnd_125mm_HE_T_Red",
"12Rnd_125mm_HE_T_Yellow",
"12Rnd_125mm_HEAT",
"12Rnd_125mm_HEAT_T_Green",
"12Rnd_125mm_HEAT_T_Red",
"12Rnd_125mm_HEAT_T_Yellow",
"12Rnd_230mm_rockets",
"12Rnd_missiles",
"12Rnd_PG_missiles",
"140Rnd_30mm_MP_shells",
"140Rnd_30mm_MP_shells_Tracer_Green",
"140Rnd_30mm_MP_shells_Tracer_Red",
"140Rnd_30mm_MP_shells_Tracer_Yellow",
"14Rnd_120mm_HE_shells",
"14Rnd_120mm_HE_shells_Tracer_Green",
"14Rnd_120mm_HE_shells_Tracer_Red",
"14Rnd_120mm_HE_shells_Tracer_Yellow",
"14Rnd_80mm_rockets",
"1500Rnd_Green_Tracer_762x54_PKT_M",
"1500Rnd_Red_Tracer_762x54_PKT_M",
"1500Rnd_White_Tracer_762x54_PKT_M",
"1500Rnd_Yellow_Tracer_762x54_PKT_M",
"150Rnd_127x107_DSHKM_M",
"150Rnd_127x108_Ball",
"160Rnd_40mm_APFSDS_Tracer_Red_shells",
"16Rnd_120mm_HE_shells",
"16Rnd_120mm_HE_shells_Tracer_Green",
"16Rnd_120mm_HE_shells_Tracer_Red",
"16Rnd_120mm_HE_shells_Tracer_Yellow",
"1Rnd_GAA_missiles",
"1Rnd_GAT_missiles",
"2000Rnd_20mm_shells",
"2000Rnd_65x39_Belt",
"2000Rnd_65x39_Belt_Green",
"2000Rnd_65x39_Belt_Tracer_Green",
"2000Rnd_65x39_Belt_Tracer_Green_Splash",
"2000Rnd_65x39_Belt_Tracer_Red",
"2000Rnd_65x39_Belt_Tracer_Yellow",
"2000Rnd_65x39_Belt_Tracer_Yellow_Splash",
"2000Rnd_65x39_Belt_Yellow",
"2000Rnd_762x51_Belt",
"2000Rnd_762x51_Belt_Green",
"2000Rnd_762x51_Belt_Red",
"2000Rnd_762x51_Belt_T_Green",
"2000Rnd_762x51_Belt_T_Red",
"2000Rnd_762x51_Belt_T_Yellow",
"2000Rnd_762x51_Belt_Yellow",
"2000Rnd_Green_Tracer_762x54_PKT_M",
"2000Rnd_Red_Tracer_762x54_PKT_M",
"2000Rnd_White_Tracer_762x54_PKT_M",
"2000Rnd_Yellow_Tracer_762x54_PKT_M",
"200Rnd_127x99_mag",
"200Rnd_127x99_mag_Tracer_Green",
"200Rnd_127x99_mag_Tracer_Red",
"200Rnd_127x99_mag_Tracer_Yellow",
"200Rnd_20mm_G_belt",
"200Rnd_40mm_G_belt",
"200Rnd_65x39_Belt",
"200Rnd_65x39_Belt_Tracer_Green",
"200Rnd_65x39_Belt_Tracer_Red",
"200Rnd_65x39_Belt_Tracer_Yellow",
"200Rnd_762x51_Belt",
"200Rnd_762x51_Belt_Green",
"200Rnd_762x51_Belt_Red",
"200Rnd_762x51_Belt_T_Green",
"200Rnd_762x51_Belt_T_Red",
"200Rnd_762x51_Belt_T_Yellow",
"200Rnd_762x51_Belt_Yellow",
"200Rnd_Green_Tracer_762x54_PKT_M",
"200Rnd_Red_Tracer_762x54_PKT_M",
"200Rnd_White_Tracer_762x54_PKT_M",
"200Rnd_Yellow_Tracer_762x54_PKT_M",
"20Rnd_105mm_HEAT_MP",
"20Rnd_105mm_HEAT_MP_T_Green",
"20Rnd_105mm_HEAT_MP_T_Red",
"20Rnd_105mm_HEAT_MP_T_Yellow",
"20Rnd_Rocket_03_AP_F",
"20Rnd_Rocket_03_HE_F",
"240Rnd_40mm_GPR_Tracer_Red_shells",
"24Rnd_125mm_APFSDS",
"24Rnd_125mm_APFSDS_T_Green",
"24Rnd_125mm_APFSDS_T_Red",
"24Rnd_125mm_APFSDS_T_Yellow",
"24Rnd_missiles",
"24Rnd_PG_missiles",
"250Rnd_30mm_APDS_shells",
"250Rnd_30mm_APDS_shells_Tracer_Green",
"250Rnd_30mm_APDS_shells_Tracer_Red",
"250Rnd_30mm_APDS_shells_Tracer_Yellow",
"250Rnd_30mm_HE_shells",
"250Rnd_30mm_HE_shells_Tracer_Green",
"250Rnd_30mm_HE_shells_Tracer_Red",
"250Rnd_Green_Tracer_762x54_PKT_M",
"250Rnd_Red_Tracer_762x54_PKT_M",
"250Rnd_White_Tracer_762x54_PKT_M",
"250Rnd_Yellow_Tracer_762x54_PKT_M",
"28Rnd_120mm_APFSDS_shells",
"28Rnd_120mm_APFSDS_shells_Tracer_Green",
"28Rnd_120mm_APFSDS_shells_Tracer_Red",
"28Rnd_120mm_APFSDS_shells_Tracer_Yellow",
"29Rnd_30mm_AGS30",
"2Rnd_155mm_Mo_Cluster",
"2Rnd_155mm_Mo_guided",
"2Rnd_155mm_Mo_LG",
"2Rnd_AAA_missiles",
"2Rnd_AAA_missiles_MI02",
"2Rnd_Bomb_03_F",
"2Rnd_GAT_missiles",
"2Rnd_GBU12_LGB",
"2Rnd_GBU12_LGB_MI10",
"2Rnd_LG_scalpel",
"2Rnd_LG_scalpel_hidden",
"2Rnd_Missile_AA_03_F",
"2Rnd_Missile_AA_04_F",
"2Rnd_Mk82",
"2Rnd_Mk82_MI08",
"300Rnd_20mm_shells",
"300Rnd_25mm_shells",
"30Rnd_120mm_APFSDS_shells",
"30Rnd_120mm_APFSDS_shells_Tracer_Green",
"30Rnd_120mm_APFSDS_shells_Tracer_Red",
"30Rnd_120mm_APFSDS_shells_Tracer_Yellow",
"30Rnd_120mm_HE_shells",
"30Rnd_120mm_HE_shells_Tracer_Green",
"30Rnd_120mm_HE_shells_Tracer_Red",
"30Rnd_120mm_HE_shells_Tracer_Yellow",
"32Rnd_120mm_APFSDS_shells",
"32Rnd_120mm_APFSDS_shells_Tracer_Green",
"32Rnd_120mm_APFSDS_shells_Tracer_Red",
"32Rnd_120mm_APFSDS_shells_Tracer_Yellow",
"32Rnd_155mm_Mo_shells",
"32Rnd_40mm_G_belt",
"38Rnd_80mm_rockets",
"4000Rnd_20mm_Tracer_Red_shells",
"40Rnd_105mm_APFSDS",
"40Rnd_105mm_APFSDS_T_Green",
"40Rnd_105mm_APFSDS_T_Red",
"40Rnd_105mm_APFSDS_T_Yellow",
"40Rnd_20mm_G_belt",
"40Rnd_40mm_APFSDS_shells",
"40Rnd_40mm_APFSDS_Tracer_Green_shells",
"40Rnd_40mm_APFSDS_Tracer_Red_shells",
"40Rnd_40mm_APFSDS_Tracer_Yellow_shells",
"450Rnd_127x108_Ball",
"4Rnd_AAA_missiles",
"4Rnd_AAA_missiles_MI02",
"4Rnd_AAT_missiles",
"4Rnd_Bomb_04_F",
"4Rnd_GAA_missiles",
"4Rnd_LG_Jian",
"4Rnd_Missile_AGM_01_F",
"4Rnd_Titan_long_missiles",
"5000Rnd_762x51_Belt",
"5000Rnd_762x51_Yellow_Belt",
"500Rnd_127x99_mag",
"500Rnd_127x99_mag_Tracer_Green",
"500Rnd_127x99_mag_Tracer_Red",
"500Rnd_127x99_mag_Tracer_Yellow",
"500Rnd_65x39_Belt",
"500Rnd_65x39_Belt_Tracer_Green_Splash",
"500Rnd_65x39_Belt_Tracer_Red_Splash",
"500Rnd_65x39_Belt_Tracer_Yellow_Splash",
"500Rnd_Cannon_30mm_Plane_CAS_02_F",
"50Rnd_127x107_DSHKM_M",
"50Rnd_127x108_Ball",
"5Rnd_GAT_missiles",
"60Rnd_30mm_APFSDS_shells",
"60Rnd_30mm_APFSDS_shells_Tracer_Green",
"60Rnd_30mm_APFSDS_shells_Tracer_Red",
"60Rnd_30mm_APFSDS_shells_Tracer_Yellow",
"60Rnd_40mm_GPR_shells",
"60Rnd_40mm_GPR_Tracer_Green_shells",
"60Rnd_40mm_GPR_Tracer_Red_shells",
"60Rnd_40mm_GPR_Tracer_Yellow_shells",
"64Rnd_40mm_G_belt",
"680Rnd_35mm_AA_shells",
"680Rnd_35mm_AA_shells_Tracer_Green",
"680Rnd_35mm_AA_shells_Tracer_Red",
"680Rnd_35mm_AA_shells_Tracer_Yellow",
"6Rnd_155mm_Mo_AT_mine",
"6Rnd_155mm_Mo_mine",
"6Rnd_155mm_Mo_smoke",
"6Rnd_AAT_missiles",
"6Rnd_LG_scalpel",
"6Rnd_Missile_AGM_02_F",
"7Rnd_Rocket_04_AP_F",
"7Rnd_Rocket_04_HE_F",
"8Rnd_82mm_Mo_Flare_white",
"8Rnd_82mm_Mo_guided",
"8Rnd_82mm_Mo_LG",
"8Rnd_82mm_Mo_shells",
"8Rnd_82mm_Mo_Smoke_white",
"8Rnd_LG_scalpel",
"96Rnd_40mm_G_belt",
"magazine_Bomb_GBU12_x1",
"magazine_Bomb_KAB250_x1",
"magazine_Cannon_Phalanx_x1550",
"magazine_Fighter01_Gun20mm_AA_x450",
"magazine_Fighter02_Gun30mm_AA_x180",
"magazine_Fighter04_Gun20mm_AA_x150",
"magazine_Fighter04_Gun20mm_AA_x250",
"magazine_Missile_AA_R73_x1",
"magazine_Missile_AA_R77_x1",
"magazine_Missile_AGM_02_x1",
"magazine_Missile_AGM_KH25_x1",
"magazine_Missile_AMRAAM_C_x1",
"magazine_Missile_AMRAAM_D_x1",
"magazine_Missile_BIM9X_x1",
"magazine_Missile_rim116_x21",
"magazine_Missile_rim162_x8",
"PylonMissile_1Rnd_AAA_missiles",
"PylonMissile_1Rnd_Bomb_03_F",
"PylonMissile_1Rnd_Bomb_04_F",
"PylonMissile_1Rnd_GAA_missiles",
"PylonMissile_1Rnd_LG_scalpel",
"PylonMissile_1Rnd_Missile_AA_03_F",
"PylonMissile_1Rnd_Missile_AA_04_F",
"PylonMissile_1Rnd_Mk82_F",
"PylonMissile_Bomb_GBU12_x1",
"PylonMissile_Bomb_KAB250_x1",
"PylonMissile_Missile_AA_R73_x1",
"PylonMissile_Missile_AA_R77_INT_x1",
"PylonMissile_Missile_AA_R77_x1",
"PylonMissile_Missile_AGM_02_x1",
"PylonMissile_Missile_AGM_02_x2",
"PylonMissile_Missile_AGM_KH25_INT_x1",
"PylonMissile_Missile_AGM_KH25_x1",
"PylonMissile_Missile_AMRAAM_C_x1",
"PylonMissile_Missile_AMRAAM_D_INT_x1",
"PylonMissile_Missile_AMRAAM_D_x1",
"PylonMissile_Missile_BIM9X_x1",
"PylonRack_12Rnd_missiles",
"PylonRack_12Rnd_PG_missiles",
"PylonRack_19Rnd_Rocket_Skyfire",
"PylonRack_1Rnd_AAA_missiles",
"PylonRack_1Rnd_GAA_missiles",
"PylonRack_1Rnd_LG_scalpel",
"PylonRack_1Rnd_Missile_AA_03_F",
"PylonRack_1Rnd_Missile_AA_04_F",
"PylonRack_1Rnd_Missile_AGM_01_F",
"PylonRack_1Rnd_Missile_AGM_02_F",
"PylonRack_20Rnd_Rocket_03_AP_F",
"PylonRack_20Rnd_Rocket_03_HE_F",
"PylonRack_3Rnd_LG_scalpel",
"PylonRack_3Rnd_Missile_AGM_02_F",
"PylonRack_4Rnd_LG_scalpel",
"PylonRack_7Rnd_Rocket_04_AP_F",
"PylonRack_7Rnd_Rocket_04_HE_F",
"PylonRack_Bomb_GBU12_x2",
"PylonRack_Missile_AGM_02_x1",
"PylonRack_Missile_AGM_02_x2",
"PylonRack_Missile_AMRAAM_C_x1",
"PylonRack_Missile_AMRAAM_C_x2",
"PylonRack_Missile_AMRAAM_D_x1",
"PylonRack_Missile_AMRAAM_D_x2",
"PylonRack_Missile_BIM9X_x1",
"PylonRack_Missile_BIM9X_x2",
"PylonWeapon_2000Rnd_65x39_belt",
"PylonWeapon_300Rnd_20mm_shells",
"rds_car_FirstAidKit_proxy",
"rds_car_warning_triangle_to11_proxy",
"rds_empty_proxy",
"rds_Sparewheel_gaz24_proxy",
"rds_Sparewheel_golf4_proxy",
"rds_Sparewheel_ikarus_proxy",
"rds_Sparewheel_lada_proxy",
"rds_Sparewheel_octavia_proxy",
"rds_Sparewheel_s1203_proxy",
"SmokeLauncherMag",
"SmokeLauncherMag_boat",
"VehicleMagazine"
];

View File

@ -1,195 +0,0 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
This list of uniforms will be excluded from the output of the relevant scripts.
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_baseUniforms = [
"Exile_Uniform_BambiOverall",
"Exile_Uniform_ExileCustoms",
"Exile_Uniform_Wetsuit_AAF",
"Exile_Uniform_Wetsuit_CSAT",
"Exile_Uniform_Wetsuit_NATO",
"Exile_Uniform_Woodland",
"U_AntigonaBody",
"U_AttisBody",
"U_B_CombatUniform_mcam",
"U_B_CombatUniform_mcam_tshirt",
"U_B_CombatUniform_mcam_vest",
"U_B_CombatUniform_mcam_worn",
"U_B_CombatUniform_sgg",
"U_B_CombatUniform_sgg_tshirt",
"U_B_CombatUniform_sgg_vest",
"U_B_CombatUniform_wdl",
"U_B_CombatUniform_wdl_tshirt",
"U_B_CombatUniform_wdl_vest",
"U_B_CTRG_1",
"U_B_CTRG_2",
"U_B_CTRG_3",
"U_B_CTRG_Soldier_2_F",
"U_B_CTRG_Soldier_3_F",
"U_B_CTRG_Soldier_F",
"U_B_CTRG_Soldier_urb_1_F",
"U_B_CTRG_Soldier_urb_2_F",
"U_B_CTRG_Soldier_urb_3_F",
"U_B_FullGhillie_ard",
"U_B_FullGhillie_lsh",
"U_B_FullGhillie_sard",
"U_B_GEN_Commander_F",
"U_B_GEN_Soldier_F",
"U_B_GhillieSuit",
"U_B_HeliPilotCoveralls",
"U_B_PilotCoveralls",
"U_B_Protagonist_VR",
"U_B_Soldier_VR",
"U_B_SpecopsUniform_sgg",
"U_B_survival_uniform",
"U_B_T_FullGhillie_tna_F",
"U_B_T_Sniper_F",
"U_B_T_Soldier_AR_F",
"U_B_T_Soldier_F",
"U_B_T_Soldier_SL_F",
"U_B_Wetsuit",
"U_BasicBody",
"U_BG_Guerilla1_1",
"U_BG_Guerilla2_1",
"U_BG_Guerilla2_2",
"U_BG_Guerilla2_3",
"U_BG_Guerilla3_1",
"U_BG_Guerilla3_2",
"U_BG_Guerrilla_6_1",
"U_BG_leader",
"U_C_Commoner1_1",
"U_C_Commoner1_2",
"U_C_Commoner1_3",
"U_C_Commoner2_1",
"U_C_Commoner2_2",
"U_C_Commoner2_3",
"U_C_Commoner_shorts",
"U_C_Driver_1",
"U_C_Driver_1_black",
"U_C_Driver_1_blue",
"U_C_Driver_1_green",
"U_C_Driver_1_orange",
"U_C_Driver_1_red",
"U_C_Driver_1_white",
"U_C_Driver_1_yellow",
"U_C_Driver_2",
"U_C_Driver_3",
"U_C_Driver_4",
"U_C_Farmer",
"U_C_Fisherman",
"U_C_FishermanOveralls",
"U_C_HunterBody_brn",
"U_C_HunterBody_grn",
"U_C_Journalist",
"U_C_Man_casual_1_F",
"U_C_Man_casual_2_F",
"U_C_Man_casual_3_F",
"U_C_Man_casual_4_F",
"U_C_Man_casual_5_F",
"U_C_Man_casual_6_F",
"U_C_man_sport_1_F",
"U_C_man_sport_2_F",
"U_C_man_sport_3_F",
"U_C_Novak",
"U_C_Poloshirt_blue",
"U_C_Poloshirt_burgundy",
"U_C_Poloshirt_redwhite",
"U_C_Poloshirt_salmon",
"U_C_Poloshirt_stripped",
"U_C_Poloshirt_tricolour",
"U_C_Poor_1",
"U_C_Poor_2",
"U_C_Poor_shorts_1",
"U_C_Poor_shorts_2",
"U_C_PriestBody",
"U_C_Scavenger_1",
"U_C_Scavenger_2",
"U_C_Scientist",
"U_C_ShirtSurfer_shorts",
"U_C_Soldier_VR",
"U_C_TeeSurfer_shorts_1",
"U_C_TeeSurfer_shorts_2",
"U_C_WorkerCoveralls",
"U_C_WorkerOveralls",
"U_Competitor",
"U_I_C_Soldier_Bandit_1_F",
"U_I_C_Soldier_Bandit_2_F",
"U_I_C_Soldier_Bandit_3_F",
"U_I_C_Soldier_Bandit_4_F",
"U_I_C_Soldier_Bandit_5_F",
"U_I_C_Soldier_Camo_F",
"U_I_C_Soldier_Para_1_F",
"U_I_C_Soldier_Para_2_F",
"U_I_C_Soldier_Para_3_F",
"U_I_C_Soldier_Para_4_F",
"U_I_C_Soldier_Para_5_F",
"U_I_CombatUniform",
"U_I_CombatUniform_shortsleeve",
"U_I_CombatUniform_tshirt",
"U_I_FullGhillie_ard",
"U_I_FullGhillie_lsh",
"U_I_FullGhillie_sard",
"U_I_G_resistanceLeader_F",
"U_I_G_Story_Protagonist_F",
"U_I_GhillieSuit",
"U_I_HeliPilotCoveralls",
"U_I_OfficerUniform",
"U_I_pilotCoveralls",
"U_I_Protagonist_VR",
"U_I_Soldier_VR",
"U_I_Wetsuit",
"U_IG_Guerilla1_1",
"U_IG_Guerilla2_1",
"U_IG_Guerilla2_2",
"U_IG_Guerilla2_3",
"U_IG_Guerilla3_1",
"U_IG_Guerilla3_2",
"U_IG_Guerrilla_6_1",
"U_IG_leader",
"U_IG_Menelaos",
"U_KerryBody",
"U_Marshal",
"U_MillerBody",
"U_NikosAgedBody",
"U_NikosBody",
"U_O_CombatUniform_ocamo",
"U_O_CombatUniform_oucamo",
"U_O_FullGhillie_ard",
"U_O_FullGhillie_lsh",
"U_O_FullGhillie_sard",
"U_O_GhillieSuit",
"U_O_OfficerUniform_ocamo",
"U_O_PilotCoveralls",
"U_O_Protagonist_VR",
"U_O_Soldier_VR",
"U_O_SpecopsUniform_blk",
"U_O_SpecopsUniform_ocamo",
"U_O_T_FullGhillie_tna_F",
"U_O_T_Officer_F",
"U_O_T_Sniper_F",
"U_O_T_Soldier_F",
"U_O_V_Soldier_Viper_F",
"U_O_V_Soldier_Viper_hex_F",
"U_O_Wetsuit",
"U_OG_Guerilla1_1",
"U_OG_Guerilla2_1",
"U_OG_Guerilla2_2",
"U_OG_Guerilla2_3",
"U_OG_Guerilla3_1",
"U_OG_Guerilla3_2",
"U_OG_Guerrilla_6_1",
"U_OG_leader",
"U_OI_Scientist",
"U_OrestesBody",
"U_Rangemaster",
"U_VirtualMan_F",
"Uniform_Base"
];

View File

@ -1,88 +0,0 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
This list of vests will be excluded from the output of the relevant scripts.
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_baseVests = [
"Exile_Vest_Rebreather_AAF",
"Exile_Vest_Rebreather_CSAT",
"Exile_Vest_Rebreather_NATO",
"Exile_Vest_Snow",
"V_BandollierB_blk",
"V_BandollierB_cbr",
"V_BandollierB_ghex_F",
"V_BandollierB_khk",
"V_BandollierB_oli",
"V_BandollierB_rgr",
"V_Chestrig_blk",
"V_Chestrig_khk",
"V_Chestrig_oli",
"V_Chestrig_rgr",
"V_DeckCrew_base_F",
"V_DeckCrew_blue_F",
"V_DeckCrew_brown_F",
"V_DeckCrew_green_F",
"V_DeckCrew_red_F",
"V_DeckCrew_violet_F",
"V_DeckCrew_white_F",
"V_DeckCrew_yellow_F",
"V_HarnessO_brn",
"V_HarnessO_ghex_F",
"V_HarnessO_gry",
"V_HarnessOGL_brn",
"V_HarnessOGL_ghex_F",
"V_HarnessOGL_gry",
"V_HarnessOSpec_brn",
"V_HarnessOSpec_gry",
"V_I_G_resistanceLeader_F",
"V_PlateCarrier1_blk",
"V_PlateCarrier1_rgr",
"V_PlateCarrier1_rgr_noflag_F",
"V_PlateCarrier1_tna_F",
"V_PlateCarrier2_blk",
"V_PlateCarrier2_rgr",
"V_PlateCarrier2_rgr_noflag_F",
"V_PlateCarrier2_tna_F",
"V_PlateCarrier3_rgr",
"V_PlateCarrier_Kerry",
"V_PlateCarrierGL_blk",
"V_PlateCarrierGL_mtp",
"V_PlateCarrierGL_rgr",
"V_PlateCarrierGL_tna_F",
"V_PlateCarrierH_CTRG",
"V_PlateCarrierIA1_dgtl",
"V_PlateCarrierIA2_dgtl",
"V_PlateCarrierIAGL_dgtl",
"V_PlateCarrierIAGL_oli",
"V_PlateCarrierL_CTRG",
"V_PlateCarrierSpec_blk",
"V_PlateCarrierSpec_mtp",
"V_PlateCarrierSpec_rgr",
"V_PlateCarrierSpec_tna_F",
"V_Press_F",
"V_Rangemaster_belt",
"V_RebreatherB",
"V_RebreatherIA",
"V_RebreatherIR",
"V_TacChestrig_cbr_F",
"V_TacChestrig_grn_F",
"V_TacChestrig_oli_F",
"V_TacVest_blk",
"V_TacVest_blk_POLICE",
"V_TacVest_brn",
"V_TacVest_camo",
"V_TacVest_gen_F",
"V_TacVest_khk",
"V_TacVest_oli",
"V_TacVestCamo_khk",
"V_TacVestIR_blk",
"Vest_Camo_Base",
"Vest_NoCamo_Base"
];

View File

@ -1,275 +0,0 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
Lists weapons that should excluded from the output for the script.
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_knownWeapons = [
// Assault Rifles
"Rifle",
"Rifle_Base_F",
"Rifle_Short_Base_F",
"Rifle_Long_Base_F",
"arifle_Katiba_Base_F",
"arifle_Katiba_F",
"arifle_Katiba_C_F",
"mk20_base_F",
"arifle_Mk20_F",
"arifle_Mk20_plain_F",
"arifle_Mk20C_F",
"arifle_Mk20C_plain_F",
"arifle_MX_Base_F",
"arifle_MXC_F",
"arifle_MX_F",
"arifle_MXM_F",
"arifle_MXC_Black_F",
"arifle_MX_Black_F",
"arifle_MXM_Black_F",
"SDAR_base_F",
"arifle_SDAR_F",
"Tavor_base_F",
"arifle_TRG21_F",
"arifle_TRG20_F",
"pdw2000_base_F",
"hgun_PDW2000_F",
"arifle_MX_khk_F",
"arifle_MXC_khk_F",
"arifle_MXM_khk_F",
"arifle_AK12_base_F",
"arifle_AK12_F",
"arifle_AKM_base_F",
"arifle_AKM_F",
"arifle_AKS_base_F",
"arifle_AKS_F",
"arifle_CTAR_base_F",
"arifle_CTAR_blk_F",
"arifle_CTAR_hex_F",
"arifle_CTAR_ghex_F",
"arifle_CTARS_base_F",
"arifle_CTARS_blk_F",
"arifle_CTARS_hex_F",
"arifle_CTARS_ghex_F",
"arifle_SPAR_01_base_F",
"arifle_SPAR_01_blk_F",
"arifle_SPAR_01_khk_F",
"arifle_SPAR_01_snd_F",
"arifle_AK107",
"Exile_Weapon_AK107",
"arifle_AK74",
"Exile_Weapon_AK74",
"arifle_AK47",
"Exile_Weapon_AK47",
"arifle_AKM",
"Exile_Weapon_AKM",
"arifle_AKS",
"Exile_Weapon_AKS",
"arifle_AKS_Gold",
"Exile_Weapon_AKS_Gold",
"exile_arifle_M16A4",
"Exile_Weapon_M16A4",
"exile_arifle_M16A2",
"Exile_Weapon_M16A2",
"exile_arifle_M4",
"Exile_Weapon_M4",
"srifle_DMR",
"Exile_Weapon_DMR",
"ksvk",
"Exile_Weapon_ksvk",
"srifle_LeeEnfield",
"Exile_Weapon_LeeEnfield",
"srifle_CZ550_base",
"Exile_Weapon_CZ550",
"srifle_SVD",
"Exile_Weapon_SVD",
"srifle_SVD_des",
"Exile_Weapon_SVDCamo",
"srifle_VSSVintorez",
"Exile_Weapon_VSSVintorez",
"arifle_RPK74",
"Exile_Weapon_RPK",
"M1014",
"Exile_Weapon_M1014",
"arifle_AK_Base",
"arifle_AKS_Base",
"arifle_AK107_Base",
"exile_arifle_M16A4_base",
"srifle_CZ550_shit_1",
"srifle_CZ550_shit_2",
// Assault Rifles with GL
"arifle_Katiba_GL_F",
"arifle_Mk20_GL_F",
"arifle_Mk20_GL_plain_F",
"arifle_MX_GL_F",
"arifle_MX_GL_Black_F",
"arifle_TRG21_GL_F",
"arifle_MX_GL_khk_F",
"arifle_AK12_GL_base_F",
"arifle_AK12_GL_F",
"arifle_ARX_base_F",
"arifle_ARX_blk_F",
"arifle_ARX_ghex_F",
"arifle_ARX_hex_F",
"arifle_CTAR_GL_base_F",
"arifle_CTAR_GL_blk_F",
"arifle_CTAR_GL_hex_F",
"arifle_CTAR_GL_ghex_F",
"arifle_SPAR_01_GL_base_F",
"arifle_SPAR_01_GL_blk_F",
"arifle_SPAR_01_GL_khk_F",
"arifle_SPAR_01_GL_snd_F",
"arifle_AK107_GL",
"Exile_Weapon_AK107_GL",
"arifle_AK74_GL",
"Exile_Weapon_AK74_GL",
// LMGs
"LMG_Mk200_F",
"LMG_Zafir_F",
"arifle_MX_SW_F",
"arifle_MX_SW_Black_F",
"MMG_01_hex_F",
"MMG_02_camo_F",
"MMG_01_tan_F",
"MMG_02_black_F",
"MMG_02_sand_F",
"arifle_MX_SW_khk_F",
"LMG_03_base_F",
"LMG_03_F",
"arifle_SPAR_02_base_F",
"arifle_SPAR_02_blk_F",
"arifle_SPAR_02_khk_F",
"arifle_SPAR_02_snd_F",
"PKP",
"Exile_Weapon_PK",
"Pecheneg",
"Exile_Weapon_PKP",
"lmg_UK59",
// SMGs
"SMG_01_Base",
"SMG_01_F",
"SMG_02_base_F",
"SMG_02_F",
"SMG_05_base_F",
"SMG_05_F",
// Snipers
"DMR_01_base_F",
"srifle_DMR_01_F",
"EBR_base_F",
"srifle_EBR_F",
"GM6_base_F",
"srifle_GM6_F",
"srifle_GM6_camo_F",
"LRR_base_F",
"srifle_LRR_F",
"srifle_LRR_camo_F",
"DMR_02_base_F",
"DMR_03_base_F",
"DMR_04_base_F",
"DMR_05_base_F",
"DMR_06_base_F",
"srifle_DMR_02_F",
"srifle_DMR_02_camo_F",
"srifle_DMR_02_sniper_F",
"srifle_DMR_03_F",
"srifle_DMR_03_khaki_F",
"srifle_DMR_03_tan_F",
"srifle_DMR_03_multicam_F",
"srifle_DMR_03_woodland_F",
"srifle_DMR_04_F",
"srifle_DMR_04_Tan_F",
"srifle_DMR_05_blk_F",
"srifle_DMR_05_hex_F",
"srifle_DMR_05_tan_f",
"srifle_DMR_06_camo_F",
"srifle_DMR_06_olive_F",
"srifle_LRR_tna_F",
"srifle_GM6_ghex_F",
"DMR_07_base_F",
"srifle_DMR_07_blk_F",
"srifle_DMR_07_hex_F",
"srifle_DMR_07_ghex_F",
"arifle_SPAR_03_base_F",
"arifle_SPAR_03_blk_F",
"arifle_SPAR_03_khk_F",
"arifle_SPAR_03_snd_F",
"exile_weapons_m107",
"Exile_Weapon_m107",
// DMRs
// Launchers
"Launcher",
"Launcher_Base_F",
"launch_NLAW_F",
"launch_RPG32_F",
"launch_Titan_base",
"launch_Titan_short_base",
"launch_B_Titan_F",
"launch_I_Titan_F",
"launch_O_Titan_F",
"launch_Titan_F",
"launch_B_Titan_short_F",
"launch_I_Titan_short_F",
"launch_O_Titan_short_F",
"launch_Titan_short_F",
"launch_RPG32_ghex_F",
"launch_RPG7_F",
"launch_B_Titan_tna_F",
"launch_B_Titan_short_tna_F",
"launch_O_Titan_ghex_F",
"launch_O_Titan_short_ghex_F",
// Handguns
"HandGunBase",
"Pistol",
"Pistol_Base_F",
"hgun_ACPC2_F",
"hgun_P07_F",
"hgun_Pistol_heavy_01_F",
"hgun_Pistol_heavy_02_F",
"hgun_Rook40_F",
"hgun_Pistol_Signal_F",
"hgun_P07_khk_F",
"hgun_Pistol_01_F",
"Colt1911",
"Exile_Weapon_Colt1911",
"Makarov",
"Exile_Weapon_Makarov",
"TaurusTracker455",
"Exile_Weapon_Taurus",
"TaurusTracker455_gold",
"Exile_Weapon_TaurusGold",
"exile_rifle_SA61",
"Exile_Weapon_SA61",
"Makarov_light",
// Shotguns
// Throwables
"Exile_Melee_Abstract",
"Exile_Melee_Axe",
"Exile_Melee_Shovel",
"Exile_Melee_SledgeHammer"
// Unknown
];

View File

@ -1,500 +0,0 @@
_baseWearables = [
// // Uniforms
"Uniform_Base",
"U_BasicBody",
"U_B_CombatUniform_mcam",
"U_B_CombatUniform_mcam_tshirt",
"U_B_CombatUniform_mcam_vest",
"U_B_GhillieSuit",
"U_B_HeliPilotCoveralls",
"U_B_Wetsuit",
"U_O_CombatUniform_ocamo",
"U_O_GhillieSuit",
"U_O_PilotCoveralls",
"U_O_Wetsuit",
"U_C_Poloshirt_blue",
"U_C_Poloshirt_burgundy",
"U_C_Poloshirt_stripped",
"U_C_Poloshirt_tricolour",
"U_C_Poloshirt_salmon",
"U_C_Poloshirt_redwhite",
"U_C_Commoner1_1",
"U_C_Commoner1_2",
"U_C_Commoner1_3",
"U_Rangemaster",
"U_NikosBody",
"U_OrestesBody",
"U_B_CombatUniform_mcam_worn",
"U_B_CombatUniform_wdl",
"U_B_CombatUniform_wdl_tshirt",
"U_B_CombatUniform_wdl_vest",
"U_B_CombatUniform_sgg",
"U_B_CombatUniform_sgg_tshirt",
"U_B_CombatUniform_sgg_vest",
"U_B_SpecopsUniform_sgg",
"U_B_PilotCoveralls",
"U_O_CombatUniform_oucamo",
"U_O_SpecopsUniform_ocamo",
"U_O_SpecopsUniform_blk",
"U_O_OfficerUniform_ocamo",
"U_I_CombatUniform",
"U_I_CombatUniform_tshirt",
"U_I_CombatUniform_shortsleeve",
"U_I_pilotCoveralls",
"U_I_HeliPilotCoveralls",
"U_I_GhillieSuit",
"U_I_OfficerUniform",
"U_I_Wetsuit",
"U_Competitor",
"U_MillerBody",
"U_KerryBody",
"U_AttisBody",
"U_AntigonaBody",
"U_IG_Menelaos",
"U_C_Novak",
"U_OI_Scientist",
"U_IG_Guerilla1_1",
"U_IG_Guerilla2_1",
"U_IG_Guerilla2_2",
"U_IG_Guerilla2_3",
"U_IG_Guerilla3_1",
"U_IG_Guerilla3_2",
"U_IG_leader",
"U_BG_Guerilla1_1",
"U_BG_Guerilla2_1",
"U_BG_Guerilla2_2",
"U_BG_Guerilla2_3",
"U_BG_Guerilla3_1",
"U_BG_Guerilla3_2",
"U_BG_leader",
"U_OG_Guerilla1_1",
"U_OG_Guerilla2_1",
"U_OG_Guerilla2_2",
"U_OG_Guerilla2_3",
"U_OG_Guerilla3_1",
"U_OG_Guerilla3_2",
"U_OG_leader",
"U_C_Poor_1",
"U_C_Poor_2",
"U_C_Scavenger_1",
"U_C_Scavenger_2",
"U_C_Farmer",
"U_C_Fisherman",
"U_C_WorkerOveralls",
"U_C_FishermanOveralls",
"U_C_WorkerCoveralls",
"U_C_HunterBody_grn",
"U_C_HunterBody_brn",
"U_C_Commoner2_1",
"U_C_Commoner2_2",
"U_C_Commoner2_3",
"U_C_PriestBody",
"U_C_Poor_shorts_1",
"U_C_Poor_shorts_2",
"U_C_Commoner_shorts",
"U_C_ShirtSurfer_shorts",
"U_C_TeeSurfer_shorts_1",
"U_C_TeeSurfer_shorts_2",
"U_B_CTRG_1",
"U_B_CTRG_2",
"U_B_CTRG_3",
"U_B_survival_uniform",
"U_I_G_Story_Protagonist_F",
"U_I_G_resistanceLeader_F",
"U_C_Journalist",
"U_C_Scientist",
"U_NikosAgedBody",
"U_B_Protagonist_VR",
"U_O_Protagonist_VR",
"U_I_Protagonist_VR",
"U_IG_Guerrilla_6_1",
"U_BG_Guerrilla_6_1",
"U_OG_Guerrilla_6_1",
"U_B_Soldier_VR",
"U_O_Soldier_VR",
"U_I_Soldier_VR",
"U_C_Soldier_VR",
"U_C_Driver_1",
"U_C_Driver_2",
"U_C_Driver_3",
"U_C_Driver_4",
"U_Marshal",
"U_C_Driver_1_black",
"U_C_Driver_1_blue",
"U_C_Driver_1_green",
"U_C_Driver_1_red",
"U_C_Driver_1_white",
"U_C_Driver_1_yellow",
"U_C_Driver_1_orange",
"U_B_FullGhillie_lsh",
"U_B_FullGhillie_sard",
"U_B_FullGhillie_ard",
"U_O_FullGhillie_lsh",
"U_O_FullGhillie_sard",
"U_O_FullGhillie_ard",
"U_I_FullGhillie_lsh",
"U_I_FullGhillie_sard",
"U_I_FullGhillie_ard",
"U_VirtualMan_F",
"Exile_Uniform_BambiOverall",
"Exile_Uniform_ExileCustoms",
"Exile_Uniform_Wetsuit_NATO",
"Exile_Uniform_Wetsuit_CSAT",
"Exile_Uniform_Wetsuit_AAF",
"Exile_Uniform_Woodland",
"U_B_T_Soldier_F",
"U_B_T_Soldier_AR_F",
"U_B_T_Soldier_SL_F",
"U_B_T_Sniper_F",
"U_B_T_FullGhillie_tna_F",
"U_B_CTRG_Soldier_F",
"U_B_CTRG_Soldier_2_F",
"U_B_CTRG_Soldier_3_F",
"U_B_GEN_Soldier_F",
"U_B_GEN_Commander_F",
"U_O_T_Soldier_F",
"U_O_T_Officer_F",
"U_O_T_Sniper_F",
"U_O_T_FullGhillie_tna_F",
"U_O_V_Soldier_Viper_F",
"U_O_V_Soldier_Viper_hex_F",
"U_I_C_Soldier_Para_1_F",
"U_I_C_Soldier_Para_2_F",
"U_I_C_Soldier_Para_3_F",
"U_I_C_Soldier_Para_4_F",
"U_I_C_Soldier_Para_5_F",
"U_I_C_Soldier_Bandit_1_F",
"U_I_C_Soldier_Bandit_2_F",
"U_I_C_Soldier_Bandit_3_F",
"U_I_C_Soldier_Bandit_4_F",
"U_I_C_Soldier_Bandit_5_F",
"U_I_C_Soldier_Camo_F",
"U_C_man_sport_1_F",
"U_C_man_sport_2_F",
"U_C_man_sport_3_F",
"U_C_Man_casual_1_F",
"U_C_Man_casual_2_F",
"U_C_Man_casual_3_F",
"U_C_Man_casual_4_F",
"U_C_Man_casual_5_F",
"U_C_Man_casual_6_F",
"U_B_CTRG_Soldier_urb_1_F",
"U_B_CTRG_Soldier_urb_2_F",
"U_B_CTRG_Soldier_urb_3_F",
// Headgear / Masks
"HelmetBase",
"H_HelmetB",
"H_HelmetB_camo",
"H_HelmetB_paint",
"H_HelmetB_light",
"H_Booniehat_khk",
"H_Booniehat_oli",
"H_Booniehat_indp",
"H_Booniehat_mcamo",
"H_Booniehat_grn",
"H_Booniehat_tan",
"H_Booniehat_dirty",
"H_Booniehat_dgtl",
"H_Booniehat_khk_hs",
"H_HelmetB_plain_mcamo",
"H_HelmetB_plain_blk",
"H_HelmetSpecB",
"H_HelmetSpecB_paint1",
"H_HelmetSpecB_paint2",
"H_HelmetSpecB_blk",
"H_HelmetSpecB_snakeskin",
"H_HelmetSpecB_sand",
"H_HelmetIA",
"H_HelmetIA_net",
"H_HelmetIA_camo",
"H_Helmet_Kerry",
"H_HelmetB_grass",
"H_HelmetB_snakeskin",
"H_HelmetB_desert",
"H_HelmetB_black",
"H_HelmetB_sand",
"H_Cap_red",
"H_Cap_blu",
"H_Cap_oli",
"H_Cap_headphones",
"H_Cap_tan",
"H_Cap_blk",
"H_Cap_blk_CMMG",
"H_Cap_brn_SPECOPS",
"H_Cap_tan_specops_US",
"H_Cap_khaki_specops_UK",
"H_Cap_grn",
"H_Cap_grn_BI",
"H_Cap_blk_Raven",
"H_Cap_blk_ION",
"H_Cap_oli_hs",
"H_Cap_press",
"H_Cap_usblack",
"H_Cap_surfer",
"H_Cap_police",
"H_HelmetCrew_B",
"H_HelmetCrew_O",
"H_HelmetCrew_I",
"H_PilotHelmetFighter_B",
"H_PilotHelmetFighter_O",
"H_PilotHelmetFighter_I",
"H_PilotHelmetHeli_B",
"H_PilotHelmetHeli_O",
"H_PilotHelmetHeli_I",
"H_CrewHelmetHeli_B",
"H_CrewHelmetHeli_O",
"H_CrewHelmetHeli_I",
"H_HelmetO_ocamo",
"H_HelmetLeaderO_ocamo",
"H_MilCap_ocamo",
"H_MilCap_mcamo",
"H_MilCap_oucamo",
"H_MilCap_rucamo",
"H_MilCap_gry",
"H_MilCap_dgtl",
"H_MilCap_blue",
"H_HelmetB_light_grass",
"H_HelmetB_light_snakeskin",
"H_HelmetB_light_desert",
"H_HelmetB_light_black",
"H_HelmetB_light_sand",
"H_BandMask_blk",
"H_BandMask_khk",
"H_BandMask_reaper",
"H_BandMask_demon",
"H_HelmetO_oucamo",
"H_HelmetLeaderO_oucamo",
"H_HelmetSpecO_ocamo",
"H_HelmetSpecO_blk",
"H_Bandanna_surfer",
"H_Bandanna_khk",
"H_Bandanna_khk_hs",
"H_Bandanna_cbr",
"H_Bandanna_sgg",
"H_Bandanna_sand",
"H_Bandanna_surfer_blk",
"H_Bandanna_surfer_grn",
"H_Bandanna_gry",
"H_Bandanna_blu",
"H_Bandanna_camo",
"H_Bandanna_mcamo",
"H_Shemag_khk",
"H_Shemag_tan",
"H_Shemag_olive",
"H_Shemag_olive_hs",
"H_ShemagOpen_khk",
"H_ShemagOpen_tan",
"H_Beret_blk",
"H_Beret_blk_POLICE",
"H_Beret_red",
"H_Beret_grn",
"H_Beret_grn_SF",
"H_Beret_brn_SF",
"H_Beret_ocamo",
"H_Beret_02",
"H_Beret_Colonel",
"H_Watchcap_blk",
"H_Watchcap_cbr",
"H_Watchcap_khk",
"H_Watchcap_camo",
"H_Watchcap_sgg",
"H_TurbanO_blk",
"H_StrawHat",
"H_StrawHat_dark",
"H_Hat_blue",
"H_Hat_brown",
"H_Hat_camo",
"H_Hat_grey",
"H_Hat_checker",
"H_Hat_tan",
"H_RacingHelmet_1_F",
"H_RacingHelmet_2_F",
"H_RacingHelmet_3_F",
"H_RacingHelmet_4_F",
"H_RacingHelmet_1_black_F",
"H_RacingHelmet_1_blue_F",
"H_RacingHelmet_1_green_F",
"H_RacingHelmet_1_red_F",
"H_RacingHelmet_1_white_F",
"H_RacingHelmet_1_yellow_F",
"H_RacingHelmet_1_orange_F",
"H_Cap_marshal",
"Exile_Cap_Exile",
"H_Helmet_Skate",
"H_HelmetB_TI_tna_F",
"H_HelmetO_ViperSP_hex_F",
"H_HelmetO_ViperSP_ghex_F",
"H_HelmetB_tna_F",
"H_HelmetB_Enh_tna_F",
"H_HelmetB_Light_tna_F",
"H_HelmetSpecO_ghex_F",
"H_HelmetLeaderO_ghex_F",
"H_HelmetO_ghex_F",
"H_HelmetCrew_O_ghex_F",
"H_MilCap_tna_F",
"H_MilCap_ghex_F",
"H_Booniehat_tna_F",
"H_Beret_gen_F",
"H_MilCap_gen_F",
"H_Cap_oli_Syndikat_F",
"H_Cap_tan_Syndikat_F",
"H_Cap_blk_Syndikat_F",
"H_Cap_grn_Syndikat_F",
// Goggles
"GoggleItem",
// Vests
"Vest_Camo_Base",
"Vest_NoCamo_Base",
"V_Rangemaster_belt",
"V_BandollierB_khk",
"V_BandollierB_cbr",
"V_BandollierB_rgr",
"V_BandollierB_blk",
"V_BandollierB_oli",
"V_PlateCarrier1_rgr",
"V_PlateCarrier2_rgr",
"V_PlateCarrier2_blk",
"V_PlateCarrier3_rgr",
"V_PlateCarrierGL_rgr",
"V_PlateCarrierGL_blk",
"V_PlateCarrierGL_mtp",
"V_PlateCarrier1_blk",
"V_PlateCarrierSpec_rgr",
"V_PlateCarrierSpec_blk",
"V_PlateCarrierSpec_mtp",
"V_Chestrig_khk",
"V_Chestrig_rgr",
"V_Chestrig_blk",
"V_Chestrig_oli",
"V_TacVest_khk",
"V_TacVest_brn",
"V_TacVest_oli",
"V_TacVest_blk",
"V_TacVest_camo",
"V_TacVest_blk_POLICE",
"V_TacVestIR_blk",
"V_TacVestCamo_khk",
"V_HarnessO_brn",
"V_HarnessOGL_brn",
"V_HarnessO_gry",
"V_HarnessOGL_gry",
"V_HarnessOSpec_brn",
"V_HarnessOSpec_gry",
"V_PlateCarrierIA1_dgtl",
"V_PlateCarrierIA2_dgtl",
"V_PlateCarrierIAGL_dgtl",
"V_PlateCarrierIAGL_oli",
"V_RebreatherB",
"V_RebreatherIR",
"V_RebreatherIA",
"V_PlateCarrier_Kerry",
"V_PlateCarrierL_CTRG",
"V_PlateCarrierH_CTRG",
"V_I_G_resistanceLeader_F",
"V_Press_F",
"Exile_Vest_Rebreather_NATO",
"Exile_Vest_Rebreather_AAF",
"Exile_Vest_Rebreather_CSAT",
"Exile_Vest_Snow",
"V_TacChestrig_grn_F",
"V_TacChestrig_oli_F",
"V_TacChestrig_cbr_F",
"V_PlateCarrier1_tna_F",
"V_PlateCarrier2_tna_F",
"V_PlateCarrierSpec_tna_F",
"V_PlateCarrierGL_tna_F",
"V_HarnessO_ghex_F",
"V_HarnessOGL_ghex_F",
"V_BandollierB_ghex_F",
"V_TacVest_gen_F",
"V_PlateCarrier1_rgr_noflag_F",
"V_PlateCarrier2_rgr_noflag_F",
"V_DeckCrew_base_F",
"V_DeckCrew_yellow_F",
"V_DeckCrew_blue_F",
"V_DeckCrew_green_F",
"V_DeckCrew_red_F",
"V_DeckCrew_white_F",
"V_DeckCrew_brown_F",
"V_DeckCrew_violet_F",
// Backpacks
//Glasses
"None",
"G_Spectacles",
"G_Spectacles_Tinted",
"G_Combat",
"G_Lowprofile",
"G_Shades_Black",
"G_Shades_Green",
"G_Shades_Red",
"G_Squares",
"G_Squares_Tinted",
"G_Sport_BlackWhite",
"G_Sport_Blackyellow",
"G_Sport_Greenblack",
"G_Sport_Checkered",
"G_Sport_Red",
"G_Tactical_Black",
"G_Aviator",
"G_Lady_Mirror",
"G_Lady_Dark",
"G_Lady_Red",
"G_Lady_Blue",
"G_Diving",
"G_B_Diving",
"G_O_Diving",
"G_I_Diving",
"G_Goggles_VR",
"G_Balaclava_blk",
"G_Balaclava_oli",
"G_Balaclava_combat",
"G_Balaclava_lowprofile",
"G_Bandanna_blk",
"G_Bandanna_oli",
"G_Bandanna_khk",
"G_Bandanna_tan",
"G_Bandanna_beast",
"G_Bandanna_shades",
"G_Bandanna_sport",
"G_Bandanna_aviator",
"G_Shades_Blue",
"G_Sport_Blackred",
"G_Tactical_Clear",
"Exile_Glasses_Diving_AAF",
"Exile_Glasses_Diving_CSAT",
"Exile_Glasses_Diving_NATO",
"G_Balaclava_TI_blk_F",
"G_Balaclava_TI_tna_F",
"G_Balaclava_TI_G_blk_F",
"G_Balaclava_TI_G_tna_F",
"G_Combat_Goggles_tna_F",
// NVG
"NVGoggles",
"NVGoggles_OPFOR",
"NVGoggles_INDEP",
"Integrated_NVG_F",
"Integrated_NVG_TI_0_F",
"Integrated_NVG_TI_1_F",
"O_NVGoggles_hex_F",
"O_NVGoggles_urb_F",
"O_NVGoggles_ghex_F",
"NVGoggles_tna_F",
"NVGogglesB_blk_F",
"NVGogglesB_grn_F",
"NVGogglesB_gry_F"
];

View File

@ -1,39 +0,0 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_baseHeadgear = [];
#include "baseHeadgear.sqf"
_veh = (configfile >> "CfgWeapons") call BIS_fnc_getCfgSubClasses;
_veh sort true;
systemChat format[" _veh contains %1 entries",count _veh];
_index = 0;
_cars = [];
_exile = 0;
_clipboard = "";
{
_isKindOf = (_x isKindOF ["HelmetBase", configFile >> "CfgWeapons"]) or (_x isKindOF ["H_HelmetB", configFile >> "CfgWeapons"]);
if (_isKindOf and !(_x in _baseHeadgear)) then
{
_cars pushback _x;
diag_log format["%1",_x];
_index = _index + 1;
_left = [_x,5] call KRON_StrLeft;
if (_left in ["Exile"]) then {
_exile = _exile + 1;
systemChat format["%1",_x];
};
_clipboard = _clipboard + format['"%1",%2',_x,endl];
};
}forEach _veh;
systemChat format["number of type of Vests = %1", _index];
systemChat format["number of Exile Vests = %1",_exile];
copyToClipboard _clipboard;;

View File

@ -1,38 +0,0 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_baseHeadgear = [];
#include "baseHeadgear.sqf"
_veh = (configfile >> "CfgWeapons") call BIS_fnc_getCfgSubClasses;
_veh sort true;
_cars = [];
_clipboard = "";
{
_isKindOf = (_x isKindOF ["HelmetBase", configFile >> "CfgWeapons"]) or (_x isKindOF ["H_HelmetB", configFile >> "CfgWeapons"]);
if (_isKindOf and !(_x in _baseHeadgear)) then
{
_cars pushback _x;
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 50; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 50; };%2",_x,endl];
};
};
}forEach _veh;
systemChat format["number of type of Man = %1", _index];
copyToClipboard _clipboard;
systemChat "Headgear Pricelist Generated";

View File

@ -1,33 +0,0 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
// load string library
nul=[] execVM "KRON_Strings.sqf";
DBD_priceConfiguration = "Exile"; // Options are "Exile" or "Epoch". This configuration pertains only to generating pre-formated price lists.
DBD_includedWeaponMagazines = false;
player addAction["Run vehiclesConfig","vehiclesConfig.sqf"];
player addAction["Run vehiclesPricelist","vehiclesPriceList.sqf"];
player addAction["Run airConfig","airConfig.sqf"];
player addAction["Run airPriceList","airPriceList.sqf"];
player addAction["Run weaponsConfig","weaponsConfig.sqf"];
player addAction["Run weaponsPriceList","weaponsPriceList.sqf"];
player addAction["Run magazinesConfig","magazinesConfig.sqf"];
player addAction["Run magazinesPriceList","magazinesPriceList.sqf"];
player addAction["Run wearablesConfig","wearablesConfig.sqf"];
player addAction["Run wearablesPriceList","wearablesPriceList.sqf"];
player addAction["Run headgearConfig","headgearConfig.sqf"];
player addAction["Run headgearPriceList","headgearPriceList.sqf"];
player addAction["Run vestsConfig","vestsConfig.sqf"];
player addAction["Run vestsPriceList","vestsPriceList.sqf"];
player addAction["Run uniformsConfig","uniformsConfig.sqf"];
player addAction["Run uniformsPriceList","uniformsPriceList.sqf"];

View File

@ -1,64 +0,0 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
7/20/17
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_baseMagazines = [];
#include "baseMagazines.sqf"
_veh = (configfile >> "CfgMagazines") call BIS_fnc_getCfgSubClasses;
//_veh sort true;
systemChat format[" _veh contains %1 entries",count _veh];
_cars = [];
_clipboard = "";
_wpnSmokeShell = []; // "B_IR_Grenade"
_wpnLauncherRound = [];
//_wpnMagazines = [];
_wpnVehicleAmmo = [];
_wpnMines = []; // "ATMine_Range_Mag" "SatchelCharge_Remote_Mag" "DemoCharge_Remote_Mag" "IEDUrbanSmall_Remote_Mag"
_isMagazine = true;
_scannedMags = [];
{
//diag_log format["Magazine = %1",_x];
_isKindOf = (_x isKindOF ["CA_Magazine", configFile >> "CfgMagazines"]);
if (true) then
{
//diag_log format["Acceptable Magazine = %1",_x];
if (_isKindOf and !(_x in _baseMagazines)) then
{
//diag_log format["Evaluated Magazine = %1",_x];
//if (!(_x isKindOF ["CA_LauncherMagazine", configFile >> "CfgMagazines"]) && !(_x isKindOF ["HandGrenade", configFile >> "CfgMagazines"]) && !(_x isKindOf ["VehicleMagazine", configFile >> "CfgMagazines"]) && !(_x isKindOf ["Exile_AbstractItem", configFile >> "CfgMagazines"])) then {_wpnMagazines pushBack _x};
if (_x isKindOF ["CA_LauncherMagazine", configFile >> "CfgMagazines"]) then {_wpnLauncherRound pushBack _x; _scannedMags pushBack _x;};
if(_x isKindOF ["HandGrenade", configFile >> "CfgMagazines"]) then {_wpnSmokeShell pushBack _x; _scannedMags pushBack _x;};
if (_x isKindOf ["VehicleMagazine", configFile >> "CfgMagazines"]) then {_wpnVehicleAmmo pushBack _x; _scannedMags pushBack _x;};
if (_x isKindOf ["Exile_AbstractItem", configFile >> "CfgMagazines"]) then { _scannedMags pushBack _x;}; // Ignore these for now
if !(_x in _scannedMags) then {_wpnMagazines pushBack _x; _scannedMags pushBack _x;};
};
};
}forEach _veh;
_clipBoard = _clipBoard + format["%1%2// Grenades, Smoke Grenades, Chemlights and Flares%3",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1",%2',_x,endl];
}forEach _wpnSmokeShell;
_clipBoard = _clipBoard + format["%1%2// Launcher Rounds%3",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1",%2',_x,endl];
}forEach _wpnLauncherRound;
_clipBoard = _clipBoard + format["%1%2// Vehicle Ammo%3",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1",%2',_x,endl];
}forEach _wpnVehicleAmmo;
_clipBoard = _clipBoard + format["%1%2// Magazines%3",endl,endl,endl];
_clipBoard = _clipBoard + format["%1%2// Includes Weapon Magazines and anything not captured above%3",endl,endl,endl];
_clipBoard = _clipBoard + format["%1%2// Check for duplicates if you also run the extraction tool for weapons%3",endl,endl,endl];
_clipBoard = _clipBoard + format["%1%2// Which extracts all magazines available for player weapons%3",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1",%2',_x,endl];
}forEach _wpnMagazines;
copyToClipboard _clipboard;

View File

@ -1,91 +0,0 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
7/20/17
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_baseMagazines = [];
#include "baseMagazines.sqf"
_veh = (configfile >> "CfgMagazines") call BIS_fnc_getCfgSubClasses;
_veh sort true;
systemChat format[" _veh contains %1 entries",count _veh];
_cars = [];
_clipboard = "";
_wpnSmokeShell = []; // "B_IR_Grenade"
_wpnLauncherRound = [];
_wpnMagazines = [];
_wpnVehicleAmmo = [];
_wpnMines = []; // "ATMine_Range_Mag" "SatchelCharge_Remote_Mag" "DemoCharge_Remote_Mag" "IEDUrbanSmall_Remote_Mag"
_isMagazine = true;
_scannedMags = [];
{
_isKindOf = (_x isKindOF ["CA_Magazine", configFile >> "CfgMagazines"]);
if (true) then
{
if (_isKindOf and !(_x in _baseMagazines)) then
{
if (_x isKindOF ["CA_LauncherMagazine", configFile >> "CfgMagazines"]) then {_wpnLauncherRound pushBack _x; _scannedMags pushBack _x;};
if(_x isKindOF ["HandGrenade", configFile >> "CfgMagazines"]) then {_wpnSmokeShell pushBack _x; _scannedMags pushBack _x;};
if (_x isKindOf ["VehicleMagazine", configFile >> "CfgMagazines"]) then {_wpnVehicleAmmo pushBack _x; _scannedMags pushBack _x;};
if (_x isKindOf ["Exile_AbstractItem", configFile >> "CfgMagazines"]) then { _scannedMags pushBack _x;}; // Ignore these for now
if !(_x in _scannedMags) then {_wpnMagazines pushBack _x; _scannedMags pushBack _x;};
};
};
}forEach _veh;
_clipBoard = _clipBoard + format["%1%2// Grenades, Smoke Grenades, Chemlights and Flares%3",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 15; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 15; };%2",_x,endl];
};
}forEach _wpnSmokeShell;
_clipBoard = _clipBoard + format["%1%2// Launcher Rounds%3",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 15; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 15; };%2",_x,endl];
};
}forEach _wpnLauncherRound;
_clipBoard = _clipBoard + format["%1%2// Vehicle Ammo%3",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnVehicleAmmo;
_clipBoard = _clipBoard + format["%1%2// Magazines%3",endl,endl,endl];
_clipBoard = _clipBoard + format["%1%2// Includes Weapon Magazines and anything not captured above%3",endl,endl,endl];
_clipBoard = _clipBoard + format["%1%2// Check for duplicates if you also run the extraction tool for weapons%3",endl,endl,endl];
_clipBoard = _clipBoard + format["%1%2// Which extracts all magazines available for player weapons%3",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 15; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 15; };%2",_x,endl];
};
}forEach _wpnMagazines;
copyToClipboard _clipboard;
systemChat "Magazines Pricelist Generated";

View File

@ -1,105 +0,0 @@
/*** Convert to array ***/
_str="1234efg890";
_array=[_str] call KRON_StrtoArray;
_arr1=format['StrtoArray: ["%1"] => %2',_str,_array]; // returns ["1","2","3","4","e","f","g","8","9","0"]
/*** String length ***/
_str="abcdefg";
_len=[_str] call KRON_StrLen;
_len1=format['StrLen: ["%1"] => %2',_str,_len]; // returns '7'
/*** Get left part of string ***/
_str="1234567890";
_len=3;
_left=[_str,_len] call KRON_StrLeft;
_left1=format['StrLeft: ["%1",%2] => "%3"',_str,_len,_left]; // returns '123'
/*** Get right part of string ***/
_str="1234567890";
_len=5;
_right=[_str,_len] call KRON_StrRight;
_right1=format['StrRight: ["%1",%2] => "%3"',_str,_len,_right]; // returns '67890'
/*** Get Substring ***/
_str="1234567890";
_pos=3;
_len=3;
_substr=[_str,_pos,_len] call KRON_StrMid;
_mid1=format['StrMid: ["%1",%2,%3] => "%4"',_str,_pos,_len,_substr]; // returns '345'
_str="1234567890";
_pos=4;
_substr=[_str,_pos] call KRON_StrMid;
_mid2=format['StrMid: ["%1",%2] => "%3"',_str,_pos,_substr]; // returns '567890'
/*** Test for string ***/
_str="1234567890";
_ins="345";
_found=[_str,_ins] call KRON_StrInStr;
_instr1=format['StrInStr: ["%1","%2"] => %3',_str,_ins,_found]; // returns 'true'
_str="1234567890";
_ins="345";
_found=[_str,_ins] call KRON_StrIndex;
_instr2=format['StrIndex: ["%1","%2"] => %3',_str,_ins,_found]; // returns 2
/*** Convert to uppercase ***/
_str="abc123XYZ";
_ucase=[_str] call KRON_StrUpper;
_upper=format['StrUpper: ["%1"] => "%2"',_str,_ucase]; // returns 'ABC123XYZ'
_str="abc123XYZ";
_lcase=[_str] call KRON_StrLower;
_lower=format['StrLower: ["%1"] => "%2"',_str,_lcase]; // returns 'abc123xyz'
/*** Read flag ***/
_arr=[this,1,"nogo",true];
_arg=[_arr,"NOGO"] call KRON_FindFlag;
_flg=format['FindFlag: [[this,1,"nogo",true],"NOGO"] => "%1"',_arg]; // returns true
/*** Read arguments ***/
_arr=[this,1,"left:100","right:200"];
_arg=parseNumber([_arr,"Left"] call KRON_getArg);
_arg1=format['getArg: [[this,1,"left:100","right:200"],"Left"] => "%2"',_str,_arg]; // returns '100'
_arr=[this,1,"left:100","right:200"];
_arg=parseNumber([_arr,"Right"] call KRON_getArg);
_arg2=format['getArg: [[this,1,"left:100","right:200"],"Right"] => "%2"',_str,_arg]; // returns '200'
/*** Compare ***/
_str1="abc";
_str2="bde";
_cmp=[_str1,_str2] call KRON_Compare;
_cmp1=format['Compare: ["%1","%2"] => "%3"',_str1,_str2,_cmp]; // returns -1
/*** Sort array***/
_arr=["x","aaa","100","abc"];
_srt=[_arr] call KRON_ArraySort;
_srt1=format['ArraySort: [%1] => %2',_arr,_srt]; // returns ["100","aaa","abc","x"]
_arr=["x","aaa","100","abc"];
_srt=[_arr,"desc"] call KRON_ArraySort;
_srt2=format['ArraySort: [%1,"desc"] => %2',_arr,_srt]; // returns ["x","abc","aaa","100"]
_arr=[["Jim",300,false],["Joe",100,false],["Jack",200,true]];
_srt=[_arr] call KRON_ArraySort;
_srt3=format['ArraySort: [[%1]] => %2',_arr,_srt]; // returns [["Jack",200,true],["Jim",300,false],["Joe",100,false]]
_arr=[["Jim",300,false],["Joe",100,false],["Jack",200,true]];
_srt=[_arr,1,"desc"] call KRON_ArraySort;
_srt4=format['ArraySort: [[%1],1,"desc"] => %2',_arr,_srt]; // returns [["Jim",300,false],["Jack",200,true],["Joe",100,false]]
/*** Output results ***/
hintc format['%1\n%2\n%3\n%4\n%5\n%6\n%7\n%8\n%9\n%10\n%11\n%12\n%13\n%14\n%15\n%16\n%17\n%18',_arr1,_len1,_left1,_right1,_mid1,_mid2,_instr1,_instr2,_upper,_lower,_flg,_arg1,_arg2,_cmp1,_srt1,_srt2,_srt3,_srt4];

View File

@ -1,37 +0,0 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_baseUniforms = [];
#include "baseUniforms.sqf"
_veh = (configfile >> "CfgWeapons") call BIS_fnc_getCfgSubClasses;
//_veh sort true;
systemChat format[" _veh contains %1 entries",count _veh];
_index = 0;
_cars = [];
_exile = 0;
_clipboard = "";
{
_isKindOf = _x isKindOF ["Uniform_Base", configFile >> "CfgWeapons"];
if (_isKindOf and !(_x in _baseUniforms)) then
{
_cars pushback _x;
diag_log format["%1",_x];
_index = _index + 1;
_left = [_x,5] call KRON_StrLeft;
if (_left in ["Exile"]) then {
_exile = _exile + 1;
systemChat format["%1",_x];
};
_clipboard = _clipboard + format['"%1",%2',_x,endl];
};
}forEach _veh;
copyToClipboard _clipboard;

View File

@ -1,34 +0,0 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_baseUniforms = [];
#include "baseUniforms.sqf"
_veh = (configfile >> "CfgWeapons") call BIS_fnc_getCfgSubClasses;
_veh sort true;
systemChat format[" _veh contains %1 entries",count _veh];
_cars = [];
_clipboard = "";
{
_isKindOf = _x isKindOF ["Uniform_Base", configFile >> "CfgWeapons"];
if (_isKindOf and !(_x in _baseUniforms)) then
{
_cars pushback _x;
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 50; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 50; };%2",_x,endl];
};
};
}forEach _veh;
copyToClipboard _clipboard;
systemChat "Uniforms Pricelist Generated";

View File

@ -1,718 +0,0 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
Lists vehicles that should be excluded from the output of the script.
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_vehiclesBase = [
"APC_Wheeled_01_base_F",
"APC_Wheeled_02_base_F",
"APC_Wheeled_03_base_F",
"B_APC_Wheeled_01_base_F",
"B_APC_Wheeled_01_cannon_F",
"B_CTRG_LSV_01_light_F",
"B_G_Offroad_01_armed_F",
"B_G_Offroad_01_F",
"B_G_Offroad_01_repair_F",
"B_G_Quadbike_01_F",
"B_G_Van_01_fuel_F",
"B_G_Van_01_transport_F",
"B_GEN_Offroad_01_gen_F",
"B_LSV_01_armed_black_F",
"B_LSV_01_armed_F",
"B_LSV_01_armed_olive_F",
"B_LSV_01_armed_sand_F",
"B_LSV_01_unarmed_black_F",
"B_LSV_01_unarmed_F",
"B_LSV_01_unarmed_olive_F",
"B_LSV_01_unarmed_sand_F",
"B_MRAP_01_F",
"B_MRAP_01_gmg_F",
"B_MRAP_01_hmg_F",
"B_Quadbike_01_F",
"B_T_APC_Wheeled_01_cannon_F",
"B_T_LSV_01_armed_black_F",
"B_T_LSV_01_armed_CTRG_F",
"B_T_LSV_01_armed_F",
"B_T_LSV_01_armed_olive_F",
"B_T_LSV_01_armed_sand_F",
"B_T_LSV_01_unarmed_black_F",
"B_T_LSV_01_unarmed_CTRG_F",
"B_T_LSV_01_unarmed_F",
"B_T_LSV_01_unarmed_olive_F",
"B_T_LSV_01_unarmed_sand_F",
"B_T_MRAP_01_F",
"B_T_MRAP_01_gmg_F",
"B_T_MRAP_01_hmg_F",
"B_T_Quadbike_01_F",
"B_T_Truck_01_ammo_F",
"B_T_Truck_01_box_F",
"B_T_Truck_01_covered_F",
"B_T_Truck_01_fuel_F",
"B_T_Truck_01_medical_F",
"B_T_Truck_01_mover_F",
"B_T_Truck_01_Repair_F",
"B_T_Truck_01_transport_F",
"B_Truck_01_ammo_F",
"B_Truck_01_box_F",
"B_Truck_01_covered_F",
"B_Truck_01_fuel_F",
"B_Truck_01_medical_F",
"B_Truck_01_mover_F",
"B_Truck_01_Repair_F",
"B_Truck_01_transport_F",
"B_UGV_01_F",
"B_UGV_01_rcws_F",
"BRDM2_HQ_Base",
"BRDM2_HQ_CHDKZ",
"BTR40_base_EP1",
"BTR40_MG_base_EP1",
"BTR40_MG_TK_GUE_EP1",
"BTR40_MG_TK_INS_EP1",
"BTR40_TK_GUE_EP1",
"BTR40_TK_INS_EP1",
"Bus",
"C_Hatchback_01_beigecustom_F",
"C_Hatchback_01_black_F",
"C_Hatchback_01_blue_F",
"C_Hatchback_01_bluecustom_F",
"C_Hatchback_01_dark_F",
"C_Hatchback_01_F",
"C_Hatchback_01_green_F",
"C_Hatchback_01_grey_F",
"C_Hatchback_01_sport_blue_F",
"C_Hatchback_01_sport_F",
"C_Hatchback_01_sport_green_F",
"C_Hatchback_01_sport_grey_F",
"C_Hatchback_01_sport_orange_F",
"C_Hatchback_01_sport_red_F",
"C_Hatchback_01_sport_white_F",
"C_Hatchback_01_white_F",
"C_Hatchback_01_yellow_F",
"C_Kart_01_black_F",
"C_Kart_01_Blu_F",
"C_Kart_01_F",
"C_Kart_01_F_Base",
"C_Kart_01_Fuel_F",
"C_Kart_01_green_F",
"C_Kart_01_orange_F",
"C_Kart_01_Red_F",
"C_Kart_01_Vrana_F",
"C_Kart_01_white_F",
"C_Kart_01_yellow_F",
"C_Offroad_01_blue_F",
"C_Offroad_01_bluecustom_F",
"C_Offroad_01_darkred_F",
"C_Offroad_01_F",
"C_Offroad_01_red_F",
"C_Offroad_01_repair_F",
"C_Offroad_01_sand_F",
"C_Offroad_01_white_F",
"C_Offroad_02_unarmed_black_F",
"C_Offroad_02_unarmed_blue_F",
"C_Offroad_02_unarmed_F",
"C_Offroad_02_unarmed_green_F",
"C_Offroad_02_unarmed_orange_F",
"C_Offroad_02_unarmed_red_F",
"C_Offroad_02_unarmed_white_F",
"C_Offroad_default_F",
"C_Offroad_luxe_F",
"C_Offroad_stripped_F",
"C_Quadbike_01_black_F",
"C_Quadbike_01_blue_F",
"C_Quadbike_01_F",
"C_Quadbike_01_red_F",
"C_Quadbike_01_white_F",
"C_SUV_01_F",
"C_Truck_02_box_F",
"C_Truck_02_covered_F",
"C_Truck_02_fuel_F",
"C_Truck_02_transport_F",
"C_Van_01_box_F",
"C_Van_01_box_red_F",
"C_Van_01_box_white_F",
"C_Van_01_fuel_F",
"C_Van_01_fuel_red_F",
"C_Van_01_fuel_red_v2_F",
"C_Van_01_fuel_white_F",
"C_Van_01_fuel_white_v2_F",
"C_Van_01_transport_F",
"C_Van_01_transport_red_F",
"C_Van_01_transport_white_F",
"Car",
"Car_F",
"Exile_Bike_QuadBike_Abstract",
"Exile_Bike_QuadBike_Black",
"Exile_Bike_QuadBike_Blue",
"Exile_Bike_QuadBike_Csat",
"Exile_Bike_QuadBike_Fia",
"Exile_Bike_QuadBike_Guerilla01",
"Exile_Bike_QuadBike_Guerilla02",
"Exile_Bike_QuadBike_Nato",
"Exile_Bike_QuadBike_Red",
"Exile_Bike_QuadBike_White",
"Exile_Car_BRDM2_HQ",
"Exile_Car_BRDM2_HQ_Abstract",
"Exile_Car_BTR40_Abstract",
"Exile_Car_BTR40_Camo",
"Exile_Car_BTR40_Green",
"Exile_Car_BTR40_MG_Abstract",
"Exile_Car_BTR40_MG_Camo",
"Exile_Car_BTR40_MG_Green",
"Exile_Car_Golf_Abstract",
"Exile_Car_Golf_Black",
"Exile_Car_Golf_Red",
"Exile_Car_Hatchback_Abstract",
"Exile_Car_Hatchback_Beige",
"Exile_Car_Hatchback_BeigeCustom",
"Exile_Car_Hatchback_Black",
"Exile_Car_Hatchback_Blue",
"Exile_Car_Hatchback_BlueCustom",
"Exile_Car_Hatchback_Dark",
"Exile_Car_Hatchback_Green",
"Exile_Car_Hatchback_Grey",
"Exile_Car_Hatchback_Rusty1",
"Exile_Car_Hatchback_Rusty2",
"Exile_Car_Hatchback_Rusty3",
"Exile_Car_Hatchback_Sport_Abstract",
"Exile_Car_Hatchback_Sport_Admin",
"Exile_Car_Hatchback_Sport_Beige",
"Exile_Car_Hatchback_Sport_Blue",
"Exile_Car_Hatchback_Sport_Green",
"Exile_Car_Hatchback_Sport_Orange",
"Exile_Car_Hatchback_Sport_Red",
"Exile_Car_Hatchback_Sport_White",
"Exile_Car_Hatchback_Yellow",
"Exile_Car_HEMMT",
"Exile_Car_HEMMT_Abstract",
"Exile_Car_HMMWV_M134_Abstract",
"Exile_Car_HMMWV_M134_Desert",
"Exile_Car_HMMWV_M134_Green",
"Exile_Car_HMMWV_M2_Abstract",
"Exile_Car_HMMWV_M2_Desert",
"Exile_Car_HMMWV_M2_Green",
"Exile_Car_HMMWV_MEV_Abstract",
"Exile_Car_HMMWV_MEV_Desert",
"Exile_Car_HMMWV_MEV_Green",
"Exile_Car_HMMWV_UNA_Abstract",
"Exile_Car_HMMWV_UNA_Desert",
"Exile_Car_HMMWV_UNA_Green",
"Exile_Car_Hunter",
"Exile_Car_Hunter_Abstract",
"Exile_Car_Ifrit",
"Exile_Car_Ifrit_Abstract",
"Exile_Car_Ikarus_Abstract",
"Exile_Car_Ikarus_Blue",
"Exile_Car_Ikarus_Party",
"Exile_Car_Ikarus_Red",
"Exile_Car_Kart_Abstract",
"Exile_Car_Kart_Black",
"Exile_Car_Kart_Blue",
"Exile_Car_Kart_BluKing",
"Exile_Car_Kart_Green",
"Exile_Car_Kart_Orange",
"Exile_Car_Kart_RedStone",
"Exile_Car_Kart_Vrana",
"Exile_Car_Kart_White",
"Exile_Car_Kart_Yellow",
"Exile_Car_Lada_Abstract",
"Exile_Car_Lada_Green",
"Exile_Car_Lada_Hipster",
"Exile_Car_Lada_Red",
"Exile_Car_Lada_Taxi",
"Exile_Car_Lada_White",
"Exile_Car_LandRover_Abstract",
"Exile_Car_LandRover_Ambulance_Abstract",
"Exile_Car_LandRover_Ambulance_Desert",
"Exile_Car_LandRover_Ambulance_Green",
"Exile_Car_LandRover_Ambulance_Sand",
"Exile_Car_LandRover_Desert",
"Exile_Car_LandRover_Green",
"Exile_Car_LandRover_Red",
"Exile_Car_LandRover_Sand",
"Exile_Car_LandRover_Urban",
"Exile_Car_MB4WD",
"Exile_Car_MB4WDOpen",
"Exile_Car_Octavius_Abstract",
"Exile_Car_Octavius_Black",
"Exile_Car_Octavius_White",
"Exile_Car_Offroad_Abstract",
"Exile_Car_Offroad_Armed_Abstract",
"Exile_Car_Offroad_Armed_Guerilla01",
"Exile_Car_Offroad_Armed_Guerilla02",
"Exile_Car_Offroad_Armed_Guerilla03",
"Exile_Car_Offroad_Armed_Guerilla04",
"Exile_Car_Offroad_Armed_Guerilla05",
"Exile_Car_Offroad_Armed_Guerilla06",
"Exile_Car_Offroad_Armed_Guerilla07",
"Exile_Car_Offroad_Armed_Guerilla08",
"Exile_Car_Offroad_Armed_Guerilla09",
"Exile_Car_Offroad_Armed_Guerilla10",
"Exile_Car_Offroad_Armed_Guerilla11",
"Exile_Car_Offroad_Armed_Guerilla12",
"Exile_Car_Offroad_Beige",
"Exile_Car_Offroad_Blue",
"Exile_Car_Offroad_BlueCustom",
"Exile_Car_Offroad_DarkRed",
"Exile_Car_Offroad_Guerilla01",
"Exile_Car_Offroad_Guerilla02",
"Exile_Car_Offroad_Guerilla03",
"Exile_Car_Offroad_Guerilla04",
"Exile_Car_Offroad_Guerilla05",
"Exile_Car_Offroad_Guerilla06",
"Exile_Car_Offroad_Guerilla07",
"Exile_Car_Offroad_Guerilla08",
"Exile_Car_Offroad_Guerilla09",
"Exile_Car_Offroad_Guerilla10",
"Exile_Car_Offroad_Guerilla11",
"Exile_Car_Offroad_Guerilla12",
"Exile_Car_Offroad_Red",
"Exile_Car_Offroad_Repair_Abstract",
"Exile_Car_Offroad_Repair_Beige",
"Exile_Car_Offroad_Repair_Blue",
"Exile_Car_Offroad_Repair_BlueCustom",
"Exile_Car_Offroad_Repair_Civillian",
"Exile_Car_Offroad_Repair_DarkRed",
"Exile_Car_Offroad_Repair_Guerilla01",
"Exile_Car_Offroad_Repair_Guerilla02",
"Exile_Car_Offroad_Repair_Guerilla03",
"Exile_Car_Offroad_Repair_Guerilla04",
"Exile_Car_Offroad_Repair_Guerilla05",
"Exile_Car_Offroad_Repair_Guerilla06",
"Exile_Car_Offroad_Repair_Guerilla07",
"Exile_Car_Offroad_Repair_Guerilla08",
"Exile_Car_Offroad_Repair_Guerilla09",
"Exile_Car_Offroad_Repair_Guerilla10",
"Exile_Car_Offroad_Repair_Guerilla11",
"Exile_Car_Offroad_Repair_Guerilla12",
"Exile_Car_Offroad_Repair_Red",
"Exile_Car_Offroad_Repair_White",
"Exile_Car_Offroad_Rusty1",
"Exile_Car_Offroad_Rusty2",
"Exile_Car_Offroad_Rusty3",
"Exile_Car_Offroad_White",
"Exile_Car_OldTractor_Abstract",
"Exile_Car_OldTractor_Red",
"Exile_Car_ProwlerLight",
"Exile_Car_ProwlerUnarmed",
"Exile_Car_QilinUnarmed",
"Exile_Car_Strider",
"Exile_Car_Strider_Abstract",
"Exile_Car_SUV_Abstract",
"Exile_Car_SUV_Armed_Abstract",
"Exile_Car_SUV_Armed_Black",
"Exile_Car_SUV_Black",
"Exile_Car_SUV_Grey",
"Exile_Car_SUV_Orange",
"Exile_Car_SUV_Red",
"Exile_Car_SUV_Rusty1",
"Exile_Car_SUV_Rusty2",
"Exile_Car_SUV_Rusty3",
"Exile_Car_SUVXL_Abstract",
"Exile_Car_SUVXL_Black",
"Exile_Car_Tempest",
"Exile_Car_Tempest_Abstract",
"Exile_Car_TowTractor_Abstract",
"Exile_Car_TowTractor_White",
"Exile_Car_Tractor_Abstract",
"Exile_Car_Tractor_Red",
"Exile_Car_UAZ_Abstract",
"Exile_Car_UAZ_Green",
"Exile_Car_UAZ_Open_Abstract",
"Exile_Car_UAZ_Open_Green",
"Exile_Car_Ural_Covered_Abstract",
"Exile_Car_Ural_Covered_Blue",
"Exile_Car_Ural_Covered_Military",
"Exile_Car_Ural_Covered_Worker",
"Exile_Car_Ural_Covered_Yellow",
"Exile_Car_Ural_Open_Abstract",
"Exile_Car_Ural_Open_Blue",
"Exile_Car_Ural_Open_Military",
"Exile_Car_Ural_Open_Worker",
"Exile_Car_Ural_Open_Yellow",
"Exile_Car_V3S_Covered",
"Exile_Car_V3S_Covered_Abstract",
"Exile_Car_V3S_Open",
"Exile_Car_V3S_Open_Abstract",
"Exile_Car_Van_Abstract",
"Exile_Car_Van_Black",
"Exile_Car_Van_Box_Abstract",
"Exile_Car_Van_Box_Black",
"Exile_Car_Van_Box_Guerilla01",
"Exile_Car_Van_Box_Guerilla02",
"Exile_Car_Van_Box_Guerilla03",
"Exile_Car_Van_Box_Guerilla04",
"Exile_Car_Van_Box_Guerilla05",
"Exile_Car_Van_Box_Guerilla06",
"Exile_Car_Van_Box_Guerilla07",
"Exile_Car_Van_Box_Guerilla08",
"Exile_Car_Van_Box_Red",
"Exile_Car_Van_Box_White",
"Exile_Car_Van_Fuel_Abstract",
"Exile_Car_Van_Fuel_Black",
"Exile_Car_Van_Fuel_Guerilla01",
"Exile_Car_Van_Fuel_Guerilla02",
"Exile_Car_Van_Fuel_Guerilla03",
"Exile_Car_Van_Fuel_Red",
"Exile_Car_Van_Fuel_White",
"Exile_Car_Van_Guerilla01",
"Exile_Car_Van_Guerilla02",
"Exile_Car_Van_Guerilla03",
"Exile_Car_Van_Guerilla04",
"Exile_Car_Van_Guerilla05",
"Exile_Car_Van_Guerilla06",
"Exile_Car_Van_Guerilla07",
"Exile_Car_Van_Guerilla08",
"Exile_Car_Van_Red",
"Exile_Car_Van_White",
"Exile_Car_Volha_Abstract",
"Exile_Car_Volha_Black",
"Exile_Car_Volha_Blue",
"Exile_Car_Volha_White",
"Exile_Car_Zamak",
"Exile_Car_Zamak_Abstract",
"Golf_Base",
"Golf_Civ_Base",
"Golf_Civ_Black",
"Golf_Civ_pink",
"Hatchback_01_base_F",
"Hatchback_01_sport_base_F",
"HMMWV_Base",
"HMMWV_M134",
"HMMWV_M134_des",
"HMMWV_M2",
"HMMWV_M2_des",
"HMMWV_M2_GPK_1",
"HMMWV_M2_GPK_Base",
"HMMWV_MEV",
"HMMWV_MEV_des",
"HMMWV_UNA",
"HMMWV_UNA_des",
"I_APC_Wheeled_03_base_F",
"I_APC_Wheeled_03_cannon_F",
"I_C_Offroad_02_unarmed_brown_F",
"I_C_Offroad_02_unarmed_F",
"I_C_Offroad_02_unarmed_olive_F",
"I_C_Van_01_transport_brown_F",
"I_C_Van_01_transport_F",
"I_C_Van_01_transport_olive_F",
"I_G_Offroad_01_armed_F",
"I_G_Offroad_01_F",
"I_G_Offroad_01_repair_F",
"I_G_Quadbike_01_F",
"I_G_Van_01_fuel_F",
"I_G_Van_01_transport_F",
"I_MRAP_03_F",
"I_MRAP_03_gmg_F",
"I_MRAP_03_hmg_F",
"I_Quadbike_01_F",
"I_Truck_02_ammo_F",
"I_Truck_02_box_F",
"I_Truck_02_covered_F",
"I_Truck_02_fuel_F",
"I_Truck_02_medical_F",
"I_Truck_02_transport_F",
"I_UGV_01_F",
"I_UGV_01_rcws_F",
"Ikarus_Base",
"Ikarus_Civ_02",
"Ikarus_Govnodav_01",
"Ikarus_Govnodav_02",
"Kart_01_Base_F",
"Lada_Base",
"Lada_Civ_01",
"Lada_Civ_02",
"Lada_Civ_03",
"Lada_Civ_04",
"Lada_Civ_Base",
"Lada_Militia",
"Landrover_civ",
"Landrover_Civ_01",
"Landrover_Civ_01_Urban1",
"Landrover_Civ_02",
"Landrover_Civ_03",
"Landrover_Des",
"LR_Ambulance_01",
"LR_Ambulance_02",
"LR_Ambulance_Base",
"LR_MG_Base",
"LSV_01_armed_base_F",
"LSV_01_base_F",
"LSV_01_light_base_F",
"LSV_01_unarmed_base_F",
"LSV_02_armed_base_F",
"LSV_02_base_F",
"LSV_02_unarmed_base_F",
"MRAP_01_base_F",
"MRAP_01_gmg_base_F",
"MRAP_01_hmg_base_F",
"MRAP_02_base_F",
"MRAP_02_gmg_base_F",
"MRAP_02_hmg_base_F",
"MRAP_03_base_F",
"MRAP_03_gmg_base_F",
"MRAP_03_hmg_base_F",
"O_APC_Wheeled_02_base_F",
"O_APC_Wheeled_02_rcws_F",
"O_G_Offroad_01_armed_F",
"O_G_Offroad_01_F",
"O_G_Offroad_01_repair_F",
"O_G_Quadbike_01_F",
"O_G_Van_01_fuel_F",
"O_G_Van_01_transport_F",
"O_LSV_02_armed_arid_F",
"O_LSV_02_armed_black_F",
"O_LSV_02_armed_F",
"O_LSV_02_armed_ghex_F",
"O_LSV_02_armed_viper_F",
"O_LSV_02_unarmed_arid_F",
"O_LSV_02_unarmed_black_F",
"O_LSV_02_unarmed_F",
"O_LSV_02_unarmed_ghex_F",
"O_LSV_02_unarmed_viper_F",
"O_MRAP_02_F",
"O_MRAP_02_gmg_F",
"O_MRAP_02_hmg_F",
"O_Quadbike_01_F",
"O_T_APC_Wheeled_02_rcws_ghex_F",
"O_T_LSV_02_armed_arid_F",
"O_T_LSV_02_armed_black_F",
"O_T_LSV_02_armed_F",
"O_T_LSV_02_armed_ghex_F",
"O_T_LSV_02_armed_viper_F",
"O_T_LSV_02_unarmed_arid_F",
"O_T_LSV_02_unarmed_black_F",
"O_T_LSV_02_unarmed_F",
"O_T_LSV_02_unarmed_ghex_F",
"O_T_LSV_02_unarmed_viper_F",
"O_T_MRAP_02_ghex_F",
"O_T_MRAP_02_gmg_ghex_F",
"O_T_MRAP_02_hmg_ghex_F",
"O_T_Quadbike_01_ghex_F",
"O_T_Truck_03_ammo_ghex_F",
"O_T_Truck_03_covered_ghex_F",
"O_T_Truck_03_device_ghex_F",
"O_T_Truck_03_fuel_ghex_F",
"O_T_Truck_03_medical_ghex_F",
"O_T_Truck_03_repair_ghex_F",
"O_T_Truck_03_transport_ghex_F",
"O_T_UGV_01_ghex_F",
"O_T_UGV_01_rcws_ghex_F",
"O_Truck_02_Ammo_F",
"O_Truck_02_box_F",
"O_Truck_02_covered_F",
"O_Truck_02_fuel_F",
"O_Truck_02_medical_F",
"O_Truck_02_transport_F",
"O_Truck_03_ammo_F",
"O_Truck_03_covered_F",
"O_Truck_03_device_F",
"O_Truck_03_fuel_F",
"O_Truck_03_medical_F",
"O_Truck_03_repair_F",
"O_Truck_03_transport_F",
"O_UGV_01_F",
"O_UGV_01_rcws_F",
"Octavia_Base",
"Octavia_Civ_01",
"Octavia_Civ_03",
"Octavia_Civ_04",
"Octavia_Civ_05",
"Offroad_01_armed_base_F",
"Offroad_01_base_F",
"Offroad_01_civil_base_F",
"Offroad_01_military_base_F",
"Offroad_01_repair_base_F",
"Offroad_01_repair_military_base_F",
"Offroad_01_unarmed_base_F",
"Offroad_02_base_F",
"Offroad_02_unarmed_base_F",
"PaperCar",
"Quadbike_01_base_F",
"SUV_01_base_black_F",
"SUV_01_base_F",
"SUV_01_base_grey_F",
"SUV_01_base_orange_F",
"SUV_01_base_red_F",
"SUV_armored_Base",
"SUV_Base",
"SUV_civ_01",
"SUV_civ_02",
"SUV_civ_03",
"SUV_civ_04",
"SUV_civ_05",
"SUV_civ_06",
"SUV_civ_07",
"SUV_civ_08",
"TowingTractor",
"Tractor",
"Tractor_Base",
"TractorOld",
"Truck",
"Truck_01_base_F",
"Truck_02_Ammo_base_F",
"Truck_02_base_F",
"Truck_02_box_base_F",
"Truck_02_fuel_base_F",
"Truck_02_medical_base_F",
"Truck_02_transport_base_F",
"Truck_03_base_F",
"Truck_F",
"UAZ_AGS30_Base",
"UAZ_Armed_Base",
"UAZ_Base",
"UAZ_MG_Base",
"UAZ_Open_Base",
"UGV_01_base_F",
"UGV_01_rcws_base_F",
"Ural_Base",
"Ural_Civ_01",
"Ural_Civ_02",
"Ural_Civ_03",
"Ural_Civ_Base",
"Ural_Open_Base",
"Ural_Open_Civ_01",
"Ural_Open_Civ_02",
"Ural_Open_Civ_03",
"Ural_Open_RU",
"Ural_RU",
"V3S_base",
"V3S_Base_EP1",
"Van_01_base_F",
"Van_01_box_base_F",
"Van_01_fuel_base_F",
"Van_01_transport_base_F",
"volha_Base",
"volha_Civ_01",
"volha_Civ_02",
"volha_Civ_03",
"Wheeled_APC",
"Wheeled_APC_F",
"I_C_Heli_Light_01_civil_F",
"B_CTRG_Heli_Transport_01_sand_F",
"B_CTRG_Heli_Transport_01_tropic_F",
"UAV_01_base_F",
"B_UAV_01_F",
"O_UAV_01_F",
"I_UAV_01_F",
"UAV_02_base_F",
"UAV_02_CAS_base_F",
"B_UAV_02_F",
"O_UAV_02_F",
"I_UAV_02_F",
"B_UAV_02_CAS_F",
"O_UAV_02_CAS_F",
"I_UAV_02_CAS_F",
"UAV_02_dynamicLoadout_base_F",
"B_UAV_02_dynamicLoadout_F",
"O_UAV_02_dynamicLoadout_F",
"I_UAV_02_dynamicLoadout_F",
"Heli_Transport_03_base_F",
"B_Heli_Transport_03_F",
"Heli_Transport_03_unarmed_base_F",
"B_Heli_Transport_03_unarmed_F",
"B_Heli_Transport_03_black_F",
"B_Heli_Transport_03_unarmed_green_F",
"B_Heli_Transport_03_base_F",
"B_Heli_Transport_03_unarmed_base_F",
"Heli_Transport_04_base_F",
"O_Heli_Transport_04_F",
"O_Heli_Transport_04_ammo_F",
"O_Heli_Transport_04_bench_F",
"O_Heli_Transport_04_box_F",
"O_Heli_Transport_04_covered_F",
"O_Heli_Transport_04_fuel_F",
"O_Heli_Transport_04_medevac_F",
"O_Heli_Transport_04_repair_F",
"O_Heli_Transport_04_black_F",
"O_Heli_Transport_04_ammo_black_F",
"O_Heli_Transport_04_bench_black_F",
"O_Heli_Transport_04_box_black_F",
"O_Heli_Transport_04_covered_black_F",
"O_Heli_Transport_04_fuel_black_F",
"O_Heli_Transport_04_medevac_black_F",
"O_Heli_Transport_04_repair_black_F",
"Helicopter_Base_F",
"Helicopter_Base_H",
"Heli_Light_01_base_F",
"Heli_Light_01_unarmed_base_F",
"Heli_Light_01_civil_base_F",
"Heli_Light_01_armed_base_F",
"Heli_Light_01_dynamicLoadout_base_F",
"B_Heli_Light_01_F",
"B_Heli_Light_01_armed_F",
"B_Heli_Light_01_dynamicLoadout_F",
"C_Heli_Light_01_civil_F",
"C_Heli_light_01_blue_F",
"C_Heli_light_01_red_F",
"C_Heli_light_01_ion_F",
"C_Heli_light_01_blueLine_F",
"C_Heli_light_01_digital_F",
"C_Heli_light_01_elliptical_F",
"C_Heli_light_01_furious_F",
"C_Heli_light_01_graywatcher_F",
"C_Heli_light_01_jeans_F",
"C_Heli_light_01_light_F",
"C_Heli_light_01_shadow_F",
"C_Heli_light_01_sheriff_F",
"C_Heli_light_01_speedy_F",
"C_Heli_light_01_sunset_F",
"C_Heli_light_01_vrana_F",
"C_Heli_light_01_wasp_F",
"C_Heli_light_01_wave_F",
"C_Heli_light_01_stripped_F",
"C_Heli_light_01_luxe_F",
"B_Heli_Light_01_stripped_F",
"Heli_Light_02_base_F",
"Heli_Light_02_unarmed_base_F",
"Heli_Light_02_dynamicLoadout_base_F",
"O_Heli_Light_02_dynamicLoadout_F",
"O_Heli_Light_02_F",
"O_Heli_Light_02_unarmed_F",
"O_Heli_Light_02_v2_F",
"ParachuteWest",
"ParachuteEast",
"ParachuteG",
"Parachute",
"NonSteerable_Parachute_F",
"Paraglide",
"Steerable_Parachute_F",
"Heli_Attack_01_base_F",
"Heli_Attack_01_dynamicLoadout_base_F",
"B_Heli_Attack_01_F",
"B_Heli_Attack_01_dynamicLoadout_F",
"Heli_Attack_02_base_F",
"Heli_Attack_02_dynamicLoadout_base_F",
"O_Heli_Attack_02_F",
"O_Heli_Attack_02_black_F",
"O_Heli_Attack_02_dynamicLoadout_F",
"O_Heli_Attack_02_dynamicLoadout_black_F",
"Heli_Transport_01_base_F",
"B_Heli_Transport_01_F",
"B_Heli_Transport_01_camo_F",
"Heli_Transport_02_base_F",
"I_Heli_Transport_02_F",
"Parachute_02_base_F",
"B_Parachute_02_F",
"O_Parachute_02_F",
"I_Parachute_02_F",
"Plane_Fighter_03_base_F",
"Plane_Fighter_03_dynamicLoadout_base_F",
"I_Plane_Fighter_03_CAS_F",
"I_Plane_Fighter_03_AA_F",
"I_Plane_Fighter_03_dynamicLoadout_F",
"Heli_light_03_base_F",
"Heli_light_03_dynamicLoadout_base_F",
"Heli_light_03_unarmed_base_F",
"I_Heli_light_03_F",
"I_Heli_light_03_dynamicLoadout_F",
"I_Heli_light_03_unarmed_F",
"I_Heli_light_03_base_F",
"I_Heli_light_03_unarmed_base_F"
];

View File

@ -1,55 +0,0 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_vehiclesBase = [];
#include "vehiclesBase.sqf"
_veh = (configfile >> "CfgVehicles") call BIS_fnc_getCfgSubClasses;
//_veh sort true;
systemChat format[" _veh contains %1 entries",count _veh];
_index = 0;
_cars = [];
_boats = [];
_air = [];
_exile = 0;
_clipboard = "";
{
if (_x isKindOf "Car" && !(_x in _vehiclesBase)) then
{
_cars pushback _x;
//diag_log format["%1",_x];
//_clipboard = _clipboard + format['"%1",%2',_x,endl];
};
if (_x isKindOf "Air" && !(_x in _vehiclesBase)) then
{
_cars pushback _x;
//diag_log format["%1",_x];
//_clipboard = _clipboard + format['"%1",%2',_x,endl];
};
if (_x isKindOf "Boat" && !(_x in _vehiclesBase)) then
{
_air pushback _x;
//diag_log format["%1",_x];
//_clipboard = _clipboard + format['"%1",%2',_x,endl];
};
}forEach _veh;
_clipboard = _clipboard + format["// Cars%1%2",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _cars;
_clipboard = _clipboard + format["%1// Boats%2%3",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _boats;
_clipboard = _clipboard + format["%1// Air%2%3",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _Air;
copyToClipboard _clipboard;

View File

@ -1,74 +0,0 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_vehiclesBase = [];
#include "vehiclesBase.sqf"
_veh = (configfile >> "CfgVehicles") call BIS_fnc_getCfgSubClasses;
_index = 0;
_cars = [];
_boats = [];
_air = [];
_exile = 0;
_clipboard = "";
{
if (_x isKindOf "Car" && !(_x in _vehiclesBase)) then
{
_cars pushback _x;
//diag_log format["%1",_x];
//_clipboard = _clipboard + format['"%1",%2',_x,endl];
};
if (_x isKindOf "Air" && !(_x in _vehiclesBase)) then
{
_cars pushback _x;
//diag_log format["%1",_x];
//_clipboard = _clipboard + format['"%1",%2',_x,endl];
};
if (_x isKindOf "Boat" && !(_x in _vehiclesBase)) then
{
_air pushback _x;
//diag_log format["%1",_x];
//_clipboard = _clipboard + format['"%1",%2',_x,endl];
};
}forEach _veh;
_clipboard = _clipboard + format["// Cars%1%2",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 50; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 50; };%2",_x,endl];
};
}forEach _cars;
_clipboard = _clipboard + format["%1// Boats%2%3",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 50; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 50000; };%2",_x,endl];
};
}forEach _boats;
_clipboard = _clipboard + format["%1// Air%2%3",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 50000; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 50000; };%2",_x,endl];
};
}forEach _Air;
copyToClipboard _clipboard;
systemChat "Vehicles Pricelist Generated";

View File

@ -1,37 +0,0 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_baseVests = [];
#include "baseVests.sqf"
_veh = (configfile >> "CfgWeapons") call BIS_fnc_getCfgSubClasses;
//_veh sort true;
systemChat format[" _veh contains %1 entries",count _veh];
_index = 0;
_cars = [];
_exile = 0;
_clipboard = "";
{
_isKindOf = (_x isKindOF ["Vest_Camo_Base", configFile >> "CfgWeapons"]) or (_x isKindOF ["Vest_NoCamo_Base", configFile >> "CfgWeapons"]);
if (_isKindOf and !(_x in _baseVests)) then
{
_cars pushback _x;
diag_log format["%1",_x];
_index = _index + 1;
_left = [_x,5] call KRON_StrLeft;
if (_left in ["Exile"]) then {
_exile = _exile + 1;
systemChat format["%1",_x];
};
_clipboard = _clipboard + format['"%1",%2',_x,endl];
};
}forEach _veh;
copyToClipboard _clipboard;

View File

@ -1,35 +0,0 @@
/*
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_baseVests = [];
#include "baseVests.sqf"
_veh = (configfile >> "CfgWeapons") call BIS_fnc_getCfgSubClasses;
_veh sort true;
_cars = [];
_clipboard = "";
{
_isKindOf = (_x isKindOF ["Vest_Camo_Base", configFile >> "CfgWeapons"]) or (_x isKindOF ["Vest_NoCamo_Base", configFile >> "CfgWeapons"]);
if (_isKindOf and !(_x in _baseVests)) then
{
_cars pushback _x;
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 50; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 50; };%2",_x,endl];
};
};
}forEach _veh;
copyToClipboard _clipboard;
systemChat "Vest Pricelist Generated";

View File

@ -1,181 +0,0 @@
/*
Original script by KiloSwiss
https://epochmod.com/forum/topic/32239-howto-get-available-weapons-mod-independent/
Modified and enhanced by GhostriderDbD
7/20/17
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_knownWeapons = [];
_allWeaponRoots = ["Pistol","Rifle","Launcher"];
_allWeaponTypes = ["AssaultRifle","MachineGun","SniperRifle","Shotgun","Rifle","Pistol","SubmachineGun","Handgun","MissileLauncher","RocketLauncher","Throw","GrenadeCore"];
_addedBaseNames = [];
_allBannedWeapons = [];
_wpnAR = []; //Assault Rifles
_wpnARG = []; //Assault Rifles with GL
_wpnLMG = []; //Light Machine Guns
_wpnSMG = []; //Sub Machine Guns
_wpnDMR = []; //Designated Marksman Rifles
_wpnLauncher = [];
_wpnSniper = []; //Sniper rifles
_wpnHandGun = []; //HandGuns/Pistols
_wpnShotGun = []; //Shotguns
_wpnThrow = []; // throwables
_wpnUnknown = []; //Misc
_wpnMagazines = [];
_wpnOptics = [];
_wpnPointers = [];
_wpnMuzzles = [];
_aBaseNames = [];
_wpList = (configFile >> "cfgWeapons") call BIS_fnc_getCfgSubClasses;
_wpList sort true;
{
_item = _x;
_isWeap = false;
_isKindOf = false;
{
_isKindOf = (_item isKindOF [_x, configFile >> "CfgWeapons"]);
if (_isKindOf) exitWith {};
} forEach _allWeaponRoots;
if (_isKindOf) then
{
//if (getnumber (configFile >> "cfgWeapons" >> _x >> "scope") == 2) then {
_itemType = _x call bis_fnc_itemType;
_itemCategory = _itemType select 1;
diag_log format["pullWepClassNames:: _itemType = %1 || _itemCategory = %2",_itemType, _itemCategory];
if (((_itemType select 0) == "Weapon") && ((_itemType select 1) in _allWeaponTypes)) then {
_baseName = _x call BIS_fnc_baseWeapon;
diag_log format["pullWepClassNames:: Processing for _baseName %3 || _itemType = %1 || _itemCategory = %2",_itemType, _itemCategory, _baseName];
if (!(_baseName in _addedBaseNames) && !(_baseName in _allBannedWeapons)) then {
_addedBaseNames pushBack _baseName;
switch(_itemCategory)do{
case "AssaultRifle" :{
if(count getArray(configfile >> "cfgWeapons" >> _baseName >> "muzzles") > 1)then[{_wpnARG pushBack _baseName},{_wpnAR pushBack _baseName}];
};
case "MachineGun" :{_wpnLMG pushBack _baseName};
case "SubmachineGun" :{_wpnSMG pushBack _baseName};
case "Rifle" :{_wpnDMR pushBack _baseName};
case "SniperRifle" :{_wpnSniper pushBack _baseName};
case "Shotgun" :{_wpnShotGun pushBack _baseName};
case "Handgun" :{_wpnHandGun pushBack _baseName};
case "MissileLauncher" :{_wpnLauncher pushBack _baseName};
case "RocketLauncher" :{_wpnLauncher pushBack _baseName};
case "DMR" : {_wpnDMR pushBack _baseName};
case "Throw" : {_wpnThrow pushBack _baseName};
default{_wpnUnknown pushBack _baseName};
};
// Get options for magazines and attachments for that weapon and store these if they are not duplicates for items already listed.
_ammoChoices = getArray (configFile >> "CfgWeapons" >> _baseName >> "magazines");
{
if !(_x in _wpnMagazines) then {_wpnMagazines pushback _x};
}forEach _ammoChoices;
_optics = getArray (configfile >> "CfgWeapons" >> _baseName >> "WeaponSlotsInfo" >> "CowsSlot" >> "compatibleItems");
{
if !(_x in _wpnOptics) then {_wpnOptics pushback _x};
}forEach _optics;
_pointers = getArray (configFile >> "CfgWeapons" >> _baseName >> "WeaponSlotsInfo" >> "PointerSlot" >> "compatibleItems");
{
if !(_x in _wpnPointers) then {_wpnPointers pushback _x};
}forEach _pointers;
_muzzles = getArray (configFile >> "CfgWeapons" >> _baseName >> "WeaponSlotsInfo" >> "MuzzleSlot" >> "compatibleItems");
{
if !(_x in _wpnMuzzles) then {_wpnMuzzles pushback _x};
}forEach _muzzles;
_underbarrel = getArray (configFile >> "CfgWeapons" >> _baseName >> "WeaponSlotsInfo" >> "UnderBarrelSlot" >> "compatibleItems");
{
if !(_x in _wpnUnderbarrel) then {_wpnUnderbarrel pushback _x};
}forEach _underbarrel;
};
};
};
} foreach _wpList;
_clipBoard = format["%2%3// // Assault Rifles %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl];
}forEach _wpnAR;
_clipBoard = _clipBoard + format["%2%3// Assault Rifles with GL %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _wpnARG;
_clipBoard = _clipBoard + format["%2%3// LMGs %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _wpnLMG;
_clipBoard = _clipBoard + format["%2%3// SMGs %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _wpnSMG;
_clipBoard = _clipBoard + format["%2%3// Snipers %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _wpnSniper;
_clipBoard = _clipBoard + format["%2%3// DMRs %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _wpnDMR;
_clipBoard = _clipBoard + format["%2%3// Launchers %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _wpnLauncher;
_clipBoard = _clipBoard + format["%2%3// Handguns %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _wpnHandGun;
_clipBoard = _clipBoard + format["%2%3// Shotguns %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _wpnShotGun;
_clipBoard = _clipBoard + format["%2%3// Throwables %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _wpnThrow;
_clipBoard = _clipBoard + format["%2%3// Unknown %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _wpnUnknown;
_clipBoard = _clipBoard + format["%2%3// Magazines %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _wpnMagazines;
_clipBoard = _clipBoard + format["%2%3// Optics %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _wpnOptics;
_clipBoard = _clipBoard + format["%2%3// Muzzles %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _wpnMuzzles;
_clipBoard = _clipBoard + format["%2%3// Pointers %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _wpnPointers;
_clipBoard = _clipBoard + format["%2%3// Underbarrel %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _wpnUnderbarrel;
copyToClipboard _clipBoard;

View File

@ -1,295 +0,0 @@
/*
Original script by KiloSwiss
https://epochmod.com/forum/topic/32239-howto-get-available-weapons-mod-independent/
Modified and enhanced by GhostriderDbD
7/20/17
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_knownWeapons = [];
_allWeaponRoots = ["Pistol","Rifle","Launcher"];
_allWeaponTypes = ["AssaultRifle","MachineGun","SniperRifle","Shotgun","Rifle","Pistol","SubmachineGun","Handgun","MissileLauncher","RocketLauncher","Throw","GrenadeCore"];
_addedBaseNames = [];
_allBannedWeapons = [];
_wpnAR = []; //Assault Rifles
_wpnARG = []; //Assault Rifles with GL
_wpnLMG = []; //Light Machine Guns
_wpnSMG = []; //Sub Machine Guns
_wpnDMR = []; //Designated Marksman Rifles
_wpnLauncher = [];
_wpnSniper = []; //Sniper rifles
_wpnHandGun = []; //HandGuns/Pistols
_wpnShotGun = []; //Shotguns
_wpnThrow = []; // throwables
_wpnUnknown = []; //Misc
_wpnMagazines = [];
_wpnOptics = [];
_wpnPointers = [];
_wpnMuzzles = [];
_aBaseNames = [];
_wpList = (configFile >> "cfgWeapons") call BIS_fnc_getCfgSubClasses;
_wpList sort true;
{
_item = _x;
_isWeap = false;
_isKindOf = false;
{
_isKindOf = (_item isKindOF [_x, configFile >> "CfgWeapons"]);
if (_isKindOf) exitWith {};
} forEach _allWeaponRoots;
if (_isKindOf) then
{
//if (getnumber (configFile >> "cfgWeapons" >> _x >> "scope") == 2) then {
_itemType = _x call bis_fnc_itemType;
_itemCategory = _itemType select 1;
diag_log format["pullWepClassNames:: _itemType = %1 || _itemCategory = %2",_itemType, _itemCategory];
if (((_itemType select 0) == "Weapon") && ((_itemType select 1) in _allWeaponTypes)) then {
_baseName = _x call BIS_fnc_baseWeapon;
diag_log format["pullWepClassNames:: Processing for _baseName %3 || _itemType = %1 || _itemCategory = %2",_itemType, _itemCategory, _baseName];
if (!(_baseName in _addedBaseNames) && !(_baseName in _allBannedWeapons)) then {
_addedBaseNames pushBack _baseName;
switch(_itemCategory)do{
case "AssaultRifle" :{
if(count getArray(configfile >> "cfgWeapons" >> _baseName >> "muzzles") > 1)then[{_wpnARG pushBack _baseName},{_wpnAR pushBack _baseName}];
};
case "MachineGun" :{_wpnLMG pushBack _baseName};
case "SubmachineGun" :{_wpnSMG pushBack _baseName};
case "Rifle" :{_wpnDMR pushBack _baseName};
case "SniperRifle" :{_wpnSniper pushBack _baseName};
case "Shotgun" :{_wpnShotGun pushBack _baseName};
case "Handgun" :{_wpnHandGun pushBack _baseName};
case "MissileLauncher" :{_wpnLauncher pushBack _baseName};
case "RocketLauncher" :{_wpnLauncher pushBack _baseName};
case "DMR" : {_wpnDMR pushBack _baseName};
case "Throw" : {_wpnThrow pushBack _baseName};
default{_wpnUnknown pushBack _baseName};
};
// Get options for magazines and attachments for that weapon and store these if they are not duplicates for items already listed.
_ammoChoices = getArray (configFile >> "CfgWeapons" >> _baseName >> "magazines");
{
if !(_x in _wpnMagazines) then {_wpnMagazines pushback _x};
}forEach _ammoChoices;
_optics = getArray (configfile >> "CfgWeapons" >> _baseName >> "WeaponSlotsInfo" >> "CowsSlot" >> "compatibleItems");
{
if !(_x in _wpnOptics) then {_wpnOptics pushback _x};
}forEach _optics;
_pointers = getArray (configFile >> "CfgWeapons" >> _baseName >> "WeaponSlotsInfo" >> "PointerSlot" >> "compatibleItems");
{
if !(_x in _wpnPointers) then {_wpnPointers pushback _x};
}forEach _pointers;
_muzzles = getArray (configFile >> "CfgWeapons" >> _baseName >> "WeaponSlotsInfo" >> "MuzzleSlot" >> "compatibleItems");
{
if !(_x in _wpnMuzzles) then {_wpnMuzzles pushback _x};
}forEach _muzzles;
_underbarrel = getArray (configFile >> "CfgWeapons" >> _baseName >> "WeaponSlotsInfo" >> "UnderBarrelSlot" >> "compatibleItems");
{
if !(_x in _wpnUnderbarrel) then {_wpnUnderbarrel pushback _x};
}forEach _underbarrel;
};
};
//};
};
} foreach _wpList;
_clipBoard = format["%2%3// // Assault Rifles %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnAR;
_clipBoard = _clipBoard + format["%2%3// Assault Rifles with GL %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnARG;
_clipBoard = _clipBoard + format["%2%3// LMGs %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnLMG;
_clipBoard = _clipBoard + format["%2%3// SMGs %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnSMG;
_clipBoard = _clipBoard + format["%2%3// Snipers %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnSniper;
_clipBoard = _clipBoard + format["%2%3// DMRs %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnDMR;
_clipBoard = _clipBoard + format["%2%3// Launchers %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnLauncher;
_clipBoard = _clipBoard + format["%2%3// Handguns %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnHandGun;
_clipBoard = _clipBoard + format["%2%3// Shotguns %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnShotGun;
_clipBoard = _clipBoard + format["%2%3// Throwables %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnThrow;
_clipBoard = _clipBoard + format["%2%3// Unknown %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnUnknown;
_clipBoard = _clipBoard + format["%2%3// Magazines %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnMagazines;
_clipBoard = _clipBoard + format["%2%3// Optics %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnOptics;
_clipBoard = _clipBoard + format["%2%3// Muzzles %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnMuzzles;
_clipBoard = _clipBoard + format["%2%3// Pointers %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnPointers;
_clipBoard = _clipBoard + format["%2%3// Underbarrel %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnUnderbarrel;
copyToClipboard _clipBoard;
systemChat "Weapon Pricelist Generated";

View File

@ -1,120 +0,0 @@
/*
some of the algorithm/script is based on a script by KiloSwiss
https://epochmod.com/forum/topic/32239-howto-get-available-weapons-mod-independent/
Modified and enhanced by GhostriderDbD
5/22/17
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_baseWearables = [];
#include "baseWearables.sqf"
_allWearableRoots = ["Pistol","Rifle","Launcher"];
_allWearableTypes = ["AssaultRifle","MachineGun","SniperRifle","Shotgun","Rifle","Pistol","SubmachineGun","Handgun","MissileLauncher","RocketLauncher","Throw","GrenadeCore"];
_addedBaseNames = [];
_allBannedWearables = [];
_uniforms = [];
_headgear = [];
_glasses = [];
_masks = [];
_backpacks = [];
_vests = [];
_goggles = [];
_binocs = [];
_NVG = [];
//_wpnThrow = []; // throwables
//_wpnUnknown = []; //Misc
_wpList = (configfile >> "cfgGlasses") call BIS_fnc_getCfgSubClasses;
{
if ( !(_x in _baseWearables) && !(_x in _addedBaseNames) ) then
{
_addedBaseNames pushBack _x;
_glasses pushBack _x;
};
}forEach _wpList;
_aBaseNames = [];
_wpList = (configFile >> "cfgWeapons") call BIS_fnc_getCfgSubClasses;
//_wpList sort true;
{
if ( !(_x in _baseWearables) && !(_x in _addedBaseNames) ) then
{
_addedBaseNames pushBack _x;
// Uniforms
if (_x isKindOF ["Uniform_Base", configFile >> "CfgWeapons"]) then {_uniforms pushBack _x};
// Headgear / Masks
if ( (_x isKindOF ["HelmetBase", configFile >> "CfgWeapons"]) or (_x isKindOF ["H_HelmetB", configFile >> "CfgWeapons"]) ) then {_headgear pushBack _x};
// Goggles
if (_x isKindOF ["GoggleItem", configFile >> "CfgWeapons"]) then {_goggles pushBack _x};
// NVG
if (_x isKindOF ["NVGoggles", configFile >> "CfgWeapons"]) then {_NVG pushBack _x};
// Masks
// Vests
if ( (_x isKindOF ["Vest_Camo_Base", configFile >> "CfgWeapons"]) or (_x isKindOF ["Vest_NoCamo_Base", configFile >> "CfgWeapons"]) ) then {_vests pushBack _x};
// Backpacks
if (_x isKindOF ["Bag_Base", configFile >> "CfgVehicles"]) then {_backpacks pushBack _x};
};
} foreach _wpList;
_clipBoard = format["%2%3// // Uniforms %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl];
}forEach _uniforms;
_clipBoard = _clipBoard + format["%2%3// Headgear / Masks %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _headgear;
_clipBoard = _clipBoard + format["%2%3// Goggles %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _goggles;
_clipBoard = _clipBoard + format["%2%3// Vests %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _vests;
_clipBoard = _clipBoard + format["%2%3// Backpacks %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _backpacks;
_clipBoard = _clipBoard + format["%2%3//Glasses %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _glasses;
_clipBoard = _clipBoard + format["%2%3// NVG %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _NVG;
/*
_clipBoard = _clipBoard + format["%2%3// Handguns %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _wpnHandGun;
_clipBoard = _clipBoard + format["%2%3// Shotguns %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _wpnShotGun;
_clipBoard = _clipBoard + format["%2%3// Throwables %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _wpnThrow;
_clipBoard = _clipBoard + format["%2%3// Unknown %1",endl,endl,endl];
{
_clipBoard = _clipBoard + format['"%1%",%2',_x,endl]
}forEach _wpnUnknown;
*/
copyToClipboard _clipBoard;
_clipboard

View File

@ -1,197 +0,0 @@
/*
some of the algorithm/script is based on a script by KiloSwiss
https://epochmod.com/forum/topic/32239-howto-get-available-weapons-mod-independent/
Modified and enhanced by GhostriderDbD
5/22/17
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_baseWearables = [];
#include "baseWearables.sqf"
_allWearableRoots = ["Pistol","Rifle","Launcher"];
_allWearableTypes = ["AssaultRifle","MachineGun","SniperRifle","Shotgun","Rifle","Pistol","SubmachineGun","Handgun","MissileLauncher","RocketLauncher","Throw","GrenadeCore"];
_addedBaseNames = [];
_allBannedWearables = [];
_uniforms = [];
_headgear = [];
_glasses = [];
_masks = [];
_backpacks = [];
_vests = [];
_goggles = [];
_binocs = [];
_NVG = [];
//_wpnThrow = []; // throwables
//_wpnUnknown = []; //Misc
_wpList = (configfile >> "cfgGlasses") call BIS_fnc_getCfgSubClasses;
{
if ( !(_x in _baseWearables) && !(_x in _addedBaseNames) ) then
{
_addedBaseNames pushBack _x;
_glasses pushBack _x;
};
}forEach _wpList;
_aBaseNames = [];
_wpList = (configFile >> "cfgWeapons") call BIS_fnc_getCfgSubClasses;
//_wpList sort true;
{
if ( !(_x in _baseWearables) && !(_x in _addedBaseNames) ) then
{
_addedBaseNames pushBack _x;
// Uniforms
if (_x isKindOF ["Uniform_Base", configFile >> "CfgWeapons"]) then {_uniforms pushBack _x};
// Headgear / Masks
if ( (_x isKindOF ["HelmetBase", configFile >> "CfgWeapons"]) or (_x isKindOF ["H_HelmetB", configFile >> "CfgWeapons"]) ) then {_headgear pushBack _x};
// Goggles
if (_x isKindOF ["GoggleItem", configFile >> "CfgWeapons"]) then {_goggles pushBack _x};
// NVG
if (_x isKindOF ["NVGoggles", configFile >> "CfgWeapons"]) then {_NVG pushBack _x};
// Masks
// Vests
if ( (_x isKindOF ["Vest_Camo_Base", configFile >> "CfgWeapons"]) or (_x isKindOF ["Vest_NoCamo_Base", configFile >> "CfgWeapons"]) ) then {_vests pushBack _x};
// Backpacks
if (_x isKindOF ["Bag_Base", configFile >> "CfgVehicles"]) then {_backpacks pushBack _x};
};
} foreach _wpList;
_clipBoard = format["%2%3// // Uniforms %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _uniforms;
_clipBoard = _clipBoard + format["%2%3// Headgear / Masks %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _headgear;
_clipBoard = _clipBoard + format["%2%3// Goggles %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _goggles;
_clipBoard = _clipBoard + format["%2%3// Vests %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _vests;
_clipBoard = _clipBoard + format["%2%3// Backpacks %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _backpacks;
_clipBoard = _clipBoard + format["%2%3//Glasses %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _glasses;
_clipBoard = _clipBoard + format["%2%3// NVG %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _NVG;
/*
_clipBoard = _clipBoard + format["%2%3// Handguns %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnHandGun;
_clipBoard = _clipBoard + format["%2%3// Shotguns %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnShotGun;
_clipBoard = _clipBoard + format["%2%3// Throwables %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnThrow;
_clipBoard = _clipBoard + format["%2%3// Unknown %1",endl,endl,endl];
{
if (DBD_priceConfiguration == "Exile") then
{
_clipboard = _clipboard + format["class %1 { quality = 3; price = 150; };%2",_x,endl];
};
if (DBD_priceConfiguration == "Epoch") then
{
_clipboard = _clipboard + format["class %1 { price = 150; };%2",_x,endl];
};
}forEach _wpnUnknown;
*/
copyToClipboard _clipBoard;
_clipBoard

View File

@ -18,8 +18,20 @@ For each category (e.g., uniforms, weapons, vehicles) the tools will generate th
You can determine which format of price list will be generated by changing GRG_mod in init.sqf.
Settings:
GRG_mod: set to "Epoch" or "Exile"
GRG_Root: Use this to process only class names with a certain name such as "CUP" or "RHS".
GRG_addIttemsMissingFromPricelistOnly (true/false).
When true, the tool will search for a price for that class name in either CfgPricing (epoch) or CfgExileArsenal (Exile).
The idea behind this is to list only those items that you have not already added to traders. this should be handy when dealing with mod updates.
To use this requires a bit of extra setup.
- add a description.ext to the mission folder.
- add an #include to the description.ext so as to include CfgPricing.hpp or your exile_config.hpp and be sure any included files these use are also in the mission folder in the appropriate subfolder or commented out.
- The tool will check for a price for each item and if no price is found add that item to the output.
Credits:
The algorithm for extracting weapons class names is derived from one posted by KiloSwiss on EpochMod:
The original algorithm for extracting weapons class names is derived from one posted by KiloSwiss on EpochMod although it has more recently been updated:
https://epochmod.com/forum/topic/32239-howto-get-available-weapons-mod-independent/
License

View File

@ -0,0 +1,2 @@
#include "config_altis_mil.cpp"

View File

@ -11,18 +11,21 @@
// load string library
//nul=[] execVM "KRON_Strings.sqf";
GRG_mod = "Exile"; // Options are "Exile" or "Epoch". This configuration pertains only to generating pre-formated price lists.
GRG_Root = "CUP"; // Scripts will test if the leftmost N characters of a classname are equal to GRG_Root
GRG_addIttemsMissingFromPricelistOnly = true; // when true will process only class names for which there is not already a price listed for that mod time. for this to work you need to include the description.ext and any price lists for your server in this misison folder.
GRG_includedWeaponMagazines = false;
GRG_configuratorPathName = "ExcludedClassNames\";
#include "code\variables.sqf";
#include "code\functions.sqf";
#include "Code\variables.sqf";
#include "Code\functions.sqf";
#include "Code\KRON_Strings.sqf";
player addAction ["Vehicles","vehicles.sqf", [], 9];
player addAction ["Weapons","weapons.sqf",[], 8.9];
player addAction ["Magazines","magazines.sqf", 8.7];
player addAction ["Wearables","wearables.sqf", 8.8];
player addAction ["Items","items.sqf",8.6];
player addAction ["Turrets","vehiclesTurrets.sqf", 8.5];

228
testConfig.Altis/items.sqf Normal file
View File

@ -0,0 +1,228 @@
/*
some of the algorithm/script is based on a script by KiloSwiss
https://epochmod.com/forum/topic/32239-howto-get-available-weapons-mod-independent/
Modified and enhanced by GhostriderDbD
5/22/17
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
/*
Description:
Return item category and type. Recognized types are:
Weapon / VehicleWeapon
AssaultRifle
BombLauncher
Cannon
GrenadeLauncher
Handgun
Launcher
MachineGun
Magazine
MissileLauncher
Mortar
RocketLauncher
Shotgun
Throw
Rifle
SubmachineGun
SniperRifle
VehicleWeapon
Horn
CounterMeasuresLauncher
LaserDesignator
Item
AccessoryMuzzle
AccessoryPointer
AccessorySights
AccessoryBipod
Binocular
Compass
FirstAidKit
GPS
LaserDesignator
Map
Medikit
MineDetector
NVGoggles
Radio
Toolkit
UAVTerminal
VehicleWeapon
Unknown
UnknownEquipment
UnknownWeapon
Watch
Equipment
Glasses
Headgear
Vest
Uniform
Backpack
Magazine
Artillery
Bullet
CounterMeasures
Flare
Grenade
Laser
Missile
Rocket
Shell
ShotgunShell
SmokeShell
UnknownMagazine
Mine
Mine
MineBounding
MineDirectional
Parameter(s):
0: STRING - item class
Returns:
ARRAY in format [category,type]
*/
_baseItems = [];
_baseClasses = [];
_mines = [];
_lasers = [];
_items = [];
_allItemTypes = ["Equipment"];
_excludedItemTypes = [
"AccessoryMuzzle",
"AccessoryPointer",
"AccessorySights",
"AccessoryBipod"
];
_addedBaseNames = [];
_itemsList = (configFile >> "cfgWeapons") call BIS_fnc_getCfgSubClasses;
_temp = (configfile >> "CfgMagazines") call BIS_fnc_getCfgSubClasses;
_itemsList = _itemsList + _temp;
//_wearablesList sort true;
{
_itemType = _x call BIS_fnc_itemType;
diag_log format["for Item %1 its ItemType [0] is %2",_x,_itemType select 0];
if ((_itemType select 0) in _allItemTypes) then
{
processItem = true;
if (GRG_Root isEqualTo "") then
{
processItem = true;
} else {
_leftSTR = [toLower _x,count GRG_Root] call KRON_StrLeft;
processItem = ((toLower GRG_Root) isEqualTo _leftSTR);
//systemChat format["wearables.sqf:: _leftSTR = %1 and processItem = %2",_leftSTR, processItem];
};
if ([toLower _x,"base"] call KRON_StrInStr || [toLower _x,"abstract"] call KRON_StrInStr) then
{
if !(_x in _baseClasses) then {_baseClasses pushBack _x};
processItem = false;
_msg = format["base class %1 ignored",_x];
systemChat _msg;
//diag_log _msg;
};
if (processItem) then
{
if (GRG_addIttemsMissingFromPricelistOnly) then
{
if(GRG_mod isEqualTo "Exile") then
{
if (isNumber (missionConfigFile >> "CfgExileArsenal" >> _x >> "price")) then
{
diag_log format["price for item %1 = %2 tabs",_x,getNumber(missionConfigFile >> "CfgExileArsenal" >> _x >> "price")];
processItem = false; // Item already listed and assumed to be included in both trader lists and price lists
diag_log format["Item %1 already has a price: Not processing item %1",_x];
} else {
diag_log format["price for item %1 = %2 tabs",_x,getNumber(missionConfigFile >> "CfgExileArsenal" >> _x >> "price")];
diag_log format["Item %1 has no price: processing item %1",_x];
processItem = true;
};
};
if (GRG_mod isEqualTo "Epoch") then
{
if (isNumber (missionConfigFile >> "CfgPricing" >> _x >> "price")) then
{
processItem = false; // Item already listed and assumed to be included in both trader lists and price lists
} else {
processItem = true;
};
};
};
};
if ( !(_x in _baseItems) && processItem) then
{
_baseItems pushBack _x;
systemChat format["classname = %1, _itemType [0] = %2 _itemType[1] = %3",_x, _itemType select 0, _itemType select 1];
if (_itemType select 0 isEqualTo "Mine" && !(_itemType select 1 in _excludedItemTypes)) then {_mines pushBack _x};
if (_itemType select 0 isEqualTo "Item" && !(_itemType select 1 in _excludedItemTypes)) then {_items pushBack _x};
};
};
} foreach _itemsList;
_clipBoard = "";
if (GRG_mod == "Exile") then
{
_clipboard = _clipboard + GRG_Exile_TraderItemLists_Header;
};
if (GRG_mod == "Epoch") then
{
_clipboard = _clipboard + GRG_Epoch_ItemLists_Header;
};
{
_clipboard = _clipboard + format["%2%2// %1 %2%2",_x select 0, endl];
_temp = [_x select 1] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
} foreach
[
["Mines",_mines],
["Lasers",_lasers],
["Items",_items]
];
if (GRG_mod == "Exile") then
{
_clipboard = _clipBoard + GRG_Exile_Pricelist_Header;
};
if (GRG_mod == "Epoch") then
{
_clipboard = _clipBoard + GRG_Epoch_Pricelist_Header;
};
{
_clipboard = _clipboard + format["%2%2// %1 %2%2",_x select 0, endl];
_temp = [_x select 1] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
} foreach
[
["Mines",_mines],
["Lasers",_lasers],
["Items",_items]
];
if (GRG_mod == "Exile") then
{
_clipboard = _clipBoard + GRG_Exile_Loottable_Header;
};
if (GRG_mod == "Epoch") then
{
_clipboard = _clipBoard + GRG_Epoch_Loottable_Header;
};
{
_clipboard = _clipboard + format["%2%2// %1 %2%2",_x select 0, endl];
_temp = [_x select 1] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
} foreach
[
["Mines",_mines],
["Lasers",_lasers],
["Items",_items]
];
copyToClipboard _clipBoard;
systemChat "All items Processed and results copied to clipboard";
hint format["Wearables Config Extractor Run complete%1Output copied to clipboard%1Paste it into a text editor to acces",endl];

View File

@ -0,0 +1,55 @@
_itemTypes = [];
_itemInformation=[];
_clips = "";
{
_itemInformation = [_x] call BIS_fnc_itemType;
_itemTypes pushBack [_x,_itemInformation select 0, _itemInformation select 1];
_clips = _clips + format["%1,%2,%3%4",_x,_itemInformation select 0, _itemInformation select 1,endl];
}forEach
[
"Launcher",
"Launcher_Base_F",
"launch_NLAW_F",
"launch_RPG32_F",
"launch_Titan_base",
"launch_Titan_short_base",
"launch_B_Titan_F",
"launch_I_Titan_F",
"launch_O_Titan_F",
"launch_Titan_F",
"launch_B_Titan_short_F",
"launch_I_Titan_short_F",
"launch_O_Titan_short_F",
"launch_Titan_short_F",
"CUP_launch_M72A6",
"CUP_launch_M72A6_Special",
"CUP_launch_Igla",
"CUP_launch_Javelin",
"CUP_launch_M136",
"CUP_launch_M47",
"CUP_launch_MAAWS",
"CUP_launch_Metis",
"CUP_launch_NLAW",
"CUP_launch_RPG18",
"CUP_launch_Mk153Mod0",
"CUP_launch_FIM92Stinger",
"CUP_launch_9K32Strela",
"launch_RPG32_ghex_F",
"launch_RPG7_F",
"launch_B_Titan_tna_F",
"launch_B_Titan_short_tna_F",
"launch_O_Titan_ghex_F",
"launch_O_Titan_short_ghex_F",
"CUP_launch_RPG7V",
"CUP_Igla",
"CUP_Javelin",
"CUP_M47Launcher_EP1",
"CUP_M136",
"CUP_MetisLauncher",
"CUP_BAF_NLAW_Launcher",
"CUP_RPG7V",
"CUP_RPG18",
"CUP_Stinger",
"CUP_Strela"
];
copyToClipboard _clips;

View File

@ -2,16 +2,17 @@
Class Name Extraction Tool
By GhostriderDbD
For Arma 3
7/20/17
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_baseMagazines = [];
#include "ExcludedClassNames\baseMagazines.sqf"
_excludedMagazines = [];
#include "ExcludedClassNames\excludedMagazines.sqf"
_cfgMagazines = (configfile >> "CfgMagazines") call BIS_fnc_getCfgSubClasses;
//_cfgMagazines sort true;
_cfgMagazines sort true;
_sortedMagazines = [];
_clipboard = "";
_wpnSmokeShell = []; // "B_IR_Grenade"
@ -25,12 +26,57 @@ _scannedMags = [];
{
//diag_log format["Magazine = %1",_x];
_isKindOf = (_x isKindOF ["CA_Magazine", configFile >> "CfgMagazines"]);
if (true) then
if (_isKindOf) then
{
//diag_log format["Acceptable Magazine = %1",_x];
if (_isKindOf and !(_x in _baseMagazines)) then
processMagazine = true;
if (GRG_Root isEqualTo "") then
{
//diag_log format["Evaluated Magazine = %1",_x];
processMagazine = true;
} else {
_leftSTR = [toLower _x,count GRG_Root] call KRON_StrLeft;
processMagazine = ((toLower GRG_Root) isEqualTo _leftSTR);
//systemChat format["wearables.sqf:: _leftSTR = %1 and processMagazine = %2",_leftSTR, processMagazine];
};
if ([toLower _x,"base"] call KRON_StrInStr || [toLower _x,"abstract"] call KRON_StrInStr) then
{
if !(_x in _excludedMagazines) then {_excludedMagazines pushBack _x};
processMagazine = false;
_msg = format["base class %1 ignored",_x];
systemChat _msg;
//diag_log _msg;
};
if (processWearable) then
{
if (GRG_addIttemsMissingFromPricelistOnly) then
{
if(GRG_mod isEqualTo "Exile") then
{
if (isNumber (missionConfigFile >> "CfgExileArsenal" >> _x >> "price")) then
{
diag_log format["price for item %1 = %2 tabs",_x,getNumber(missionConfigFile >> "CfgExileArsenal" >> _x >> "price")];
processWearable = false; // Item already listed and assumed to be included in both trader lists and price lists
diag_log format["Item %1 already has a price: Not processing item %1",_x];
} else {
diag_log format["price for item %1 = %2 tabs",_x,getNumber(missionConfigFile >> "CfgExileArsenal" >> _x >> "price")];
diag_log format["Item %1 has no price: processing item %1",_x];
processWearable = true;
};
};
if (GRG_mod isEqualTo "Epoch") then
{
if (isNumber (missionConfigFile >> "CfgPricing" >> _x >> "price")) then
{
processWearable = false; // Item already listed and assumed to be included in both trader lists and price lists
} else {
processWearable = true;
};
};
};
};
if (processMagazine && !(_x in _baseMagazines)) then
{
systemChat format["Evaluated Magazine = %1",_x];
//if (!(_x isKindOF ["CA_LauncherMagazine", configFile >> "CfgMagazines"]) && !(_x isKindOF ["HandGrenade", configFile >> "CfgMagazines"]) && !(_x isKindOf ["VehicleMagazine", configFile >> "CfgMagazines"]) && !(_x isKindOf ["Exile_AbstractItem", configFile >> "CfgMagazines"])) then {_wpnMagazines pushBack _x};
if (_x isKindOF ["CA_LauncherMagazine", configFile >> "CfgMagazines"]) then {_wpnLauncherRound pushBack _x; _scannedMags pushBack _x;};
if(_x isKindOF ["HandGrenade", configFile >> "CfgMagazines"]) then {_wpnSmokeShell pushBack _x; _scannedMags pushBack _x;};
@ -98,5 +144,5 @@ _temp = [_wpnVehicleAmmo] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
copyToClipboard _clipboard;
systemChat "All magazines Processed and results copied to clipboard";
hint format["Special Magazines Config Extractor Run complete%1Output copied to clipboard%1Paste it into a text editor to acces",endl];

View File

@ -21,13 +21,14 @@ class EditorData
binarizationWanted=0;
addons[]=
{
"A3_Characters_F"
"A3_Characters_F",
"exile_client"
};
class AddonsMetaData
{
class List
{
items=1;
items=2;
class Item0
{
className="A3_Characters_F";
@ -35,6 +36,11 @@ class AddonsMetaData
author="Bohemia Interactive";
url="https://www.arma3.com";
};
class Item1
{
className="exile_client";
name="exile_client";
};
};
};
randomSeed=14371957;

View File

@ -0,0 +1,2 @@
playsound "Alarm";

View File

@ -7,33 +7,97 @@
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
_vehiclesBase = [];
#include "ExcludedClassNames\baseVehicles.sqf"
_excludedVehicles = [];
_baseClasses = [];
#include "ExcludedClassNames\excludedVehicles.sqf"
_veh = (configfile >> "CfgVehicles") call BIS_fnc_getCfgSubClasses;
//_veh sort true;
systemChat format[" _veh contains %1 entries",count _veh];
_veh sort true;
_index = 0;
_cars = [];
_tanks = [];
_boats = [];
_air = [];
_exile = 0;
_helis = [];
_planes = [];
processVehicle = true;
_n = count _veh;
_index = 0;
_counter = 1;
_interval = 25;
systemChat "Classname Extraction tool for vehicles initialized";
{
if (_x isKindOf "Car" && !(_x in _vehiclesBase)) then
processVehicle = true;
if (GRG_Root isEqualTo "") then
{
_cars pushback _x;
processVehicle = true;
};
if (_x isKindOf "Air" && !(_x in _vehiclesBase)) then
if (count GRG_Root > 0) then
{
_air pushback _x;
_leftSTR = [toLower _x,count GRG_Root] call KRON_StrLeft;
processVehicle = ((toLower GRG_Root) isEqualTo _leftSTR);
_msg = format["vehicles.sqf:: _leftSTR = %1 and processVehicle = %2",_leftSTR, processVehicle];
//systemChat _msg;
diag_log _msg;
};
if (_x isKindOf "Boat" && !(_x in _vehiclesBase)) then
if (processVehicle) then
{
_boat pushback _x;
};
if (GRG_addIttemsMissingFromPricelistOnly) then
{
if(GRG_mod isEqualTo "Exile") then
{
if (isNumber (missionConfigFile >> "CfgExileArsenal" >> _x >> "price")) then
{
diag_log format["price for item %1 = %2 tabs",_x,getNumber(missionConfigFile >> "CfgExileArsenal" >> _x >> "price")];
processVehicle = false; // Item already listed and assumed to be included in both trader lists and price lists
diag_log format["Item %1 already has a price: Not processing item %1",_x];
} else {
diag_log format["price for item %1 = %2 tabs",_x,getNumber(missionConfigFile >> "CfgExileArsenal" >> _x >> "price")];
diag_log format["Item %1 has no price: processing item %1",_x];
processVehicle = true;
};
};
if (GRG_mod isEqualTo "Epoch") then
{
if (isNumber (missionConfigFile >> "CfgPricing" >> _x >> "price")) then
{
processVehicle = false; // Item already listed and assumed to be included in both trader lists and price lists
} else {
processVehicle = true;
};
};
};
};
if ([toLower _x,"base"] call KRON_StrInStr || [toLower _x,"abstract"] call KRON_StrInStr) then
{
if !(_x in _baseClasses) then {_baseClasses pushBack _x};
processVehicle = false;
_msg = format["base class %1 ignored",_x];
systemChat _msg;
//diag_log _msg;
};
if (processVehicle && !(_x in _excludedVehicles)) then
{
if (_index == 1) then
{
_msg = format["Classname: %1 %2 out of %3",_x, _counter, _n];
systemChat _msg;
//diag_log _msg;
};
if (_index == _interval) then {_index = 0};
_index = _index + 1;
_counter = _counter + 1;
if (_x isKindOf "Tank") then {_tanks pushBack _x;/*systemChat format["Adding Tank %1",_x];*/};
if (_x isKindOf "Car") then {_cars pushBack _x};
if ((_x isKindOf "Plane")) then {_planes pushBack _x};
if ((_x isKindOf "Helicopter")) then {_helis pushBack _x};
if (_x isKindOf "Ship") then {_boats pushback _x;};
};
}forEach _veh;
systemChat format["%1 classnames processed, formating trader entries",count _veh];
_clipBoard = "";
if (GRG_mod == "Exile") then
@ -45,15 +109,19 @@ if (GRG_mod == "Epoch") then
_clipboard = _clipboard + GRG_Epoch_ItemLists_Header;
};
_clipboard = _clipboard + format["// Cars%1%2",endl,endl,endl];
_temp = [_cars] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%1// Boats%2%3",endl,endl,endl];
_temp = [_boats] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%1// Air%2%3",endl,endl,endl];
_temp = [_air] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
{
private _t = "";
_clipboard = _clipboard + format["%2%2// %1%2%2",_x select 0,endl];
_t = [_x select 1] call fn_generateItemList;
_clipBoard = _clipBoard + _t;
}forEach[
["Cars",_cars],
["Tanks",_tanks],
["Boats",_boats],
["Helis",_helis],
["Planes",_planes],
["Other Air",_air]
];
if (GRG_mod == "Exile") then
{
@ -63,34 +131,21 @@ if (GRG_mod == "Epoch") then
{
_clipboard = _clipBoard + GRG_Epoch_Pricelist_Header;
};
_clipboard = _clipboard + format["// Cars%1%2",endl,endl,endl];
_temp = [_cars] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%1// Boats%2%3",endl,endl,endl];
_temp = [_boats] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%1// Air%2%3",endl,endl,endl];
_temp = [_air] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
if (GRG_mod == "Exile") then
{
_clipboard = _clipBoard + GRG_Exile_Loottable_Header;
};
if (GRG_mod == "Epoch") then
{
_clipboard = _clipBoard + GRG_Epoch_Loottable_Header;
};
_clipboard = _clipboard + format["// Cars%1%2",endl,endl,endl];
_temp = [_cars] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%1// Boats%2%3",endl,endl,endl];
_temp = [_boats] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%1// Air%2%3",endl,endl,endl];
_temp = [_air] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
private _t = "";
_clipboard = _clipboard + format["%2%2// %1%2%2",_x select 0,endl];
_t = [_x select 1] call fn_generatePriceList;
_clipBoard = _clipBoard + _t;
}forEach[
["Cars",_cars],
["Tanks",_tanks],
["Boats",_boats],
["Helis",_helis],
["Planes",_planes],
["Other Air",_air]
];
systemChat "All Vehicles Process and results copied to clipboard";
copyToClipboard _clipboard;
hint format["Vehicles Config Extractor Run complete%1Output copied to clipboard%1Paste it into a text editor to acces",endl];

View File

@ -0,0 +1,72 @@
_vehiclesBase = [];
_baseClasses = [];
#include "ExcludedClassNames\baseVehicles.sqf"
_veh = (configfile >> "CfgVehicles") call BIS_fnc_getCfgSubClasses;
_veh sort true;
_cars = [];
_tanks = [];
_boats = [];
_air = [];
_helis = [];
_planes = [];
_exile = 0;
{
_process = true;
if (GRG_Root isEqualTo "") then
{
_process = true;
} else {
_leftSTR = [toLower _x,count GRG_Root] call KRON_StrLeft;
_process = ((toLower GRG_Root) isEqualTo _leftSTR);
systemChat format["vehicles.sqf:: _leftSTR = %1 and _process = %2",_leftSTR, _process];
};
if ([toLower _x,"base"] call KRON_StrInStr || [toLower _x,"abstract"] call KRON_StrInStr) then
{
if !(_x in _baseClasses) then {_baseClasses pushBack _x};
_process = false;
_msg = format["base class %1 processed",_x];
systemChat _msg;
diag_log _msg;
};
if (_process && !(_x in _vehiclesBase)) then
{
if (_x isKindOf "Tank") then {_tanks pushBack _x;systemChat format["Adding Tank %1",_x];};
if (_x isKindOf "Car") then {_cars pushBack _x};
if ((_x isKindOf "Plane")) then {_planes pushBack _x};
if ((_x isKindOf "Helicopter")) then {_helis pushBack _x};
if (_x isKindOf "Ship") then {_boats pushback _x;};
};
}forEach _veh;
_clipBoard = "";
_allTurrets = [];
{
private _vics = _x select 1;
{
private _turrets = getArray(configfile >> "CfgVehicles" >> _x >> "weapons");
{
if !(_x in _allTurrets) then {
_allTurrets pushBack _x;
systemChat format["Adding turret %1",_x];
};
}forEach _turrets;
}forEach _vics;
}forEach[
["Cars",_cars],
["Tanks",_tanks],
["Boats",_boats],
["Helis",_helis],
["Planes",_planes],
["Other Air",_air]
];
{
_clipboard = _clipboard + format["%1,%2",_x,endl];
}forEach _allTurrets;
copyToClipboard _clipboard;
systemChat "All Turrets Processed and results copied to clipboard";
hint format["Vehicles Config Extractor Run complete%1Output copied to clipboard%1Paste it into a text editor to acces",endl];

View File

@ -8,9 +8,88 @@
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
/*
Description:
Return item category and type. Recognized types are:
Weapon / VehicleWeapon
AssaultRifle
BombLauncher
Cannon
GrenadeLauncher
Handgun
Launcher
MachineGun
Magazine
MissileLauncher
Mortar
RocketLauncher
Shotgun
Throw
Rifle
SubmachineGun
SniperRifle
VehicleWeapon
Horn
CounterMeasuresLauncher
LaserDesignator
Item
AccessoryMuzzle
AccessoryPointer
AccessorySights
AccessoryBipod
Binocular
Compass
FirstAidKit
GPS
LaserDesignator
Map
Medikit
MineDetector
NVGoggles
Radio
Toolkit
UAVTerminal
VehicleWeapon
Unknown
UnknownEquipment
UnknownWeapon
Watch
Equipment
Glasses
Headgear
Vest
Uniform
Backpack
Magazine
Artillery
Bullet
CounterMeasures
Flare
Grenade
Laser
Missile
Rocket
Shell
ShotgunShell
SmokeShell
UnknownMagazine
Mine
Mine
MineBounding
MineDirectional
Parameter(s):
0: STRING - item class
Returns:
ARRAY in format [category,type]
*/
private["_process"];
_weaponsBase = [];
_knownWeapons = [];
#include "ExcludedClassNames\baseWeapons.sqf"
#include "ExcludedClassNames\excludedWeapons.sqf"
_allWeaponRoots = ["Pistol","Rifle","Launcher"];
@ -33,28 +112,127 @@ _wpnMagazines = [];
_wpnOptics = [];
_wpnPointers = [];
_wpnMuzzles = [];
_aBaseNames = [];
_baseClasses = [];
processWeapon = false;
processAttachment = false;
_wpList = (configFile >> "cfgWeapons") call BIS_fnc_getCfgSubClasses;
//_wpList sort true;
diag_log"//////////////////////////////////////////////////////////////";
diag_log" /// START OF RUN //////////////////////////////////////////";
{
_item = _x;
_isWeap = false;
_isKindOf = false;
_isWeapon = false;
processWeapon = false;
{
_isKindOf = (_item isKindOF [_x, configFile >> "CfgWeapons"]);
if (_isKindOf) exitWith {};
_isWeapon = (_item isKindOF [_x, configFile >> "CfgWeapons"]);
if (_isWeapon) exitWith {processWeapon = true};
} forEach _allWeaponRoots;
if (_isKindOf) then
if (processWeapon && (count GRG_Root > 0)) then
{
//if (getnumber (configFile >> "cfgWeapons" >> _x >> "scope") == 2) then {
_leftSTR = [toLower _x,count GRG_Root] call KRON_StrLeft;
processWeapon = ((toLower GRG_Root) isEqualTo _leftSTR);
_msg = format["weapons.sqf:: _leftSTR = %1 and processWeapon = %2",_leftSTR, processWeapon];
//systemChat _msg;
diag_log _msg;
};
if (processWeapon) then
{
if (GRG_addIttemsMissingFromPricelistOnly) then
{
if(GRG_mod isEqualTo "Exile") then
{
if (isNumber (missionConfigFile >> "CfgExileArsenal" >> _x >> "price")) then
{
diag_log format["price for item %1 = %2 tabs",_x,getNumber(missionConfigFile >> "CfgExileArsenal" >> _x >> "price")];
processWeapon = false; // Item already listed and assumed to be included in both trader lists and price lists
diag_log format["Item %1 already has a price: Not processing item %1",_x];
} else {
diag_log format["price for item %1 = %2 tabs",_x,getNumber(missionConfigFile >> "CfgExileArsenal" >> _x >> "price")];
diag_log format["Item %1 has no price: processing item %1",_x];
processWeapon = true;
};
};
if (GRG_mod isEqualTo "Epoch") then
{
if (isNumber (missionConfigFile >> "CfgPricing" >> _x >> "price")) then
{
processWeapon = false; // Item already listed and assumed to be included in both trader lists and price lists
} else {
processWeapon = true;
};
};
};
};
if (processWeapon) then
{
if ([toLower _x,"base"] call KRON_StrInStr || [toLower _x,"abstract"] call KRON_StrInStr) then
{
if !(_x in _baseClasses) then {_baseClasses pushBack _x};
processWeapon = false;
systemChat format["base class %1 ignored",_x];
};
};
diag_log format["for item %1, price of %2, root of %3, processWeapon = %4",_x, getNumber(missionConfigFile >> "CfgExileArsenal" >> _x >> "price"),[toLower _x,count GRG_Root] call KRON_StrLeft,processWeapon];
_fn_includeItem = {
params["_item"];
private _include = false;
private _leftSTR = [toLower _item,count GRG_Root] call KRON_StrLeft;
if (count GRG_Root > 0) then {_include = ((toLower GRG_Root) isEqualTo _leftSTR);};
if (_include) then
{
if (GRG_addIttemsMissingFromPricelistOnly) then
{
if(GRG_mod isEqualTo "Exile") then
{
if (isNumber (missionConfigFile >> "CfgExileArsenal" >> _item >> "price")) then
{
diag_log format["price for item %1 = %2 tabs",_item,getNumber(missionConfigFile >> "CfgExileArsenal" >> _item >> "price")];
_include = false; // Item already listed and assumed to be included in both trader lists and price lists
diag_log format["Item %1 already has a price: Not processing item %1",_item];
} else {
diag_log format["price for item %1 = %2 tabs",_item,getNumber(missionConfigFile >> "CfgExileArsenal" >> _item >> "price")];
diag_log format["Item %1 has no price: processing item %1",_item];
_include = true;
};
};
if (GRG_mod isEqualTo "Epoch") then
{
if (isNumber (missionConfigFile >> "CfgPricing" >> _item >> "price")) then
{
_include = false; // Item already listed and assumed to be included in both trader lists and price lists
} else {
_include = true;
};
};
};
};
_include
};
if (processWeapon) then
{
//_msg = format["weapons classname extractor: _item = %1",_item];
//diag_log _msg;
//systemChat _msg;
if !(_item in _excludedWeapons) then
{
_excludedWeapons pushBack _item;
_itemType = _x call bis_fnc_itemType;
_itemCategory = _itemType select 1;
//diag_log format["pullWepClassNames:: _itemType = %1 || _itemCategory = %2",_itemType, _itemCategory];
if (((_itemType select 0) == "Weapon") && ((_itemType select 1) in _allWeaponTypes)) then {
if (((_itemType select 0) == "Weapon") && ((_itemType select 1) in _allWeaponTypes)) then
{
_baseName = _x call BIS_fnc_baseWeapon;
//diag_log format["pullWepClassNames:: Processing for _baseName %3 || _itemType = %1 || _itemCategory = %2",_itemType, _itemCategory, _baseName];
if (!(_baseName in _addedBaseNames) && !(_baseName in _allBannedWeapons)) then {
systemChat format["pullWepClassNames:: Processing for _baseName %3 || _itemType = %1 || _itemCategory = %2",_itemType, _itemCategory, _baseName];
if (!(_baseName in _addedBaseNames) && !(_baseName in _allBannedWeapons)) then
{
_addedBaseNames pushBack _baseName;
switch(_itemCategory)do{
@ -77,26 +255,27 @@ _wpList = (configFile >> "cfgWeapons") call BIS_fnc_getCfgSubClasses;
// Get options for magazines and attachments for that weapon and store these if they are not duplicates for items already listed.
_ammoChoices = getArray (configFile >> "CfgWeapons" >> _baseName >> "magazines");
{
if !(_x in _wpnMagazines) then {_wpnMagazines pushback _x};
if ([_x] call _fn_includeItem && !(_x in _wpnMagazines)) then {_wpnMagazines pushback _x};
}forEach _ammoChoices;
_optics = getArray (configfile >> "CfgWeapons" >> _baseName >> "WeaponSlotsInfo" >> "CowsSlot" >> "compatibleItems");
{
if !(_x in _wpnOptics) then {_wpnOptics pushback _x};
if ([_x] call _fn_includeItem && !(_x in _wpnOptics)) then {_wpnOptics pushback _x};
}forEach _optics;
_pointers = getArray (configFile >> "CfgWeapons" >> _baseName >> "WeaponSlotsInfo" >> "PointerSlot" >> "compatibleItems");
{
if !(_x in _wpnPointers) then {_wpnPointers pushback _x};
if ([_x] call _fn_includeItem && !(_x in _wpnPointers)) then {_wpnPointers pushback _x};
}forEach _pointers;
_muzzles = getArray (configFile >> "CfgWeapons" >> _baseName >> "WeaponSlotsInfo" >> "MuzzleSlot" >> "compatibleItems");
{
if !(_x in _wpnMuzzles) then {_wpnMuzzles pushback _x};
if ([_x] call _fn_includeItem && !(_x in _wpnMuzzles)) then {_wpnMuzzles pushback _x};
}forEach _muzzles;
_underbarrel = getArray (configFile >> "CfgWeapons" >> _baseName >> "WeaponSlotsInfo" >> "UnderBarrelSlot" >> "compatibleItems");
{
if !(_x in _wpnUnderbarrel) then {_wpnUnderbarrel pushback _x};
if ([_x] call _fn_includeItem && !(_x in _wpnUnderbarrel)) then {_wpnUnderbarrel pushback _x};
}forEach _underbarrel;
};
};
};
};
} foreach _wpList;
@ -111,69 +290,29 @@ if (GRG_mod == "Epoch") then
_clipboard = _clipBoard + GRG_Epoch_ItemLists_Header;
};
_clipboard = _clipboard + format["%2%3// // Assault Rifles %1",endl,endl,endl];
_temp = [_wpnAR] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Assault Rifles with GL %1",endl,endl,endl];
_temp = [_wpnARG] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// LMGs %1",endl,endl,endl];
_temp = [_wpnLMG] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// SMGs %1",endl,endl,endl];
_temp = [_wpnSMG] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Snipers %1",endl,endl,endl];
_temp = [_wpnSniper] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// DMRs %1",endl,endl,endl];
_temp = [_wpnDMR] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Launchers %1",endl,endl,endl];
_temp = [_wpnLauncher] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Handguns %1",endl,endl,endl];
_temp = [_wpnHandGun] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Shotguns %1",endl,endl,endl];
_temp = [_wpnShotGun] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Throwables %1",endl,endl,endl];
_temp = [_wpnThrow] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Unknown %1",endl,endl,endl];
_temp = [_wpnUnknown] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Magazines %1",endl,endl,endl];
_temp = [_wpnMagazines] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Optics %1",endl,endl,endl];
_temp = [_wpnOptics] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Muzzles %1",endl,endl,endl];
_temp = [_wpnMuzzles] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Pointers %1",endl,endl,endl];
_temp = [_wpnPointers] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Underbarrel %1",endl,endl,endl];
_temp = [_wpnUnderbarrel] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
{
_clipboard = _clipboard + format["%2%2// %1 %2%2",_x select 0, endl];
_temp = [_x select 1] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
} foreach
[
["Assault Rifles ",_wpnAR],
["Assault Rifles with GL",_wpnARG],
["LMGs",_wpnLMG],
[" SMGs ",_wpnSMG],
["Snipers ",_wpnSniper],
["DMRs ",_wpnDMR],
["Launchers ",_wpnLauncher],
["Handguns ",_wpnHandGun],
["Shotguns ",_wpnShotGun],
["Throwables ",_wpnThrow],
["Magazines ",_wpnMagazines],
["Optics ",_wpnOptics],
["Muzzles ",_wpnMuzzles],
["Pointers ",_wpnPointers],
["Underbarrel ",_wpnUnderbarrel],
["Unknown ",_wpnUnknown]
];
if (GRG_mod == "Exile") then
{
@ -183,71 +322,29 @@ if (GRG_mod == "Epoch") then
{
_clipboard = _clipBoard + GRG_Epoch_Pricelist_Header;
};
_clipboard = _clipboard + format["%2%3// // Assault Rifles %1",endl,endl,endl];
_temp = [_wpnAR] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Assault Rifles with GL %1",endl,endl,endl];
_temp = [_wpnARG] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// LMGs %1",endl,endl,endl];
_temp = [_wpnLMG] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// SMGs %1",endl,endl,endl];
_temp = [_wpnSMG] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Snipers %1",endl,endl,endl];
_temp = [_wpnSniper] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// DMRs %1",endl,endl,endl];
_temp = [_wpnDMR] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Launchers %1",endl,endl,endl];
_temp = [_wpnLauncher] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Handguns %1",endl,endl,endl];
_temp = [_wpnHandGun] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Shotguns %1",endl,endl,endl];
_temp = [_wpnShotGun] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Throwables %1",endl,endl,endl];
_temp = [_wpnThrow] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Unknown %1",endl,endl,endl];
_temp = [_wpnUnknown] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Magazines %1",endl,endl,endl];
_temp = [_wpnMagazines] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Optics %1",endl,endl,endl];
_temp = [_wpnOptics] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Muzzles %1",endl,endl,endl];
_temp = [_wpnMuzzles] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Pointers %1",endl,endl,endl];
_temp = [_wpnPointers] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Underbarrel %1",endl,endl,endl];
_temp = [_wpnUnderbarrel] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
{
_clipboard = _clipboard + format["%2%2// %1 %2%2",_x select 0, endl];
_temp = [_x select 1] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
} foreach
[
["Assault Rifles ",_wpnAR],
["Assault Rifles with GL",_wpnARG],
["LMGs",_wpnLMG],
[" SMGs ",_wpnSMG],
["Snipers ",_wpnSniper],
["DMRs ",_wpnDMR],
["Launchers ",_wpnLauncher],
["Handguns ",_wpnHandGun],
["Shotguns ",_wpnShotGun],
["Throwables ",_wpnThrow],
["Magazines ",_wpnMagazines],
["Optics ",_wpnOptics],
["Muzzles ",_wpnMuzzles],
["Pointers ",_wpnPointers],
["Underbarrel ",_wpnUnderbarrel],
["Unknown ",_wpnUnknown]
];
if (GRG_mod == "Exile") then
{
@ -257,71 +354,29 @@ if (GRG_mod == "Epoch") then
{
_clipboard = _clipBoard + GRG_Epoch_Loottable_Header;
};
_clipboard = _clipboard + format["%2%3// // Assault Rifles %1",endl,endl,endl];
_temp = [_wpnAR] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Assault Rifles with GL %1",endl,endl,endl];
_temp = [_wpnARG] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// LMGs %1",endl,endl,endl];
_temp = [_wpnLMG] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// SMGs %1",endl,endl,endl];
_temp = [_wpnSMG] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Snipers %1",endl,endl,endl];
_temp = [_wpnSniper] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// DMRs %1",endl,endl,endl];
_temp = [_wpnDMR] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Launchers %1",endl,endl,endl];
_temp = [_wpnLauncher] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Handguns %1",endl,endl,endl];
_temp = [_wpnHandGun] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Shotguns %1",endl,endl,endl];
_temp = [_wpnShotGun] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Throwables %1",endl,endl,endl];
_temp = [_wpnThrow] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Unknown %1",endl,endl,endl];
_temp = [_wpnUnknown] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Magazines %1",endl,endl,endl];
_temp = [_wpnMagazines] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Optics %1",endl,endl,endl];
_temp = [_wpnOptics] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Muzzles %1",endl,endl,endl];
_temp = [_wpnMuzzles] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Pointers %1",endl,endl,endl];
_temp = [_wpnPointers] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Underbarrel %1",endl,endl,endl];
_temp = [_wpnUnderbarrel] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
{
_clipboard = _clipboard + format["%2%2// %1 %2%2",_x select 0, endl];
_temp = [_x select 1] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
} foreach
[
["Assault Rifles ",_wpnAR],
["Assault Rifles with GL",_wpnARG],
["LMGs",_wpnLMG],
[" SMGs ",_wpnSMG],
["Snipers ",_wpnSniper],
["DMRs ",_wpnDMR],
["Launchers ",_wpnLauncher],
["Handguns ",_wpnHandGun],
["Shotguns ",_wpnShotGun],
["Throwables ",_wpnThrow],
["Magazines ",_wpnMagazines],
["Optics ",_wpnOptics],
["Muzzles ",_wpnMuzzles],
["Pointers ",_wpnPointers],
["Underbarrel ",_wpnUnderbarrel],
["Unknown ",_wpnUnknown]
];
copyToClipboard _clipBoard;
systemChat "All Weapons Processws and results copied to clipboard";
hint format["Weapons Config Extractor Run complete%1Output copied to clipboard%1Paste it into a text editor to acces",endl];

View File

@ -8,12 +8,87 @@
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
/*
_baseWearables = [];
#include "ExcludedClassNames\baseWearables.sqf"
_allWearableRoots = ["Pistol","Rifle","Launcher"];
_allWearableTypes = ["AssaultRifle","MachineGun","SniperRifle","Shotgun","Rifle","Pistol","SubmachineGun","Handgun","MissileLauncher","RocketLauncher","Throw","GrenadeCore"];
_addedBaseNames = [];
Description:
Return item category and type. Recognized types are:
Weapon / VehicleWeapon
AssaultRifle
BombLauncher
Cannon
GrenadeLauncher
Handgun
Launcher
MachineGun
Magazine
MissileLauncher
Mortar
RocketLauncher
Shotgun
Throw
Rifle
SubmachineGun
SniperRifle
VehicleWeapon
Horn
CounterMeasuresLauncher
LaserDesignator
Item
AccessoryMuzzle
AccessoryPointer
AccessorySights
AccessoryBipod
Binocular
Compass
FirstAidKit
GPS
LaserDesignator
Map
Medikit
MineDetector
NVGoggles
Radio
Toolkit
UAVTerminal
VehicleWeapon
Unknown
UnknownEquipment
UnknownWeapon
Watch
Equipment
Glasses
Headgear
Vest
Uniform
Backpack
Magazine
Artillery
Bullet
CounterMeasures
Flare
Grenade
Laser
Missile
Rocket
Shell
ShotgunShell
SmokeShell
UnknownMagazine
Mine
Mine
MineBounding
MineDirectional
Parameter(s):
0: STRING - item class
Returns:
ARRAY in format [category,type]
*/
_excludedWearables = [];
#include "ExcludedClassNames\excludedWearables.sqf"
_baseClasses = [];
_allBannedWearables = [];
_uniforms = [];
_headgear = [];
@ -22,39 +97,85 @@ _masks = [];
_backpacks = [];
_vests = [];
_goggles = [];
_binocs = [];
_NVG = [];
_wearablesList = (configfile >> "cfgGlasses") call BIS_fnc_getCfgSubClasses;
{
if ( !(_x in _baseWearables) && !(_x in _addedBaseNames) ) then
{
_addedBaseNames pushBack _x;
_glasses pushBack _x;
};
}forEach _wearablesList;
_aBaseNames = [];
_wearablesList = (configFile >> "cfgWeapons") call BIS_fnc_getCfgSubClasses;
//_wearablesList sort true;
_temp = (configFile >> "cfgVehicles") call BIS_fnc_getCfgSubClasses;
_wearablesList = _wearablesList + _temp;
_temp = (configFile >> "CfgGlasses") call BIS_fnc_getCfgSubClasses;
_wearablesList = _wearablesList + _temp;
_wearablesList sort true;
{
if ( !(_x in _baseWearables) && !(_x in _addedBaseNames) ) then
_itemType = _x call BIS_fnc_itemType;
//diag_log format["for Item %1 its ItemType [0] is %2",_x,_itemType select 0];
if (_itemType select 0 isEqualTo "Equipment") then
{
_addedBaseNames pushBack _x;
// Uniforms
if (_x isKindOF ["Uniform_Base", configFile >> "CfgWeapons"]) then {_uniforms pushBack _x};
// Headgear / Masks
if ( (_x isKindOF ["HelmetBase", configFile >> "CfgWeapons"]) or (_x isKindOF ["H_HelmetB", configFile >> "CfgWeapons"]) ) then {_headgear pushBack _x};
// Goggles
if (_x isKindOF ["GoggleItem", configFile >> "CfgWeapons"]) then {_goggles pushBack _x};
// NVG
if (_x isKindOF ["NVGoggles", configFile >> "CfgWeapons"]) then {_NVG pushBack _x};
// Masks
// Vests
if ( (_x isKindOF ["Vest_Camo_Base", configFile >> "CfgWeapons"]) or (_x isKindOF ["Vest_NoCamo_Base", configFile >> "CfgWeapons"]) ) then {_vests pushBack _x};
// Backpacks
if (_x isKindOF ["Bag_Base", configFile >> "CfgVehicles"]) then {_backpacks pushBack _x};
processWearable = true;
if (GRG_Root isEqualTo "") then
{
processWearable = true;
} else {
_leftSTR = [toLower _x,count GRG_Root] call KRON_StrLeft;
processWearable = ((toLower GRG_Root) isEqualTo _leftSTR);
//systemChat format["wearables.sqf:: _leftSTR = %1 and processWearable = %2",_leftSTR, processWearable];
};
if ([toLower _x,"base"] call KRON_StrInStr || [toLower _x,"abstract"] call KRON_StrInStr) then
{
if !(_x in _baseClasses) then {_baseClasses pushBack _x};
processWearable = false;
_msg = format["base class %1 ignored",_x];
systemChat _msg;
//diag_log _msg;
};
if (processWearable) then
{
if (GRG_addIttemsMissingFromPricelistOnly) then
{
if(GRG_mod isEqualTo "Exile") then
{
if (isNumber (missionConfigFile >> "CfgExileArsenal" >> _x >> "price")) then
{
diag_log format["price for item %1 = %2 tabs",_x,getNumber(missionConfigFile >> "CfgExileArsenal" >> _x >> "price")];
processWearable = false; // Item already listed and assumed to be included in both trader lists and price lists
diag_log format["Item %1 already has a price: Not processing item %1",_x];
} else {
diag_log format["price for item %1 = %2 tabs",_x,getNumber(missionConfigFile >> "CfgExileArsenal" >> _x >> "price")];
diag_log format["Item %1 has no price: processing item %1",_x];
processWearable = true;
};
};
if (GRG_mod isEqualTo "Epoch") then
{
if (isNumber (missionConfigFile >> "CfgPricing" >> _x >> "price")) then
{
processWearable = false; // Item already listed and assumed to be included in both trader lists and price lists
} else {
processWearable = true;
};
};
};
};
if ( !(_x in _excludedWearables) && processWearable) then
{
_excludedWearables pushBack _x;
systemChat format["classname = %1, _itemType = %2",_x, _itemType select 1];
// Uniforms
if (_itemType select 1 isEqualTo "Uniform") then {_uniforms pushBack _x};
// Headgear / Masks
//if ( (_x isKindOF ["HelmetBase", configFile >> "CfgWeapons"]) or (_x isKindOF ["H_HelmetB", configFile >> "CfgWeapons"]) ) then {_headgear pushBack _x};
if (_itemType select 1 isEqualTo "Headgear") then {_headgear pushBack _x};
//if (_x isKindOF ["GoggleItem", configFile >> "CfgWeapons"]) then {_goggles pushBack _x};
if (_itemType select 1 isEqualTo "Glasses") then {_glasses pushBack _x};
// Vests
//if ( (_x isKindOF ["Vest_Camo_Base", configFile >> "CfgWeapons"]) or (_x isKindOF ["Vest_NoCamo_Base", configFile >> "CfgWeapons"]) ) then {_vests pushBack _x};
if (_itemType select 1 isEqualTo "Vest") then {_vests pushBack _x};
// Backpacks
//if (_x isKindOF ["Bag_Base", configFile >> "CfgVehicles"]) then {_backpacks pushBack _x};
if (_itemType select 1 isEqualTo "Backpack") then {_backpacks pushBack _x};
};
};
} foreach _wearablesList;
@ -68,28 +189,18 @@ if (GRG_mod == "Epoch") then
{
_clipboard = _clipboard + GRG_Epoch_ItemLists_Header;
};
_clipboard = _clipboard + format["%2%3// // Uniforms %1",endl,endl,endl];
_temp = [_uniforms] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Headgear / Masks %1",endl,endl,endl];
_temp = [_headgear] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Goggles %1",endl,endl,endl];
_temp = [_goggles] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipBoard = _clipBoard + format["%2%3// Vests %1",endl,endl,endl];
_temp = [_vests] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipBoard = _clipBoard + format["%2%3// Backpacks %1",endl,endl,endl];
_temp = [_backpacks] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipBoard = _clipBoard + format["%2%3//Glasses %1",endl,endl,endl];
_temp = [_glasses] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
_clipBoard = _clipBoard + format["%2%3// NVG %1",endl,endl,endl];
_temp = [_NVG] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
{
_clipboard = _clipboard + format["%2%2// %1 %2%2",_x select 0, endl];
_temp = [_x select 1] call fn_generateItemList;
_clipBoard = _clipBoard + _temp;
} foreach
[
["Uniforms",_uniforms],
["Headgear",_headgear],
["Vests",_vests],
["Backpacks",_backpacks],
["Glasses",_glasses]
];
if (GRG_mod == "Exile") then
{
@ -100,27 +211,18 @@ if (GRG_mod == "Epoch") then
_clipboard = _clipBoard + GRG_Epoch_Pricelist_Header;
};
_clipboard = _clipboard + format["%2%3// // Uniforms %1",endl,endl,endl];
_temp = [_uniforms] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Headgear / Masks %1",endl,endl,endl];
_temp = [_headgear] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Goggles %1",endl,endl,endl];
_temp = [_goggles] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipBoard = _clipBoard + format["%2%3// Vests %1",endl,endl,endl];
_temp = [_vests] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipBoard = _clipBoard + format["%2%3// Backpacks %1",endl,endl,endl];
_temp = [_backpacks] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipBoard = _clipBoard + format["%2%3//Glasses %1",endl,endl,endl];
_temp = [_glasses] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
_clipBoard = _clipBoard + format["%2%3// NVG %1",endl,endl,endl];
_temp = [_NVG] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
{
_clipboard = _clipboard + format["%2%2// %1 %2%2",_x select 0, endl];
_temp = [_x select 1] call fn_generatePriceList;
_clipBoard = _clipBoard + _temp;
} foreach
[
["Uniforms",_uniforms],
["Headgear",_headgear],
["Vests",_vests],
["Backpacks",_backpacks],
["Glasses",_glasses]
];
if (GRG_mod == "Exile") then
{
@ -130,29 +232,18 @@ if (GRG_mod == "Epoch") then
{
_clipboard = _clipBoard + GRG_Epoch_Loottable_Header;
};
_clipboard = _clipboard + format["%2%3// // Uniforms %1",endl,endl,endl];
_temp = [_uniforms] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Headgear / Masks %1",endl,endl,endl];
_temp = [_headgear] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipboard = _clipboard + format["%2%3// Goggles %1",endl,endl,endl];
_temp = [_goggles] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipBoard = _clipBoard + format["%2%3// Vests %1",endl,endl,endl];
_temp = [_vests] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipBoard = _clipBoard + format["%2%3// Backpacks %1",endl,endl,endl];
_temp = [_backpacks] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipBoard = _clipBoard + format["%2%3//Glasses %1",endl,endl,endl];
_temp = [_glasses] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
_clipBoard = _clipBoard + format["%2%3// NVG %1",endl,endl,endl];
_temp = [_NVG] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
{
_clipboard = _clipboard + format["%2%2// %1 %2%2",_x select 0, endl];
_temp = [_x select 1] call fn_generateLootTableEntries;
_clipBoard = _clipBoard + _temp;
} foreach
[
["Uniforms",_uniforms],
["Headgear",_headgear],
["Vests",_vests],
["Backpacks",_backpacks],
["Glasses",_glasses]
];
copyToClipboard _clipBoard;
systemChat "All wearables Processed and results copied to clipboard";
hint format["Wearables Config Extractor Run complete%1Output copied to clipboard%1Paste it into a text editor to acces",endl];