Browse Source

File reformat

feature-config-usage
MagicBot 4 days ago
parent
commit
11e40d7e57
  1. 43
      src/engine/wpakpowers/WpakPowerManager.java

43
src/engine/wpakpowers/WpakPowerManager.java

@ -48,7 +48,7 @@ public class WpakPowerManager {
private static JobScheduler js; private static JobScheduler js;
public static void init(){ public static void init() {
EffectsParser.parseWpakFile(); EffectsParser.parseWpakFile();
PowersParser.parseWpakFile(); PowersParser.parseWpakFile();
PowerActionParser.parseWpakFile(); PowerActionParser.parseWpakFile();
@ -294,39 +294,44 @@ public class WpakPowerManager {
return false; return false;
} }
public static void finishUsePower(PerformActionMsg msg, PlayerCharacter caster, AbstractWorldObject target){ public static void finishUsePower(PerformActionMsg msg, PlayerCharacter caster, AbstractWorldObject target) {
Power powerUsed = powers.get(msg.getPowerUsedID()); Power powerUsed = powers.get(msg.getPowerUsedID());
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, msg.getNumTrains()); AoeHandler(caster, target, powerUsed, msg.getNumTrains());
}else{ } else {
applyAllPowerEffects(caster, powerUsed, msg.getNumTrains(), target); applyAllPowerEffects(caster, powerUsed, msg.getNumTrains(), target);
} }
} }
private static void AoeHandler(PlayerCharacter caster, AbstractWorldObject target, Power powerUsed, int rank) { 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)
mobTargets = WorldGrid.getObjectsInRangePartial(target.loc,powerUsed.areaRange, MBServerStatics.MASK_MOB);
if(powerUsed.maxPlayerTargets > 0)
pcTargets = WorldGrid.getObjectsInRangePartial(target.loc,powerUsed.areaRange, MBServerStatics.MASK_PLAYER);
int count = 1; int count = 1;
for(AbstractWorldObject mob : mobTargets){
if(count < powerUsed.maxMobTargets + 1){ if (powerUsed.maxMobTargets > 0)
mobTargets = WorldGrid.getObjectsInRangePartial(target.loc, powerUsed.areaRange, MBServerStatics.MASK_MOB);
if (powerUsed.maxPlayerTargets > 0)
pcTargets = WorldGrid.getObjectsInRangePartial(target.loc, powerUsed.areaRange, MBServerStatics.MASK_PLAYER);
for (AbstractWorldObject mob : mobTargets) {
if (count < powerUsed.maxMobTargets + 1) {
applyAllPowerEffects(caster, powerUsed, rank, mob); applyAllPowerEffects(caster, powerUsed, rank, mob);
count ++; count++;
}else{ } else {
break; break;
} }
} }
count = 1; count = 1;
for(AbstractWorldObject pc : pcTargets){ for (AbstractWorldObject pc : pcTargets) {
if(count < powerUsed.maxPlayerTargets + 1){ if (count < powerUsed.maxPlayerTargets + 1) {
applyAllPowerEffects(caster, powerUsed, rank, pc); applyAllPowerEffects(caster, powerUsed, rank, pc);
count ++; count++;
}else{ } else {
break; break;
} }
} }
@ -334,7 +339,7 @@ public class WpakPowerManager {
public static void applyAllPowerEffects(AbstractCharacter caster, Power power, int rank, AbstractWorldObject target) { public static void applyAllPowerEffects(AbstractCharacter caster, Power power, int rank, AbstractWorldObject target) {
for(ActionEntry powerAction: power.actionEntries){ for (ActionEntry powerAction : power.actionEntries) {
int effectTokem = Hasher.SBStringHash(powerAction.effect_id); int effectTokem = Hasher.SBStringHash(powerAction.effect_id);
Effect effect = effect_data.get(effectTokem); Effect effect = effect_data.get(effectTokem);

Loading…
Cancel
Save