Advertisement
Guest User

Untitled

a guest
Nov 30th, 2015
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.63 KB | None | 0 0
  1. /**
  2. * Exile Mod
  3. * www.exilemod.com
  4. * © 2015 Exile Mod Team
  5. *
  6. * This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
  7. * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
  8. */
  9.  
  10. private["_player","_itemClassName","_itemInformation","_itemCategory","_itemType","_added","_compatibleWeaponItems"];
  11. _player = _this select 0;
  12. _itemClassName = toLower (_this select 1);
  13. _itemInformation = [_itemClassName] call BIS_fnc_itemType;
  14. _itemCategory = _itemInformation select 0;
  15. _itemType = _itemInformation select 1;
  16. _added = false;
  17. if (_itemCategory isEqualTo "Magazine") then
  18. {
  19. {
  20. if !(_x isEqualTo "") then
  21. {
  22. switch (_forEachIndex) do
  23. {
  24. case 0:
  25. {
  26. if ((primaryWeaponMagazine _player) isEqualTo []) then
  27. {
  28. _compatibleWeaponItems = _x call ExileClient_util_gear_getCompatibleWeaponItems;
  29. if (_itemClassName in _compatibleWeaponItems) exitWith
  30. {
  31. _player addPrimaryWeaponItem _itemClassName;
  32. _added = true;
  33. };
  34. };
  35. };
  36. case 1:
  37. {
  38. if ((secondaryWeaponMagazine _player) isEqualTo []) then
  39. {
  40. _compatibleWeaponItems = _x call ExileClient_util_gear_getCompatibleWeaponItems;
  41. if (_itemClassName in _compatibleWeaponItems) exitWith
  42. {
  43. _player addSecondaryWeaponItem _itemClassName;
  44. _added = true;
  45. };
  46. };
  47. };
  48. case 2:
  49. {
  50. if ((handgunMagazine _player) isEqualTo []) then
  51. {
  52. _compatibleWeaponItems = _x call ExileClient_util_gear_getCompatibleWeaponItems;
  53. if (_itemClassName in _compatibleWeaponItems) exitWith
  54. {
  55. _player addHandgunItem _itemClassName;
  56. _added = true;
  57. };
  58. };
  59. };
  60. };
  61. };
  62. }
  63. forEach [primaryWeapon _player, secondaryWeapon _player, handgunWeapon _player];
  64. }
  65. else
  66. {
  67. switch (_itemType) do
  68. {
  69. case "AssaultRifle",
  70. case "Rifle",
  71. case "SniperRifle",
  72. case "SubmachineGun",
  73. case "MachineGun",
  74. case "Handgun",
  75. case "LaserDesignator",
  76. case "Throw",
  77. case "Binocular",
  78. case "RocketLauncher",
  79. case "MissileLauncher":
  80. {
  81. _player addWeaponGlobal _itemClassName;
  82. _added = true;
  83. };
  84. case "GPS",
  85. case "Map",
  86. case "Radio",
  87. case "UAVTerminal",
  88. case "Watch",
  89. case "Compass",
  90. case "NVGoggles",
  91. case "Glasses":
  92. {
  93. _player linkItem _itemClassName;
  94. _added = true;
  95. };
  96. case "Headgear": { _player addHeadgear _itemClassName; _added = true; };
  97. case "Backpack": { _player addBackpackGlobal _itemClassName; _added = true; };
  98. case "Uniform": { _player forceAddUniform _itemClassName; _added = true; };
  99. case "Vest": { _player addVest _itemClassName; _added = true; };
  100. case "AccessorySights",
  101. case "AccessoryPointer",
  102. case "AccessoryMuzzle",
  103. case "AccessoryBipod":
  104. {
  105. {
  106. if !(_x isEqualTo "") then
  107. {
  108. _compatibleWeaponItems = _x call ExileClient_util_gear_getCompatibleWeaponItems;
  109. if (_itemClassName in _compatibleWeaponItems) exitWith
  110. {
  111. switch (_forEachIndex) do
  112. {
  113. case 0: { _player addPrimaryWeaponItem _itemClassName; _added = true; };
  114. case 1: { _player addSecondaryWeaponItem _itemClassName; _added = true; };
  115. case 2: { _player addHandgunItem _itemClassName; _added = true; };
  116. };
  117. };
  118. };
  119. }
  120. forEach [primaryWeapon _player, secondaryWeapon _player, handgunWeapon _player];
  121. };
  122. };
  123. };
  124. _added
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement