소스 검색

fix trickshot not applying potion effects or custom effects

nossr50 3 주 전
부모
커밋
8c89462b0a
2개의 변경된 파일11개의 추가작업 그리고 0개의 파일을 삭제
  1. 1 0
      Changelog.txt
  2. 10 0
      src/main/java/com/gmail/nossr50/skills/crossbows/CrossbowsManager.java

+ 1 - 0
Changelog.txt

@@ -2,6 +2,7 @@ Version 2.2.036
     Fixed a bug where Chimaera Wing could cause an exception when used
     Fixed bug where Mob Spawners could drop in Blast Mining (thanks TomBock)
     Fixed Spectral Arrows not granting XP for Archery or Crossbows (thanks broccolai)
+    Fixed bug where Trickshot arrows would lose their potion or custom effects
     Added locale strings for /mcmmo help command (thanks Griffeng)
 
 Version 2.2.035

+ 10 - 0
src/main/java/com/gmail/nossr50/skills/crossbows/CrossbowsManager.java

@@ -74,6 +74,16 @@ public class CrossbowsManager extends SkillManager {
         spawnedArrow.setPickupStatus(originalArrow.getPickupStatus());
         spawnedArrow.setKnockbackStrength(originalArrow.getKnockbackStrength());
 
+        if (originalArrow.getBasePotionType() != null) {
+            spawnedArrow.setBasePotionType(originalArrow.getBasePotionType());
+        }
+
+        if (originalArrow.hasCustomEffects()) {
+            for (var effect : originalArrow.getCustomEffects()) {
+                spawnedArrow.addCustomEffect(effect, true);
+            }
+        }
+
         // copy metadata from old arrow
         ProjectileUtils.copyArrowMetadata(pluginRef, originalArrow, spawnedArrow);
         originalArrow.remove();