public GunnerLayoutVM()
        {
            Game.DB !.SkillsDatabase.TryGetSkill(51000, Class.Gunner, out var bfire);
            Game.DB.SkillsDatabase.TryGetSkill(130200, Class.Gunner, out var balder);
            Game.DB.SkillsDatabase.TryGetSkill(20600, Class.Gunner, out var bombard);
            Game.DB.SkillsDatabase.TryGetSkill(410100, Class.Gunner, out var modSys);


            BurstFire   = new Cooldown(bfire, false);
            Bombardment = new Cooldown(bombard, true)
            {
                CanFlash = true
            };
            Balder = new Cooldown(balder, true)
            {
                CanFlash = true
            };

            ModularSystem = new SkillWithEffect(Dispatcher, modSys);
            // ????
            //Balder.FlashOnAvailable = true;
            //Bombardment.FlashOnAvailable = true;
            //ModularSystem.Cooldown.FlashOnAvailable = true;

            //StaminaTracker.PropertyChanged += FlashBfIfFullWp;
        }
 protected override void LoadSpecialSkills()
 {
     SkillsDatabase.TryGetSkill(150700, Class.Assassin, out Skill bh);
     SkillsDatabase.TryGetSkill(80200, Class.Assassin, out Skill fa);
     BurningHeart  = new FixedSkillCooldown(bh, CooldownType.Skill, _dispatcher, false);
     FireAvalanche = new FixedSkillCooldown(fa, CooldownType.Skill, _dispatcher, false);
 }
 protected override void LoadSpecialSkills()
 {
     ShadowReaping = new DurationCooldownIndicator(_dispatcher);
     SkillsDatabase.TryGetSkill(160100, Class.Soulless, out Skill sr);
     ShadowReaping.Cooldown = new FixedSkillCooldown(sr, CooldownType.Skill, _dispatcher, true);
     ShadowReaping.Buff     = new FixedSkillCooldown(sr, CooldownType.Skill, _dispatcher, true);
 }
Example #4
0
 protected override void LoadSpecialSkills()
 {
     ManaBoost = new DurationCooldownIndicator(_dispatcher);
     SkillsDatabase.TryGetSkill(340200, Class.Sorcerer, out Skill mb);
     ManaBoost.Cooldown = new FixedSkillCooldown(mb, CooldownType.Skill, _dispatcher, true);
     ManaBoost.Buff     = new FixedSkillCooldown(mb, CooldownType.Skill, _dispatcher, false);
 }
        public PriestLayoutVM()
        {
            //Energy Stars
            Game.DB !.SkillsDatabase.TryGetSkill(350410, Class.Priest, out var es);
            EnergyStars = new SkillWithEffect(Dispatcher, es);

            // Grace
            Game.DB.SkillsDatabase.TryGetSkill(390100, Class.Priest, out var gr);
            Grace = new SkillWithEffect(Dispatcher, gr);

            Grace.Effect.Started += OnGraceBuffStarted;
            Grace.Effect.Ended   += OnGraceBuffEnded;

            // Edict Of Judgment
            Game.DB.SkillsDatabase.TryGetSkill(430100, Class.Priest, out var ed);
            EdictOfJudgment = new SkillWithEffect(Dispatcher, ed);
            EdictOfJudgment.Effect.Started += OnEdictBuffStarted;
            EdictOfJudgment.Effect.Ended   += OnEdictBuffEnded;

            // Divine Charge
            Game.DB.SkillsDatabase.TryGetSkill(280200, Class.Priest, out var dc);
            DivineCharge = new SkillWithEffect(Dispatcher, dc);

            // Tripple Nenesis
            Game.DB.SkillsDatabase.TryGetSkill(290100, Class.Priest, out var tn);
            TripleNemesis = new SkillWithEffect(Dispatcher, tn);

            AbnormalityTracker.MarkingExpired   += OnTripleNemesisExpired;
            AbnormalityTracker.MarkingRefreshed += OnTripleNemesisRefreshed;
        }
        public ReaperLayoutVM()
        {
            Game.DB !.SkillsDatabase.TryGetSkill(160100, Class.Reaper, out var sr);
            ShadowReaping = new SkillWithEffect(Dispatcher, sr);

            Game.DB.SkillsDatabase.TryGetSkill(180100, Class.Reaper, out var se);
            ShroudedEscape = new SkillWithEffect(Dispatcher, se);
        }
Example #7
0
 protected override void LoadSpecialSkills()
 {
     //Ragnarok
     Ragnarok = new DurationCooldownIndicator(_dispatcher);
     SkillsDatabase.TryGetSkill(120100, Class.Glaiver, out Skill rag);
     Ragnarok.Cooldown = new FixedSkillCooldown(rag, CooldownType.Skill, _dispatcher, true);
     Ragnarok.Buff     = new FixedSkillCooldown(rag, CooldownType.Skill, _dispatcher, false);
 }
 protected override void LoadSpecialSkills()
 {
     //Deadly gamble
     DeadlyGamble = new DurationCooldownIndicator(_dispatcher);
     SkillsDatabase.TryGetSkill(200200, Class.Warrior, out Skill dg);
     DeadlyGamble.Buff     = new FixedSkillCooldown(dg, CooldownType.Skill, _dispatcher, false);
     DeadlyGamble.Cooldown = new FixedSkillCooldown(dg, CooldownType.Skill, _dispatcher, true);
 }
Example #9
0
 protected override void LoadSpecialSkills()
 {
     SkillsDatabase.TryGetSkill(410100, Class.Elementalist, out Skill cont);
     SkillsDatabase.TryGetSkill(120100, Class.Elementalist, out Skill vow);
     Contagion    = new FixedSkillCooldown(cont, CooldownType.Skill, _dispatcher, true);
     Vow          = new DurationCooldownIndicator(_dispatcher);
     Vow.Buff     = new FixedSkillCooldown(vow, CooldownType.Skill, _dispatcher, false);
     Vow.Cooldown = new FixedSkillCooldown(vow, CooldownType.Skill, _dispatcher, false);
 }
Example #10
0
        public SlayerLayoutVM()
        {
            // In Cold Blood
            Game.DB !.SkillsDatabase.TryGetSkill(200200, Class.Slayer, out var icb);
            InColdBlood = new SkillWithEffect(Dispatcher, icb);

            // Overhand Strike
            Game.DB.SkillsDatabase.TryGetSkill(80900, Class.Slayer, out var ohs);
            OverhandStrike = new Cooldown(ohs, false);
        }
Example #11
0
 public static void CheckHurricane(S_ABNORMALITY_BEGIN msg)
 {
     if (msg.AbnormalityId == HurricaneId)
     {
         Debug.WriteLine("Checking hurricane; id={0} caster={1} player={2}", msg.AbnormalityId, msg.CasterId, SessionManager.CurrentPlayer.EntityId);
     }
     if (msg.AbnormalityId == HurricaneId && msg.CasterId == SessionManager.CurrentPlayer.EntityId)
     {
         SkillsDatabase.TryGetSkill(HurricaneId, Class.Common, out Skill hurricane);
         SkillManager.AddSkillDirectly(hurricane, HurricaneDuration);
     }
 }
        public ValkyrieLayoutVM()
        {
            RunemarksCounter = new Counter(7, false);

            Game.DB !.SkillsDatabase.TryGetSkill(120100, Class.Valkyrie, out var rag);
            Ragnarok = new SkillWithEffect(Dispatcher, rag);

            Game.DB.SkillsDatabase.TryGetSkill(250100, Class.Valkyrie, out var gf);
            Godsfall = new SkillWithEffect(Dispatcher, gf);

            Ragnarok.Effect.SecondsUpdated += OnEffectSecondsUpdated;
        }
Example #13
0
        protected override void LoadSpecialSkills()
        {
            //Energy Stars
            EnergyStars = new DurationCooldownIndicator(_dispatcher);
            SkillsDatabase.TryGetSkill(350410, Class.Priest, out Skill es);
            EnergyStars.Cooldown = new FixedSkillCooldown(es, CooldownType.Skill, _dispatcher, true);
            EnergyStars.Buff     = new FixedSkillCooldown(es, CooldownType.Skill, _dispatcher, false);

            Grace = new DurationCooldownIndicator(_dispatcher);
            SkillsDatabase.TryGetSkill(390100, Class.Priest, out Skill gr);
            Grace.Cooldown = new FixedSkillCooldown(gr, CooldownType.Skill, _dispatcher, false);
            Grace.Buff     = new FixedSkillCooldown(gr, CooldownType.Skill, _dispatcher, false);
        }
        protected override void LoadSpecialSkills()
        {
            SkillsDatabase.TryGetSkill(200200, Class.Slayer, out Skill icb);
            SkillsDatabase.TryGetSkill(80900, Class.Slayer, out Skill ohs);

            InColdBlood =
                new DurationCooldownIndicator(_dispatcher)
            {
                Buff     = new FixedSkillCooldown(icb, CooldownType.Skill, _dispatcher, false),
                Cooldown = new FixedSkillCooldown(icb, CooldownType.Skill, _dispatcher, true)
            };

            OverhandStrike =
                new FixedSkillCooldown(ohs, CooldownType.Skill, _dispatcher, false);
        }
Example #15
0
 protected override void LoadSpecialSkills()
 {
     SkillsDatabase.TryGetSkill(80600, Class.Berserker, out Skill fr);
     SkillsDatabase.TryGetSkill(210200, Class.Berserker, out Skill bl);
     FieryRage = new DurationCooldownIndicator(_dispatcher)
     {
         Cooldown = new FixedSkillCooldown(fr, CooldownType.Skill, _dispatcher, true),
         Buff     = new FixedSkillCooldown(fr, CooldownType.Skill, _dispatcher, true)
     };
     Bloodlust = new DurationCooldownIndicator(_dispatcher)
     {
         Cooldown = new FixedSkillCooldown(bl, CooldownType.Skill, _dispatcher, true),
         Buff     = new FixedSkillCooldown(bl, CooldownType.Skill, _dispatcher, true)
     };
 }
