Advertisement
Guest User

delta op

a guest
Apr 24th, 2018
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*===========================================================
  2. =         Animate Damage per Second                         =
  3. ===========================================================*/
  4. function dpsAnim(time, key) {
  5.   let frame = time - Game.dpsAnimStart;
  6.   Game.dpsAnimStart = time;
  7.  
  8.   let item = Game.Ores[key];
  9.   let char = Game.Character;
  10.   let penetrate = item.armor / 100 * char.armorPen;
  11.   let damage = char.dps - (item.armor - penetrate);
  12.   let damagePerFrame = (damage / 1000) * frame;
  13.  
  14.   if(item.hp > 0 && damage > 0) {
  15.     item.hp -= damagePerFrame;
  16.  
  17.     let delta = item.hp - damagePerFrame;
  18.  
  19.     checkDifference();
  20.  
  21.     function checkDifference() {
  22.         if(delta <= 0) {
  23.             item.prog ++;
  24.             giveXp();
  25.             giveLoot(key);
  26.             oreProgressBar(key);
  27.  
  28.             save(`${key}Prog`, item.prog);
  29.             save(`${key}Rewarded`, item.rewarded);
  30.  
  31.             if(item.prog >= 10) {
  32.                 item.prog = 0;
  33.                 item.lv ++;
  34.             }
  35.    
  36.             let oreMaxHp = Math.floor(item.baseHp * Math.pow(item.hpPerLv, item.lv));
  37.  
  38.             item.hp = oreMaxHp - delta;
  39.             item.maxHp = oreMaxHp;
  40.             delta = item.hp;
  41.            
  42.             checkDifference();
  43.         }
  44.     }
  45.    
  46.     //generateResource(key, delta);
  47.     //popUpAnim(key);
  48.   }
  49.   else if(item.armor - penetrate >= char.dps || char.dps <= 0)
  50.     cancelAnimationFrame(Game.dpsAnimFrame);
  51.  
  52.   healthBar(key);
  53.  
  54.   save(`${key}Hp`, item.hp);
  55.  
  56.   cl(`dpsAnim(${key})`);
  57.  
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement