2
0
Эх сурвалжийг харах

Adding Bats, Giants, Withers, and Wither Skeletons to the combat experience list.

Glitchfinder 12 жил өмнө
parent
commit
28b092a4e3

+ 4 - 0
src/main/java/com/gmail/nossr50/config/Config.java

@@ -438,6 +438,10 @@ public class Config extends ConfigLoader {
     public double getMagmaCubeXP() { return config.getDouble("Experience.Combat.Multiplier.Magma_Cube", 2.0); }
     public double getEnderDragonXP() { return config.getDouble("Experience.Combat.Multiplier.Ender_Dragon", 8.0); }
     public double getIronGolemXP() { return config.getDouble("Experience.Combat.Multiplier.Iron_Golem", 2.0); }
+    public double getGiantXP() { return config.getDouble("Experience.Combat.Multiplier.Giant", 2.0); }
+    public double getWitherXP() { return config.getDouble("Experience.Combat.Multiplier.Wither", 2.0); }
+    public double getWitherSkeletonXP() { return config.getDouble("Experience.Combat.Multiplier.Wither_Skeleton", 2.0); }
+    public double getWitchXP() { return config.getDouble("Experience.Combat.Multiplier.Witch", 2.0); }
 
     /* XP Formula Multiplier */
     public int getFormulaMultiplierCurve() { return config.getInt("Experience.Formula.Curve_Modifier", 20); }

+ 25 - 3
src/main/java/com/gmail/nossr50/util/Combat.java

@@ -10,6 +10,7 @@ import org.bukkit.entity.EntityType;
 import org.bukkit.entity.IronGolem;
 import org.bukkit.entity.LivingEntity;
 import org.bukkit.entity.Player;
+import org.bukkit.entity.Skeleton;
 import org.bukkit.entity.Tameable;
 import org.bukkit.entity.Wolf;
 import org.bukkit.event.entity.EntityDamageByEntityEvent;
@@ -406,6 +407,10 @@ public class Combat {
                 EntityType type = target.getType();
 
                 switch (type) {
+                case BAT:
+                    baseXP = configInstance.getAnimalsXP();
+                    break;
+
                 case BLAZE:
                     baseXP = configInstance.getBlazeXP();
                     break;
@@ -430,6 +435,10 @@ public class Combat {
                     baseXP = configInstance.getGhastXP();
                     break;
 
+                case GIANT:
+                    baseXP = configInstance.getGiantXP();
+                    break;
+
                 case MAGMA_CUBE:
                     baseXP = configInstance.getMagmaCubeXP();
                     break;
@@ -450,9 +459,14 @@ public class Combat {
                     break;
 
                 case SKELETON:
-                    baseXP = configInstance.getSkeletonXP();
-                    break;
-
+                    switch(((Skeleton) target).getSkeletonType()) {
+                    case WITHER:
+                        baseXP = configInstance.getWitherSkeletonXP();
+                        break;
+                    default:
+                        baseXP = configInstance.getSkeletonXP();
+                        break;
+                    }
                 case SLIME:
                     baseXP = configInstance.getSlimeXP();
                     break;
@@ -461,6 +475,14 @@ public class Combat {
                     baseXP = configInstance.getSpiderXP();
                     break;
 
+                case WITCH:
+                    baseXP = configInstance.getWitchXP();
+                    break;
+
+                case WITHER:
+                    baseXP = configInstance.getWitherXP();
+                    break;
+
                 case ZOMBIE:
                     baseXP = configInstance.getZombieXP();
                     break;

+ 4 - 0
src/main/resources/config.yml

@@ -323,6 +323,10 @@ Experience:
             Slime: 2.0
             Ghast: 3.0
             Iron_Golem: 2.0
+            Giant: 4.0
+            Wither: 7.0
+            Wither_Skeleton: 4.0
+            Witch: 4.0
 #
 #  Settings for commands
 ###