Advertisement
Guest User

Untitled

a guest
Mar 29th, 2016
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 5.42 KB | None | 0 0
  1. private ["_crashNum","_lootNum","_loot","_coords"];
  2. /////////////////////////////////////
  3. //      Function file for UKGZ     //
  4. //        Created by: Richie       //
  5. //  Modded by:  Vampire & xBowBii  //
  6. /////////////////////////////////////
  7. // Number of Crashes
  8. _crashNum = 10;
  9.  
  10. // Number of Loot Piles
  11. _lootNum = 8;
  12.  
  13. _loot = [
  14.     "m107_EPOCH","MultiGun","Srifle_GM6_F","Srifle_LRR_F","M14_EPOCH","srifle_EBR_F","m249_EPOCH","LMG_Mk200_F","LMG_Zafir_F",
  15.     "m16_EPOCH","akm_EPOCH","m4a3_EPOCH","Rollins_F","sr25_epoch","l85a2_epoch","arifle_MX_GL_F",
  16.     "srifle_DMR_02_ARCO_F","srifle_DMR_02_sniper_F","srifle_DMR_03_spotter_F","srifle_DMR_03_tan_AMS_LP_F","srifle_DMR_03_tan_F","srifle_DMR_03_woodland_F",
  17.     "srifle_DMR_04_ARCO_F","srifle_DMR_04_DMS_F","srifle_DMR_04_F","srifle_DMR_04_MRCO_F","srifle_DMR_05_blk_F","srifle_DMR_05_DMS_F","srifle_DMR_05_DMS_snds_F","srifle_DMR_05_hex_F",
  18.     "srifle_DMR_06_camo_F","srifle_DMR_06_camo_khs_F","srifle_DMR_06_olive_F","MMG_01_hex_ACRO_LP_F","MMG_01_hex_F","MMG_01_tan_F","MMG_02_camo_F","MMG_02_sand_F","MMG_02_sand_RCO_LP_F",
  19.    
  20.     "optic_Nightstalker","optic_LRPS","optic_DMS","optic_Aco_smg","optic_ACO_grn_smg","optic_Holosight_smg",
  21.     "optic_Aco","optic_Holosight","acc_pointer_IR","Rangefinder","optic_Hamr",
  22.    
  23.     "EnergyPack","Repair_EPOCH","Defib_EPOCH","Heal_EPOCH","FAK","ItemWatch","CircuitParts","ItemScraps","jerrycan_epoch","VehicleRepair","CircuitParts",
  24.    
  25.     "meatballs_epoch","ItemSodaRbull","sardines_epoch","scam_epoch","sweetcorn_epoch","Towelette",
  26.    
  27.     "30Rnd_556x45_Stanag","30Rnd_556x45_Stanag_Tracer_Red","30Rnd_556x45_Stanag_Tracer_Yellow","20Rnd_556x45_UW_mag","30Rnd_65x39_caseless_mag","30Rnd_65x39_caseless_mag_Tracer",
  28.     "30Rnd_65x39_caseless_green_mag_Tracer","20Rnd_762x51_Mag","200Rnd_65x39_cased_Box","200Rnd_65x39_cased_Box_Tracer","5Rnd_127x108_Mag","5Rnd_127x108_APDS_Mag","7Rnd_408_Mag",
  29.    
  30.     "ChainSaw"
  31. ];
  32.  
  33. _spawnCenter = [14939.9, 0.0534991, 15083.3]; //Center of your map (usually in mission.sqm)
  34. _min = 100; // minimum distance from the center position (Number) in meters
  35. _max = 14500; // maximum distance from the center position (Number) in meters
  36. _mindist = 100; // minimum distance from the nearest object (Number) in meters, ie. spawn at least this distance away from anything within x meters..
  37. //Low _mindist means helicrashes could spawn near towns or in forests.. higher the number it would be spawning in an open field etc
  38. _water = 0; // water mode 0: cannot be in water , 1: can either be in water or not , 2: must be in water
  39. _shoremode = 0; // 0: does not have to be at a shore , 1: must be at a shore
  40.  
  41. vSpawnCrashes = {
  42.     for "_j" from 1 to _crashNum do {
  43.         _posOfCrash = [_spawnCenter,_min,_max,_mindist,_water,20,_shoremode] call BIS_fnc_findSafePos; // find a random loc
  44.         _helicopters = ["Land_UWreck_Heli_Attack_02_F","Land_Wreck_Heli_Attack_01_F"]; //Add Heli classnames here
  45.         _element = _helicopters call BIS_fnc_SelectRandom;
  46.         _vehHeli = _element createVehicle [0,0,0];
  47.         _burnthefucker = "test_EmptyObjectForFireBig" createVehicle (position _vehHeli);  _burnthefucker attachto [_vehHeli, [0,0,-1]];  
  48.         _vehHeli setposATL [(_posOfCrash) select 0,(_posOfCrash) select 1,0];
  49.         _vehHeli setVariable ["LAST_CHECK", (diag_tickTime + 14400)];
  50.                
  51.         for "_i" from 1 to _lootNum do {
  52.             _crate0 = createVehicle ["weaponHolderSimulated", _vehHeli modelToWorld [(random 10) - 3, (random 10) - 4, 0], [], 0, "CAN_COLLIDE"];
  53.             _crate1 = createVehicle ["weaponHolderSimulated", _vehHeli modelToWorld [(random 10) - 3, (random 10) - 4, 0], [], 0, "CAN_COLLIDE"];
  54.            
  55.             _item = _loot call BIS_fnc_selectRandom;
  56.             switch (true) do
  57.             {
  58.                 case (isClass (configFile >> "CfgWeapons" >> _item)): {
  59.                     _kindOf = [(configFile >> "CfgWeapons" >> _item),true] call BIS_fnc_returnParents;
  60.                     if ("ItemCore" in _kindOf) then {
  61.                         // Min 1, Max 2
  62.                         _crate0 addItemCargoGlobal [_item,(floor(random(2)))+1];
  63.                         _crate1 addItemCargoGlobal [_item,(floor(random(2)))+1];
  64.                     } else {
  65.                         // One Weapon, Three Mags
  66.                         _crate0 addWeaponCargoGlobal [_item,1];
  67.                         _crate1 addWeaponCargoGlobal [_item,1];
  68.                        
  69.                         _cAmmo = [] + getArray (configFile >> "cfgWeapons" >> _item >> "magazines");
  70.                         {
  71.                             if (isClass(configFile >> "CfgPricing" >> _x)) exitWith {
  72.                                 _crate0 addMagazineCargoGlobal [_x,3];
  73.                                 _crate1 addMagazineCargoGlobal [_x,3];
  74.                             };
  75.                         } forEach _cAmmo;
  76.                     };
  77.                 };
  78.                 case (isClass (configFile >> "cfgMagazines" >> _item)): {
  79.                     // Min 1, Max 3
  80.                     _crate0 addMagazineCargoGlobal [_item,(floor(random(3)))+1];
  81.                     _crate1 addMagazineCargoGlobal [_item,(floor(random(3)))+1];
  82.                 };
  83.                 case ((getText(configFile >> "cfgVehicles" >> _item >>  "vehicleClass")) == "Backpacks"): {
  84.                     // One Bag
  85.                     _crate0 addBackpackCargoGlobal [_item,1];
  86.                     _crate1 addBackpackCargoGlobal [_item,1];
  87.                 };
  88.             };
  89.             _crate0 setPos [(getPos _crate0 select 0) +5, (getPos _crate0 select 1), 0];
  90.             _crate1 setPos [(getPos _crate1 select 0) -10, (getPos _crate1 select 1), 0];
  91.             _crate0 setVariable ["LAST_CHECK", (diag_tickTime + 14400)];
  92.             _crate1 setVariable ["LAST_CHECK", (diag_tickTime + 14400)];
  93.             _cutter0 = "Land_ClutterCutter_medium_F" createVehicle (getpos _crate0);
  94.             _cutter1 = "Land_ClutterCutter_medium_F" createVehicle (getpos _crate1);
  95.             _cutter0 setVariable ["LAST_CHECK", (diag_tickTime + 14400)];
  96.             _cutter1 setVariable ["LAST_CHECK", (diag_tickTime + 14400)];
  97.  
  98.            
  99.         };
  100.     };
  101. };
  102.  
  103. call vSpawnCrashes;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement