From 5781737afca9fb65565848922c10fb518063b2b2 Mon Sep 17 00:00:00 2001 From: MagicBot Date: Sun, 16 Feb 2025 16:29:14 -0500 Subject: [PATCH] rank added to signature. New package created. --- src/engine/gameManager/PowersManager.java | 2 +- src/engine/jobs/WpakUsePowerJob.java | 4 +-- .../handlers/PerformActionMsgHandler.java | 2 +- .../handlers/SendSummonsMsgHandler.java | 5 +-- src/engine/wpak/EffectsParser.java | 6 +++- src/engine/wpak/PowerActionParser.java | 1 + src/engine/wpak/PowersParser.java | 1 + .../WpakPowerManager.java | 33 ++++++++++++------- 8 files changed, 35 insertions(+), 19 deletions(-) rename src/engine/{wpak => wpakpowers}/WpakPowerManager.java (94%) diff --git a/src/engine/gameManager/PowersManager.java b/src/engine/gameManager/PowersManager.java index 4ad5cb63..efea2ce9 100644 --- a/src/engine/gameManager/PowersManager.java +++ b/src/engine/gameManager/PowersManager.java @@ -32,9 +32,9 @@ import engine.server.MBServerStatics; import engine.wpak.EffectsParser; import engine.wpak.PowerActionParser; import engine.wpak.PowersParser; -import engine.wpak.WpakPowerManager; import engine.wpak.data.Effect; import engine.wpak.data.PowerAction; +import engine.wpakpowers.WpakPowerManager; import org.pmw.tinylog.Logger; import java.util.ArrayList; diff --git a/src/engine/jobs/WpakUsePowerJob.java b/src/engine/jobs/WpakUsePowerJob.java index ac68cc51..021d7ded 100644 --- a/src/engine/jobs/WpakUsePowerJob.java +++ b/src/engine/jobs/WpakUsePowerJob.java @@ -14,9 +14,7 @@ import engine.job.AbstractScheduleJob; import engine.net.client.msg.PerformActionMsg; import engine.objects.AbstractWorldObject; import engine.objects.PlayerCharacter; -import engine.powers.PowersBase; -import engine.wpak.WpakPowerManager; -import engine.wpak.data.Power; +import engine.wpakpowers.WpakPowerManager; public class WpakUsePowerJob extends AbstractScheduleJob { diff --git a/src/engine/net/client/handlers/PerformActionMsgHandler.java b/src/engine/net/client/handlers/PerformActionMsgHandler.java index 28ebbeda..3cc490b9 100644 --- a/src/engine/net/client/handlers/PerformActionMsgHandler.java +++ b/src/engine/net/client/handlers/PerformActionMsgHandler.java @@ -11,7 +11,7 @@ package engine.net.client.handlers; import engine.net.client.ClientConnection; import engine.net.client.msg.ClientNetMsg; import engine.net.client.msg.PerformActionMsg; -import engine.wpak.WpakPowerManager; +import engine.wpakpowers.WpakPowerManager; public class PerformActionMsgHandler extends AbstractClientMsgHandler { diff --git a/src/engine/net/client/handlers/SendSummonsMsgHandler.java b/src/engine/net/client/handlers/SendSummonsMsgHandler.java index 6abbd0b4..ba6d75fc 100644 --- a/src/engine/net/client/handlers/SendSummonsMsgHandler.java +++ b/src/engine/net/client/handlers/SendSummonsMsgHandler.java @@ -17,9 +17,10 @@ import engine.net.client.msg.PerformActionMsg; import engine.net.client.msg.SendSummonsMsg; import engine.objects.PlayerCharacter; import engine.server.MBServerStatics; -import engine.wpak.WpakPowerManager; +import engine.wpakpowers.WpakPowerManager; -import static engine.gameManager.PowersManager.*; +import static engine.gameManager.PowersManager.sendPowerMsg; +import static engine.gameManager.PowersManager.sendRecyclePower; public class SendSummonsMsgHandler extends AbstractClientMsgHandler { diff --git a/src/engine/wpak/EffectsParser.java b/src/engine/wpak/EffectsParser.java index 1a5b565f..2c5b49c0 100644 --- a/src/engine/wpak/EffectsParser.java +++ b/src/engine/wpak/EffectsParser.java @@ -13,12 +13,16 @@ import engine.mbEnums; import engine.wpak.data.ConditionEntry; import engine.wpak.data.Effect; import engine.wpak.data.ModifierEntry; +import engine.wpakpowers.WpakPowerManager; import org.pmw.tinylog.Logger; import java.io.IOException; import java.nio.file.Files; import java.nio.file.Paths; -import java.util.*; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Iterator; +import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; diff --git a/src/engine/wpak/PowerActionParser.java b/src/engine/wpak/PowerActionParser.java index 8fa8e781..d377021d 100644 --- a/src/engine/wpak/PowerActionParser.java +++ b/src/engine/wpak/PowerActionParser.java @@ -15,6 +15,7 @@ import engine.wpak.data.Effect; import engine.wpak.data.PowerAction; import engine.wpak.data.StatTransfer; import engine.wpak.data.TrackEntry; +import engine.wpakpowers.WpakPowerManager; import org.pmw.tinylog.Logger; import java.io.IOException; diff --git a/src/engine/wpak/PowersParser.java b/src/engine/wpak/PowersParser.java index f6af5c20..27717169 100644 --- a/src/engine/wpak/PowersParser.java +++ b/src/engine/wpak/PowersParser.java @@ -12,6 +12,7 @@ import engine.gameManager.ConfigManager; import engine.mbEnums; import engine.util.Hasher; import engine.wpak.data.*; +import engine.wpakpowers.WpakPowerManager; import org.pmw.tinylog.Logger; import java.io.IOException; diff --git a/src/engine/wpak/WpakPowerManager.java b/src/engine/wpakpowers/WpakPowerManager.java similarity index 94% rename from src/engine/wpak/WpakPowerManager.java rename to src/engine/wpakpowers/WpakPowerManager.java index 03ef35d4..32bc4ab4 100644 --- a/src/engine/wpak/WpakPowerManager.java +++ b/src/engine/wpakpowers/WpakPowerManager.java @@ -1,7 +1,10 @@ -package engine.wpak; +package engine.wpakpowers; import engine.InterestManagement.WorldGrid; -import engine.gameManager.*; +import engine.gameManager.ChatManager; +import engine.gameManager.DbManager; +import engine.gameManager.DispatchManager; +import engine.gameManager.SessionManager; import engine.job.JobContainer; import engine.job.JobScheduler; import engine.jobs.FinishRecycleTimeJob; @@ -17,9 +20,13 @@ import engine.net.client.msg.UpdateStateMsg; import engine.objects.*; import engine.server.MBServerStatics; import engine.util.Hasher; -import engine.wpak.data.*; +import engine.wpak.EffectsParser; +import engine.wpak.PowerActionParser; +import engine.wpak.PowersParser; import engine.wpak.data.Effect; +import engine.wpak.data.*; import org.pmw.tinylog.Logger; + import java.util.HashMap; import java.util.HashSet; @@ -283,13 +290,13 @@ public class WpakPowerManager { if(powerUsed == null) return; if(powerUsed.maxMobTargets > 1 || powerUsed.maxPlayerTargets > 1){ - AoeHandler(caster, target, powerUsed); + AoeHandler(caster, target, powerUsed, msg.getNumTrains()); }else{ - applyAllPowerEffects(powerUsed, target); + applyAllPowerEffects(powerUsed, msg.getNumTrains(), target); } } - private static void AoeHandler(PlayerCharacter caster, AbstractWorldObject target, Power powerUsed){ + private static void AoeHandler(PlayerCharacter caster, AbstractWorldObject target, Power powerUsed, int rank) { HashSet mobTargets = new HashSet<>(); HashSet pcTargets = new HashSet<>(); if(powerUsed.maxMobTargets > 0) @@ -299,7 +306,7 @@ public class WpakPowerManager { int count = 1; for(AbstractWorldObject mob : mobTargets){ if(count < powerUsed.maxMobTargets + 1){ - applyAllPowerEffects(powerUsed,mob); + applyAllPowerEffects(powerUsed, rank, mob); count ++; }else{ break; @@ -308,7 +315,7 @@ public class WpakPowerManager { count = 1; for(AbstractWorldObject pc : pcTargets){ if(count < powerUsed.maxPlayerTargets + 1){ - applyAllPowerEffects(powerUsed,pc); + applyAllPowerEffects(powerUsed, rank, pc); count ++; }else{ break; @@ -316,11 +323,15 @@ public class WpakPowerManager { } } - public static void applyAllPowerEffects(Power power, AbstractWorldObject target){ + public static void applyAllPowerEffects(Power power, int rank, AbstractWorldObject target) { + for(ActionEntry powerAction: power.actionEntries){ - Effect eff = effect_data.get(Hasher.SBStringHash(powerAction.effect_id)); - if(eff == null) + + Effect effect = effect_data.get(Hasher.SBStringHash(powerAction.effect_id)); + + if (effect == null) continue; + //TODO add in effect application } }