2 changed files with 0 additions and 157 deletions
@ -1,156 +0,0 @@
@@ -1,156 +0,0 @@
|
||||
// • ▌ ▄ ·. ▄▄▄· ▄▄ • ▪ ▄▄· ▄▄▄▄· ▄▄▄· ▐▄▄▄ ▄▄▄ .
|
||||
// ·██ ▐███▪▐█ ▀█ ▐█ ▀ ▪██ ▐█ ▌▪▐█ ▀█▪▐█ ▀█ •█▌ ▐█▐▌·
|
||||
// ▐█ ▌▐▌▐█·▄█▀▀█ ▄█ ▀█▄▐█·██ ▄▄▐█▀▀█▄▄█▀▀█ ▐█▐ ▐▌▐▀▀▀
|
||||
// ██ ██▌▐█▌▐█ ▪▐▌▐█▄▪▐█▐█▌▐███▌██▄▪▐█▐█ ▪▐▌██▐ █▌▐█▄▄▌
|
||||
// ▀▀ █▪▀▀▀ ▀ ▀ ·▀▀▀▀ ▀▀▀·▀▀▀ ·▀▀▀▀ ▀ ▀ ▀▀ █▪ ▀▀▀
|
||||
// Magicbane Emulator Project © 2013 - 2022
|
||||
// www.magicbane.com
|
||||
|
||||
|
||||
package engine.devcmd.cmds; |
||||
|
||||
import engine.devcmd.AbstractDevCmd; |
||||
import engine.gameManager.ChatManager; |
||||
import engine.gameManager.PowersManager; |
||||
import engine.mbEnums.PowerActionType; |
||||
import engine.objects.AbstractGameObject; |
||||
import engine.objects.PlayerCharacter; |
||||
import engine.powers.ActionsBase; |
||||
import engine.powers.PowersBase; |
||||
import engine.powers.effectmodifiers.AbstractEffectModifier; |
||||
import engine.util.ThreadUtils; |
||||
import org.pmw.tinylog.Logger; |
||||
|
||||
import java.util.HashMap; |
||||
import java.util.HashSet; |
||||
|
||||
public class ApplyBonusCmd extends AbstractDevCmd { |
||||
|
||||
public ApplyBonusCmd() { |
||||
super("applybonus"); |
||||
} |
||||
|
||||
@Override |
||||
protected void _doCmd(PlayerCharacter pcSender, String[] words, |
||||
AbstractGameObject target) { |
||||
|
||||
String action = words[0]; |
||||
|
||||
PowerActionType actionType = null; |
||||
|
||||
HashMap<String, HashSet<String>> appliedMods = new HashMap<>(); |
||||
|
||||
try { |
||||
|
||||
if (action.equals("all") == false) |
||||
for (PowerActionType powerActionType : PowerActionType.values()) { |
||||
if (powerActionType.name().equalsIgnoreCase(action) == false) |
||||
continue; |
||||
actionType = powerActionType; |
||||
break; |
||||
} |
||||
|
||||
} catch (Exception e) { |
||||
this.throwbackError(pcSender, "Invalid power Action type for " + action); |
||||
this.throwbackInfo(pcSender, "Valid Types : " + this.getActionTypes()); |
||||
return; |
||||
} |
||||
if (action.equals("all") == false) |
||||
if (actionType == null) { |
||||
this.throwbackError(pcSender, "Invalid power Action type for " + action); |
||||
this.throwbackInfo(pcSender, "Valid Types : " + this.getActionTypes()); |
||||
return; |
||||
} |
||||
|
||||
|
||||
for (PowersBase pb : PowersManager.powersBaseByIDString.values()) { |
||||
if (pb.getActions() == null || pb.getActions().isEmpty()) |
||||
continue; |
||||
|
||||
for (ActionsBase ab : pb.getActions()) { |
||||
if (ab.getPowerAction() == null) |
||||
continue; |
||||
if (action.equals("all") == false) |
||||
if (ab.getPowerAction().getType().equalsIgnoreCase(action) == false) |
||||
continue; |
||||
String effect1 = ""; |
||||
String effect2 = ""; |
||||
ChatManager.chatSystemInfo(pcSender, "Applying Power " + pb.getName() + " : " + pb.getDescription()); |
||||
if (ab.getPowerAction().getEffectsBase() == null) { |
||||
|
||||
try { |
||||
PowersManager.runPowerAction(pcSender, pcSender, pcSender.getLoc(), ab, 1, pb); |
||||
} catch (Exception e) { |
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace(); |
||||
} |
||||
ThreadUtils.sleep(500); |
||||
continue; |
||||
} |
||||
|
||||
|
||||
if (ab.getPowerAction().getEffectsBase().getModifiers() == null || ab.getPowerAction().getEffectsBase().getModifiers().isEmpty()) { |
||||
try { |
||||
PowersManager.runPowerAction(pcSender, pcSender, pcSender.getLoc(), ab, 1, pb); |
||||
} catch (Exception e) { |
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace(); |
||||
} |
||||
continue; |
||||
} |
||||
|
||||
boolean run = true; |
||||
for (AbstractEffectModifier mod : ab.getPowerAction().getEffectsBase().getModifiers()) { |
||||
if (appliedMods.containsKey(mod.modType.name()) == false) { |
||||
appliedMods.put(mod.modType.name(), new HashSet<>()); |
||||
} |
||||
|
||||
// if (appliedMods.get(mod.modType.name()).contains(mod.sourceType.name())){
|
||||
// continue;
|
||||
// }
|
||||
|
||||
appliedMods.get(mod.modType.name()).add(mod.sourceType.name()); |
||||
try { |
||||
try { |
||||
PowersManager.runPowerAction(pcSender, pcSender, pcSender.getLoc(), ab, 1, pb); |
||||
} catch (Exception e) { |
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace(); |
||||
} |
||||
|
||||
} catch (Exception e) { |
||||
Logger.error(e); |
||||
} |
||||
break; |
||||
|
||||
|
||||
} |
||||
|
||||
} |
||||
} |
||||
} |
||||
|
||||
|
||||
@Override |
||||
protected String _getUsageString() { |
||||
return "' /bounds'"; |
||||
} |
||||
|
||||
@Override |
||||
protected String _getHelpString() { |
||||
return "Audits all the mobs in a zone."; |
||||
|
||||
} |
||||
|
||||
private String getActionTypes() { |
||||
String output = ""; |
||||
|
||||
for (PowerActionType actionType : PowerActionType.values()) { |
||||
output += actionType.name() + " | "; |
||||
|
||||
} |
||||
|
||||
return output.substring(0, output.length() - 3); |
||||
} |
||||
|
||||
} |
Loading…
Reference in new issue