|
@@ -7,8 +7,6 @@ import com.gmail.nossr50.datatypes.meta.OldName;
|
|
|
import com.gmail.nossr50.datatypes.player.McMMOPlayer;
|
|
|
import com.gmail.nossr50.datatypes.skills.PrimarySkillType;
|
|
|
import com.gmail.nossr50.datatypes.skills.SubSkillType;
|
|
|
-import com.gmail.nossr50.events.fake.FakeEntityDamageByEntityEvent;
|
|
|
-import com.gmail.nossr50.events.fake.FakeEntityDamageEvent;
|
|
|
import com.gmail.nossr50.mcMMO;
|
|
|
import com.gmail.nossr50.metadata.MobMetaFlagType;
|
|
|
import com.gmail.nossr50.metadata.MobMetadataService;
|
|
@@ -30,7 +28,6 @@ import org.bukkit.attribute.Attribute;
|
|
|
import org.bukkit.attribute.AttributeInstance;
|
|
|
import org.bukkit.entity.*;
|
|
|
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
|
|
-import org.bukkit.event.entity.EntityDamageEvent;
|
|
|
import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
|
|
|
import org.bukkit.inventory.ItemStack;
|
|
|
import org.bukkit.metadata.MetadataValue;
|
|
@@ -624,7 +621,6 @@ public final class CombatUtils {
|
|
|
* @param target LivingEntity which to attempt to damage
|
|
|
* @param damage Amount of damage to attempt to do
|
|
|
*/
|
|
|
- @Deprecated
|
|
|
public static void dealDamage(@NotNull LivingEntity target, double damage) {
|
|
|
dealDamage(target, damage, DamageCause.CUSTOM, null);
|
|
|
}
|
|
@@ -669,10 +665,15 @@ public final class CombatUtils {
|
|
|
if (target.isDead()) {
|
|
|
return;
|
|
|
}
|
|
|
-
|
|
|
- if(canDamage(attacker, target, cause, damage)) {
|
|
|
+ try {
|
|
|
+ // TODO: Check for Spigot API for DamageSource, if DamageSource is found then send out a damage() with a custom damage source
|
|
|
applyIgnoreDamageMetadata(target);
|
|
|
- target.damage(damage);
|
|
|
+ if (attacker != null) {
|
|
|
+ target.damage(damage, attacker);
|
|
|
+ } else {
|
|
|
+ target.damage(damage);
|
|
|
+ }
|
|
|
+ } finally {
|
|
|
removeIgnoreDamageMetadata(target);
|
|
|
}
|
|
|
}
|
|
@@ -955,19 +956,6 @@ public final class CombatUtils {
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
- public static boolean canDamage(@Nullable Entity attacker, @NotNull Entity target, @NotNull DamageCause damageCause, double damage) {
|
|
|
- EntityDamageEvent damageEvent;
|
|
|
- if (attacker != null) {
|
|
|
- damageEvent = new FakeEntityDamageByEntityEvent(attacker, target, damageCause, damage);
|
|
|
- } else {
|
|
|
- damageEvent = new FakeEntityDamageEvent(target, damageCause, damage);
|
|
|
- }
|
|
|
-
|
|
|
- mcMMO.p.getServer().getPluginManager().callEvent(damageEvent);
|
|
|
-
|
|
|
- return !damageEvent.isCancelled();
|
|
|
- }
|
|
|
-
|
|
|
/**
|
|
|
* Get the upgrade tier of the item in hand.
|
|
|
*
|