Advertisement
Guest User

Untitled

a guest
Sep 19th, 2017
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.19 KB | None | 0 0
  1. function NTT_ManageStash(invitem) //mmbot type stashing credit to idevil on elitepvp
  2. {
  3. var i, x, y, z;
  4. var _items;
  5. var _stashall;
  6. var StashHeight = (me.gametype == 0) ? 4 : 8;
  7. var _ignorestring = _NTT_IgnoredItems.join();
  8. var _ignoreitem;
  9. if(!GetUIState(0x19))
  10. return false;
  11.  
  12. if(arguments.length < 1)
  13. _stashall = true;
  14. else
  15. _stashall = false;
  16.  
  17. //if(!NTC_StashGoldFull() && NTC_MyGoldCarry() > NTConfig_MinGoldToStash)
  18. if(!NTC_StashGoldFull() && NTC_MyGoldCarry() > 0)
  19. {
  20. var _mygold = NTC_MyGoldCarry();
  21.  
  22. Gold(3, _mygold);
  23.  
  24. for(i = 0 ; i < 2 ; i++)
  25. {
  26. NTC_Delay(500);
  27.  
  28. if(_mygold > NTC_MyGoldCarry())
  29. break;
  30. }
  31. }
  32.  
  33. var _stashspace = new Array(StashHeight);
  34.  
  35. for(y = 0 ; y < StashHeight ; y++)
  36. _stashspace[y] = new Array(6);
  37.  
  38. for(y = 0 ; y < StashHeight ; y++)
  39. {
  40. for(x = 0 ; x < 6 ; x++)
  41. _stashspace[y][x] = 0;
  42. }
  43.  
  44. _items = me.GetItems();
  45.  
  46. if(!_items)
  47. return false;
  48.  
  49. for(i = 0 ; i < _items.length ; i++)
  50. {
  51. if(_items[i].mode == 0 && _items[i].itemloc == 4)
  52. {
  53. for(y = 0 ; y < _items[i].ysize ; y++)
  54. {
  55. for(x = 0 ; x < _items[i].xsize ; x++)
  56. _stashspace[y+_items[i].y][x+_items[i].x] = 1;
  57. }
  58. }
  59. }
  60.  
  61. for(i = 0 ; i < _items.length ; i++)
  62. {
  63. if(_items[i].mode == 0 && _items[i].itemloc == 0 && (_stashall || (_items[i].x == invitem.x && _items[i].y == invitem.y)))
  64. {
  65. if(_stashall)
  66. {
  67. _ignoreitem = (NTConfig_Columns[_items[i].y][_items[i].x] == 0);
  68.  
  69. if(!_ignoreitem)
  70. {
  71. if(_ignorestring.indexOf(_items[i].code) != -1 || NTSI_CheckItem(_items[i]) <= 0 || NTSI_CheckItem(_items[i], -1) == 3)
  72. _ignoreitem = true;
  73. }
  74. }
  75. else
  76. _ignoreitem = false;
  77.  
  78. if(!_ignoreitem)
  79. {
  80. _itemdone = false;
  81. for(z = 0 ; z < 3; z++)
  82. {
  83. for(y = 0 ; y < StashHeight ; y++)
  84. {
  85. if(_itemdone)
  86. break;
  87.  
  88. for(x = 0 ; x < (3 - _items[i].xsize) ; x++)
  89. {
  90. var xx = 2*z + x;
  91. if(_itemdone)
  92. break;
  93.  
  94. if(_stashspace[y][xx] == 0)
  95. {
  96. if((xx+_items[i].xsize-1) < 6 && (y+_items[i].ysize-1) < StashHeight)
  97. {
  98. var _havespace = true;
  99.  
  100. for(m = 0 ; m < _items[i].ysize ; m++)
  101. {
  102. for(n = 0 ; n < _items[i].xsize ; n++)
  103. {
  104. if(_stashspace[y+m][xx+n] == 1)
  105. {
  106. _havespace = false;
  107. m = 4;
  108. break;
  109. }
  110. }
  111. }
  112.  
  113. if(_havespace)
  114. {
  115. if(NTC_ItemToCursor(_items[i]))
  116. {
  117. for(n = 0 ; n < 80 ; n++)
  118. {
  119. if((n % 40) == 0)
  120. me.ClickItem(0, xx, y, 4);
  121.  
  122. NTC_Delay(100);
  123.  
  124. if(!me.itemoncursor)
  125. break;
  126. }
  127.  
  128. if(n < 80)
  129. {
  130. for(m = 0 ; m < _items[i].ysize ; m++)
  131. {
  132. for(n = 0 ; n < _items[i].xsize ; n++)
  133. _stashspace[y+m][xx+n] = 1;
  134. }
  135. }
  136.  
  137. NTC_PingDelay(200);
  138. }
  139.  
  140. _itemdone = true;
  141. }
  142. }
  143. }
  144. }
  145. }
  146. }
  147. }
  148.  
  149. if(!_stashall)
  150. return true;
  151. }
  152. }
  153.  
  154. return true;
  155. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement