public List<Interfaces.ICommand> getClassCommands(LiveImplementation.FullCombatCharacter source, LiveImplementation.CombatData combatData) { List<ICommand> commands = new List<ICommand>(); int level = source.classLevel; commands.Add(new Command(false, new List<ICommand>(), false, 0, 0, "Magic Dart", false, 0, true, isDisabled("Magic Dart", source, combatData))); if (level >= 3) { commands.Add(new Command(false, new List<ICommand>(), false, 0, 0, "Magic Missile", true, 1, true, isDisabled("Magic Missile", source, combatData))); } if (level >= 7) { commands.Add(new Command(false, new List<ICommand>(), false, 0, 0, "Arcane Prison", false, 0, true, isDisabled("Arcane Prison", source, combatData))); } return commands; }
public bool isDisabled(string abilityName, LiveImplementation.FullCombatCharacter source, LiveImplementation.CombatData combatData) { if (abilityName == "Magic Missile" && source.mp == 0) { return true; } else if (combatData.hasCooldown(source.name, abilityName)) { return true; } return false; }
public bool isDisabled(string abilityName, LiveImplementation.FullCombatCharacter source, LiveImplementation.CombatData combatData) { if (abilityName == "Disarming Blow") { if(combatData.hasCooldown(source.name, "Disarming Blow")) { return true; } } else if (abilityName == "One-Two Punch") { if (combatData.hasCooldown(source.name, "One-Two Punch")) { return true; } } else if (abilityName == "Sweep") { if (combatData.hasCooldown(source.name, "Sweep")) { return true; } } else if (abilityName == "Preemptive Strike") { if (combatData.hasCooldown(source.name, "Preemptive Strike")) { return true; } } else if (abilityName == "Vicious Blow") { if (combatData.hasCooldown(source.name, "Vicious Blow")) { return true; } } else if (abilityName == "Adrenaline") { if (source.usedAbilities.Contains("Adrenaline")) { return true; } } return false; }
public Func<List<LiveImplementation.FullCombatCharacter>, List<LiveImplementation.FullCombatCharacter>, LiveImplementation.CombatData, List<Interfaces.IEffect>> initialExecute(LiveImplementation.FullCombatCharacter source) { return ((List<FullCombatCharacter> allies, List<FullCombatCharacter> enemies, CombatData combatData) => { List<IEffect> effects = new List<IEffect>(); return effects; }); }
public List<Interfaces.ICommand> getClassCommands(LiveImplementation.FullCombatCharacter source, LiveImplementation.CombatData combatData) { List<ICommand> commands = new List<ICommand>(); int level = source.classLevel; if (level >= 3) { commands.Add(new Command(false, new List<ICommand>(), false, 0, 0, "Disarming Blow", false, 0, true, isDisabled("Disarming Blow", source, combatData))); } if (level >= 7) { commands.Add(new Command(false, new List<ICommand>(), false, 0, 0, "One-Two Punch", false, 0, true, isDisabled("One-Two Punch", source, combatData))); } if (level >= 9) { commands.Add(new Command(false, new List<ICommand>(), false, 0, 0, "Sweep", false, 0, false, isDisabled("Sweep", source, combatData))); } if (level >= 13) { commands.Add(new Command(false, new List<ICommand>(), false, 0, 0, "Preemptive Strike", false, 0, false, isDisabled("Preemptive Strike", source, combatData))); } if (level >= 15) { commands.Add(new Command(false, new List<ICommand>(), false, 0, 0, "Vicious Blow", false, 0, true, isDisabled("Vicious Blow", source, combatData))); } if (level >= 17) { commands.Add(new Command(false, new List<ICommand>(), false, 0, 0, "Adrenaline", false, 0, false, isDisabled("Adrenaline", source, combatData))); } return commands; }