浏览代码

This has to be Arrow to keep Potions from giving XP.

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

+ 1 - 0
Changelog.txt

@@ -9,6 +9,7 @@ Key:
 
 Version 1.3.09
  = Fixed issue with NoCheatPlus and Serrated Strikes / Skull Splitter (fight.noswing)
+ = Fixed bug where you could receive Archery XP from Potions
  ! Changed Spout settings to be in their own config file (spout.yml)
 
 Version 1.3.08

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

@@ -3,6 +3,7 @@ package com.gmail.nossr50.util;
 import org.bukkit.Material;
 import org.bukkit.entity.AnimalTamer;
 import org.bukkit.entity.Animals;
+import org.bukkit.entity.Arrow;
 import org.bukkit.entity.Entity;
 import org.bukkit.entity.EntityType;
 import org.bukkit.entity.IronGolem;
@@ -186,14 +187,14 @@ public class Combat {
                 }
             }
         }
-        else if (damager instanceof Projectile) {
-            if (!configInstance.getArcheryPVP() && ((Projectile) damager).getShooter().getType().equals(EntityType.PLAYER)) {
+        else if (damager instanceof Arrow) {
+            if (!configInstance.getArcheryPVP() && ((Arrow) damager).getShooter().getType().equals(EntityType.PLAYER)) {
                 if (targetIsPlayer || targetIsTamedPet) {
                     return;
                 }
             }
 
-            if (!configInstance.getArcheryPVE() && !((Projectile) damager).getShooter().getType().equals(EntityType.PLAYER)) {
+            if (!configInstance.getArcheryPVE() && !((Arrow) damager).getShooter().getType().equals(EntityType.PLAYER)) {
                 if (!targetIsPlayer || !targetIsTamedPet) {
                     return;
                 }