adds scroll wheel spawning and setting, adds utils for getting cfg
This commit is contained in:
35
aaFrameworkUtils/getSupplyCratesFromCfg.sqf
Normal file
35
aaFrameworkUtils/getSupplyCratesFromCfg.sqf
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
private _supplyCratesCfg = call milsim_resupply_fnc_getSupplyCratesCfg;
|
||||||
|
|
||||||
|
private _properties = [];
|
||||||
|
{
|
||||||
|
_properties append ((configProperties [_x]) apply {configName _x});
|
||||||
|
} forEach (_supplyCratesCfg call BIS_fnc_returnChildren);
|
||||||
|
|
||||||
|
_properties = _properties arrayIntersect _properties;
|
||||||
|
|
||||||
|
private _cfgVals = [];
|
||||||
|
{
|
||||||
|
private _cfg = _x;
|
||||||
|
private _cfgName = configName _x;
|
||||||
|
_vals = createHashMap;
|
||||||
|
|
||||||
|
{
|
||||||
|
_vals set [_x, (_cfg >> _x) call BIS_fnc_getCfgData];
|
||||||
|
} forEach _properties;
|
||||||
|
|
||||||
|
{
|
||||||
|
private _arr = _vals get _x;
|
||||||
|
private _newArr = [];
|
||||||
|
{
|
||||||
|
_x params ["_class", "_count"];
|
||||||
|
private _cfg = _class call CBA_fnc_getItemConfig;
|
||||||
|
private _name = [_cfg] call BIS_fnc_displayName;
|
||||||
|
_newArr pushBack [_class, _name, _count];
|
||||||
|
} forEach _arr;
|
||||||
|
_vals set [_x, _newArr];
|
||||||
|
} forEach ["backpacks", "weapons", "items", "magazines"];
|
||||||
|
|
||||||
|
_cfgVals pushBack [_cfgName, _vals];
|
||||||
|
} forEach (_supplyCratesCfg call BIS_fnc_returnChildren);
|
||||||
|
|
||||||
|
text ([createHashMapFromArray _cfgVals] call CBA_fnc_encodeJSON);
|
||||||
1
aaFrameworkUtils/parseSupplyCratesExported.json
Normal file
1
aaFrameworkUtils/parseSupplyCratesExported.json
Normal file
File diff suppressed because one or more lines are too long
37
aaFrameworkUtils/parseSupplyCratesJSONToCSV.py
Normal file
37
aaFrameworkUtils/parseSupplyCratesJSONToCSV.py
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
import sys
|
||||||
|
import json
|
||||||
|
import csv
|
||||||
|
|
||||||
|
|
||||||
|
def parseSupplyCratesJSONToCSV(jsonFile, csvFile):
|
||||||
|
with open(jsonFile, 'r') as file:
|
||||||
|
supply_boxes = json.load(file)
|
||||||
|
|
||||||
|
headers = ["box_config_name", "box_friendly_name", "box_class", "box_tooltip", "category", "item_class", "item_name", "quantity"]
|
||||||
|
all_rows = []
|
||||||
|
for supply_box_name in supply_boxes.keys():
|
||||||
|
supply_box_data = supply_boxes[supply_box_name]
|
||||||
|
|
||||||
|
display_name = supply_box_data['displayName']
|
||||||
|
tooltip = supply_box_data['tooltip']
|
||||||
|
box_class = supply_box_data['boxClass']
|
||||||
|
for category in ["items", "backpacks", "weapons", "magazines"]:
|
||||||
|
for item in supply_box_data[category]:
|
||||||
|
item_class = item[0]
|
||||||
|
item_name = item[1]
|
||||||
|
item_quantity = item[2]
|
||||||
|
row = [supply_box_name, display_name, box_class, tooltip, category, item_class, item_name, item_quantity]
|
||||||
|
all_rows.append(row)
|
||||||
|
|
||||||
|
|
||||||
|
with open(csvFile, 'w', newline='', encoding='utf-8') as file:
|
||||||
|
writer = csv.writer(file)
|
||||||
|
writer.writerow(headers)
|
||||||
|
writer.writerows(all_rows)
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
jsonFile = sys.argv[1]
|
||||||
|
csvFile = sys.argv[2]
|
||||||
|
parseSupplyCratesJSONToCSV(jsonFile, csvFile)
|
||||||
|
print(f"Done! {csvFile} created.")
|
||||||
|
|
||||||
84
aaFrameworkUtils/test.csv
Normal file
84
aaFrameworkUtils/test.csv
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
box_config_name,box_friendly_name,box_class,box_tooltip,category,item_class,item_name,quantity
|
||||||
|
CrewServedWeapons,CSW Crate,Box_NATO_Equip_F,A crate containing backpacks that assemble into static weapons.,backpacks,RHS_M2_Gun_Bag,M2 Gun Bag,2
|
||||||
|
CrewServedWeapons,CSW Crate,Box_NATO_Equip_F,A crate containing backpacks that assemble into static weapons.,backpacks,RHS_M2_Tripod_Bag,M2 Tripod Bag,2
|
||||||
|
CrewServedWeapons,CSW Crate,Box_NATO_Equip_F,A crate containing backpacks that assemble into static weapons.,backpacks,RHS_M2_MiniTripod_Bag,M3 Minitripod Bag,2
|
||||||
|
CrewServedWeapons,CSW Crate,Box_NATO_Equip_F,A crate containing backpacks that assemble into static weapons.,backpacks,rhs_Tow_Gun_Bag,TOW Gun Bag,2
|
||||||
|
CrewServedWeapons,CSW Crate,Box_NATO_Equip_F,A crate containing backpacks that assemble into static weapons.,backpacks,rhs_TOW_Tripod_Bag,TOW Tripod Bag,2
|
||||||
|
CrewServedWeapons,CSW Crate,Box_NATO_Equip_F,A crate containing backpacks that assemble into static weapons.,backpacks,UK3CB_Static_M240_Elcan_Gun_Bag,M240 w/Elcan Gun Bag,2
|
||||||
|
CrewServedWeapons,CSW Crate,Box_NATO_Equip_F,A crate containing backpacks that assemble into static weapons.,backpacks,UK3CB_B_Static_M240_Elcan_Tripod_Low_Bag_US_D,M240 w/Elcan Tripod Bag (Low),2
|
||||||
|
CrewServedWeapons,CSW Crate,Box_NATO_Equip_F,A crate containing backpacks that assemble into static weapons.,backpacks,RHS_Mk19_Gun_Bag,Mk19 Gun Bag,2
|
||||||
|
CrewServedWeapons,CSW Crate,Box_NATO_Equip_F,A crate containing backpacks that assemble into static weapons.,backpacks,RHS_Mk19_Tripod_Bag,Mk19 Tripod Bag,2
|
||||||
|
MortarMk6Resupply,Mortar MK6 Supply Crate,Box_NATO_WpsSpecial_F,A crate containing Mk6 mortar resupply (tubes) and tools.,items,ACE_artilleryTable,Artillery Rangetable,2
|
||||||
|
MortarMk6Resupply,Mortar MK6 Supply Crate,Box_NATO_WpsSpecial_F,A crate containing Mk6 mortar resupply (tubes) and tools.,items,ACE_RangeTable_82mm,82mm Rangetable,2
|
||||||
|
MortarMk6Resupply,Mortar MK6 Supply Crate,Box_NATO_WpsSpecial_F,A crate containing Mk6 mortar resupply (tubes) and tools.,items,ACE_microDAGR,MicroDAGR GPS,2
|
||||||
|
MortarMk6Resupply,Mortar MK6 Supply Crate,Box_NATO_WpsSpecial_F,A crate containing Mk6 mortar resupply (tubes) and tools.,items,ACE_MapTools,Map Tools,2
|
||||||
|
MortarMk6Resupply,Mortar MK6 Supply Crate,Box_NATO_WpsSpecial_F,A crate containing Mk6 mortar resupply (tubes) and tools.,backpacks,B_Mortar_01_support_F,Folded Mk6 Mortar Bipod [NATO],3
|
||||||
|
MortarMk6Resupply,Mortar MK6 Supply Crate,Box_NATO_WpsSpecial_F,A crate containing Mk6 mortar resupply (tubes) and tools.,backpacks,B_Mortar_01_weapon_F,Folded Mk6 Mortar Tube [NATO],6
|
||||||
|
MortarMk6Resupply,Mortar MK6 Supply Crate,Box_NATO_WpsSpecial_F,A crate containing Mk6 mortar resupply (tubes) and tools.,backpacks,UK3CB_LSM_B_B_CARRYALL_RADIO_TIG_STRIPE_01,Carryall Backpack RT1523g (Tiger Stripe 01),1
|
||||||
|
MortarMk6Resupply,Mortar MK6 Supply Crate,Box_NATO_WpsSpecial_F,A crate containing Mk6 mortar resupply (tubes) and tools.,weapons,ACE_Vector,Vector 21 Nite,2
|
||||||
|
MortarMk6Resupply,Mortar MK6 Supply Crate,Box_NATO_WpsSpecial_F,A crate containing Mk6 mortar resupply (tubes) and tools.,magazines,acex_intelitems_notepad,Notepad,2
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,weapons,rhs_weap_M136,M136 (HEAT),4
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,weapons,rhs_weap_M136_hp,M136 (HP),4
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,weapons,rhs_weap_m72a7,M72A7,2
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,1Rnd_SmokePurple_Grenade_shell,Smoke Round (Purple),12
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,1Rnd_SmokeBlue_Grenade_shell,Smoke Round (Blue),24
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,1Rnd_SmokeOrange_Grenade_shell,Smoke Round (Orange),12
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,rhs_mag_M441_HE,M441 HE Grenade Round,25
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,rhs_mag_M433_HEDP,M433 HEDP Grenade Round,15
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,ACE_40mm_Flare_ir,M992 Illumination Flare (IR),12
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,rhsusf_200Rnd_556x45_mixed_soft_pouch_coyote,200rnd M249 Softpack M855A1 (Mixed),25
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,rhsusf_20Rnd_762x51_m993_Mag,20rnd M14 M993 AP,25
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,SmokeShell,M83 Smoke Grenade (White),12
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,rhs_mag_m67,M67 Fragmentation Grenade,12
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,1Rnd_Smoke_Grenade_shell,Smoke Round (White),24
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,1Rnd_SmokeRed_Grenade_shell,Smoke Round (Red),24
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,1Rnd_SmokeGreen_Grenade_shell,Smoke Round (Green),24
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,1Rnd_SmokeYellow_Grenade_shell,Smoke Round (Yellow),12
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,Tier1_30Rnd_556x45_M856A1_EMag,30rnd EMAG M856A1 (Tracer),25
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,Tier1_30Rnd_556x45_Mk318Mod0_EMag,30rnd EMAG Mk318 Mod 0,75
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,ACE_30Rnd_65_Creedmor_mag,6.5 mm Creedmor 30Rnd Sand Mag,25
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,SMA_30Rnd_762x35_BLK_EPR,30 Round .300 Blackout EPR,25
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,Tier1_30Rnd_762x35_300BLK_SMK_PMAG,30rnd PMAG .300 Custom Combat TAC-TX,25
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,SMA_30Rnd_68x43_SPC_FMJ,SPC FMJ 6.8x43 30rnd Mag,25
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,SMA_30Rnd_68x43_SPC_FMJ_Tracer,SPC FMJ 6.8x43 30rnd Tracer Mag,25
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,SMA_20Rnd_762x51mm_M80A1_EPR,M80A1 EPR 762x51mm 20rnd Mag,25
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,SMA_20Rnd_762x51mm_M80A1_EPR_Tracer,M80A1 EPR 762x51mm 20rnd Tracer Mag,25
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,SMA_20Rnd_762x51mm_Mk316_Mod_0_Special_Long_Range,Mk316 Mod 0 762x51mm SBLR 20rnd Mag,25
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,SMA_20Rnd_762x51mm_Mk316_Mod_0_Special_Long_Range_Tracer,Mk316 Mod 0 762x51mm SBLR 20rnd Tracer Mag,25
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,Tier1_250Rnd_762x51_Belt_M993_AP,250rnd Ammo Belt M993 AP,15
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,ACE_20Rnd_762x51_Mag_Tracer,7.62 mm 20Rnd Mag (Tracer),25
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,ACE_20Rnd_762x51_M993_AP_Mag,7.62 mm 20Rnd Mag (M993 AP),25
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,rhsusf_20Rnd_762x51_SR25_m993_Mag,20rnd SR-25 M993 AP,25
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,Tier1_20Rnd_762x51_M993_SR25_Mag,20rnd SR-25/M110 M993 AP,25
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,Tier1_20Rnd_65x48_Creedmoor_SR25_Mag,20rnd SR-25/M110 6.5mm Creedmoor,25
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,rhssaf_30rnd_556x45_EPR_G36,30rnd G36 M855A1,25
|
||||||
|
AmmoSquad,Squad Ammo,Box_Syndicate_Ammo_F,A crate containing general ammunition and equipment for an infantry squad.,magazines,DemoCharge_Remote_Mag,M112 Demolition Block,16
|
||||||
|
AmmoHeavy,Heavy Ammo,Box_NATO_Wps_F,"A crate containing mixed ammo for rifles, ARs, MAT, and HAT.",magazines,MRAWS_HEAT_F,MAAWS HEAT 75 Round,35
|
||||||
|
AmmoHeavy,Heavy Ammo,Box_NATO_Wps_F,"A crate containing mixed ammo for rifles, ARs, MAT, and HAT.",magazines,MRAWS_HE_F,MAAWS HE 44 Round,15
|
||||||
|
AmmoHeavy,Heavy Ammo,Box_NATO_Wps_F,"A crate containing mixed ammo for rifles, ARs, MAT, and HAT.",magazines,Tier1_250Rnd_762x51_Belt_M993_AP,250rnd Ammo Belt M993 AP,50
|
||||||
|
AmmoHeavy,Heavy Ammo,Box_NATO_Wps_F,"A crate containing mixed ammo for rifles, ARs, MAT, and HAT.",magazines,Tier1_30Rnd_556x45_M856A1_EMag,30rnd EMAG M856A1 (Tracer),25
|
||||||
|
AmmoHeavy,Heavy Ammo,Box_NATO_Wps_F,"A crate containing mixed ammo for rifles, ARs, MAT, and HAT.",magazines,Tier1_30Rnd_556x45_Mk318Mod0_EMag,30rnd EMAG Mk318 Mod 0,50
|
||||||
|
AmmoHeavy,Heavy Ammo,Box_NATO_Wps_F,"A crate containing mixed ammo for rifles, ARs, MAT, and HAT.",magazines,Titan_AA,Titan AA Missile,10
|
||||||
|
AmmoHeavy,Heavy Ammo,Box_NATO_Wps_F,"A crate containing mixed ammo for rifles, ARs, MAT, and HAT.",magazines,Titan_AT,Titan AT Missile,10
|
||||||
|
AmmoHeavy,Heavy Ammo,Box_NATO_Wps_F,"A crate containing mixed ammo for rifles, ARs, MAT, and HAT.",magazines,200Rnd_65x39_cased_Box_Tracer_Red,6.5mm 200Rnd Belt Tracer (Red),50
|
||||||
|
Launchers,Launcher Crate,Box_NATO_WpsLaunch_F,A crate containing missile launchers and ammunition.,weapons,launch_B_Titan_short_F,Titan MPRL Compact (Sand),2
|
||||||
|
Launchers,Launcher Crate,Box_NATO_WpsLaunch_F,A crate containing missile launchers and ammunition.,weapons,launch_NLAW_F,NLAW,2
|
||||||
|
Launchers,Launcher Crate,Box_NATO_WpsLaunch_F,A crate containing missile launchers and ammunition.,weapons,rhs_weap_fim92,FIM-92F,2
|
||||||
|
Launchers,Launcher Crate,Box_NATO_WpsLaunch_F,A crate containing missile launchers and ammunition.,magazines,Titan_AA,Titan AA Missile,6
|
||||||
|
Launchers,Launcher Crate,Box_NATO_WpsLaunch_F,A crate containing missile launchers and ammunition.,magazines,Titan_AT,Titan AT Missile,6
|
||||||
|
Mortar60mmCommandoResupply,Mortar 60mm Commando Supply Crate,Box_NATO_WpsSpecial_F,A crate containing COMMANDO 60mm mortar shells and some STANAGs.,magazines,twc_2inch_he_1rnd,60mm COMMANDO 1Rnd HE,70
|
||||||
|
Mortar60mmCommandoResupply,Mortar 60mm Commando Supply Crate,Box_NATO_WpsSpecial_F,A crate containing COMMANDO 60mm mortar shells and some STANAGs.,magazines,twc_2inch_smoke_1rnd,60mm COMMANDO 1Rnd Smoke,15
|
||||||
|
Mortar60mmCommandoResupply,Mortar 60mm Commando Supply Crate,Box_NATO_WpsSpecial_F,A crate containing COMMANDO 60mm mortar shells and some STANAGs.,magazines,twc_2inch_illum_1rnd,60mm COMMANDO 1Rnd Illum,15
|
||||||
|
Mortar60mmCommandoResupply,Mortar 60mm Commando Supply Crate,Box_NATO_WpsSpecial_F,A crate containing COMMANDO 60mm mortar shells and some STANAGs.,magazines,Tier1_30Rnd_556x45_Mk318Mod0_EMag,30rnd EMAG Mk318 Mod 0,20
|
||||||
|
MedicalSupplies,Medical Crate,ACE_medicalSupplyCrate_advanced,A crate containing medical supplies.,items,ACE_packingBandage,Bandage (Packing),100
|
||||||
|
MedicalSupplies,Medical Crate,ACE_medicalSupplyCrate_advanced,A crate containing medical supplies.,items,ACE_elasticBandage,Bandage (Elastic),100
|
||||||
|
MedicalSupplies,Medical Crate,ACE_medicalSupplyCrate_advanced,A crate containing medical supplies.,items,ACE_tourniquet,Tourniquet (CAT),48
|
||||||
|
MedicalSupplies,Medical Crate,ACE_medicalSupplyCrate_advanced,A crate containing medical supplies.,items,ACE_splint,Splint,48
|
||||||
|
MedicalSupplies,Medical Crate,ACE_medicalSupplyCrate_advanced,A crate containing medical supplies.,items,ACE_morphine,Morphine Autoinjector,50
|
||||||
|
MedicalSupplies,Medical Crate,ACE_medicalSupplyCrate_advanced,A crate containing medical supplies.,items,ACE_epinephrine,Epinephrine Autoinjector,50
|
||||||
|
MedicalSupplies,Medical Crate,ACE_medicalSupplyCrate_advanced,A crate containing medical supplies.,items,ACE_bloodIV,Blood IV (1000ml),75
|
||||||
|
MedicalSupplies,Medical Crate,ACE_medicalSupplyCrate_advanced,A crate containing medical supplies.,items,ACE_bloodIV_500,Blood IV (500ml),50
|
||||||
|
MedicalSupplies,Medical Crate,ACE_medicalSupplyCrate_advanced,A crate containing medical supplies.,items,ACE_bloodIV_250,Blood IV (250ml),25
|
||||||
|
MedicalSupplies,Medical Crate,ACE_medicalSupplyCrate_advanced,A crate containing medical supplies.,items,ACE_quikclot,Bandage (QuikClot),75
|
||||||
|
MedicalSupplies,Medical Crate,ACE_medicalSupplyCrate_advanced,A crate containing medical supplies.,items,ACE_personalAidKit,Personal Aid Kit,5
|
||||||
|
MedicalSupplies,Medical Crate,ACE_medicalSupplyCrate_advanced,A crate containing medical supplies.,items,ACE_surgicalKit,Surgical Kit,5
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
class SupplyCrates {
|
class SupplyCrates {
|
||||||
class AmmoSquad {
|
class AmmoSquad {
|
||||||
boxClass = "Box_Syndicate_Ammo_F";
|
boxClass = "Box_Syndicate_Ammo_F";
|
||||||
displayName = "Squad Ammo";
|
displayName = "Squad Ammo Crate";
|
||||||
tooltip = "A crate containing general ammunition and equipment for an infantry squad.";
|
tooltip = "A crate containing general ammunition and equipment for an infantry squad.";
|
||||||
icon = "\A3\ui_f\data\map\vehicleicons\iconCrateAmmo_ca.paa";
|
icon = "\A3\ui_f\data\map\vehicleicons\iconCrateAmmo_ca.paa";
|
||||||
|
|
||||||
@@ -51,7 +51,7 @@ class SupplyCrates {
|
|||||||
|
|
||||||
class AmmoHeavy {
|
class AmmoHeavy {
|
||||||
boxClass = "Box_NATO_Wps_F";
|
boxClass = "Box_NATO_Wps_F";
|
||||||
displayName = "Heavy Ammo";
|
displayName = "Heavy Ammo Crate";
|
||||||
tooltip = "A crate containing mixed ammo for rifles, ARs, MAT, and HAT.";
|
tooltip = "A crate containing mixed ammo for rifles, ARs, MAT, and HAT.";
|
||||||
icon = "\A3\ui_f\data\map\vehicleicons\iconCrateWpns_ca.paa";
|
icon = "\A3\ui_f\data\map\vehicleicons\iconCrateWpns_ca.paa";
|
||||||
|
|
||||||
|
|||||||
@@ -88,6 +88,8 @@ class milsim_resupply {
|
|||||||
class createMortarBox {};
|
class createMortarBox {};
|
||||||
class createWeaponsBox {};
|
class createWeaponsBox {};
|
||||||
class getSupplyCratesCfg {};
|
class getSupplyCratesCfg {};
|
||||||
|
class addArsenalObjectSpawnBoxActions {};
|
||||||
|
class addCBASettings {postInit=1;};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -9,6 +9,17 @@ if (!isServer) then {
|
|||||||
}] call CBA_fnc_addEventHandler;
|
}] call CBA_fnc_addEventHandler;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// 5 seconds after the client is loaded, add the resupply action to all arsenal boxes
|
||||||
|
[
|
||||||
|
{time > 5},
|
||||||
|
{
|
||||||
|
if (missionNamespace getVariable [
|
||||||
|
"milsim_resupply_setting_allowSupplyBoxScrollWheelSpawning",
|
||||||
|
false
|
||||||
|
]) then {call milsim_resupply_fnc_addSpawnBoxActions}
|
||||||
|
}
|
||||||
|
] call CBA_fnc_waitUntilAndExecute;
|
||||||
|
|
||||||
["InitializePlayer", [player, true]] call BIS_fnc_dynamicGroups;
|
["InitializePlayer", [player, true]] call BIS_fnc_dynamicGroups;
|
||||||
|
|
||||||
nil;
|
nil;
|
||||||
31
functions/resupply/fn_addArsenalObjectSpawnBoxActions.sqf
Normal file
31
functions/resupply/fn_addArsenalObjectSpawnBoxActions.sqf
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
// adds a scroll wheel action to all arsenal boxes to spawn different supply crate types
|
||||||
|
|
||||||
|
private _arsenalBoxClassName = "Land_PaperBox_open_full_F";
|
||||||
|
|
||||||
|
// get all instances of the arsenal item
|
||||||
|
private _arsenalBoxes = (allMissionObjects _arsenalBoxClassName) select {
|
||||||
|
// only select the ones that already have user actions attached
|
||||||
|
count (actionIDs _x) > 0;
|
||||||
|
};
|
||||||
|
|
||||||
|
private _supplyCratesCfg = call milsim_resupply_fnc_getSupplyCratesCfg;
|
||||||
|
private _supplyCrateTypesCfgs = _supplyCratesCfg call BIS_fnc_returnChildren;
|
||||||
|
|
||||||
|
{
|
||||||
|
// add scroll wheel action to spawn different supply box types
|
||||||
|
private _arsenalBox = _x;
|
||||||
|
{
|
||||||
|
private _cfg = _x;
|
||||||
|
private _supplyCrateDisplayName = (_cfg >> "displayName") call BIS_fnc_getCfgData;
|
||||||
|
|
||||||
|
_arsenalBox addAction [format ["<t color='#ffffff'>Spawn %1</t>", _supplyCrateDisplayName], {
|
||||||
|
params ["_target", "_caller", "_actionId", "_arguments"];
|
||||||
|
_arguments params ["_supplyCrateCfg"];
|
||||||
|
[
|
||||||
|
objNull,
|
||||||
|
configName _supplyCrateCfg,
|
||||||
|
getPos _target
|
||||||
|
] call milsim_resupply_fnc_createBox;
|
||||||
|
}, [_cfg], 0, false, true, "", ""];
|
||||||
|
} forEach _supplyCrateTypesCfgs;
|
||||||
|
} forEach _arsenalBoxes;
|
||||||
22
functions/resupply/fn_addCBASettings.sqf
Normal file
22
functions/resupply/fn_addCBASettings.sqf
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
[
|
||||||
|
"milsim_resupply_setting_allowSupplyBoxScrollWheelSpawning", // variable
|
||||||
|
"CHECKBOX", // type
|
||||||
|
["Enabled", "If true, adds scroll wheel options to arsenal boxes to spawn supply boxes"], // title
|
||||||
|
["17th Battalion", "Resupply"], // category
|
||||||
|
false, // default value
|
||||||
|
true, // global setting
|
||||||
|
{
|
||||||
|
params ["_value"];
|
||||||
|
[
|
||||||
|
"resupply",
|
||||||
|
"SETTING CHANGED",
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"setting",
|
||||||
|
"milsim_resupply_setting_allowSupplyBoxScrollWheelSpawning"
|
||||||
|
],
|
||||||
|
["newValue", _value]
|
||||||
|
]
|
||||||
|
] call milsim_fnc_log;
|
||||||
|
}
|
||||||
|
] call CBA_fnc_addSetting;
|
||||||
Reference in New Issue
Block a user