public static int ProcessLoop()
        {
            if (!ScreenTools.IsDiabloFocused())
            {
                return(1);
            }
            if (ScreenTools.IsPorting())
            {
                return(3);
            }

            bool inRift = ScreenTools.IsInRift();

            // Conditions for Skill Activation
            if (
                ActiveMode.GetCurrentMode() == ActiveMode.Mode.AlwaysActive ||
                (ActiveMode.GetCurrentMode() == ActiveMode.Mode.Automatic && inRift)
                )
            {
                ProcessSkills();
            }

            // Conditions for Town Actions
            if (ActiveMode.GetCurrentMode() != ActiveMode.Mode.AlwaysActive && !inRift)
            {
                ProcessTown();
            }

            // always process potion
            PotionSkill.Process();
            return(0);
        }