@Override public String getDescription(Hero hero) { String description = getDescription(); // COOLDOWN int cooldown = (SkillConfigManager.getUseSetting(hero, this, SkillSetting.COOLDOWN.node(), 0, false) - SkillConfigManager.getUseSetting( hero, this, SkillSetting.COOLDOWN_REDUCE.node(), 0, false) * hero.getSkillLevel(this)) / 1000; if (cooldown > 0) { description += " CD:" + cooldown + "s"; } // MANA int mana = SkillConfigManager.getUseSetting(hero, this, SkillSetting.MANA.node(), 10, false) - (SkillConfigManager.getUseSetting( hero, this, SkillSetting.MANA_REDUCE.node(), 0, false) * hero.getSkillLevel(this)); if (mana > 0) { description += " M:" + mana; } // HEALTH_COST int healthCost = SkillConfigManager.getUseSetting(hero, this, SkillSetting.HEALTH_COST, 0, false) - (SkillConfigManager.getUseSetting( hero, this, SkillSetting.HEALTH_COST_REDUCE, mana, true) * hero.getSkillLevel(this)); if (healthCost > 0) { description += " HP:" + healthCost; } // STAMINA int staminaCost = SkillConfigManager.getUseSetting(hero, this, SkillSetting.STAMINA.node(), 0, false) - (SkillConfigManager.getUseSetting( hero, this, SkillSetting.STAMINA_REDUCE.node(), 0, false) * hero.getSkillLevel(this)); if (staminaCost > 0) { description += " FP:" + staminaCost; } // DELAY int delay = SkillConfigManager.getUseSetting(hero, this, SkillSetting.DELAY.node(), 0, false) / 1000; if (delay > 0) { description += " W:" + delay + "s"; } // EXP int exp = SkillConfigManager.getUseSetting(hero, this, SkillSetting.EXP.node(), 0, false); if (exp > 0) { description += " XP:" + exp; } return description; }
@Override public String getDescription(Hero hero) { long stunDuration = (long) SkillConfigManager.getUseSetting(hero, this, "stun-duration", 10000, false); if (stunDuration > 0) { stunDuration = (long) (stunDuration + (SkillConfigManager.getUseSetting( hero, this, "duration-increase", 0.0, false) * hero.getSkillLevel(this))) / 1000; stunDuration = stunDuration > 0 ? stunDuration : 0; } long slowDuration = (long) SkillConfigManager.getUseSetting(hero, this, "slow-duration", 0, false); if (slowDuration > 0) { slowDuration = (long) (slowDuration + (SkillConfigManager.getUseSetting( hero, this, "duration-increase", 0.0, false) * hero.getSkillLevel(this))) / 1000; slowDuration = slowDuration > 0 ? slowDuration : 0; } long rootDuration = (long) SkillConfigManager.getUseSetting(hero, this, "root-duration", 0, false); if (rootDuration > 0) { rootDuration = (long) (rootDuration + (SkillConfigManager.getUseSetting( hero, this, "duration-increase", 0.0, false) * hero.getSkillLevel(this))) / 1000; rootDuration = rootDuration > 0 ? rootDuration : 0; } long silenceDuration = (long) SkillConfigManager.getUseSetting(hero, this, "silence-duration", 0, false); if (silenceDuration > 0) { silenceDuration = (long) (silenceDuration + (SkillConfigManager.getUseSetting( hero, this, "duration-increase", 0.0, false) * hero.getSkillLevel(this))) / 1000; silenceDuration = silenceDuration > 0 ? silenceDuration : 0; } long invulnDuration = (long) SkillConfigManager.getUseSetting(hero, this, "invuln-duration", 0, false); if (invulnDuration > 0) { invulnDuration = (long) (invulnDuration + (SkillConfigManager.getUseSetting( hero, this, "duration-increase", 0.0, false) * hero.getSkillLevel(this))) / 1000; invulnDuration = invulnDuration > 0 ? invulnDuration : 0; } int damage = (int) (SkillConfigManager.getUseSetting(hero, this, SkillSetting.DAMAGE.node(), 0, false) + (SkillConfigManager.getUseSetting(hero, this, "damage-increase", 0.0, false) * hero.getSkillLevel(this))); damage = damage > 0 ? damage : 0; int radius = (int) (SkillConfigManager.getUseSetting(hero, this, SkillSetting.RADIUS.node(), 2, false) + (SkillConfigManager.getUseSetting( hero, this, SkillSetting.RADIUS_INCREASE.node(), 0.0, false) * hero.getSkillLevel(this))); radius = radius > 0 ? radius : 0; int distance = (int) (SkillConfigManager.getUseSetting( hero, this, SkillSetting.MAX_DISTANCE.node(), 15, false) + (SkillConfigManager.getUseSetting( hero, this, SkillSetting.MAX_DISTANCE_INCREASE.node(), 0.0, false) * hero.getSkillLevel(this))); distance = distance > 0 ? distance : 0; String description = getDescription() .replace("$1", damage + "") .replace("$2", radius + "") .replace("$3", distance + ""); if (stunDuration > 0) { description += " Stun:" + stunDuration + "s"; } if (slowDuration > 0) { description += " Slow:" + slowDuration + "s"; } if (rootDuration > 0) { description += " Root:" + rootDuration + "s"; } if (silenceDuration > 0) { description += " Silence:" + silenceDuration + "s"; } if (invulnDuration > 0) { description += " Invuln:" + invulnDuration + "s"; } // COOLDOWN int cooldown = (SkillConfigManager.getUseSetting(hero, this, SkillSetting.COOLDOWN.node(), 0, false) - SkillConfigManager.getUseSetting( hero, this, SkillSetting.COOLDOWN_REDUCE.node(), 0, false) * hero.getSkillLevel(this)) / 1000; if (cooldown > 0) { description += " CD:" + cooldown + "s"; } // MANA int mana = SkillConfigManager.getUseSetting(hero, this, SkillSetting.MANA.node(), 10, false) - (SkillConfigManager.getUseSetting( hero, this, SkillSetting.MANA_REDUCE.node(), 0, false) * hero.getSkillLevel(this)); if (mana > 0) { description += " M:" + mana; } // HEALTH_COST int healthCost = SkillConfigManager.getUseSetting(hero, this, SkillSetting.HEALTH_COST, 0, false) - (SkillConfigManager.getUseSetting( hero, this, SkillSetting.HEALTH_COST_REDUCE, mana, true) * hero.getSkillLevel(this)); if (healthCost > 0) { description += " HP:" + healthCost; } // STAMINA int staminaCost = SkillConfigManager.getUseSetting(hero, this, SkillSetting.STAMINA.node(), 0, false) - (SkillConfigManager.getUseSetting( hero, this, SkillSetting.STAMINA_REDUCE.node(), 0, false) * hero.getSkillLevel(this)); if (staminaCost > 0) { description += " FP:" + staminaCost; } // DELAY int delay = SkillConfigManager.getUseSetting(hero, this, SkillSetting.DELAY.node(), 0, false) / 1000; if (delay > 0) { description += " W:" + delay + "s"; } // EXP int exp = SkillConfigManager.getUseSetting(hero, this, SkillSetting.EXP.node(), 0, false); if (exp > 0) { description += " XP:" + exp; } return description; }