Пример #1
0
        public override void Initialize()
        {
            FTWProps.LoadProps();

            SetRuleFileWatchers();

            DungeonWatcher.Initialize();
        }
Пример #2
0
        public override void Pulse()
        {
            string fnname = "FTWRev.Pulse";

            MyTimer.Start(fnname);

            // Display startup message
            if (FTWProps.firstpulse == true)
            {
                FTWProps.firstpulse = false;
                // Eh, I don't like it. Uncomment if you really want it.
                //Mount.OnMountUp += UseTravelForm;
                FTWProps.core.Initialize();
                FTWLogger.log("FTW starting at {0}", DateTime.Now.ToString("MM/dd/yyyy hh:mm:ss"));
                FTWLogger.log("Current bot: {0}", Styx.CommonBot.BotManager.Current.Name);
            }

            // Unstick ourselves if necessary.
            CheckForStuck.Pulse();

            // Display last red text
            if (StyxWoW.LastRedErrorMessage != FTWProps.redtext)
            {
                FTWProps.redtext = StyxWoW.LastRedErrorMessage;
                FTWLogger.debug(Color.Red, "Red text: {0}", FTWProps.redtext);
            }

            // Leave early if not in valid state
            if (!FTWUtils.ValidState())
            {
                //FTWLogger.debug(Color.Red, "Invalid state: {0}", FTWUtils.printState());
            }
            else
            {
                // Save current class and spec
                //FTWProps.ClassAndSpec = StyxWoW.Me.ClassAndSpec();

                // List aura changes
                AuraWatcher.Pulse();

                // Load rules if they're not loaded
                //if (!FTWProps.rules.ContainsKey(FTWProps.ClassAndSpec))
                //    FTWProps.LoadRules();

                FTWProps.core.Pulse();

                if (FTWUtils.MeOrPartyMemberInCombat())
                {
                    //if (BotPoi.Current.Type == PoiType.Loot)
                    //{
                    //    debug("Not done with combat, clearing loot flag");
                    //    BotPoi.Clear();
                    //}
                    // Force combat because me OR party/raid members in combat)
                    Combat();
                }
            }

            // Perform dungeon stuff
            DungeonWatcher.Pulse();

            // Perform UI stuff
            UI.Pulse();

            MyTimer.Stop(fnname);
            MyTimer.Pulse();
        }