Example #16
0
        protected override void LoadSpecialSkills()
        {
            SkillsDatabase.TryGetSkill(70300, Class.Lancer, out Skill gshout);
            SkillsDatabase.TryGetSkill(170200, Class.Lancer, out Skill arush);
            SkillsDatabase.TryGetSkill(120100, Class.Lancer, out Skill infu);

            GuardianShout  = new DurationCooldownIndicator(_dispatcher);
            AdrenalineRush = new DurationCooldownIndicator(_dispatcher);
            Infuriate      = new DurationCooldownIndicator(_dispatcher);

            GuardianShout.Cooldown  = new FixedSkillCooldown(gshout, CooldownType.Skill, _dispatcher, true);
            GuardianShout.Buff      = new FixedSkillCooldown(gshout, CooldownType.Skill, _dispatcher, false);
            AdrenalineRush.Cooldown = new FixedSkillCooldown(arush, CooldownType.Skill, _dispatcher, true);
            AdrenalineRush.Buff     = new FixedSkillCooldown(arush, CooldownType.Skill, _dispatcher, false);
            Infuriate.Cooldown      = new FixedSkillCooldown(infu, CooldownType.Skill, _dispatcher, true);
        }
        public LancerLayoutVM()
        {
            LH             = new LancerLineHeldTracker();
            Game.Me.Death += OnDeath;
            Game.DB !.SkillsDatabase.TryGetSkill(70300, Class.Lancer, out var gshout);
            GuardianShout = new SkillWithEffect(Dispatcher, gshout);

            Game.DB.SkillsDatabase.TryGetSkill(170200, Class.Lancer, out var arush);
            AdrenalineRush = new SkillWithEffect(Dispatcher, arush);

            Game.DB.SkillsDatabase.TryGetSkill(120100, Class.Lancer, out var infu);
            Infuriate = new Cooldown(infu, true)
            {
                CanFlash = true
            };
        }
        protected override void LoadSpecialSkills()
        {
            SkillsDatabase.TryGetSkill(51000, Class.Engineer, out Skill bfire);
            SkillsDatabase.TryGetSkill(130200, Class.Engineer, out Skill balder);
            SkillsDatabase.TryGetSkill(20700, Class.Engineer, out Skill bombard);

            BurstFire   = new DurationCooldownIndicator(_dispatcher);
            Balder      = new DurationCooldownIndicator(_dispatcher);
            Bombardment = new DurationCooldownIndicator(_dispatcher);

            BurstFire.Buff       = new FixedSkillCooldown(bfire, CooldownType.Skill, _dispatcher, false);
            Balder.Buff          = new FixedSkillCooldown(balder, CooldownType.Skill, _dispatcher, false);
            Bombardment.Buff     = new FixedSkillCooldown(bombard, CooldownType.Skill, _dispatcher, false);
            BurstFire.Cooldown   = new FixedSkillCooldown(bfire, CooldownType.Skill, _dispatcher, true);
            Balder.Cooldown      = new FixedSkillCooldown(balder, CooldownType.Skill, _dispatcher, false);
            Bombardment.Cooldown = new FixedSkillCooldown(bombard, CooldownType.Skill, _dispatcher, false);
        }
        public SorcererLayoutVM()
        {
            SorcererAbnormalityTracker.BoostChanged += OnBoostChanged;

            Game.DB !.SkillsDatabase.TryGetSkill(340200, Class.Sorcerer, out var mb);
            Game.DB.SkillsDatabase.TryGetSkill(360100, Class.Sorcerer, out var fusion);
            Game.DB.SkillsDatabase.TryGetSkill(360600, Class.Sorcerer, out var fusionBoost);
            Game.DB.SkillsDatabase.TryGetSkill(360200, Class.Sorcerer, out var primeFlame);
            Game.DB.SkillsDatabase.TryGetSkill(360400, Class.Sorcerer, out var iceberg);
            Game.DB.SkillsDatabase.TryGetSkill(360300, Class.Sorcerer, out var arcaneStorm);

            PrimeFlame       = primeFlame;  //fire ice
            Iceberg          = iceberg;     //ice arcane
            ArcaneStorm      = arcaneStorm; //fire arcane
            FusionSkill      = fusion;
            FusionSkillBoost = fusionBoost;

            ManaBoost = new SkillWithEffect(Dispatcher, mb);
            Fusion    = new Cooldown(fusion, false);

            _sw = new Stopwatch();
        }
Example #20
0
 protected override void LoadSpecialSkills()
 {
     SkillsDatabase.TryGetSkill(290100, Class.Archer, out Skill tb);
     Thunderbolt = new FixedSkillCooldown(tb, CooldownType.Skill, _dispatcher, true);
 }