Exemple #1
0
        public static void ClassChange()
        {
            if (TreeRoot.IsRunning)
            {
                Application.Current.Dispatcher.InvokeAsync(() =>
                {
                    switch (Core.Me.CurrentJob)
                    {
                    case ClassJobType.Machinist:
                    case ClassJobType.Gladiator:
                    case ClassJobType.Paladin:
                    case ClassJobType.DarkKnight:
                    case ClassJobType.Archer:
                    case ClassJobType.Bard:
                    case ClassJobType.Marauder:
                    case ClassJobType.Warrior:
                    case ClassJobType.Thaumaturge:
                    case ClassJobType.BlackMage:
                    case ClassJobType.Conjurer:
                    case ClassJobType.WhiteMage:
                    case ClassJobType.Astrologian:
                    case ClassJobType.Scholar:
                    case ClassJobType.RedMage:

                        infoOverlayJob = false;
                        ClassChangeSubMethod();
                        break;

                    case ClassJobType.Pugilist:
                    case ClassJobType.Monk:
                    case ClassJobType.Lancer:
                    case ClassJobType.Dragoon:
                    case ClassJobType.Arcanist:
                    case ClassJobType.Summoner:
                    case ClassJobType.Rogue:
                    case ClassJobType.Ninja:
                    case ClassJobType.Samurai:
                        infoOverlayJob = true;
                        ClassChangeSubMethod();
                        break;

                    default:
                        BoundInfoOverlay.Stop();
                        BoundToggleOverlay.Stop();
                        EnemyOverlay.Stop();
                        break;
                    }
                });
            }
        }
Exemple #2
0
        public static void CloseOverlays()
        {
            Application.Current.Dispatcher.InvokeAsync(() =>
            {
                if (Kefka.windowInitialized)
                {
                    if (Form.IsVisible)
                    {
                        Form.Hide();
                    }
                }

                BoundInfoOverlay.Stop();
                BoundToggleOverlay.Stop();
                EnemyOverlay.Stop();
            });
        }
Exemple #3
0
        private static void ClassChangeSubMethod()
        {
            Application.Current.Dispatcher.InvokeAsync(() =>
            {
                if (MainSettingsModel.Instance.UseToggleOverlay &&
                    !BoundToggleOverlay.KefkaBoundToggleOverlayIsVisible)
                {
                    BoundToggleOverlay.Start();
                }

                if (MainSettingsModel.Instance.UsePositionalOverlay &&
                    !BoundInfoOverlay.KefkaBoundInfoOverlayIsVisible &&
                    infoOverlayJob)
                {
                    BoundInfoOverlay.Start();
                }

                if (!MainSettingsModel.Instance.UseToggleOverlay && BoundToggleOverlay.KefkaBoundToggleOverlayIsVisible)
                {
                    BoundToggleOverlay.Stop();
                }

                if ((!MainSettingsModel.Instance.UsePositionalOverlay || !infoOverlayJob) && BoundInfoOverlay.KefkaBoundInfoOverlayIsVisible)
                {
                    BoundInfoOverlay.Stop();
                }

                if (MainSettingsModel.Instance.UseEnemyOverlay && !EnemyOverlay.KefkaEnemyOverlayIsVisible)
                {
                    EnemyOverlay.Start();
                }

                if (!MainSettingsModel.Instance.UseEnemyOverlay && EnemyOverlay.KefkaEnemyOverlayIsVisible)
                {
                    EnemyOverlay.Stop();
                }
            });
        }