Advertisement
TheTintin

getMostDangerousAttack

Oct 23rd, 2015
156
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*
  2. Renvoi l'arme ou la puce qui nous fera le plus de dégâts et le montant
  3.  
  4. Paramètres :
  5. leek : Poireau dont on veut savoir les dégâts qu'il peut nous faire
  6.  
  7. Opérations : Environ 7500
  8. Niveau : 57
  9.  
  10. Auteur : TheTintin
  11. */
  12.  
  13. function getMostDangerousAttack (leek) {
  14.         var weapons = getWeapons(leek);
  15.         var chips = getChips(leek);
  16.        
  17.         var absoluteShield = 0;
  18.         var relatifShield = 0;
  19.        
  20.         var shieldEffects = getEffects();
  21.         for (var effect in shieldEffects) {
  22.             if (effect[0] == EFFECT_ABSOLUTE_SHIELD) {
  23.                 if (effect[3] >= 1) {
  24.                     absoluteShield += effect[1];
  25.                 }
  26.             } else if (effect[0] == EFFECT_RELATIVE_SHIELD) {
  27.                 if (effect[3] >= 1) {
  28.                     relatifShield += effect[1];
  29.                 }
  30.             }
  31.         }
  32.         debug(absoluteShield);
  33.         debug(relatifShield);
  34.        
  35.         var mostDangerousAttack = [];
  36.         var effects, damage;
  37.        
  38.         for (var weapon in weapons) {
  39.                 effects = getWeaponEffects(weapon);
  40.                 for (var effect in effects) {
  41.                         if (effect[0] == EFFECT_DAMAGE) {
  42.                                 damage = effect[2];
  43.                                 break;
  44.                         }
  45.                 }
  46.                
  47.                 if (damage > mostDangerousAttack[1]) {
  48.                         mostDangerousAttack[0] = weapon;
  49.                         mostDangerousAttack[1] = damage;
  50.                 }
  51.         }
  52.        
  53.         for (var chip in chips) {
  54.                 if (getCooldown(chip, leek) <= 1) {
  55.                         effects = getChipEffects(chip);
  56.                         for (var effect in effects) {
  57.                                 if (effect[0] == EFFECT_DAMAGE) {
  58.                                         damage = effect[2];
  59.                                         break;
  60.                                 }
  61.                         }
  62.  
  63.                         if (damage > mostDangerousAttack[1]) {
  64.                                 mostDangerousAttack[0] = chip;
  65.                                 mostDangerousAttack[1] = damage;
  66.                         }
  67.                 }
  68.         }
  69.        
  70.         damage = mostDangerousAttack[1] * (1 + (getStrength(leek) / 100));
  71.         damage = damage * (1 - (getRelativeShield() / 100));
  72.         damage = damage - getAbsoluteShield();
  73.         mostDangerousAttack[1] = round(damage);
  74.        
  75.         return mostDangerousAttack;
  76. }
  77.  
  78. /*
  79. Exemple d'utilisation :
  80. getMostDangerousAttack(getNearestEnemy());
  81. */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement