Advertisement
kolton

Untitled

Dec 21st, 2011
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.     needRepair: function () {
  2.         if (me.getStat(14) + me.getStat(15) < me.getRepairCost()) { // Check if we can afford repairs
  3.             return false;
  4.         }
  5.        
  6.         var i, durability, quantity, charge,
  7.             repairPercent = 40, // TODO: Move this somewhere else
  8.             item = me.getItem(-1, 1); // Id -1 = any, Mode 1 = equipped
  9.        
  10.         if (!item) { // No equipped items
  11.             return false;
  12.         }
  13.        
  14.         do {
  15.             if (item.getFlag(0x400000)) { // Skip ethereal items
  16.                 continue;
  17.             }
  18.            
  19.             // Durability check
  20.             durability = item.getStat(72);
  21.            
  22.             if (durability && durability * 100 / item.getStat(73) <= repairPercent) {
  23.                 return true;
  24.             }
  25.            
  26.             // Charged item check
  27.             charge = item.getStat(-2)[204];
  28.            
  29.             if (typeof(charge) === "object") {
  30.                 if (charge instanceof Array) {
  31.                     for (i = 0; i < charge.length; i += 1) {
  32.                         if (charge[i].charges * 100 / charge[i].maxcharges <= repairPercent) {
  33.                             return true;
  34.                         }
  35.                     }
  36.                 } else if (charge.charges * 100 / charge.maxcharges <= repairPercent) {
  37.                     return true;
  38.                 }
  39.             }
  40.            
  41.             // Quantity check
  42.             quantity = item.getStat(70);
  43.            
  44.             if (quantity && quantity * 100 / (getBaseStat("items", item.classid, "maxstack") + item.getStat(254)) <= repairPercent) { // Stat 254 = increased stack size
  45.                 return true;
  46.             }
  47.         } while (item.getNext());
  48.        
  49.         return false;
  50.     },
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement