Ejemplo n.º 1
0
        /// <summary>
        /// Casts a curse (i.e. Vex or Scourge) on a target.
        /// </summary>
        /// <param name="target">The NPC to target for the debuff.</param>
        /// <returns>True if the spell was cast; false otherwise.</returns>
        public override async Task <bool> Curse(Npc target)
        {
            if (_scourgeOrb == null)
            {
                return(await base.Curse(target));
            }

            return(await StatusCommands.CastStatus(_self, target, target.Activity.Curse, _scourgeOrb));
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Casts the Paralyze debuff on a target. It can be cast a specified number of times to mitigate
        /// the risk presented by the failure rate.
        /// </summary>
        /// <param name="target">The NPC to target for the debuff.</param>
        /// <param name="numberOfAttempts">The number of times to attempt to cast the spell.</param>
        /// <returns>True if the spell was cast; false otherwise.</returns>
        public async Task <bool> Paralyze(Npc target, int numberOfAttempts = 3)
        {
            var didCast = new bool[numberOfAttempts];

            for (var i = 0; i < numberOfAttempts; i++)
            {
                didCast[i] = await StatusCommands.CastStatus(_self, target, target.Activity.Paralyze, _paralyzeSpell);

                await Task.Delay(50);
            }

            return(didCast.Contains(true));
        }
        public StregsystemController()
        {
            StatusCommands     MakeAktive       = new StatusCommands(Aktivate);
            StatusCommands     MakeDeactivacted = new StatusCommands(Deactivate);
            QuitCommand        Quit             = new QuitCommand(CLI.Close);
            CreditCommands     MakeCreditOn     = new CreditCommands(CreaditOn);
            CreditCommands     MakeCreditOff    = new CreditCommands(CreditOff);
            AddCreditsCommands AddCredits       = new AddCreditsCommands(sSystem.AddCreditsToAccount);

            _adminCommands.Add(":activate", MakeAktive);
            _adminCommands.Add(":deactivate", MakeDeactivacted);
            _adminCommands.Add(":quit", Quit);
            _adminCommands.Add(":q", Quit);
            _adminCommands.Add(":crediton", MakeCreditOn);
            _adminCommands.Add(":creditoff", MakeCreditOff);
            _adminCommands.Add(":addcredits", AddCredits);
        }
Ejemplo n.º 4
0
 /// <summary>
 /// Casts the Sanctuary buff on a target.
 /// </summary>
 /// <param name="target">An external member of the caster's group.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public async Task <bool> Sanctuary(GroupMember target)
 {
     return(await StatusCommands.CastStatus(_self, target, target.Activity.Sanctuary, _sanctuarySpell));
 }
Ejemplo n.º 5
0
 /// <summary>
 /// Casts the Valor buff on a target.
 /// </summary>
 /// <param name="target">An external member of the caster's group.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public async Task <bool> Valor(GroupMember target)
 {
     return(await StatusCommands.CastStatus(_self, target, target.Activity.Valor, _valorSpell));
 }
Ejemplo n.º 6
0
 /// <summary>
 /// Casts the Blindness debuff on a target.
 /// </summary>
 /// <param name="target">The NPC to target for the debuff.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public async Task <bool> Blind(Npc target)
 {
     return(await StatusCommands.CastStatus(_self, target, target.Activity.Blind, _blindSpell));
 }
Ejemplo n.º 7
0
 /// <summary>
 /// Casts the Sanctuary buff on a target.
 /// </summary>
 /// <param name="target">The caster or a multibox member of the caster's group.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public async Task <bool> Sanctuary(TkClient target)
 {
     return(await StatusCommands.CastStatus(_self, target, target.Activity.Asv.Sanctuary, _sanctuarySpell));
 }
Ejemplo n.º 8
0
 /// <summary>
 /// Removes the Venom debuff from a target.
 /// </summary>
 /// <param name="target">The caster or a multibox member of the caster's group.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public async Task <bool> Purge(TkClient target)
 {
     return(await StatusCommands.CastDebuffCure(_self, target, target.Activity.Debuffs.Venom, _purgeSpell));
 }
Ejemplo n.º 9
0
 /// <summary>
 /// Casts the Venom debuff on a target.
 /// </summary>
 /// <param name="target">The NPC to target for the debuff.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public async Task <bool> Venom(Npc target)
 {
     return(await StatusCommands.CastStatus(_self, target, target.Activity.Venom, _venomSpell));
 }
Ejemplo n.º 10
0
 /// <summary>
 /// Casts the Doze debuff on a target.
 /// </summary>
 /// <param name="target">The NPC to target for the debuff.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public async Task <bool> Doze(Npc target)
 {
     return(await StatusCommands.CastStatus(_self, target, target.Activity.Doze, _dozeSpell));
 }
Ejemplo n.º 11
0
 /// <summary>
 /// Casts Dishearten on a target.
 /// </summary>
 /// <param name="target">The NPC to target for the debuff.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public virtual async Task <bool> Dishearten(Npc target)
 {
     return(await StatusCommands.CastStatus(_self, target, target.Activity.Dishearten, _disheartenSpell));
 }
Ejemplo n.º 12
0
 /// <summary>
 /// Removes the Paralysis debuff from a target.
 /// </summary>
 /// <param name="target">The caster or a multibox member of the caster's group.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public async Task <bool> CureParalysis(TkClient target)
 {
     return(await StatusCommands.CastDebuffCure(_self, target, target.Activity.Debuffs.Paralysis, _cureParalysisSpell));
 }
Ejemplo n.º 13
0
 /// <summary>
 /// Removes the Paralysis debuff from a target.
 /// </summary>
 /// <param name="target">An external member of the caster's group.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public async Task <bool> CureParalysis(GroupMember target)
 {
     return(await StatusCommands.CastDebuffCure(_self, target, target.Activity.Paralysis, _cureParalysisSpell));
 }
Ejemplo n.º 14
0
 /// <summary>
 /// Removes the Vex curse from a target.
 /// </summary>
 /// <param name="target">An external member of the caster's group.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public async Task <bool> RemoveCurse(GroupMember target)
 {
     return(await StatusCommands.CastDebuffCure(_self, target, target.Activity.Vex, _removeCurseSpell));
 }
Ejemplo n.º 15
0
 /// <summary>
 /// Removes the Vex curse from a target.
 /// </summary>
 /// <param name="target">The caster or a multibox member of the caster's group.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public async Task <bool> RemoveCurse(TkClient target)
 {
     return(await StatusCommands.CastDebuffCure(_self, target, target.Activity.Debuffs.Vex, _removeCurseSpell));
 }
Ejemplo n.º 16
0
 /// <summary>
 /// Removes the Venom debuff from a target.
 /// </summary>
 /// <param name="target">An external member of the caster's group.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public async Task <bool> Purge(GroupMember target)
 {
     return(await StatusCommands.CastDebuffCure(_self, target, target.Activity.Venom, _purgeSpell));
 }
Ejemplo n.º 17
0
 /// <summary>
 /// Casts the Harden Armor buff on a target.
 /// </summary>
 /// <param name="target">The caster or a multibox member of the caster's group.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public async Task <bool> HardenArmor(TkClient target)
 {
     return(await StatusCommands.CastStatus(_self, target, target.Activity.Asv.HardenArmor, _hardenArmorSpell));
 }
Ejemplo n.º 18
0
 /// <summary>
 /// Removes the Scourge debuff from a target.
 /// </summary>
 /// <param name="target">The caster or a multibox member of the caster's group.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public async Task <bool> Atone(TkClient target)
 {
     return(await StatusCommands.CastDebuffCure(_self, target, target.Activity.Debuffs.Scourge, _atoneSpell));
 }
Ejemplo n.º 19
0
 /// <summary>
 /// Casts the Harden Armor buff on a target.
 /// </summary>
 /// <param name="target">An external member of the caster's group.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public async Task <bool> HardenArmor(GroupMember target)
 {
     return(await StatusCommands.CastStatus(_self, target, target.Activity.HardenArmor, _hardenArmorSpell));
 }
Ejemplo n.º 20
0
 /// <summary>
 /// Casts the Paralyze debuff on a target.
 /// </summary>
 /// <param name="target">The NPC to target for the debuff.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public async Task <bool> Paralyze(Npc target) // TODO: Figure out how to compensate for the failure rate
 {
     return(await StatusCommands.CastStatus(_self, target, target.Activity.Paralyze, _paralyzeSpell));
 }
Ejemplo n.º 21
0
 /// <summary>
 /// Removes the Blindness debuff from a target.
 /// </summary>
 /// <param name="target">An external member of the caster's group.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public async Task <bool> RemoveVeil(GroupMember target)
 {
     return(await StatusCommands.CastDebuffCure(_self, target, target.Activity.Blindness, _removeVeilSpell));
 }
Ejemplo n.º 22
0
 /// <summary>
 /// Casts a curse (i.e. Vex or Scourge) on a target.
 /// </summary>
 /// <param name="target">The NPC to target for the debuff.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public virtual async Task <bool> Curse(Npc target)
 {
     return(await StatusCommands.CastStatus(_self, target, target.Activity.Curse, CurseSpell));
 }
Ejemplo n.º 23
0
 /// <summary>
 /// Removes the Scourge debuff from a target.
 /// </summary>
 /// <param name="target">An external member of the caster's group.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public async Task <bool> Atone(GroupMember target)
 {
     return(await StatusCommands.CastDebuffCure(_self, target, target.Activity.Scourge, _atoneSpell));
 }
Ejemplo n.º 24
0
 /// <summary>
 /// Casts the Sleep debuff on a target.
 /// </summary>
 /// <param name="target">The NPC to target for the debuff.</param>
 /// <returns>True if the spell was cast; false otherwise.</returns>
 public async Task <bool> Sleep(Npc target)
 {
     return(await StatusCommands.CastStatus(_self, target, target.Activity.Sleep, _sleepSpell));
 }