Mythic Artifacts not Working Properly
Summary
Since 1.13.2 I've been using MythicArtifacts plugin and It has been Amazing, in the new version 1.16.1 Durability Feature is not working fine.
Artifact Version: 0.1.30-SNAPSHOT
Mythic Mobs Version: 4.10.1
Spigot Version: 1.16.1 R0.1-SNAPSHOT
Problem
Durability feature is not working at all, Java error pops on console when I throw an spell with an artifact
[20:29:41] [Server thread/ERROR]: Could not pass event EntityDamageByEntityEvent to MythicArtifacts v0.1.30-SNAPSHOT
org.bukkit.event.EventException: null
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:319) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:589) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:576) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
at org.bukkit.craftbukkit.v1_16_R1.event.CraftEventFactory.callEvent(CraftEventFactory.java:246) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
at org.bukkit.craftbukkit.v1_16_R1.event.CraftEventFactory.callEntityDamageEvent(CraftEventFactory.java:959) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
at org.bukkit.craftbukkit.v1_16_R1.event.CraftEventFactory.handleEntityDamageEvent(CraftEventFactory.java:846) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
at org.bukkit.craftbukkit.v1_16_R1.event.CraftEventFactory.handleEntityDamageEvent(CraftEventFactory.java:802) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
at org.bukkit.craftbukkit.v1_16_R1.event.CraftEventFactory.handleLivingEntityDamageEvent(CraftEventFactory.java:991) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
at net.minecraft.server.v1_16_R1.EntityLiving.damageEntity0(EntityLiving.java:1753) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
at net.minecraft.server.v1_16_R1.EntityLiving.damageEntity(EntityLiving.java:1138) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
at net.minecraft.server.v1_16_R1.EntityMonster.damageEntity(SourceFile:72) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
at org.bukkit.craftbukkit.v1_16_R1.entity.CraftLivingEntity.damage(CraftLivingEntity.java:262) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
at io.lumine.xikage.mythicmobs.adapters.bukkit.BukkitSkillAdapter.doDamage(BukkitSkillAdapter.java:104) ~[?:?]
at io.lumine.xikage.mythicmobs.skills.damage.DamagingMechanic.doDamage(DamagingMechanic.java:38) ~[?:?]
at io.lumine.xikage.mythicmobs.skills.mechanics.DamageMechanic.castAtEntity(DamageMechanic.java:36) ~[?:?]
at io.lumine.xikage.mythicmobs.skills.SkillMechanic.lambda$executeTargetedEntitySkill$5(SkillMechanic.java:448) ~[?:?]
at java.lang.Iterable.forEach(Iterable.java:75) ~[?:1.8.0_262]
at io.lumine.xikage.mythicmobs.skills.SkillMechanic.executeTargetedEntitySkill(SkillMechanic.java:444) ~[?:?]
at io.lumine.xikage.mythicmobs.skills.SkillMechanic.executeSkills(SkillMechanic.java:397) ~[?:?]
at io.lumine.xikage.mythicmobs.skills.SkillMechanic.execute(SkillMechanic.java:323) ~[?:?]
at io.lumine.xikage.mythicmobs.skills.Skill.execute(Skill.java:270) ~[?:?]
at io.lumine.xikage.mythicmobs.skills.Skill.execute(Skill.java:245) ~[?:?]
at io.lumine.xikage.mythicmobs.skills.mechanics.ProjectileMechanic$ProjectileMechanicTracker.doHit(ProjectileMechanic.java:309) ~[?:?]
at io.lumine.xikage.mythicmobs.skills.mechanics.ProjectileMechanic$ProjectileMechanicTracker.projectileTick(ProjectileMechanic.java:293) ~[?:?]
at io.lumine.xikage.mythicmobs.skills.projectiles.Projectile$ProjectileTracker.run(Projectile.java:384) ~[?:?]
at io.lumine.xikage.mythicmobs.utils.Delegates$RunnableToConsumer.accept(Delegates.java:93) ~[?:?]
at io.lumine.xikage.mythicmobs.utils.Schedulers$LumineTask.run(Schedulers.java:162) ~[?:?]
at org.bukkit.craftbukkit.v1_16_R1.scheduler.CraftTask.run(CraftTask.java:81) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
at org.bukkit.craftbukkit.v1_16_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:400) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
at net.minecraft.server.v1_16_R1.MinecraftServer.b(MinecraftServer.java:1061) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
at net.minecraft.server.v1_16_R1.DedicatedServer.b(DedicatedServer.java:354) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
at net.minecraft.server.v1_16_R1.MinecraftServer.a(MinecraftServer.java:1009) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
at net.minecraft.server.v1_16_R1.MinecraftServer.v(MinecraftServer.java:848) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
at net.minecraft.server.v1_16_R1.MinecraftServer.lambda$0(MinecraftServer.java:164) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_262]
Caused by: java.lang.NoSuchMethodError: org.bukkit.inventory.meta.ItemMeta.spigot()Lorg/bukkit/inventory/meta/ItemMeta$Spigot;
at io.lumine.artifacts.items.DurabilityManager.tickDurability(DurabilityManager.java:56) ~[?:?]
at io.lumine.artifacts.items.DurabilityManager.handleDurabilityHand(DurabilityManager.java:24) ~[?:?]
at io.lumine.artifacts.items.ItemManager.EntityDamageEvent(ItemManager.java:344) ~[?:?]
at sun.reflect.GeneratedMethodAccessor288.invoke(Unknown Source) ~[?:?]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_262]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_262]
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:315) ~[server.jar:git-Spigot-9639cf7-4b9bc9d]
... 35 more
Steps to reproduce
- Make your own Item with the argument
Lore:
- "&7Durability 50 / 50"
Example:
ChaosStaff:
Id: DIAMOND_HOE
Display: '✦ &5&lChaos Staff &r✦'
Lore:
- 'Destroy your enemy'
- "&7Durability 50 / 50
- "&7Ammunition 6 / 6"
- '&7Uses: &eElementium'
Ammo:
Enabled: TRUE
Bullet: Elementium
ClipSize: 6
AmmoPerItem: 1
Skills:
- skill{s=ElementiumReload} ~onSwing
- skill{s=ChaosBolt} ~onUse
Enchantments:
- KNOCKBACK:1
Hide:
- ATTRIBUTES
- ENCHANTS
- add a skill that does damage
Example:
ChaosBolt:
Cooldown: 4
Skills:
- message{msg="&b&o<mob.name> is Casting a Spell."} @PIR{r=15}
- potion{type=SLOW;duration=60;level=4}
- sound{s=entity.guardian.attack;p=0.8;v=2.0}
- effect:particles{particle=spell_witch;amount=50;hS=1;vS=1;speed=0;repeat=2;repeatInterval=10}
- effect:particles{particle=crit_magic;amount=20;hS=1;vS=1;speed=0;repeat=2;repeatInterval=10}
- sound{s=entity.guardian.hurt;p=0.1;v=2.0;repeat=2;repeatInterval=10}
- delay 40
- sound{s=entity.wither.shoot;p=0.5;v=0.7}
- missile{onTick=ChaosBoltTick;onHit=ChaosBoltHit;v=15;i=1;hR=1;vR=1;mr=30;hnp=true;hp=true} @target
ChaosBoltTick:
Skills:
- effect:particles{p=spell_witch;amount=5;speed=0.04;hR=0.1;vR=0.1} @origin
- delay 2
- effect:particles{p=crit_magic;amount=4;speed=0.04;hR=0.1;vR=0.1} @origin
ChaosBoltHit:
Skills:
- effect:lightning{l=true;lr=40}
- sound{s=entity.lightning_bolt.impact;p=1.5;v=2.0}
- sound{s=entity.lightning_bolt.thunder;p=1.5;v=2.0}
- damage{amount=10.5;ignoreArmor=true}
- damage{amount=100;ignoreArmor=true} @EntitiesNearOrigin{r=5;ignore=players}
- effect:particles{p=spell_witch;amount=40;hSpread=1.5;ySpread=1.5;speed=0;yOFfset=0.3} @target
- sound{s=entity.elder_guardian.curse;p=0.5} @target
Current behavior
Not working at all, the durability number doesn't move whatsoever
Proposed Behaviour
The plugin should be able to lower durability By: hitting melee with the item, by doing damage with an skill casted by the item, while the item is in hand and when not.