rank added to signature. New package created.

This commit is contained in:
2025-02-16 16:29:14 -05:00
parent 75e1dddd08
commit 5781737afc
8 changed files with 35 additions and 19 deletions
+1 -1
View File
@@ -32,9 +32,9 @@ import engine.server.MBServerStatics;
import engine.wpak.EffectsParser; import engine.wpak.EffectsParser;
import engine.wpak.PowerActionParser; import engine.wpak.PowerActionParser;
import engine.wpak.PowersParser; import engine.wpak.PowersParser;
import engine.wpak.WpakPowerManager;
import engine.wpak.data.Effect; import engine.wpak.data.Effect;
import engine.wpak.data.PowerAction; import engine.wpak.data.PowerAction;
import engine.wpakpowers.WpakPowerManager;
import org.pmw.tinylog.Logger; import org.pmw.tinylog.Logger;
import java.util.ArrayList; import java.util.ArrayList;
+1 -3
View File
@@ -14,9 +14,7 @@ import engine.job.AbstractScheduleJob;
import engine.net.client.msg.PerformActionMsg; import engine.net.client.msg.PerformActionMsg;
import engine.objects.AbstractWorldObject; import engine.objects.AbstractWorldObject;
import engine.objects.PlayerCharacter; import engine.objects.PlayerCharacter;
import engine.powers.PowersBase; import engine.wpakpowers.WpakPowerManager;
import engine.wpak.WpakPowerManager;
import engine.wpak.data.Power;
public class WpakUsePowerJob extends AbstractScheduleJob { public class WpakUsePowerJob extends AbstractScheduleJob {
@@ -11,7 +11,7 @@ package engine.net.client.handlers;
import engine.net.client.ClientConnection; import engine.net.client.ClientConnection;
import engine.net.client.msg.ClientNetMsg; import engine.net.client.msg.ClientNetMsg;
import engine.net.client.msg.PerformActionMsg; import engine.net.client.msg.PerformActionMsg;
import engine.wpak.WpakPowerManager; import engine.wpakpowers.WpakPowerManager;
public class PerformActionMsgHandler extends AbstractClientMsgHandler { public class PerformActionMsgHandler extends AbstractClientMsgHandler {
@@ -17,9 +17,10 @@ import engine.net.client.msg.PerformActionMsg;
import engine.net.client.msg.SendSummonsMsg; import engine.net.client.msg.SendSummonsMsg;
import engine.objects.PlayerCharacter; import engine.objects.PlayerCharacter;
import engine.server.MBServerStatics; 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 { public class SendSummonsMsgHandler extends AbstractClientMsgHandler {
+5 -1
View File
@@ -13,12 +13,16 @@ import engine.mbEnums;
import engine.wpak.data.ConditionEntry; import engine.wpak.data.ConditionEntry;
import engine.wpak.data.Effect; import engine.wpak.data.Effect;
import engine.wpak.data.ModifierEntry; import engine.wpak.data.ModifierEntry;
import engine.wpakpowers.WpakPowerManager;
import org.pmw.tinylog.Logger; import org.pmw.tinylog.Logger;
import java.io.IOException; import java.io.IOException;
import java.nio.file.Files; import java.nio.file.Files;
import java.nio.file.Paths; 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.Matcher;
import java.util.regex.Pattern; import java.util.regex.Pattern;
+1
View File
@@ -15,6 +15,7 @@ import engine.wpak.data.Effect;
import engine.wpak.data.PowerAction; import engine.wpak.data.PowerAction;
import engine.wpak.data.StatTransfer; import engine.wpak.data.StatTransfer;
import engine.wpak.data.TrackEntry; import engine.wpak.data.TrackEntry;
import engine.wpakpowers.WpakPowerManager;
import org.pmw.tinylog.Logger; import org.pmw.tinylog.Logger;
import java.io.IOException; import java.io.IOException;
+1
View File
@@ -12,6 +12,7 @@ import engine.gameManager.ConfigManager;
import engine.mbEnums; import engine.mbEnums;
import engine.util.Hasher; import engine.util.Hasher;
import engine.wpak.data.*; import engine.wpak.data.*;
import engine.wpakpowers.WpakPowerManager;
import org.pmw.tinylog.Logger; import org.pmw.tinylog.Logger;
import java.io.IOException; import java.io.IOException;
@@ -1,7 +1,10 @@
package engine.wpak; package engine.wpakpowers;
import engine.InterestManagement.WorldGrid; 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.JobContainer;
import engine.job.JobScheduler; import engine.job.JobScheduler;
import engine.jobs.FinishRecycleTimeJob; import engine.jobs.FinishRecycleTimeJob;
@@ -17,9 +20,13 @@ import engine.net.client.msg.UpdateStateMsg;
import engine.objects.*; import engine.objects.*;
import engine.server.MBServerStatics; import engine.server.MBServerStatics;
import engine.util.Hasher; 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.Effect;
import engine.wpak.data.*;
import org.pmw.tinylog.Logger; import org.pmw.tinylog.Logger;
import java.util.HashMap; import java.util.HashMap;
import java.util.HashSet; import java.util.HashSet;
@@ -283,13 +290,13 @@ public class WpakPowerManager {
if(powerUsed == null) if(powerUsed == null)
return; return;
if(powerUsed.maxMobTargets > 1 || powerUsed.maxPlayerTargets > 1){ if(powerUsed.maxMobTargets > 1 || powerUsed.maxPlayerTargets > 1){
AoeHandler(caster, target, powerUsed); AoeHandler(caster, target, powerUsed, msg.getNumTrains());
}else{ }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<AbstractWorldObject> mobTargets = new HashSet<>(); HashSet<AbstractWorldObject> mobTargets = new HashSet<>();
HashSet<AbstractWorldObject> pcTargets = new HashSet<>(); HashSet<AbstractWorldObject> pcTargets = new HashSet<>();
if(powerUsed.maxMobTargets > 0) if(powerUsed.maxMobTargets > 0)
@@ -299,7 +306,7 @@ public class WpakPowerManager {
int count = 1; int count = 1;
for(AbstractWorldObject mob : mobTargets){ for(AbstractWorldObject mob : mobTargets){
if(count < powerUsed.maxMobTargets + 1){ if(count < powerUsed.maxMobTargets + 1){
applyAllPowerEffects(powerUsed,mob); applyAllPowerEffects(powerUsed, rank, mob);
count ++; count ++;
}else{ }else{
break; break;
@@ -308,7 +315,7 @@ public class WpakPowerManager {
count = 1; count = 1;
for(AbstractWorldObject pc : pcTargets){ for(AbstractWorldObject pc : pcTargets){
if(count < powerUsed.maxPlayerTargets + 1){ if(count < powerUsed.maxPlayerTargets + 1){
applyAllPowerEffects(powerUsed,pc); applyAllPowerEffects(powerUsed, rank, pc);
count ++; count ++;
}else{ }else{
break; 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){ 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; continue;
//TODO add in effect application //TODO add in effect application
} }
} }