I am trying to do a nice custom loadout script.
But I can't get it to work right.
This is what I have right now:
fnc_gear.sqf
Now, how do I call it from the players initfield?Code:private ["_unit","_strLoadout"]; _unit = _this select 0; _strLoadout = _this select 1; removeAllWeapons _unit; removeBackpack _unit; clearMagazineCargo unitBackpack _unit; _unit addWeapon "Binocular_Vector"; _unit addWeapon "NVGoggles"; switch (_strLoadout) do { case "START" : { _unit addBackpack "US_Backpack_AmmoMG_EP1"; clearMagazineCargo unitBackpack _unit; _unit addMagazine "100Rnd_556x45_BetaCMag"; _unit addMagazine "100Rnd_556x45_BetaCMag"; _unit addMagazine "100Rnd_556x45_BetaCMag"; _unit addMagazine "100Rnd_556x45_BetaCMag"; _unit addMagazine "100Rnd_556x45_BetaCMag"; _unit addMagazine "ACE_Battery_Rangefinder"; _unit addweapon "M249_m145_EP1"; _unit selectWeapon "M249_m145_EP1"; (unitBackpack _unit) addMagazineCargo ["100Rnd_556x45_BetaCMag",5]; }; case "MG" : { _unit addBackpack "US_Backpack_AmmoMG_EP1"; clearMagazineCargo unitBackpack _unit; addMagazine "100Rnd_556x45_BetaCMag"; _unit addMagazine "100Rnd_556x45_BetaCMag"; _unit addMagazine "100Rnd_556x45_BetaCMag"; _unit addMagazine "100Rnd_556x45_BetaCMag"; _unit addMagazine "100Rnd_556x45_BetaCMag"; _unit addMagazine "ACE_Battery_Rangefinder"; _unit addweapon "M249_m145_EP1"; _unit selectWeapon "M249_m145_EP1"; (unitBackpack _unit) addMagazineCargo ["100Rnd_556x45_BetaCMag",5]; }; case "STINGER" : { _unit addweapon "ACE_BackPack_ACR_TT"; clearMagazineCargo unitBackpack _unit; _unit addweapon "Stinger"; _unit addMagazine "Stinger"; _unit addMagazine "20Rnd_762x51_B_SCAR"; _unit addMagazine "20Rnd_762x51_B_SCAR"; _unit addMagazine "20Rnd_762x51_B_SCAR"; _unit addMagazine "20Rnd_762x51_B_SCAR"; _unit addMagazine "20Rnd_762x51_B_SCAR"; _unit addMagazine "ACE_Battery_Rangefinder"; _unit addweapon "ACE_SCAR_H_STD_Spect"; _unit selectWeapon "ACE_SCAR_H_STD_Spect"; (unitBackpack _unit) addMagazineCargo ["20Rnd_762x51_B_SCAR",5]; (unitBackpack _unit) addMagazineCargo ["Stinger",1]; }; case "JAVELIN" : { _unit addBackpack "US_Backpack_AT_EP1"; clearMagazineCargo unitBackpack _unit; _unit addweapon "ACE_Javelin_Direct"; _unit addMagazine "ACE_Javelin_Direct"; _unit addMagazine "20Rnd_762x51_B_SCAR"; _unit addMagazine "20Rnd_762x51_B_SCAR"; _unit addMagazine "20Rnd_762x51_B_SCAR"; _unit addMagazine "20Rnd_762x51_B_SCAR"; _unit addMagazine "20Rnd_762x51_B_SCAR"; _unit addMagazine "ACE_Battery_Rangefinder"; _unit addweapon "ACE_SCAR_H_STD_Spect"; _unit selectWeapon "ACE_SCAR_H_STD_Spect"; (unitBackpack _unit) addMagazineCargo ["20Rnd_762x51_B_SCAR",5]; (unitBackpack _unit) addMagazineCargo ["ACE_Javelin_Direct",1]; }; case "SNIPER" : { _unit addBackpack "US_Backpack_EP1"; clearMagazineCargo unitBackpack _unit; _unit addMagazine "ACE_5Rnd_127x99_B_TAC50"; _unit addMagazine "ACE_5Rnd_127x99_B_TAC50"; _unit addMagazine "ACE_5Rnd_127x99_B_TAC50"; _unit addMagazine "ACE_5Rnd_127x99_B_TAC50"; _unit addMagazine "ACE_5Rnd_127x99_B_TAC50"; _unit addMagazine "ACE_5Rnd_127x99_B_TAC50"; _unit addMagazine "ACE_5Rnd_127x99_B_TAC50"; _unit addMagazine "ACE_5Rnd_127x99_B_TAC50"; _unit addMagazine "ACE_5Rnd_127x99_B_TAC50"; _unit addMagazine "ACE_5Rnd_127x99_B_TAC50"; _unit addMagazine "ACE_5Rnd_127x99_B_TAC50"; _unit addMagazine "ACE_Battery_Rangefinder"; _unit addweapon "ACE_AS50"; _unit selectWeapon "ACE_AS50"; (unitBackpack _unit) addMagazineCargo ["20Rnd_762x51_B_SCAR",5]; }; };
I have try this, but I can't get it to work
Code:_strLoadout = [this, "START"] execVM "scripts\fnc_gear.sqf";
Thanks
---------- Post added at 03:11 PM ---------- Previous post was at 01:22 PM ----------
Found this and it works
Player initfield:
fnc_gear.sqf:Code:hNil = [this, "START"] call compile preprocessFile "scripts\fnc_gear.sqf";
Code:if (!isServer) exitWith {}; _unit = _this select 0; _strLoadout = _this select 1; removeAllWeapons _unit; removeBackpack _unit; switch (_strLoadout) do { case "MG": { if (local _unit) then { {_unit addBackpack "US_Backpack_AmmoMG_EP1";} forEach [1]; clearMagazineCargo unitBackpack _unit; {_unit addMagazine "100Rnd_556x45_BetaCMag";} forEach [1,2,3,4]; _unit addWeapon "M249_m145_EP1"; (unitBackpack _unit) addMagazineCargo ["100Rnd_556x45_BetaCMag",5]; }; }; case "START": { {_unit addBackpack "US_Backpack_AmmoMG_EP1";} forEach [1]; clearMagazineCargo unitBackpack _unit; {_unit addMagazine "100Rnd_556x45_BetaCMag";} forEach [1,2,3,4]; _unit addWeapon "M249_m145_EP1"; (unitBackpack _unit) addMagazineCargo ["100Rnd_556x45_BetaCMag",5]; }; case "STINGER": { {_unit addBackpack "US_Backpack_AmmoMG_EP1";} forEach [1]; clearMagazineCargo unitBackpack _unit; {_unit addMagazine "20Rnd_762x51_B_SCAR";} forEach [1,2,3,4,5]; _unit addWeapon "Stinger"; _unit addWeapon "ACE_SCAR_H_STD_Spect"; (unitBackpack _unit) addMagazineCargo ["20Rnd_762x51_B_SCAR",5]; (unitBackpack _unit) addMagazineCargo ["Stinger",1]; }; case "JAVELIN": { {_unit addBackpack "US_Backpack_AmmoMG_EP1";} forEach [1]; clearMagazineCargo unitBackpack _unit; {_unit addMagazine "20Rnd_762x51_B_SCAR";} forEach [1,2,3,4,5]; {_unit addMagazine "ACE_Javelin_Direct";} forEach [1]; _unit addWeapon "ACE_Javelin_Direct"; _unit addWeapon "ACE_SCAR_H_STD_Spect"; (unitBackpack _unit) addMagazineCargo ["ACE_Javelin_Direct",1]; (unitBackpack _unit) addMagazineCargo ["20Rnd_762x51_B_SCAR",5]; }; case "SNIPER": { {_unit addBackpack "US_Backpack_AmmoMG_EP1";} forEach [1]; clearMagazineCargo unitBackpack _unit; {_unit addMagazine "ACE_5Rnd_127x99_B_TAC50";} forEach [1,2,3,4,5,6,7,8,9,10,11]; _unit addWeapon "ACE_AS50"; (unitBackpack _unit) addMagazineCargo ["ACE_5Rnd_127x99_B_TAC50",10]; }; case "SMAW": { {_unit addBackpack "US_Backpack_AmmoMG_EP1";} forEach [1]; clearMagazineCargo unitBackpack _unit; {_unit addMagazine "20Rnd_762x51_B_SCAR";} forEach [1,2,3,4,5]; {_unit addMagazine "SMAW_HEAA";} forEach [1,2]; _unit addWeapon "SMAW"; _unit addWeapon "ACE_SCAR_H_STD_Spect"; (unitBackpack _unit) addMagazineCargo ["20Rnd_762x51_B_SCAR",5]; (unitBackpack _unit) addMagazineCargo ["SMAW_HEAA",1]; }; }; if (!(_unit hasWeapon "itemGPS")) then { _unit addWeapon "itemGPS"; }; _unit addWeapon "Binocular_Vector"; _unit addWeapon "NVGoggles"; _unit addMagazine "ACE_Battery_Rangefinder"; _primaryWeapon = primaryWeapon _unit; _unit selectweapon _primaryWeapon; // Fix for weapons with grenade launcher _muzzles = getArray(configFile>>"cfgWeapons" >> _primaryWeapon >> "muzzles"); _unit selectWeapon (_muzzles select 0);
HOME
Reply With Quote
