Browse Source

fix trickshot not applying potion effects or custom effects

nossr50 3 weeks ago
parent
commit
8c89462b0a

+ 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();