浏览代码

Some WIP work on Archery, most noteably a damage boost per 50 skill lvl

nossr50 13 年之前
父节点
当前提交
e40e10da61
共有 2 个文件被更改,包括 17 次插入0 次删除
  1. 1 0
      Changelog.txt
  2. 16 0
      src/main/java/com/gmail/nossr50/Combat.java

+ 1 - 0
Changelog.txt

@@ -8,6 +8,7 @@ Key:
   - Removal
 
 Version 1.3.05-dev
+ + Added bonus damage to Archery, every 50 levels you gain 10% bonus damage
  + Added ExperienceAPI and PartyAPI classes for developer use
  = Fixed errors when Spout would disable itself after start-up
  = Fixed XP bar not updating when XP was gained

+ 16 - 0
src/main/java/com/gmail/nossr50/Combat.java

@@ -193,6 +193,22 @@ public class Combat {
             int damage = event.getDamage();
 
             if (mcPermissions.getInstance().archery(attacker) && damage > 0) {
+                
+                /*Archery needs a damage bonus to be viable in PVP*/
+                int skillLvl = Users.getProfile(attacker).getSkillLevel(SkillType.ARCHERY);
+                double dmgBonusPercent = ((skillLvl / 50) * 0.1D);
+                
+                /* Cap maximum bonus at 100% */
+                if(dmgBonusPercent > 2)
+                    dmgBonusPercent = 2;
+                
+                /* Every 100 skill levels Archery gains 20% damage bonus, set that here */
+                //TODO: Work in progress for balancing out Archery, will work on it more later...
+                //System.out.println("DEBUG 0: "+event.getDamage());
+                int archeryBonus = (int)(event.getDamage() * dmgBonusPercent);
+                event.setDamage(event.getDamage() + archeryBonus);
+                //System.out.println("DEBUG 1: "+event.getDamage());
+                
                 if (mcPermissions.getInstance().trackArrows(attacker)) {
                     Archery.trackArrows(pluginx, target, PPa);
                 }