From 44626c36a9fa09e074d9795ec71f8fb99d9be31c Mon Sep 17 00:00:00 2001 From: GJ Date: Wed, 11 Sep 2013 11:33:49 -0400 Subject: [PATCH] Nerfed Archery damage to eliminate constant one-hit kills --- Changelog.txt | 1 + src/main/java/com/gmail/nossr50/config/AdvancedConfig.java | 1 + src/main/java/com/gmail/nossr50/skills/archery/Archery.java | 1 + .../java/com/gmail/nossr50/skills/archery/ArcheryManager.java | 2 +- src/main/resources/advanced.yml | 1 + 5 files changed, 5 insertions(+), 1 deletion(-) diff --git a/Changelog.txt b/Changelog.txt index dfa24c20e..aac993672 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -32,6 +32,7 @@ Version 1.4.07-dev = Fixed a bug where teleport location was never reset if warmup was set to 0 for "Chimaera Wing". = Fixed a bug where the "Dodge" DamageModifier wasn't being read from advanced.yml = Fixed a bug where squid were not awarding XP. + ! Nerfed Archery damage to eliminate constant one-hit kills. ! Changed the way Repair hands out XP, also added config options to control Repair XP ! Changed Swords "Counter Attack" ability from passive to active. Blocking is required to activate. ! Hardcore mode can now be toggled for each skill individually diff --git a/src/main/java/com/gmail/nossr50/config/AdvancedConfig.java b/src/main/java/com/gmail/nossr50/config/AdvancedConfig.java index c5c4aeffd..23b60d9f0 100644 --- a/src/main/java/com/gmail/nossr50/config/AdvancedConfig.java +++ b/src/main/java/com/gmail/nossr50/config/AdvancedConfig.java @@ -807,6 +807,7 @@ public class AdvancedConfig extends AutoUpdateConfigLoader { public int getSkillShotIncreaseLevel() { return config.getInt("Skills.Archery.SkillShot_IncreaseLevel", 50); } public double getSkillShotIncreasePercentage() { return config.getDouble("Skills.Archery.SkillShot_IncreasePercentage", 0.1D); } public double getSkillShotBonusMax() { return config.getDouble("Skills.Archery.SkillShot_MaxBonus", 2.0D); } + public double getSkillShotDamageMax() { return config.getDouble("Skills.Archery.SkillShot_MaxDamage", 9.0D); } public double getDazeBonusMax() { return config.getDouble("Skills.Archery.Daze_MaxChance", 50.0D); } public int getDazeMaxBonusLevel() { return config.getInt("Skills.Archery.Daze_MaxBonusLevel", 1000); } diff --git a/src/main/java/com/gmail/nossr50/skills/archery/Archery.java b/src/main/java/com/gmail/nossr50/skills/archery/Archery.java index b6bf682c7..e335cd80c 100644 --- a/src/main/java/com/gmail/nossr50/skills/archery/Archery.java +++ b/src/main/java/com/gmail/nossr50/skills/archery/Archery.java @@ -22,6 +22,7 @@ public class Archery { public static int skillShotIncreaseLevel = AdvancedConfig.getInstance().getSkillShotIncreaseLevel(); public static double skillShotIncreasePercentage = AdvancedConfig.getInstance().getSkillShotIncreasePercentage(); public static double skillShotMaxBonusPercentage = AdvancedConfig.getInstance().getSkillShotBonusMax(); + public static double skillShotMaxBonusDamage = AdvancedConfig.getInstance().getSkillShotDamageMax(); public static int dazeMaxBonusLevel = AdvancedConfig.getInstance().getDazeMaxBonusLevel(); public static int dazeModifier = AdvancedConfig.getInstance().getDazeModifier(); diff --git a/src/main/java/com/gmail/nossr50/skills/archery/ArcheryManager.java b/src/main/java/com/gmail/nossr50/skills/archery/ArcheryManager.java index 86335591e..04147ef0a 100644 --- a/src/main/java/com/gmail/nossr50/skills/archery/ArcheryManager.java +++ b/src/main/java/com/gmail/nossr50/skills/archery/ArcheryManager.java @@ -102,7 +102,7 @@ public class ArcheryManager extends SkillManager { */ public void skillShot(LivingEntity target, double damage, Arrow arrow) { double damageBonusPercent = Math.min(((getSkillLevel() / Archery.skillShotIncreaseLevel) * Archery.skillShotIncreasePercentage), Archery.skillShotMaxBonusPercentage); - double archeryBonus = (damage * damageBonusPercent) - damage; + double archeryBonus = Math.min(damage * damageBonusPercent, Archery.skillShotMaxBonusDamage); CombatUtils.dealDamage(target, archeryBonus, DamageCause.PROJECTILE, arrow, mcMMOPlayer, SkillType.ARCHERY); } diff --git a/src/main/resources/advanced.yml b/src/main/resources/advanced.yml index d753cc9e7..0bf61eeb3 100644 --- a/src/main/resources/advanced.yml +++ b/src/main/resources/advanced.yml @@ -58,6 +58,7 @@ Skills: SkillShot_IncreaseLevel: 50 SkillShot_IncreasePercentage: 0.1 SkillShot_MaxBonus: 2.0 + SkillShot_MaxDamage: 9.0 # Daze_MaxChance: Maximum chance of causing daze to opponents # Daze_MaxBonusLevel: Maximum bonus level of Daze, when a player reaches this level his chance of causing a daze will be "Daze_MaxChance"