From e2ec8eb8a6912412d7306693d237b99ebb623470 Mon Sep 17 00:00:00 2001 From: MagicBot Date: Mon, 26 Oct 2026 04:40:43 -0400 Subject: [PATCH] Build effect modifiers from Effects.cfg Each EffectsBase builds its modifiers from its EffectTemplate MODS lines, with ramps from the CompoundCurve helper. The Value mods now fill Item.enchantValues, replacing LOAD_ENCHANT_VALUES. The ItemName skip list of DB row IDs is gone; it only hid Centurion's and Imperturbable from ./makeitem. Value changes (cfg wins): weapon power X effects lose the DB-only OCV mod; PRE-210A..237A resists and SUF-153A..171A resists (doubled); Speed on SPRINT, SNT-010A, BHN-001A, HNT/RNG-037A, BRD-016A, PRS-031A, and RNG-049A loses Speed; ARM-058A Necromancy +1; TMP-040A, WLR-018A; PARRY/CRU-032A gain their Parry line. RESTORE's damage type is NONE (cfg typo, as the client reads it). Co-Authored-By: Claude Opus 5.5 --- src/engine/gameManager/PowersManager.java | 4 - src/engine/powers/EffectsBase.java | 225 +++++++++++++++++- .../AbstractEffectModifier.java | 35 +++ .../AdjustAboveDmgCapEffectModifier.java | 5 + .../AmbidexterityEffectModifier.java | 5 + .../ArmorPiercingEffectModifier.java | 5 + .../AttackDelayEffectModifier.java | 5 + .../AttributeEffectModifier.java | 5 + .../BlackMantleEffectModifier.java | 5 + .../BladeTrailsEffectModifier.java | 5 + .../effectmodifiers/BlockEffectModifier.java | 5 + .../BlockedPowerTypeEffectModifier.java | 5 + .../CannotAttackEffectModifier.java | 5 + .../CannotCastEffectModifier.java | 5 + .../CannotMoveEffectModifier.java | 5 + .../CannotTrackEffectModifier.java | 5 + .../CharmedEffectModifier.java | 5 + ...onstrainedAmbidexterityEffectModifier.java | 5 + .../effectmodifiers/DCVEffectModifier.java | 5 + .../effectmodifiers/DREffectModifier.java | 5 + .../DamageCapEffectModifier.java | 5 + .../DamageShieldEffectModifier.java | 5 + .../effectmodifiers/DodgeEffectModifier.java | 5 + .../DurabilityEffectModifier.java | 5 + .../ExclusiveDamageCapEffectModifier.java | 5 + .../effectmodifiers/FadeEffectModifier.java | 5 + .../effectmodifiers/FlyEffectModifier.java | 5 + .../effectmodifiers/HealthEffectModifier.java | 6 + .../HealthFullEffectModifier.java | 5 + .../HealthRecoverRateEffectModifier.java | 5 + .../IgnoreDamageCapEffectModifier.java | 5 + .../IgnorePassiveDefenseEffectModifier.java | 5 + .../ImmuneToAttackEffectModifier.java | 5 + .../ImmuneToEffectModifier.java | 5 + .../ImmuneToPowersEffectModifier.java | 5 + .../InvisibleEffectModifier.java | 5 + .../ItemNameEffectModifier.java | 10 + .../effectmodifiers/ManaEffectModifier.java | 6 + .../ManaFullEffectModifier.java | 5 + .../ManaRecoverRateEffectModifier.java | 5 + .../MaxDamageEffectModifier.java | 5 + .../MeleeDamageEffectModifier.java | 5 + .../MinDamageEffectModifier.java | 5 + .../effectmodifiers/NoModEffectModifier.java | 5 + .../effectmodifiers/OCVEffectModifier.java | 5 + .../effectmodifiers/ParryEffectModifier.java | 5 + .../PassiveDefenseEffectModifier.java | 5 + .../PowerCostEffectModifier.java | 5 + .../PowerCostHealthEffectModifier.java | 5 + .../PowerDamageEffectModifier.java | 5 + .../ProtectionFromEffectModifier.java | 5 + .../ResistanceEffectModifier.java | 5 + .../ScaleHeightEffectModifier.java | 5 + .../ScaleWidthEffectModifier.java | 5 + .../ScanRangeEffectModifier.java | 5 + .../SeeInvisibleEffectModifier.java | 5 + .../SilencedEffectModifier.java | 5 + .../effectmodifiers/SkillEffectModifier.java | 5 + .../effectmodifiers/SlayEffectModifier.java | 5 + .../effectmodifiers/SpeedEffectModifier.java | 5 + .../SpireBlockEffectModifier.java | 5 + .../StaminaEffectModifier.java | 6 + .../StaminaFullEffectModifier.java | 5 + .../StaminaRecoverRateEffectModifier.java | 5 + .../StunnedEffectModifier.java | 5 + .../effectmodifiers/ValueEffectModifier.java | 5 + .../WeaponProcEffectModifier.java | 5 + .../WeaponRangeEffectModifier.java | 5 + .../WeaponSpeedEffectModifier.java | 5 + src/engine/server/world/WorldServer.java | 3 - 70 files changed, 597 insertions(+), 8 deletions(-) diff --git a/src/engine/gameManager/PowersManager.java b/src/engine/gameManager/PowersManager.java index 91c0bd2a..64ceaccb 100644 --- a/src/engine/gameManager/PowersManager.java +++ b/src/engine/gameManager/PowersManager.java @@ -10,7 +10,6 @@ package engine.gameManager; import engine.InterestManagement.Terrain; import engine.InterestManagement.WorldGrid; -import engine.db.handlers.dbEffectsBaseHandler; import engine.db.handlers.dbSkillReqHandler; import engine.job.AbstractJob; import engine.job.AbstractScheduleJob; @@ -193,9 +192,6 @@ public enum PowersManager { loadEffects(); - // Add Modifiers to Effects - dbEffectsBaseHandler.cacheAllEffectModifiers(); - // Add PowerActions AbstractPowerAction.getAllPowerActions(PowersManager.powerActionsByIDString, PowersManager.powerActionsByID, PowersManager.effectsBaseByIDString); diff --git a/src/engine/powers/EffectsBase.java b/src/engine/powers/EffectsBase.java index af5dd9cf..b03f4e3e 100644 --- a/src/engine/powers/EffectsBase.java +++ b/src/engine/powers/EffectsBase.java @@ -27,11 +27,12 @@ import engine.net.client.msg.ApplyEffectMsg; import engine.objects.AbstractCharacter; import engine.objects.AbstractWorldObject; import engine.objects.Effect; +import engine.objects.Item; import engine.objects.PlayerCharacter; import engine.parsers.objects.wpak.CurveRamp; import engine.parsers.objects.wpak.EffectTemplate; import engine.parsers.objects.wpak.PowerActionTemplate; -import engine.powers.effectmodifiers.AbstractEffectModifier; +import engine.powers.effectmodifiers.*; import engine.server.MBServerStatics; import engine.util.Hasher; import org.pmw.tinylog.Logger; @@ -140,6 +141,7 @@ public class EffectsBase { this.isPrefix = this.IDString.startsWith("PRE-"); this.isSuffix = this.IDString.startsWith("SUF-"); + loadModifiers(effectTemplate.mods); loadFailConditions(effectTemplate.conditions); loadSourceTypes(effectTemplate.sources); } @@ -240,6 +242,227 @@ public class EffectsBase { } } + // AnimOverride is client-only and has no server modifier + private void loadModifiers(ArrayList mods) { + + AbstractEffectModifier modifier; + + for (EffectTemplate.ModEntry modEntry : mods) { + + switch (modEntry.mod_type) { + case AdjustAboveDmgCap: + modifier = new AdjustAboveDmgCapEffectModifier(this.IDString, modEntry); + break; + case Ambidexterity: + modifier = new AmbidexterityEffectModifier(this.IDString, modEntry); + break; + case ArmorPiercing: + modifier = new ArmorPiercingEffectModifier(this.IDString, modEntry); + break; + case AttackDelay: + modifier = new AttackDelayEffectModifier(this.IDString, modEntry); + break; + case Attr: + modifier = new AttributeEffectModifier(this.IDString, modEntry); + break; + case BlackMantle: + modifier = new BlackMantleEffectModifier(this.IDString, modEntry); + break; + case BladeTrails: + modifier = new BladeTrailsEffectModifier(this.IDString, modEntry); + break; + case Block: + modifier = new BlockEffectModifier(this.IDString, modEntry); + break; + case BlockedPowerType: + modifier = new BlockedPowerTypeEffectModifier(this.IDString, modEntry); + break; + case CannotAttack: + modifier = new CannotAttackEffectModifier(this.IDString, modEntry); + break; + case CannotCast: + modifier = new CannotCastEffectModifier(this.IDString, modEntry); + break; + case CannotMove: + modifier = new CannotMoveEffectModifier(this.IDString, modEntry); + break; + case CannotTrack: + modifier = new CannotTrackEffectModifier(this.IDString, modEntry); + break; + case Charmed: + modifier = new CharmedEffectModifier(this.IDString, modEntry); + break; + case ConstrainedAmbidexterity: + modifier = new ConstrainedAmbidexterityEffectModifier(this.IDString, modEntry); + break; + case DamageCap: + modifier = new DamageCapEffectModifier(this.IDString, modEntry); + break; + case DamageShield: + modifier = new DamageShieldEffectModifier(this.IDString, modEntry); + break; + case DCV: + modifier = new DCVEffectModifier(this.IDString, modEntry); + break; + case Dodge: + modifier = new DodgeEffectModifier(this.IDString, modEntry); + break; + case DR: + modifier = new DREffectModifier(this.IDString, modEntry); + break; + case Durability: + modifier = new DurabilityEffectModifier(this.IDString, modEntry); + break; + case ExclusiveDamageCap: + modifier = new ExclusiveDamageCapEffectModifier(this.IDString, modEntry); + break; + case Fade: + modifier = new FadeEffectModifier(this.IDString, modEntry); + break; + case Fly: + modifier = new FlyEffectModifier(this.IDString, modEntry); + break; + case Health: + modifier = new HealthEffectModifier(this.IDString, modEntry); + break; + case HealthFull: + modifier = new HealthFullEffectModifier(this.IDString, modEntry); + break; + case HealthRecoverRate: + modifier = new HealthRecoverRateEffectModifier(this.IDString, modEntry); + break; + case IgnoreDamageCap: + modifier = new IgnoreDamageCapEffectModifier(this.IDString, modEntry); + break; + case IgnorePassiveDefense: + modifier = new IgnorePassiveDefenseEffectModifier(this.IDString, modEntry); + break; + case ImmuneTo: + modifier = new ImmuneToEffectModifier(this.IDString, modEntry); + break; + case ImmuneToAttack: + modifier = new ImmuneToAttackEffectModifier(this.IDString, modEntry); + break; + case ImmuneToPowers: + modifier = new ImmuneToPowersEffectModifier(this.IDString, modEntry); + break; + case Invisible: + modifier = new InvisibleEffectModifier(this.IDString, modEntry); + break; + case ItemName: + modifier = new ItemNameEffectModifier(this.IDString, modEntry); + if (!((ItemNameEffectModifier) modifier).name.isEmpty()) + this.name = ((ItemNameEffectModifier) modifier).name; + break; + case Mana: + modifier = new ManaEffectModifier(this.IDString, modEntry); + break; + case ManaFull: + modifier = new ManaFullEffectModifier(this.IDString, modEntry); + break; + case ManaRecoverRate: + modifier = new ManaRecoverRateEffectModifier(this.IDString, modEntry); + break; + case MaxDamage: + modifier = new MaxDamageEffectModifier(this.IDString, modEntry); + break; + case MeleeDamageModifier: + modifier = new MeleeDamageEffectModifier(this.IDString, modEntry); + break; + case MinDamage: + modifier = new MinDamageEffectModifier(this.IDString, modEntry); + break; + case NoMod: + modifier = new NoModEffectModifier(this.IDString, modEntry); + break; + case OCV: + modifier = new OCVEffectModifier(this.IDString, modEntry); + break; + case Parry: + modifier = new ParryEffectModifier(this.IDString, modEntry); + break; + case PassiveDefense: + modifier = new PassiveDefenseEffectModifier(this.IDString, modEntry); + break; + case PowerCost: + modifier = new PowerCostEffectModifier(this.IDString, modEntry); + break; + case PowerCostHealth: + modifier = new PowerCostHealthEffectModifier(this.IDString, modEntry); + break; + case PowerDamageModifier: + modifier = new PowerDamageEffectModifier(this.IDString, modEntry); + break; + case ProtectionFrom: + modifier = new ProtectionFromEffectModifier(this.IDString, modEntry); + break; + case Resistance: + modifier = new ResistanceEffectModifier(this.IDString, modEntry); + break; + case ScaleHeight: + modifier = new ScaleHeightEffectModifier(this.IDString, modEntry); + break; + case ScaleWidth: + modifier = new ScaleWidthEffectModifier(this.IDString, modEntry); + break; + case ScanRange: + modifier = new ScanRangeEffectModifier(this.IDString, modEntry); + break; + case SeeInvisible: + modifier = new SeeInvisibleEffectModifier(this.IDString, modEntry); + break; + case Silenced: + modifier = new SilencedEffectModifier(this.IDString, modEntry); + break; + case Skill: + modifier = new SkillEffectModifier(this.IDString, modEntry); + break; + case Slay: + modifier = new SlayEffectModifier(this.IDString, modEntry); + break; + case Speed: + modifier = new SpeedEffectModifier(this.IDString, modEntry); + break; + case SpireBlock: + modifier = new SpireBlockEffectModifier(this.IDString, modEntry); + break; + case Stamina: + modifier = new StaminaEffectModifier(this.IDString, modEntry); + break; + case StaminaFull: + modifier = new StaminaFullEffectModifier(this.IDString, modEntry); + break; + case StaminaRecoverRate: + modifier = new StaminaRecoverRateEffectModifier(this.IDString, modEntry); + break; + case Stunned: + modifier = new StunnedEffectModifier(this.IDString, modEntry); + break; + case Value: + modifier = new ValueEffectModifier(this.IDString, modEntry); + this.value = modifier.minMod; + Item.addEnchantValue(this.IDString, (int) modifier.minMod); + break; + case WeaponProc: + modifier = new WeaponProcEffectModifier(this.IDString, modEntry); + break; + case WeaponRange: + modifier = new WeaponRangeEffectModifier(this.IDString, modEntry); + break; + case WeaponSpeed: + modifier = new WeaponSpeedEffectModifier(this.IDString, modEntry); + break; + default: + continue; + } + + if (!EffectsBase.modifiersMap.containsKey(this.IDString)) + EffectsBase.modifiersMap.put(this.IDString, new HashSet<>()); + + EffectsBase.modifiersMap.get(this.IDString).add(modifier); + } + } + private void loadSourceTypes(ArrayList sources) { if (sources.isEmpty()) diff --git a/src/engine/powers/effectmodifiers/AbstractEffectModifier.java b/src/engine/powers/effectmodifiers/AbstractEffectModifier.java index 656afbdf..e01aca3e 100644 --- a/src/engine/powers/effectmodifiers/AbstractEffectModifier.java +++ b/src/engine/powers/effectmodifiers/AbstractEffectModifier.java @@ -16,7 +16,10 @@ import engine.objects.AbstractCharacter; import engine.objects.AbstractWorldObject; import engine.objects.Building; import engine.objects.Item; +import engine.parsers.objects.wpak.CurveRamp; +import engine.parsers.objects.wpak.EffectTemplate; import engine.powers.EffectsBase; +import org.pmw.tinylog.Logger; import java.sql.ResultSet; import java.sql.SQLException; @@ -57,6 +60,38 @@ public abstract class AbstractEffectModifier { this.string2 = rs.getString("string2"); } + // Field mapping matches the old static_power_effectmod columns (JSON-Refactor-Plan/scripts/p46b.py) + public AbstractEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + + CurveRamp curveRamp = (modEntry.curve == null) ? null : CurveRamp.fromCurve(modEntry.curve); + + if (modEntry.curve != null && curveRamp == null) + Logger.warn("Effect " + IDString + " " + modEntry.mod_type + " curve " + modEntry.curve + " has no ramp form"); + + this.IDString = IDString; + this.modType = modEntry.mod_type; + this.effectType = modEntry.mod_type.name(); + this.type = (modEntry.type == null) ? "" : modEntry.type; + this.sourceType = SourceType.GetSourceType(this.type.replace(" ", "").replace("-", "")); + this.minMod = modEntry.min_mod; + this.maxMod = modEntry.max_mod; + this.percentMod = modEntry.percent_mod; + this.ramp = (curveRamp == null) ? 0 : curveRamp.ramp; + this.useRampAdd = (curveRamp == null) || curveRamp.useAdd; + this.string1 = (modEntry.string1 == null) ? "" : modEntry.string1; + this.string2 = (modEntry.string2 == null) ? "" : modEntry.string2; + + switch (modEntry.behavior) { + case "ProcInfo": + this.string1 = modEntry.proc_power_id; + break; + case "MapIntToInts": + this.minMod = modEntry.map_key; + this.maxMod = modEntry.map_values.isEmpty() ? 0 : modEntry.map_values.get(0); + break; + } + } + public int getUUID() { return this.UUID; diff --git a/src/engine/powers/effectmodifiers/AdjustAboveDmgCapEffectModifier.java b/src/engine/powers/effectmodifiers/AdjustAboveDmgCapEffectModifier.java index 1c046121..1d9336dd 100644 --- a/src/engine/powers/effectmodifiers/AdjustAboveDmgCapEffectModifier.java +++ b/src/engine/powers/effectmodifiers/AdjustAboveDmgCapEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -22,6 +23,10 @@ public class AdjustAboveDmgCapEffectModifier extends AbstractEffectModifier { super(rs); } + public AdjustAboveDmgCapEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/AmbidexterityEffectModifier.java b/src/engine/powers/effectmodifiers/AmbidexterityEffectModifier.java index 059422e5..ebd99996 100644 --- a/src/engine/powers/effectmodifiers/AmbidexterityEffectModifier.java +++ b/src/engine/powers/effectmodifiers/AmbidexterityEffectModifier.java @@ -13,6 +13,7 @@ import engine.jobs.AbstractEffectJob; import engine.mbEnums.ModType; import engine.mbEnums.SourceType; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -24,6 +25,10 @@ public class AmbidexterityEffectModifier extends AbstractEffectModifier { super(rs); } + public AmbidexterityEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/ArmorPiercingEffectModifier.java b/src/engine/powers/effectmodifiers/ArmorPiercingEffectModifier.java index 1cb67e78..2fc0ddb3 100644 --- a/src/engine/powers/effectmodifiers/ArmorPiercingEffectModifier.java +++ b/src/engine/powers/effectmodifiers/ArmorPiercingEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -22,6 +23,10 @@ public class ArmorPiercingEffectModifier extends AbstractEffectModifier { super(rs); } + public ArmorPiercingEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/AttackDelayEffectModifier.java b/src/engine/powers/effectmodifiers/AttackDelayEffectModifier.java index 244fa6cd..50f6dd2a 100644 --- a/src/engine/powers/effectmodifiers/AttackDelayEffectModifier.java +++ b/src/engine/powers/effectmodifiers/AttackDelayEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -22,6 +23,10 @@ public class AttackDelayEffectModifier extends AbstractEffectModifier { super(rs); } + public AttackDelayEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/AttributeEffectModifier.java b/src/engine/powers/effectmodifiers/AttributeEffectModifier.java index 31d6cf0a..14c4609c 100644 --- a/src/engine/powers/effectmodifiers/AttributeEffectModifier.java +++ b/src/engine/powers/effectmodifiers/AttributeEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -22,6 +23,10 @@ public class AttributeEffectModifier extends AbstractEffectModifier { super(rs); } + public AttributeEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/BlackMantleEffectModifier.java b/src/engine/powers/effectmodifiers/BlackMantleEffectModifier.java index 61c69677..70652fed 100644 --- a/src/engine/powers/effectmodifiers/BlackMantleEffectModifier.java +++ b/src/engine/powers/effectmodifiers/BlackMantleEffectModifier.java @@ -13,6 +13,7 @@ import engine.jobs.AbstractEffectJob; import engine.mbEnums.ModType; import engine.mbEnums.SourceType; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import org.pmw.tinylog.Logger; import java.sql.ResultSet; @@ -25,6 +26,10 @@ public class BlackMantleEffectModifier extends AbstractEffectModifier { super(rs); } + public BlackMantleEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/BladeTrailsEffectModifier.java b/src/engine/powers/effectmodifiers/BladeTrailsEffectModifier.java index 7055d436..b0663aa8 100644 --- a/src/engine/powers/effectmodifiers/BladeTrailsEffectModifier.java +++ b/src/engine/powers/effectmodifiers/BladeTrailsEffectModifier.java @@ -14,6 +14,7 @@ import engine.objects.AbstractCharacter; import engine.objects.AbstractWorldObject; import engine.objects.Building; import engine.objects.Item; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -24,6 +25,10 @@ public class BladeTrailsEffectModifier extends AbstractEffectModifier { super(rs); } + public BladeTrailsEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/BlockEffectModifier.java b/src/engine/powers/effectmodifiers/BlockEffectModifier.java index 025703a7..a7d48620 100644 --- a/src/engine/powers/effectmodifiers/BlockEffectModifier.java +++ b/src/engine/powers/effectmodifiers/BlockEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -22,6 +23,10 @@ public class BlockEffectModifier extends AbstractEffectModifier { super(rs); } + public BlockEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/BlockedPowerTypeEffectModifier.java b/src/engine/powers/effectmodifiers/BlockedPowerTypeEffectModifier.java index 85026031..35faf39f 100644 --- a/src/engine/powers/effectmodifiers/BlockedPowerTypeEffectModifier.java +++ b/src/engine/powers/effectmodifiers/BlockedPowerTypeEffectModifier.java @@ -12,6 +12,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.mbEnums.ModType; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -24,6 +25,10 @@ public class BlockedPowerTypeEffectModifier extends AbstractEffectModifier { super(rs); } + public BlockedPowerTypeEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/CannotAttackEffectModifier.java b/src/engine/powers/effectmodifiers/CannotAttackEffectModifier.java index 5466b5b4..a17dbf57 100644 --- a/src/engine/powers/effectmodifiers/CannotAttackEffectModifier.java +++ b/src/engine/powers/effectmodifiers/CannotAttackEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -22,6 +23,10 @@ public class CannotAttackEffectModifier extends AbstractEffectModifier { super(rs); } + public CannotAttackEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/CannotCastEffectModifier.java b/src/engine/powers/effectmodifiers/CannotCastEffectModifier.java index ce188747..0215dfd6 100644 --- a/src/engine/powers/effectmodifiers/CannotCastEffectModifier.java +++ b/src/engine/powers/effectmodifiers/CannotCastEffectModifier.java @@ -12,6 +12,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.mbEnums; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -23,6 +24,10 @@ public class CannotCastEffectModifier extends AbstractEffectModifier { super(rs); } + public CannotCastEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/CannotMoveEffectModifier.java b/src/engine/powers/effectmodifiers/CannotMoveEffectModifier.java index b9909006..e8fb7cbf 100644 --- a/src/engine/powers/effectmodifiers/CannotMoveEffectModifier.java +++ b/src/engine/powers/effectmodifiers/CannotMoveEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -22,6 +23,10 @@ public class CannotMoveEffectModifier extends AbstractEffectModifier { super(rs); } + public CannotMoveEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/CannotTrackEffectModifier.java b/src/engine/powers/effectmodifiers/CannotTrackEffectModifier.java index fca453d4..7afd6668 100644 --- a/src/engine/powers/effectmodifiers/CannotTrackEffectModifier.java +++ b/src/engine/powers/effectmodifiers/CannotTrackEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -22,6 +23,10 @@ public class CannotTrackEffectModifier extends AbstractEffectModifier { super(rs); } + public CannotTrackEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/CharmedEffectModifier.java b/src/engine/powers/effectmodifiers/CharmedEffectModifier.java index 334ad275..013c2ff0 100644 --- a/src/engine/powers/effectmodifiers/CharmedEffectModifier.java +++ b/src/engine/powers/effectmodifiers/CharmedEffectModifier.java @@ -14,6 +14,7 @@ import engine.objects.AbstractCharacter; import engine.objects.AbstractWorldObject; import engine.objects.Building; import engine.objects.Item; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -24,6 +25,10 @@ public class CharmedEffectModifier extends AbstractEffectModifier { super(rs); } + public CharmedEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/ConstrainedAmbidexterityEffectModifier.java b/src/engine/powers/effectmodifiers/ConstrainedAmbidexterityEffectModifier.java index fd357032..8a8b1db5 100644 --- a/src/engine/powers/effectmodifiers/ConstrainedAmbidexterityEffectModifier.java +++ b/src/engine/powers/effectmodifiers/ConstrainedAmbidexterityEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -22,6 +23,10 @@ public class ConstrainedAmbidexterityEffectModifier extends AbstractEffectModifi super(rs); } + public ConstrainedAmbidexterityEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/DCVEffectModifier.java b/src/engine/powers/effectmodifiers/DCVEffectModifier.java index aabe1bc8..9eea00bb 100644 --- a/src/engine/powers/effectmodifiers/DCVEffectModifier.java +++ b/src/engine/powers/effectmodifiers/DCVEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -22,6 +23,10 @@ public class DCVEffectModifier extends AbstractEffectModifier { super(rs); } + public DCVEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/DREffectModifier.java b/src/engine/powers/effectmodifiers/DREffectModifier.java index 752d5af1..b8365a89 100644 --- a/src/engine/powers/effectmodifiers/DREffectModifier.java +++ b/src/engine/powers/effectmodifiers/DREffectModifier.java @@ -14,6 +14,7 @@ import engine.objects.AbstractCharacter; import engine.objects.AbstractWorldObject; import engine.objects.Building; import engine.objects.Item; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -24,6 +25,10 @@ public class DREffectModifier extends AbstractEffectModifier { super(rs); } + public DREffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/DamageCapEffectModifier.java b/src/engine/powers/effectmodifiers/DamageCapEffectModifier.java index 27ac79b4..1790d487 100644 --- a/src/engine/powers/effectmodifiers/DamageCapEffectModifier.java +++ b/src/engine/powers/effectmodifiers/DamageCapEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -22,6 +23,10 @@ public class DamageCapEffectModifier extends AbstractEffectModifier { super(rs); } + public DamageCapEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/DamageShieldEffectModifier.java b/src/engine/powers/effectmodifiers/DamageShieldEffectModifier.java index f28619c4..efdbf309 100644 --- a/src/engine/powers/effectmodifiers/DamageShieldEffectModifier.java +++ b/src/engine/powers/effectmodifiers/DamageShieldEffectModifier.java @@ -12,6 +12,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.mbEnums; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import engine.powers.DamageShield; import java.sql.ResultSet; @@ -24,6 +25,10 @@ public class DamageShieldEffectModifier extends AbstractEffectModifier { super(rs); } + public DamageShieldEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/DodgeEffectModifier.java b/src/engine/powers/effectmodifiers/DodgeEffectModifier.java index 3af6dc6e..9607b544 100644 --- a/src/engine/powers/effectmodifiers/DodgeEffectModifier.java +++ b/src/engine/powers/effectmodifiers/DodgeEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -22,6 +23,10 @@ public class DodgeEffectModifier extends AbstractEffectModifier { super(rs); } + public DodgeEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/DurabilityEffectModifier.java b/src/engine/powers/effectmodifiers/DurabilityEffectModifier.java index 9237ebfa..d8b45422 100644 --- a/src/engine/powers/effectmodifiers/DurabilityEffectModifier.java +++ b/src/engine/powers/effectmodifiers/DurabilityEffectModifier.java @@ -14,6 +14,7 @@ import engine.objects.AbstractCharacter; import engine.objects.AbstractWorldObject; import engine.objects.Building; import engine.objects.Item; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -24,6 +25,10 @@ public class DurabilityEffectModifier extends AbstractEffectModifier { super(rs); } + public DurabilityEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/ExclusiveDamageCapEffectModifier.java b/src/engine/powers/effectmodifiers/ExclusiveDamageCapEffectModifier.java index acd949de..8b1d05e1 100644 --- a/src/engine/powers/effectmodifiers/ExclusiveDamageCapEffectModifier.java +++ b/src/engine/powers/effectmodifiers/ExclusiveDamageCapEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -22,6 +23,10 @@ public class ExclusiveDamageCapEffectModifier extends AbstractEffectModifier { super(rs); } + public ExclusiveDamageCapEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/FadeEffectModifier.java b/src/engine/powers/effectmodifiers/FadeEffectModifier.java index ab427685..e8d17a67 100644 --- a/src/engine/powers/effectmodifiers/FadeEffectModifier.java +++ b/src/engine/powers/effectmodifiers/FadeEffectModifier.java @@ -14,6 +14,7 @@ import engine.objects.AbstractCharacter; import engine.objects.AbstractWorldObject; import engine.objects.Building; import engine.objects.Item; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -24,6 +25,10 @@ public class FadeEffectModifier extends AbstractEffectModifier { super(rs); } + public FadeEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/FlyEffectModifier.java b/src/engine/powers/effectmodifiers/FlyEffectModifier.java index 9f5c0068..73fcfdd0 100644 --- a/src/engine/powers/effectmodifiers/FlyEffectModifier.java +++ b/src/engine/powers/effectmodifiers/FlyEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class FlyEffectModifier extends AbstractEffectModifier { super(rs); } + public FlyEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/HealthEffectModifier.java b/src/engine/powers/effectmodifiers/HealthEffectModifier.java index 20d8db5f..157644f6 100644 --- a/src/engine/powers/effectmodifiers/HealthEffectModifier.java +++ b/src/engine/powers/effectmodifiers/HealthEffectModifier.java @@ -20,6 +20,7 @@ import engine.net.AbstractNetMsg; import engine.net.client.msg.ModifyHealthKillMsg; import engine.net.client.msg.ModifyHealthMsg; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import org.pmw.tinylog.Logger; import java.sql.ResultSet; @@ -41,6 +42,11 @@ public class HealthEffectModifier extends AbstractEffectModifier { } } + public HealthEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + this.damageType = mbEnums.DamageType.getDamageType(this.type); + } + public static float getMinDamage(float baseMin, float intelligence, float spirit, float focus) { float min = baseMin * (((float) Math.pow(intelligence, 0.75f) * 0.0311f) + (0.02f * (int) focus) + ((float) Math.pow(spirit, 0.75f) * 0.0416f)); return (float) ((int) (min + 0.5f)); //round to nearest whole number diff --git a/src/engine/powers/effectmodifiers/HealthFullEffectModifier.java b/src/engine/powers/effectmodifiers/HealthFullEffectModifier.java index 3c10fbac..7c7c1434 100644 --- a/src/engine/powers/effectmodifiers/HealthFullEffectModifier.java +++ b/src/engine/powers/effectmodifiers/HealthFullEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class HealthFullEffectModifier extends AbstractEffectModifier { super(rs); } + public HealthFullEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/HealthRecoverRateEffectModifier.java b/src/engine/powers/effectmodifiers/HealthRecoverRateEffectModifier.java index 6deec9a1..d014cab9 100644 --- a/src/engine/powers/effectmodifiers/HealthRecoverRateEffectModifier.java +++ b/src/engine/powers/effectmodifiers/HealthRecoverRateEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class HealthRecoverRateEffectModifier extends AbstractEffectModifier { super(rs); } + public HealthRecoverRateEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/IgnoreDamageCapEffectModifier.java b/src/engine/powers/effectmodifiers/IgnoreDamageCapEffectModifier.java index aa887c8b..0f8c9a98 100644 --- a/src/engine/powers/effectmodifiers/IgnoreDamageCapEffectModifier.java +++ b/src/engine/powers/effectmodifiers/IgnoreDamageCapEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -22,6 +23,10 @@ public class IgnoreDamageCapEffectModifier extends AbstractEffectModifier { super(rs); } + public IgnoreDamageCapEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/IgnorePassiveDefenseEffectModifier.java b/src/engine/powers/effectmodifiers/IgnorePassiveDefenseEffectModifier.java index 0f7ab9d8..8e70ec73 100644 --- a/src/engine/powers/effectmodifiers/IgnorePassiveDefenseEffectModifier.java +++ b/src/engine/powers/effectmodifiers/IgnorePassiveDefenseEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class IgnorePassiveDefenseEffectModifier extends AbstractEffectModifier { super(rs); } + public IgnorePassiveDefenseEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/ImmuneToAttackEffectModifier.java b/src/engine/powers/effectmodifiers/ImmuneToAttackEffectModifier.java index fbb79f52..ce49ce14 100644 --- a/src/engine/powers/effectmodifiers/ImmuneToAttackEffectModifier.java +++ b/src/engine/powers/effectmodifiers/ImmuneToAttackEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class ImmuneToAttackEffectModifier extends AbstractEffectModifier { super(rs); } + public ImmuneToAttackEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/ImmuneToEffectModifier.java b/src/engine/powers/effectmodifiers/ImmuneToEffectModifier.java index 5848d334..7239f5f3 100644 --- a/src/engine/powers/effectmodifiers/ImmuneToEffectModifier.java +++ b/src/engine/powers/effectmodifiers/ImmuneToEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class ImmuneToEffectModifier extends AbstractEffectModifier { super(rs); } + public ImmuneToEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/ImmuneToPowersEffectModifier.java b/src/engine/powers/effectmodifiers/ImmuneToPowersEffectModifier.java index 1e6e04b8..ea3df870 100644 --- a/src/engine/powers/effectmodifiers/ImmuneToPowersEffectModifier.java +++ b/src/engine/powers/effectmodifiers/ImmuneToPowersEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class ImmuneToPowersEffectModifier extends AbstractEffectModifier { super(rs); } + public ImmuneToPowersEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/InvisibleEffectModifier.java b/src/engine/powers/effectmodifiers/InvisibleEffectModifier.java index e0699106..6c9da817 100644 --- a/src/engine/powers/effectmodifiers/InvisibleEffectModifier.java +++ b/src/engine/powers/effectmodifiers/InvisibleEffectModifier.java @@ -14,6 +14,7 @@ import engine.jobs.AbstractEffectJob; import engine.mbEnums; import engine.net.client.ClientConnection; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import engine.powers.ActionsBase; import engine.powers.PowersBase; import org.pmw.tinylog.Logger; @@ -27,6 +28,10 @@ public class InvisibleEffectModifier extends AbstractEffectModifier { super(rs); } + public InvisibleEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/ItemNameEffectModifier.java b/src/engine/powers/effectmodifiers/ItemNameEffectModifier.java index 0cc903ec..97066010 100644 --- a/src/engine/powers/effectmodifiers/ItemNameEffectModifier.java +++ b/src/engine/powers/effectmodifiers/ItemNameEffectModifier.java @@ -14,6 +14,7 @@ import engine.objects.AbstractCharacter; import engine.objects.AbstractWorldObject; import engine.objects.Building; import engine.objects.Item; +import engine.parsers.objects.wpak.EffectTemplate; import engine.powers.EffectsBase; import java.sql.ResultSet; @@ -122,6 +123,15 @@ public class ItemNameEffectModifier extends AbstractEffectModifier { EffectsBase.addItemEffectsByName(n, IDString); } + public ItemNameEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + + this.name = this.string1.isEmpty() ? this.string2 : this.string1; + + // ./makeitem lookup: the effect id less its last letter is the enchantment power action + EffectsBase.addItemEffectsByName(this.name.toLowerCase().replace(" ", "_"), IDString.substring(0, IDString.length() - 1)); + } + public String getName() { return this.name; } diff --git a/src/engine/powers/effectmodifiers/ManaEffectModifier.java b/src/engine/powers/effectmodifiers/ManaEffectModifier.java index 2688438b..182b860c 100644 --- a/src/engine/powers/effectmodifiers/ManaEffectModifier.java +++ b/src/engine/powers/effectmodifiers/ManaEffectModifier.java @@ -17,6 +17,7 @@ import engine.mbEnums.ModType; import engine.mbEnums.SourceType; import engine.net.client.msg.ModifyHealthMsg; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import engine.powers.ActionsBase; import engine.powers.poweractions.AbstractPowerAction; import engine.powers.poweractions.DamageOverTimePowerAction; @@ -43,6 +44,11 @@ public class ManaEffectModifier extends AbstractEffectModifier { } } + public ManaEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + this.damageType = mbEnums.DamageType.getDamageType(this.type); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { if (awo == null) { diff --git a/src/engine/powers/effectmodifiers/ManaFullEffectModifier.java b/src/engine/powers/effectmodifiers/ManaFullEffectModifier.java index 8e3ab11e..490083e2 100644 --- a/src/engine/powers/effectmodifiers/ManaFullEffectModifier.java +++ b/src/engine/powers/effectmodifiers/ManaFullEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class ManaFullEffectModifier extends AbstractEffectModifier { super(rs); } + public ManaFullEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/ManaRecoverRateEffectModifier.java b/src/engine/powers/effectmodifiers/ManaRecoverRateEffectModifier.java index b00dd46d..03df9914 100644 --- a/src/engine/powers/effectmodifiers/ManaRecoverRateEffectModifier.java +++ b/src/engine/powers/effectmodifiers/ManaRecoverRateEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class ManaRecoverRateEffectModifier extends AbstractEffectModifier { super(rs); } + public ManaRecoverRateEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/MaxDamageEffectModifier.java b/src/engine/powers/effectmodifiers/MaxDamageEffectModifier.java index 691e08b9..ebbf165e 100644 --- a/src/engine/powers/effectmodifiers/MaxDamageEffectModifier.java +++ b/src/engine/powers/effectmodifiers/MaxDamageEffectModifier.java @@ -14,6 +14,7 @@ import engine.objects.AbstractCharacter; import engine.objects.AbstractWorldObject; import engine.objects.Building; import engine.objects.Item; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -24,6 +25,10 @@ public class MaxDamageEffectModifier extends AbstractEffectModifier { super(rs); } + public MaxDamageEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/MeleeDamageEffectModifier.java b/src/engine/powers/effectmodifiers/MeleeDamageEffectModifier.java index 3bc3cd52..3b4404aa 100644 --- a/src/engine/powers/effectmodifiers/MeleeDamageEffectModifier.java +++ b/src/engine/powers/effectmodifiers/MeleeDamageEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class MeleeDamageEffectModifier extends AbstractEffectModifier { super(rs); } + public MeleeDamageEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/MinDamageEffectModifier.java b/src/engine/powers/effectmodifiers/MinDamageEffectModifier.java index 9faf34de..7e4d89ef 100644 --- a/src/engine/powers/effectmodifiers/MinDamageEffectModifier.java +++ b/src/engine/powers/effectmodifiers/MinDamageEffectModifier.java @@ -14,6 +14,7 @@ import engine.objects.AbstractCharacter; import engine.objects.AbstractWorldObject; import engine.objects.Building; import engine.objects.Item; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -24,6 +25,10 @@ public class MinDamageEffectModifier extends AbstractEffectModifier { super(rs); } + public MinDamageEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/NoModEffectModifier.java b/src/engine/powers/effectmodifiers/NoModEffectModifier.java index 79b4fc3c..43025bac 100644 --- a/src/engine/powers/effectmodifiers/NoModEffectModifier.java +++ b/src/engine/powers/effectmodifiers/NoModEffectModifier.java @@ -12,6 +12,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.mbEnums.GameObjectType; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -22,6 +23,10 @@ public class NoModEffectModifier extends AbstractEffectModifier { super(rs); } + public NoModEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { //TODO check if anything needs removed. diff --git a/src/engine/powers/effectmodifiers/OCVEffectModifier.java b/src/engine/powers/effectmodifiers/OCVEffectModifier.java index 0839a1d0..e0b23e21 100644 --- a/src/engine/powers/effectmodifiers/OCVEffectModifier.java +++ b/src/engine/powers/effectmodifiers/OCVEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class OCVEffectModifier extends AbstractEffectModifier { super(rs); } + public OCVEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/ParryEffectModifier.java b/src/engine/powers/effectmodifiers/ParryEffectModifier.java index a66476b9..f6a3c036 100644 --- a/src/engine/powers/effectmodifiers/ParryEffectModifier.java +++ b/src/engine/powers/effectmodifiers/ParryEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class ParryEffectModifier extends AbstractEffectModifier { super(rs); } + public ParryEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/PassiveDefenseEffectModifier.java b/src/engine/powers/effectmodifiers/PassiveDefenseEffectModifier.java index b4e59045..faf54413 100644 --- a/src/engine/powers/effectmodifiers/PassiveDefenseEffectModifier.java +++ b/src/engine/powers/effectmodifiers/PassiveDefenseEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class PassiveDefenseEffectModifier extends AbstractEffectModifier { super(rs); } + public PassiveDefenseEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/PowerCostEffectModifier.java b/src/engine/powers/effectmodifiers/PowerCostEffectModifier.java index 925ccda1..d68cb1e7 100644 --- a/src/engine/powers/effectmodifiers/PowerCostEffectModifier.java +++ b/src/engine/powers/effectmodifiers/PowerCostEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class PowerCostEffectModifier extends AbstractEffectModifier { super(rs); } + public PowerCostEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/PowerCostHealthEffectModifier.java b/src/engine/powers/effectmodifiers/PowerCostHealthEffectModifier.java index 7c83e078..b3c0b43b 100644 --- a/src/engine/powers/effectmodifiers/PowerCostHealthEffectModifier.java +++ b/src/engine/powers/effectmodifiers/PowerCostHealthEffectModifier.java @@ -14,6 +14,7 @@ import engine.objects.AbstractCharacter; import engine.objects.AbstractWorldObject; import engine.objects.Building; import engine.objects.Item; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -24,6 +25,10 @@ public class PowerCostHealthEffectModifier extends AbstractEffectModifier { super(rs); } + public PowerCostHealthEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/PowerDamageEffectModifier.java b/src/engine/powers/effectmodifiers/PowerDamageEffectModifier.java index bf8f9563..40614626 100644 --- a/src/engine/powers/effectmodifiers/PowerDamageEffectModifier.java +++ b/src/engine/powers/effectmodifiers/PowerDamageEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class PowerDamageEffectModifier extends AbstractEffectModifier { super(rs); } + public PowerDamageEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/ProtectionFromEffectModifier.java b/src/engine/powers/effectmodifiers/ProtectionFromEffectModifier.java index 10773f2a..3fee7d5a 100644 --- a/src/engine/powers/effectmodifiers/ProtectionFromEffectModifier.java +++ b/src/engine/powers/effectmodifiers/ProtectionFromEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class ProtectionFromEffectModifier extends AbstractEffectModifier { super(rs); } + public ProtectionFromEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/ResistanceEffectModifier.java b/src/engine/powers/effectmodifiers/ResistanceEffectModifier.java index 3e97a601..d8c773ef 100644 --- a/src/engine/powers/effectmodifiers/ResistanceEffectModifier.java +++ b/src/engine/powers/effectmodifiers/ResistanceEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class ResistanceEffectModifier extends AbstractEffectModifier { super(rs); } + public ResistanceEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/ScaleHeightEffectModifier.java b/src/engine/powers/effectmodifiers/ScaleHeightEffectModifier.java index f500fbc8..ee705a0f 100644 --- a/src/engine/powers/effectmodifiers/ScaleHeightEffectModifier.java +++ b/src/engine/powers/effectmodifiers/ScaleHeightEffectModifier.java @@ -14,6 +14,7 @@ import engine.objects.AbstractCharacter; import engine.objects.AbstractWorldObject; import engine.objects.Building; import engine.objects.Item; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -24,6 +25,10 @@ public class ScaleHeightEffectModifier extends AbstractEffectModifier { super(rs); } + public ScaleHeightEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/ScaleWidthEffectModifier.java b/src/engine/powers/effectmodifiers/ScaleWidthEffectModifier.java index a7cc46db..29b5b1ec 100644 --- a/src/engine/powers/effectmodifiers/ScaleWidthEffectModifier.java +++ b/src/engine/powers/effectmodifiers/ScaleWidthEffectModifier.java @@ -14,6 +14,7 @@ import engine.objects.AbstractCharacter; import engine.objects.AbstractWorldObject; import engine.objects.Building; import engine.objects.Item; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -24,6 +25,10 @@ public class ScaleWidthEffectModifier extends AbstractEffectModifier { super(rs); } + public ScaleWidthEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/ScanRangeEffectModifier.java b/src/engine/powers/effectmodifiers/ScanRangeEffectModifier.java index d99d98a2..1ce1c8ff 100644 --- a/src/engine/powers/effectmodifiers/ScanRangeEffectModifier.java +++ b/src/engine/powers/effectmodifiers/ScanRangeEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class ScanRangeEffectModifier extends AbstractEffectModifier { super(rs); } + public ScanRangeEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/SeeInvisibleEffectModifier.java b/src/engine/powers/effectmodifiers/SeeInvisibleEffectModifier.java index e299b003..defdcb0b 100644 --- a/src/engine/powers/effectmodifiers/SeeInvisibleEffectModifier.java +++ b/src/engine/powers/effectmodifiers/SeeInvisibleEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class SeeInvisibleEffectModifier extends AbstractEffectModifier { super(rs); } + public SeeInvisibleEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/SilencedEffectModifier.java b/src/engine/powers/effectmodifiers/SilencedEffectModifier.java index 130bda28..35ce2950 100644 --- a/src/engine/powers/effectmodifiers/SilencedEffectModifier.java +++ b/src/engine/powers/effectmodifiers/SilencedEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class SilencedEffectModifier extends AbstractEffectModifier { super(rs); } + public SilencedEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/SkillEffectModifier.java b/src/engine/powers/effectmodifiers/SkillEffectModifier.java index ded492fb..1d9cab6c 100644 --- a/src/engine/powers/effectmodifiers/SkillEffectModifier.java +++ b/src/engine/powers/effectmodifiers/SkillEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class SkillEffectModifier extends AbstractEffectModifier { super(rs); } + public SkillEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/SlayEffectModifier.java b/src/engine/powers/effectmodifiers/SlayEffectModifier.java index 0d96ba52..dd9fa128 100644 --- a/src/engine/powers/effectmodifiers/SlayEffectModifier.java +++ b/src/engine/powers/effectmodifiers/SlayEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class SlayEffectModifier extends AbstractEffectModifier { super(rs); } + public SlayEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/SpeedEffectModifier.java b/src/engine/powers/effectmodifiers/SpeedEffectModifier.java index 0066c763..18739628 100644 --- a/src/engine/powers/effectmodifiers/SpeedEffectModifier.java +++ b/src/engine/powers/effectmodifiers/SpeedEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class SpeedEffectModifier extends AbstractEffectModifier { super(rs); } + public SpeedEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { //Logger.error(this.getSimpleClassName(), "Speed applied with " + trains + " trains"); diff --git a/src/engine/powers/effectmodifiers/SpireBlockEffectModifier.java b/src/engine/powers/effectmodifiers/SpireBlockEffectModifier.java index aa4b0ae9..e59cc266 100644 --- a/src/engine/powers/effectmodifiers/SpireBlockEffectModifier.java +++ b/src/engine/powers/effectmodifiers/SpireBlockEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class SpireBlockEffectModifier extends AbstractEffectModifier { super(rs); } + public SpireBlockEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/StaminaEffectModifier.java b/src/engine/powers/effectmodifiers/StaminaEffectModifier.java index 7a20801d..6390cb37 100644 --- a/src/engine/powers/effectmodifiers/StaminaEffectModifier.java +++ b/src/engine/powers/effectmodifiers/StaminaEffectModifier.java @@ -17,6 +17,7 @@ import engine.mbEnums.ModType; import engine.mbEnums.SourceType; import engine.net.client.msg.ModifyHealthMsg; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import engine.powers.ActionsBase; import engine.powers.poweractions.AbstractPowerAction; import engine.powers.poweractions.DamageOverTimePowerAction; @@ -43,6 +44,11 @@ public class StaminaEffectModifier extends AbstractEffectModifier { } } + public StaminaEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + this.damageType = mbEnums.DamageType.getDamageType(this.type); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { if (awo == null) { diff --git a/src/engine/powers/effectmodifiers/StaminaFullEffectModifier.java b/src/engine/powers/effectmodifiers/StaminaFullEffectModifier.java index 4cd7d2de..c1924125 100644 --- a/src/engine/powers/effectmodifiers/StaminaFullEffectModifier.java +++ b/src/engine/powers/effectmodifiers/StaminaFullEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class StaminaFullEffectModifier extends AbstractEffectModifier { super(rs); } + public StaminaFullEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/StaminaRecoverRateEffectModifier.java b/src/engine/powers/effectmodifiers/StaminaRecoverRateEffectModifier.java index 0f3ce8de..38a7fd80 100644 --- a/src/engine/powers/effectmodifiers/StaminaRecoverRateEffectModifier.java +++ b/src/engine/powers/effectmodifiers/StaminaRecoverRateEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class StaminaRecoverRateEffectModifier extends AbstractEffectModifier { super(rs); } + public StaminaRecoverRateEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/StunnedEffectModifier.java b/src/engine/powers/effectmodifiers/StunnedEffectModifier.java index a19b3688..bc20eaf6 100644 --- a/src/engine/powers/effectmodifiers/StunnedEffectModifier.java +++ b/src/engine/powers/effectmodifiers/StunnedEffectModifier.java @@ -12,6 +12,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.mbEnums.GameObjectType; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -22,6 +23,10 @@ public class StunnedEffectModifier extends AbstractEffectModifier { super(rs); } + public StunnedEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/ValueEffectModifier.java b/src/engine/powers/effectmodifiers/ValueEffectModifier.java index e8c9d946..999067d6 100644 --- a/src/engine/powers/effectmodifiers/ValueEffectModifier.java +++ b/src/engine/powers/effectmodifiers/ValueEffectModifier.java @@ -14,6 +14,7 @@ import engine.objects.AbstractCharacter; import engine.objects.AbstractWorldObject; import engine.objects.Building; import engine.objects.Item; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -24,6 +25,10 @@ public class ValueEffectModifier extends AbstractEffectModifier { super(rs); } + public ValueEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/WeaponProcEffectModifier.java b/src/engine/powers/effectmodifiers/WeaponProcEffectModifier.java index 43b51988..9b8d9c31 100644 --- a/src/engine/powers/effectmodifiers/WeaponProcEffectModifier.java +++ b/src/engine/powers/effectmodifiers/WeaponProcEffectModifier.java @@ -16,6 +16,7 @@ import engine.objects.AbstractCharacter; import engine.objects.AbstractWorldObject; import engine.objects.Building; import engine.objects.Item; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -26,6 +27,10 @@ public class WeaponProcEffectModifier extends AbstractEffectModifier { super(rs); } + public WeaponProcEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/WeaponRangeEffectModifier.java b/src/engine/powers/effectmodifiers/WeaponRangeEffectModifier.java index 3e910020..4032d6d0 100644 --- a/src/engine/powers/effectmodifiers/WeaponRangeEffectModifier.java +++ b/src/engine/powers/effectmodifiers/WeaponRangeEffectModifier.java @@ -11,6 +11,7 @@ package engine.powers.effectmodifiers; import engine.jobs.AbstractEffectJob; import engine.objects.*; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,6 +22,10 @@ public class WeaponRangeEffectModifier extends AbstractEffectModifier { super(rs); } + public WeaponRangeEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/powers/effectmodifiers/WeaponSpeedEffectModifier.java b/src/engine/powers/effectmodifiers/WeaponSpeedEffectModifier.java index 99350d0c..24196534 100644 --- a/src/engine/powers/effectmodifiers/WeaponSpeedEffectModifier.java +++ b/src/engine/powers/effectmodifiers/WeaponSpeedEffectModifier.java @@ -14,6 +14,7 @@ import engine.objects.AbstractCharacter; import engine.objects.AbstractWorldObject; import engine.objects.Building; import engine.objects.Item; +import engine.parsers.objects.wpak.EffectTemplate; import java.sql.ResultSet; import java.sql.SQLException; @@ -24,6 +25,10 @@ public class WeaponSpeedEffectModifier extends AbstractEffectModifier { super(rs); } + public WeaponSpeedEffectModifier(String IDString, EffectTemplate.ModEntry modEntry) { + super(IDString, modEntry); + } + @Override protected void _applyEffectModifier(AbstractCharacter source, AbstractWorldObject awo, int trains, AbstractEffectJob effect) { diff --git a/src/engine/server/world/WorldServer.java b/src/engine/server/world/WorldServer.java index 84471183..960febc9 100644 --- a/src/engine/server/world/WorldServer.java +++ b/src/engine/server/world/WorldServer.java @@ -459,9 +459,6 @@ public class WorldServer { Logger.info("Loading Rune Skill Adjusts"); PowersManager._allRuneSkillAdjusts = RuneSkillAdjustEntry.loadAllRuneSkillAdjusts(); - Logger.info("Loading item enchants"); - DbManager.LootQueries.LOAD_ENCHANT_VALUES(); - Logger.info("Loading Realms"); Realm.loadAllRealms();