Skip to content

Commit

Permalink
Don't apply attack power modification if the damage being done is ski…
Browse files Browse the repository at this point in the history
…ll damage. Let Fabled take care of *when* attacks can happen
  • Loading branch information
Travja committed Jan 26, 2025
1 parent 4991b92 commit ebde85c
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package studio.magemonkey.divinity.hooks.external;

import org.bukkit.Bukkit;
import org.bukkit.Material;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
Expand Down Expand Up @@ -163,6 +164,14 @@ public boolean ignoreDivinity(LivingEntity player) {
return divinityIgnored.contains(player.getUniqueId());
}

public boolean isSkillDamage() {
if (!Bukkit.getPluginManager().isPluginEnabled("Fabled")) {
return false;
}

return Skill.isSkillDamage();
}

public void addSkill(Player player, String skillId, int level) {
PlayerData playerData = Fabled.getData(player);
Skill skill = Fabled.getSkill(skillId);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,8 @@
import studio.magemonkey.divinity.api.PartyAPI;
import studio.magemonkey.divinity.api.event.DivinityDamageEvent;
import studio.magemonkey.divinity.config.EngineCfg;
import studio.magemonkey.divinity.hooks.EHook;
import studio.magemonkey.divinity.hooks.external.FabledHook;
import studio.magemonkey.divinity.hooks.external.mythicmobs.AbstractMythicMobsHK;
import studio.magemonkey.divinity.manager.effects.main.AdjustStatEffect;
import studio.magemonkey.divinity.manager.effects.main.DisarmEffect;
Expand Down Expand Up @@ -217,6 +219,11 @@ public void onDamageRPGStart(@NotNull DivinityDamageEvent.Start e) {
double powerMod = metadata == null || metadata.isEmpty()
? (statsDamager != null ? statsDamager.getAttackPowerModifier() : 1D)
: metadata.get(0).asInt();
FabledHook skillApi = (FabledHook) Divinity.getInstance().getHook(EHook.SKILL_API);
if (skillApi != null && skillApi.isSkillDamage() && damager != null && !skillApi.ignoreDivinity(damager)) {
powerMod = 1;
}

double directMod = meta.getDirectModifier();
double critMod = meta.getCriticalModifier();
double blockMod = meta.getBlockModifier();
Expand Down

0 comments on commit ebde85c

Please sign in to comment.