public static bool Load()
 {
     try
     {
         if (File.Exists(AdviserFilePathAndName("WholesomeTBCShaman",
                                                ObjectManager.Me.Name + "." + Usefuls.RealmName)))
         {
             CurrentSetting = Load <ZEShamanSettings>(
                 AdviserFilePathAndName("WholesomeTBCShaman",
                                        ObjectManager.Me.Name + "." + Usefuls.RealmName));
             return(true);
         }
         CurrentSetting = new ZEShamanSettings();
     }
     catch (Exception e)
     {
         Logging.WriteError("WholesomeTBCShaman > Load(): " + e);
     }
     return(false);
 }
    public static void Initialize()
    {
        Main.Log("Initialized");
        ZEShamanSettings.Load();
        _settings = ZEShamanSettings.CurrentSetting;
        Talents.InitTalents(_settings.AssignTalents, _settings.UseDefaultTalents, _settings.TalentCodes);
        _ghostWolfTimer.Start();

        FightEvents.OnFightEnd += (ulong guid) =>
        {
            _goInMelee = false;
            _ghostWolfTimer.Restart();
            _fightingACaster = false;
            _meleeTimer.Reset();
            _pullMeleeTimer.Reset();
            _pullAttempt = 0;
        };

        FightEvents.OnFightStart += (WoWUnit unit, CancelEventArgs cancelable) =>
        {
            _ghostWolfTimer.Reset();
        };

        robotManager.Events.FiniteStateMachineEvents.OnRunState += (Engine engine, State state, CancelEventArgs cancelable) =>
        {
            if (state.DisplayName == "Regeneration")
            {
                _ghostWolfTimer.Reset();
            }
        };

        robotManager.Events.FiniteStateMachineEvents.OnAfterRunState += (Engine engine, State state) =>
        {
            if (state.DisplayName == "Regeneration")
            {
                _ghostWolfTimer.Restart();
            }
        };

        Rotation();
    }
 public static void ShowConfiguration()
 {
     ZEShamanSettings.Load();
     ZEShamanSettings.CurrentSetting.ToForm();
     ZEShamanSettings.CurrentSetting.Save();
 }