forked from MagicBane/Server
Signature updated for actions
This commit is contained in:
@@ -1376,7 +1376,7 @@ public class mbEnums {
|
|||||||
@FunctionalInterface
|
@FunctionalInterface
|
||||||
public interface PowerActionFunction {
|
public interface PowerActionFunction {
|
||||||
void execute(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
void execute(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank);
|
Integer rank, PowerAction powerAction);
|
||||||
}
|
}
|
||||||
|
|
||||||
public enum PowerActionType {
|
public enum PowerActionType {
|
||||||
@@ -1421,8 +1421,8 @@ public class mbEnums {
|
|||||||
// Identical to behaviours?
|
// Identical to behaviours?
|
||||||
|
|
||||||
public void execute(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public void execute(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
function.execute(caster, target, power, powerAction, effect, modifierEntry, rank);
|
function.execute(caster, target, power, rank, powerAction);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2,160 +2,158 @@ package engine.wpakpowers;
|
|||||||
|
|
||||||
import engine.objects.AbstractCharacter;
|
import engine.objects.AbstractCharacter;
|
||||||
import engine.objects.AbstractWorldObject;
|
import engine.objects.AbstractWorldObject;
|
||||||
import engine.wpak.data.Effect;
|
|
||||||
import engine.wpak.data.ModifierEntry;
|
|
||||||
import engine.wpak.data.Power;
|
import engine.wpak.data.Power;
|
||||||
import engine.wpak.data.PowerAction;
|
import engine.wpak.data.PowerAction;
|
||||||
|
|
||||||
public class Actions {
|
public class Actions {
|
||||||
|
|
||||||
public static void ApplyEffect(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void ApplyEffect(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void ApplyEffects(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void ApplyEffects(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void Block(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void Block(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void Charm(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void Charm(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void ClaimMine(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void ClaimMine(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void ClearAggro(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void ClearAggro(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void ClearNearbyAggro(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void ClearNearbyAggro(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void Confusion(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void Confusion(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void CreateMob(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void CreateMob(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void DamageOverTime(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void DamageOverTime(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void DeferredPower(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void DeferredPower(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void DirectDamage(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void DirectDamage(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void Invis(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void Invis(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void MobRecall(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void MobRecall(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void Peek(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void Peek(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void Recall(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void Recall(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void RemoveEffect(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void RemoveEffect(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void Resurrect(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void Resurrect(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void RunegateTeleport(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void RunegateTeleport(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void SetItemFlag(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void SetItemFlag(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void SimpleDamage(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void SimpleDamage(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void SpireDisable(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void SpireDisable(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void Steal(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void Steal(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void Summon(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void Summon(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void Teleport(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void Teleport(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void Track(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void Track(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void TransferStat(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void TransferStat(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void TransferStatOT(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void TransferStatOT(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void Transform(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void Transform(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void TreeChoke(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
public static void TreeChoke(AbstractCharacter caster, AbstractWorldObject target, Power power,
|
||||||
PowerAction powerAction, Effect effect, ModifierEntry modifierEntry, Integer rank) {
|
Integer rank, PowerAction powerAction) {
|
||||||
System.out.println("PowerAction method called");
|
System.out.println("PowerAction method called");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -302,7 +302,7 @@ public class WpakPowerManager {
|
|||||||
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);
|
runPowerActions(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) {
|
||||||
@@ -319,7 +319,7 @@ public class WpakPowerManager {
|
|||||||
|
|
||||||
for (AbstractWorldObject mob : mobTargets) {
|
for (AbstractWorldObject mob : mobTargets) {
|
||||||
if (count < powerUsed.maxMobTargets + 1) {
|
if (count < powerUsed.maxMobTargets + 1) {
|
||||||
applyAllPowerEffects(caster, powerUsed, rank, mob);
|
runPowerActions(caster, powerUsed, rank, mob);
|
||||||
count++;
|
count++;
|
||||||
} else {
|
} else {
|
||||||
break;
|
break;
|
||||||
@@ -329,7 +329,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(caster, powerUsed, rank, pc);
|
runPowerActions(caster, powerUsed, rank, pc);
|
||||||
count++;
|
count++;
|
||||||
} else {
|
} else {
|
||||||
break;
|
break;
|
||||||
@@ -337,7 +337,10 @@ public class WpakPowerManager {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void applyAllPowerEffects(AbstractCharacter caster, Power power, int rank, AbstractWorldObject target) {
|
public static void runPowerActions(AbstractCharacter caster, Power power, int rank, AbstractWorldObject target) {
|
||||||
|
|
||||||
|
// Iterate through the poweractions for this
|
||||||
|
// power and execute them..
|
||||||
|
|
||||||
for (ActionEntry actionEntry : power.actionEntries) {
|
for (ActionEntry actionEntry : power.actionEntries) {
|
||||||
|
|
||||||
@@ -348,6 +351,9 @@ public class WpakPowerManager {
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
powerAction.action_type.execute(caster, target, power, rank,
|
||||||
|
powerAction);
|
||||||
|
|
||||||
// Iterate effects for this powerAction and apply
|
// Iterate effects for this powerAction and apply
|
||||||
|
|
||||||
for (Effect effect : powerAction.effects) {
|
for (Effect effect : powerAction.effects) {
|
||||||
|
|||||||
Reference in New Issue
Block a user