Advertisement
Guest User

refresh_build_recipe_dialog.sqf

a guest
Oct 16th, 2013
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.33 KB | None | 0 0
  1. _recipe = allBuildables select currentBuildRecipe;
  2.  
  3. _requeriments = [];
  4. _classname = "";
  5.  
  6. _requeriments = _recipe select 0;
  7. _classname = _recipe select 1;
  8.  
  9. //Select the requeriments of materials
  10. _recipeQtyT= _requeriments select 0;
  11. _recipeQtyS= _requeriments select 1;
  12. _recipeQtyW= _requeriments select 2;
  13. _recipeQtyL= _requeriments select 3;
  14. _recipeQtyM= _requeriments select 4;
  15. _recipeQtyG= _requeriments select 5;
  16. _recipeQtyJ= _requeriments select 6;
  17.  
  18. // Count mags in player inventory and add to an array
  19. _mags = magazines player;
  20. _qtyT=0;
  21. _qtyS=0;
  22. _qtyW=0;
  23. _qtyL=0;
  24. _qtyM=0;
  25. _qtyG=0;
  26. _qtyJ=0;
  27.  
  28. _buildables = [];
  29. _mags = magazines player;
  30. if ("ItemTankTrap" in _mags) then {
  31. _qtyT = {_x == "ItemTankTrap"} count magazines player;
  32. _buildables set [count _buildables, _qtyT];
  33. _itemT = "ItemTankTrap";
  34. } else { _qtyT = 0; _buildables set [count _buildables, _qtyT]; };
  35.  
  36. if ("ItemSandbag" in _mags) then {
  37. _qtyS = {_x == "ItemSandbag"} count magazines player;
  38. _buildables set [count _buildables, _qtyS];
  39. _itemS = "ItemSandbag";
  40. } else { _qtyS = 0; _buildables set [count _buildables, _qtyS]; };
  41.  
  42. if ("ItemWire" in _mags) then {
  43. _qtyW = {_x == "ItemWire"} count magazines player;
  44. _buildables set [count _buildables, _qtyW];
  45. _itemW = "ItemWire";
  46. } else { _qtyW = 0; _buildables set [count _buildables, _qtyW]; };
  47. if ("PartWoodPile" in _mags) then {
  48. _qtyL = {_x == "PartWoodPile"} count magazines player;
  49. _buildables set [count _buildables, _qtyL];
  50. _itemL = "PartWoodPile";
  51. } else { _qtyL = 0; _buildables set [count _buildables, _qtyL]; };
  52.  
  53. if ("PartGeneric" in _mags) then {
  54. _qtyM = {_x == "PartGeneric"} count magazines player;
  55. _buildables set [count _buildables, _qtyM];
  56. _itemM = "PartGeneric";
  57. } else { _qtyM = 0; _buildables set [count _buildables, _qtyM]; };
  58.  
  59. if ("HandGrenade_West" in _mags) then {
  60. _qtyG = {_x == "HandGrenade_West"} count magazines player;
  61. _buildables set [count _buildables, _qtyG];
  62. _itemG = "HandGrenade_West";
  63. } else { _qtyG = 0; _buildables set [count _buildables, _qtyG]; };
  64.  
  65. if ("ItemJerrycan" in _mags) then {
  66. _qtyJ = {_x == "ItemJerrycan"} count magazines player;
  67. _buildables set [count _buildables, _qtyJ];
  68. _itemJ = "ItemJerrycan";
  69. } else { _qtyJ = 0; _buildables set [count _buildables, _qtyJ]; };
  70.  
  71. _result = false;
  72.  
  73. _result = [_requeriments,_buildables] call BIS_fnc_areEqual;
  74.  
  75. //RESTRICTIONS ------------------------------
  76. _restrictions=[];
  77. _restrictions = _recipe select 2;
  78.  
  79. _toolbox=false;
  80. _toolbox= _restrictions select 3;
  81.  
  82. _etool=false;
  83. _etool= _restrictions select 4;
  84.  
  85. _medWait=false;
  86. _longWait=false;
  87. _medWait=_restrictions select 5;
  88. _longWait=_restrictions select 6;
  89.  
  90.  
  91. _removable=false;
  92. _removable=_restrictions select 10;
  93.  
  94. _chance ="";
  95. if (_removable) then {
  96. _chance="Rem:30% Fail"
  97. };
  98. _timer="10 s";
  99. if(_medWait) then {
  100. _timer="20 s";
  101. if (_removable) then {
  102. _chance="Rem:70% Fail"
  103. };
  104.  
  105. };
  106. if(_longWait) then {
  107. _timer="30 s";
  108. if (_removable) then {
  109. _chance="Rem:95% Fail"
  110. };
  111. } ;
  112.  
  113. _inBuilding=false;
  114. _inBuilding=_restrictions select 7;
  115.  
  116. _road=false;
  117. _road=_restrictions select 8;
  118.  
  119. _inTown=false;
  120. _inTown=_restrictions select 9;
  121.  
  122.  
  123. //--------------------------------------------
  124.  
  125.  
  126.  
  127. with uiNamespace do {
  128.  
  129. if (!_result) then {
  130. (Build_Recipe_Dialog displayCtrl 1600) ctrlEnable false;
  131. //UnShow the Build Button
  132. } else {
  133. //Show it
  134. (Build_Recipe_Dialog displayCtrl 1600) ctrlEnable true;
  135. };
  136.  
  137. //[TankTrap, SandBags, Wires, Logs, Scrap Metal, Grenades]
  138.  
  139.  
  140.  
  141. //Set ClassName
  142. (Build_Recipe_Dialog displayCtrl 1006) ctrlSetText format["%1",_classname];
  143. //Set Materials
  144. (Build_Recipe_Dialog displayCtrl 1000) ctrlSetText format["x%1 (%2)",_recipeQtyT,_qtyT];
  145. (Build_Recipe_Dialog displayCtrl 1001) ctrlSetText format["x%1 (%2)",_recipeQtyS,_qtyS];
  146. (Build_Recipe_Dialog displayCtrl 1002) ctrlSetText format["x%1 (%2)",_recipeQtyW,_qtyW];
  147. (Build_Recipe_Dialog displayCtrl 1003) ctrlSetText format["x%1 (%2)",_recipeQtyL,_qtyL];
  148. (Build_Recipe_Dialog displayCtrl 1004) ctrlSetText format["x%1 (%2)",_recipeQtyM,_qtyM];
  149. (Build_Recipe_Dialog displayCtrl 1005) ctrlSetText format["x%1 (%2)",_recipeQtyG,_qtyG];
  150. (Build_Recipe_Dialog displayCtrl 1007) ctrlSetText format["x%1 (%2)",_recipeQtyJ,_qtyJ];
  151. //Set Image
  152. (Build_Recipe_Dialog displayCtrl 1200) ctrlSetText format["buildRecipeBook\images\buildable\%1.jpg",_classname];
  153.  
  154. //Set Restrictions
  155. (Build_Recipe_Dialog displayCtrl 1017) ctrlSetText format["%1",_toolbox];
  156. (Build_Recipe_Dialog displayCtrl 1016) ctrlSetText format["%1",_etool];
  157. (Build_Recipe_Dialog displayCtrl 1015) ctrlSetText format["%1",_timer];
  158. (Build_Recipe_Dialog displayCtrl 1013) ctrlSetText format["%1",_removable];
  159. (Build_Recipe_Dialog displayCtrl 1012) ctrlSetText format["%1",_inTown];
  160. (Build_Recipe_Dialog displayCtrl 1011) ctrlSetText format["%1",_road];
  161. (Build_Recipe_Dialog displayCtrl 1014) ctrlSetText format["%1",_inBuilding];
  162. (Build_Recipe_Dialog displayCtrl 1018) ctrlSetText format["%1",_chance];
  163. };
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173. //1017 - toolbox
  174. //1016 -etool
  175. //1015 - time
  176. //1013 - removable
  177. //1012 - town
  178. //1011 - road
  179. //1014 - building
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement