Advertisement
TheTintin

getDamageOnLeek

Oct 21st, 2015
178
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*
  2. Renvoi les dégâts minimum et maximum en prenant en compte le bouclier de la cible
  3.  
  4. Paramètres :
  5. weaponOrChip : Constante d'une arme ou d'une puce
  6. leek : Id du poireau auquel seront infligés les dégâts
  7.  
  8. Opérations : Presque 900
  9. Niveau : 38
  10.  
  11. Auteur : TheTintin
  12. */
  13.  
  14. function getDamageOnLeek (weaponOrChip, leek) {
  15.     var damage = [];
  16.     var effects;
  17.    
  18.     if (isWeapon(weaponOrChip)) {
  19.         effects = getWeaponEffects(weaponOrChip);
  20.     } else if (isChip(weaponOrChip)) {
  21.         effects = getChipEffects(weaponOrChip);
  22.     }
  23.    
  24.     for (var effect in effects) {
  25.         if (effect[0] == EFFECT_DAMAGE) {
  26.             push(damage, effect[1]);
  27.             push(damage, effect[2]);
  28.             break;
  29.         }
  30.     }
  31.    
  32.     if (isEmpty(damage)) {
  33.         return [0,0];
  34.     }
  35.    
  36.     for (var i = 0; i < count(damage); i++) {
  37.         damage[i] = damage[i] * (1 + (getStrength() / 100));
  38.         damage[i] = round(damage[i] * (1 - (getRelativeShield(leek) / 100)));
  39.         damage[i] = damage[i] - getAbsoluteShield(leek);
  40.         if (damage[i] < 0) {
  41.             damage[i] = 0;
  42.         }
  43.     }
  44.    
  45.     return damage;
  46. }
  47.  
  48. /*
  49. Exemple d'utilisation :
  50. var damageMin = getDamageOnLeek (CHIP_FLAME, getNearestEnemy() );
  51. */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement