Esempio n. 1
0
 @Override
 public void onStart(BuffInfo info) {
   if (info.getEffected().isPlayer()
       && (getTicks() > 0)
       && (info.getSkill().getAbnormalType() == AbnormalType.HP_RECOVER)) {
     info.getEffected().sendPacket(new ExRegenMax(info.getAbnormalTime(), getTicks(), _power));
   }
 }
Esempio n. 2
0
  @Override
  public boolean onActionTime(BuffInfo info) {
    if (info.getEffected().isDead() || info.getEffected().isDoor()) {
      return false;
    }

    double hp = info.getEffected().getCurrentHp();
    final double maxhp = info.getEffected().getMaxRecoverableHp();

    // Not needed to set the HP and send update packet if player is already at max HP
    if (hp >= maxhp) {
      return false;
    }

    hp += _power * getTicksMultiplier();
    hp = Math.min(hp, maxhp);
    info.getEffected().setCurrentHp(hp);
    return info.getSkill().isToggle();
  }
Esempio n. 3
0
 @Override
 public boolean calcSuccess(BuffInfo info) {
   return Formulas.calcProbability(
       _chance, info.getEffector(), info.getEffected(), info.getSkill());
 }