From 727309a706fe7dbcbdc20a8aa194463174279973 Mon Sep 17 00:00:00 2001 From: FatBoy-DOTC Date: Sun, 29 Jan 2023 15:10:37 -0600 Subject: [PATCH] finalized cleanup --- src/engine/objects/Item.java | 55 ------------------- src/engine/objects/Resists.java | 11 ++-- .../ArmorPiercingEffectModifier.java | 11 ++-- 3 files changed, 11 insertions(+), 66 deletions(-) diff --git a/src/engine/objects/Item.java b/src/engine/objects/Item.java index d3cc5a46..52d206bc 100644 --- a/src/engine/objects/Item.java +++ b/src/engine/objects/Item.java @@ -319,61 +319,6 @@ public class Item extends AbstractWorldObject { public short getDurabilityMax() { return durabilityMax; } - public float getArmorPiercing(){ - float val = 0; - for(String eff : this.effectNames){ - switch(eff) - { - case"PRE-001": - val += -0.20f; - break; - case"PRE-002": - val += -0.10f; - break; - case"PRE-003": - val += 0.020f; - break; - case"PRE-004": - val += 0.040f; - break; - case"PRE-005": - val += 0.060f; - break; - case"PRE-006": - val += 0.080f; - break; - case"PRE-007": - val += 0.10f; - break; - case"PRE-008": - val += 0.12f; - break; - case"PRE-009": - val += 0.14f; - break; - case"PRE-010": - val += 0.15f; - break; - case"PRE-311": - val += 0.20f; - break; - case"SUF-008": - val += 0.05f; - break; - case"SUF-009": - val += 0.10f; - break; - case"SUF-010": - val += 0.15f; - break; - case"SUF-301": - val += 0.20f; - break; - } - } - return val; - } - public void setDurabilityCurrent(short value) { this.durabilityCurrent = value; } diff --git a/src/engine/objects/Resists.java b/src/engine/objects/Resists.java index f9f7ddc9..c084f5c6 100644 --- a/src/engine/objects/Resists.java +++ b/src/engine/objects/Resists.java @@ -16,11 +16,13 @@ import engine.Enum.SourceType; import engine.gameManager.ChatManager; import engine.gameManager.DbManager; import engine.powers.EffectsBase; +import engine.powers.effectmodifiers.ArmorPiercingEffectModifier; import engine.server.MBServerStatics; import org.pmw.tinylog.Logger; import java.sql.ResultSet; import java.sql.SQLException; +import java.util.ArrayList; import java.util.HashSet; import java.util.Iterator; import java.util.concurrent.ConcurrentHashMap; @@ -305,13 +307,10 @@ public class Resists { public float getResistedDamage(AbstractCharacter source, AbstractCharacter target, DamageType type, float damage, int trains) { //handle fortitudes damage = handleFortitude(target, type, damage); + //calculate armor piercing + float ap = source.getBonuses().getFloatPercentAll(ModType.ArmorPiercing,SourceType.None); + float damageAfterResists = damage * (1 - (this.getResist(type, trains) * 0.01f) + ap); //check to see if any damage absorbers should cancel - float apMod = 0; - - if(source.getCharItemManager().getEquipped(2) != null) { - apMod = source.getCharItemManager().getEquipped(2).getArmorPiercing(); // need to get the item in players off-hand and check for armor piercing enchants - } - float damageAfterResists = damage * (1 - (this.getResist(type, trains) / 100) + apMod); if (target != null) { //debug damage shields if any found if (source.getDebug(2) && source.getObjectType().equals(Enum.GameObjectType.PlayerCharacter)) { diff --git a/src/engine/powers/effectmodifiers/ArmorPiercingEffectModifier.java b/src/engine/powers/effectmodifiers/ArmorPiercingEffectModifier.java index 29ee21fe..19feb4fd 100644 --- a/src/engine/powers/effectmodifiers/ArmorPiercingEffectModifier.java +++ b/src/engine/powers/effectmodifiers/ArmorPiercingEffectModifier.java @@ -10,10 +10,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; -import engine.objects.AbstractCharacter; -import engine.objects.AbstractWorldObject; -import engine.objects.Building; -import engine.objects.Item; +import engine.objects.*; import java.sql.ResultSet; import java.sql.SQLException; @@ -32,7 +29,11 @@ public class ArmorPiercingEffectModifier extends AbstractEffectModifier { @Override public void applyBonus(AbstractCharacter ac, int trains) { - + Float amount = 0f; + PlayerBonuses bonus = ac.getBonuses(); + //for to testing: + amount = this.percentMod; + bonus.addFloat(this, amount * 0.01f); } @Override