// Token: 0x06001D6E RID: 7534 RVA: 0x0005EB80 File Offset: 0x0005CD80
        public static bool smethod_6(Class142 toontownWindow, ManualResetEventSlim waitHandle, Class101 wayPointsSettings, Class108 dock, Class104 settings)
        {
            Struct56? @struct = Class269.smethod_0(toontownWindow, waitHandle, -1);

            if (@struct == null)
            {
                return(false);
            }
            if (@struct.Value.IsDock)
            {
                return(true);
            }
            Enum57 playground = toontownWindow.Playground;
            Dictionary <PointF, Enum99> points_dic;

            if (wayPointsSettings.WayPoints.ContainsKey(playground))
            {
                points_dic = wayPointsSettings.WayPoints[playground];
            }
            else
            {
                points_dic = null;
            }
            List <PointF> path = Class269.smethod_21(points_dic, @struct.Value.Location, dock.DockLocation);

            return(Class269.smethod_7(toontownWindow, waitHandle, path, settings));
        }
 // Token: 0x06001792 RID: 6034 RVA: 0x0003DCDC File Offset: 0x0003BEDC
 private void RunBaseForm_Load(object sender, EventArgs e)
 {
     if (!base.DesignMode)
     {
         if (!Class142.smethod_2(this.intptr_0, out this.class142_0))
         {
             this.class142_0 = Class142.smethod_9(this.intptr_0, Enum101.const_0, null);
             if (!this.class142_0.method_5())
             {
                 base.Hide();
                 DialogBox.smethod_4(RunBaseForm.string_1, RunBaseForm.string_2);
                 this.bool_5       = true;
                 base.DialogResult = DialogResult.Abort;
                 base.Close();
                 return;
             }
         }
         if (this.class142_0.Playground == Enum57.const_0)
         {
             base.Hide();
             DialogBox.smethod_3(RunBaseForm.string_3, RunBaseForm.string_4);
             this.bool_5       = true;
             base.DialogResult = DialogResult.Abort;
             base.Close();
             return;
         }
         this.class149_0 = new Class149(this.class142_0);
         this.method_8();
         this.timer_0.Enabled = true;
         if (this.eventHandler_0 != null)
         {
             this.eventHandler_0(this, EventArgs.Empty);
         }
     }
 }
 // Token: 0x060019EF RID: 6639 RVA: 0x000091E7 File Offset: 0x000073E7
 private void method_11()
 {
     if (!Class142.smethod_2(this.class141_0.MainWindowHandle, out this.class142_0))
     {
         this.class142_0 = Class142.smethod_9(this.class141_0.MainWindowHandle, Enum101.const_0, null);
         this.class142_0.method_5();
     }
 }
예제 #4
0
    // Token: 0x06000040 RID: 64 RVA: 0x00002E58 File Offset: 0x00001058
    public override Class139 vmethod_4()
    {
        Class142 @class = new Class142();

        @class.method_3(this.methodBase_0);
        @class.method_1(base.method_0());
        return(@class);
    }
예제 #5
0
            // Token: 0x060027CD RID: 10189 RVA: 0x0009371C File Offset: 0x0009191C
            public void method_0()
            {
                Class142 @class = this.object_0 as Class142;
                bool     flag   = false;

                this.invasions_0.cboDistricts.BeginUpdate();
                if (this.invasions_0.dictionary_1.ContainsKey(@class))
                {
                    Invasions.Class430 class2 = this.invasions_0.dictionary_1[@class];
                    if (this.invasions_0.cboDistricts.SelectedItem == class2)
                    {
                        flag = (class2.Windows.IndexOf(@class) == 0 && class2.Windows.Count == 1);
                    }
                    class2.Windows.Remove(@class);
                    this.invasions_0.dictionary_1.Remove(@class);
                    if (class2.Windows.Count == 0)
                    {
                        this.invasions_0.dictionary_0.Remove(class2.District);
                        this.invasions_0.cboDistricts.Items.Remove(class2);
                    }
                }
                if (this.eventArgs37_0.District == null)
                {
                    if (this.invasions_0.cboDistricts.Items.Count > 0)
                    {
                        if (flag)
                        {
                            this.invasions_0.cboDistricts.SelectedIndex = 0;
                        }
                    }
                    else
                    {
                        this.invasions_0.method_3(null, null);
                    }
                }
                else
                {
                    Invasions.Class430 class3;
                    if (this.invasions_0.dictionary_0.ContainsKey(this.eventArgs37_0.District))
                    {
                        class3 = this.invasions_0.dictionary_0[this.eventArgs37_0.District];
                    }
                    else
                    {
                        this.invasions_0.dictionary_0.Add(this.eventArgs37_0.District, class3 = new Invasions.Class430(this.eventArgs37_0.District));
                        this.invasions_0.cboDistricts.Items.Add(class3);
                    }
                    class3.Windows.Add(@class);
                    this.invasions_0.dictionary_1.Add(@class, class3);
                    this.invasions_0.cboDistricts.imethod_2(class3);
                    if (flag || this.invasions_0.cboDistricts.SelectedItem == null)
                    {
                        this.invasions_0.cboDistricts.SelectedItem = class3;
                    }
                }
                this.invasions_0.cboDistricts.EndUpdate();
            }
 // Token: 0x06001D6A RID: 7530 RVA: 0x0005E644 File Offset: 0x0005C844
 public static bool smethod_2(Class142 toontownWindow, ManualResetEventSlim waitHandle, ManualResetEventSlim navigateWaitHandle, List <PointF> path, Class104 settings, bool jump = true)
 {
     for (int i = 0; i < path.Count; i++)
     {
         if (!Class269.smethod_5(toontownWindow, waitHandle, navigateWaitHandle, settings, path[i], jump, i == path.Count - 1))
         {
             return(false);
         }
     }
     return(true);
 }
        // Token: 0x06001D68 RID: 7528 RVA: 0x0005E410 File Offset: 0x0005C610
        public static Struct56?smethod_0(Class142 toontownWindow, ManualResetEventSlim waitHandle, int timeOut = -1)
        {
            Class269.Class270 @class = new Class269.Class270();
            @class.nullable_0 = null;
            @class.bool_0     = false;
            EventHandler <EventArgs22> eventHandler = null;
            EventHandler eventHandler2 = null;

            Class269.Class271 class2 = new Class269.Class271();
            class2.class270_0             = @class;
            class2.manualResetEventSlim_0 = new ManualResetEventSlim(false);
            try
            {
                try
                {
                    Class129 logMonitor = toontownWindow.LogMonitor;
                    if (eventHandler == null)
                    {
                        eventHandler = new EventHandler <EventArgs22>(class2.method_0);
                    }
                    logMonitor.CoordinatesChanged += eventHandler;
                    Class141 toonTownProcess = toontownWindow.ToonTownProcess;
                    if (eventHandler2 == null)
                    {
                        eventHandler2 = new EventHandler(class2.method_1);
                    }
                    toonTownProcess.ProcessExited += eventHandler2;
                    IntPtr mainWindowHandle = toontownWindow.ToonTownProcess.MainWindowHandle;
                    if (!toontownWindow.ToonTownProcess.ProcessOpen)
                    {
                        return(null);
                    }
                    Class269.smethod_20(mainWindowHandle, class2.manualResetEventSlim_0);
                    WaitHandle.WaitAny(new WaitHandle[]
                    {
                        waitHandle.WaitHandle,
                        class2.manualResetEventSlim_0.WaitHandle
                    }, timeOut);
                }
                finally
                {
                    @class.bool_0 = true;
                }
            }
            finally
            {
                if (class2.manualResetEventSlim_0 != null)
                {
                    ((IDisposable)class2.manualResetEventSlim_0).Dispose();
                }
            }
            return(@class.nullable_0);
        }
        // Token: 0x06001D69 RID: 7529 RVA: 0x0005E534 File Offset: 0x0005C734
        public static Struct56?smethod_1(Class142 toontownWindow, ManualResetEventSlim waitHandle, Class149 coordinatePoll)
        {
            Class269.Class272 @class = new Class269.Class272();
            @class.nullable_0 = null;
            @class.bool_0     = false;
            EventHandler <EventArgs22> eventHandler = null;
            EventHandler eventHandler2 = null;

            Class269.Class273 class2 = new Class269.Class273();
            class2.class272_0             = @class;
            class2.manualResetEventSlim_0 = new ManualResetEventSlim(false);
            try
            {
                try
                {
                    Class129 logMonitor = toontownWindow.LogMonitor;
                    if (eventHandler == null)
                    {
                        eventHandler = new EventHandler <EventArgs22>(class2.method_0);
                    }
                    logMonitor.CoordinatesChanged += eventHandler;
                    Class141 toonTownProcess = toontownWindow.ToonTownProcess;
                    if (eventHandler2 == null)
                    {
                        eventHandler2 = new EventHandler(class2.method_1);
                    }
                    toonTownProcess.ProcessExited += eventHandler2;
                    if (!toontownWindow.ToonTownProcess.ProcessOpen)
                    {
                        return(null);
                    }
                    coordinatePoll.method_4();
                    WaitHandle.WaitAny(new WaitHandle[]
                    {
                        waitHandle.WaitHandle,
                        class2.manualResetEventSlim_0.WaitHandle
                    });
                    coordinatePoll.method_5();
                }
                finally
                {
                    @class.bool_0 = true;
                }
            }
            finally
            {
                if (class2.manualResetEventSlim_0 != null)
                {
                    ((IDisposable)class2.manualResetEventSlim_0).Dispose();
                }
            }
            return(@class.nullable_0);
        }
        // Token: 0x06002C7B RID: 11387 RVA: 0x000AC250 File Offset: 0x000AA450
        public Class149(Class142 toontownWindow)
        {
            this.manualResetEventSlim_0 = new ManualResetEventSlim();
            this.timer_0          = new System.Timers.Timer();
            this.timer_0.Interval = 200.0;
            this.timer_0.Elapsed += new ElapsedEventHandler(this.timer_0_Elapsed);
            this.class142_0       = toontownWindow;
            Class141     toonTownProcess = this.class142_0.ToonTownProcess;
            EventHandler value           = new EventHandler(this.method_6);

            toonTownProcess.ProcessExited += value;
        }
 // Token: 0x06001D6F RID: 7535 RVA: 0x0005EC04 File Offset: 0x0005CE04
 public static bool smethod_7(Class142 toontownWindow, ManualResetEventSlim waitHandle, List <PointF> path, Class104 settings)
 {
     for (int i = 0; i < path.Count; i++)
     {
         if (i == path.Count - 1)
         {
             return(Class269.smethod_8(toontownWindow, waitHandle, settings, path[i], true));
         }
         if (!Class269.smethod_4(toontownWindow, waitHandle, settings, path[i], true, false))
         {
             return(false);
         }
     }
     return(false);
 }
예제 #11
0
        // Token: 0x060027BF RID: 10175 RVA: 0x00093520 File Offset: 0x00091720
        private static Class142 smethod_1(ICollection <Class142> windows)
        {
            uint     num    = 0U;
            Class142 result = null;

            foreach (Class142 @class in windows)
            {
                if (@class.Invasion != null && num < @class.Invasion.Value.uint_0)
                {
                    num    = @class.Invasion.Value.uint_0;
                    result = @class;
                }
            }
            return(result);
        }
예제 #12
0
    internal void method_28()
    {
        int num = 0x10;

        Class599.smethod_0(this.document_0.FontInfoList, base.method_5(), base.method_3(), base.method_1());
        Class812 class2 = new Class812(base.method_5(), base.method_3());

        this.class142_0  = new Class142(class2);
        this.class140_0  = new Class140(this.document_0.FontInfoList, class2);
        this.class1109_0 = new Class1109(base.method_4(), class2, base.method_5().nfibEnum_0, this);
        this.class352_0  = new Class352(this.document_0);
        this.class352_0.method_3(base.method_3(), base.method_5().class597_0.class1111_50.int_0, base.method_5().class597_0.class1111_50.int_1, base.method_1());
        if (ShapeObject.smethod_1(this.class352_0.method_12()))
        {
            this.document_0.method_27(new Background(this.document_0, this.class352_0.method_12()));
        }
        new Class427(this.document_0.FontInfoList, class2, this.document_0.Styles).method_0(base.method_3(), base.method_5(), this.method_47());
        new Class1060(this.document_0.FontInfoList, class2, this.document_0.ListStyles, this.document_0.ListOverrides).method_0(base.method_5(), base.method_3(), this.method_47(), this.method_48());
        this.document_0.Frame = Class1152.smethod_0(base.method_5(), base.method_3(), this.document_0.ListStyles);
        Class659.smethod_0(base.method_3(), base.method_5().class597_0.class1111_31, this.document_0);
        if (base.method_5().class597_0.method_6())
        {
            this.document_0.RouteSlip = new Class481(base.method_5(), base.method_3(), this.document_0.Settings.int_27);
        }
        Class342 class3 = new Class342();

        class3.method_0(base.method_3(), base.method_5().class597_0.class1111_72.int_0, base.method_5().class597_0.class1111_72.int_1);
        new Class869().method_0(base.method_3(), base.method_5(), class3, this.document_0.Settings.class460_0);
        base.method_18().method_0(class3, this.document_0.FileName);
        new Class704().method_0(base.method_0().method_0(), this.document_0.BuiltinDocumentProperties, this.document_0.CustomDocumentProperties);
        this.method_31();
        this.method_32();
        this.method_34();
        base.method_3().BaseStream.Position = base.method_5().class597_0.class1111_45.int_0;
        this.document_0.DropdownStrings = base.method_3().ReadBytes(base.method_5().class597_0.class1111_45.int_1);
        base.method_3().BaseStream.Position = base.method_5().class597_0.class1111_24.int_0;
        new Class660().method_0(base.method_3(), base.method_5().class597_0.class1111_24.int_1, this.document_0);
        Class125.smethod_0(base.method_5(), base.method_3(), this.document_0);
        this.document_0.CompObj   = base.method_0().method_0().method_4(BookmarkStart.b("㜵笷唹儻丽༿⁁⹃", num));
        this.document_0.VbaMacros = base.method_0().method_0().method_6(BookmarkStart.b("笵夷夹主儽㌿", num));
        new Class1108(this).method_0();
        if (base.method_5().nfibEnum_0 <= NFibEnum.Word2000)
        {
            this.method_30();
        }
        Class871.smethod_0(base.method_0(), this.document_0.CustomXmlParts);
    }
예제 #13
0
        // Token: 0x060027BE RID: 10174 RVA: 0x00093474 File Offset: 0x00091674
        private void cboDistricts_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (this.cboDistricts.SelectedItem == null)
            {
                this.method_3(null, null);
                return;
            }
            Invasions.Class430 @class = this.cboDistricts.SelectedItem as Invasions.Class430;
            Class142           class2 = Invasions.smethod_1(@class.Windows);

            if (class2 == null)
            {
                this.method_3(null, null);
                return;
            }
            this.method_3(class2.District, class2.Invasion);
            Struct26 value = class2.Invasion.Value;

            this.method_8(class2.District, value.class464_0.string_1, value.uint_0, value.bool_0, value.dateTime_0);
        }
        // Token: 0x06001D6B RID: 7531 RVA: 0x0005E688 File Offset: 0x0005C888
        public static bool smethod_3(Class142 toontownWindow, ManualResetEventSlim waitHandle, List <PointF> path, Class104 settings, bool jump = true)
        {
            Class269.Class274 @class = new Class269.Class274();
            @class.bool_0 = false;
            EventHandler eventHandler = null;

            Class269.Class275 class2 = new Class269.Class275();
            class2.class274_0             = @class;
            class2.manualResetEventSlim_0 = new ManualResetEventSlim(false);
            bool result;

            try
            {
                try
                {
                    Class141 toonTownProcess = toontownWindow.ToonTownProcess;
                    if (eventHandler == null)
                    {
                        eventHandler = new EventHandler(class2.method_0);
                    }
                    toonTownProcess.ProcessExited += eventHandler;
                    result = Class269.smethod_2(toontownWindow, waitHandle, class2.manualResetEventSlim_0, path, settings, jump);
                }
                finally
                {
                    @class.bool_0 = true;
                }
            }
            finally
            {
                if (class2.manualResetEventSlim_0 != null)
                {
                    ((IDisposable)class2.manualResetEventSlim_0).Dispose();
                }
            }
            return(result);
        }
        // Token: 0x06001D6C RID: 7532 RVA: 0x0005E728 File Offset: 0x0005C928
        public static bool smethod_4(Class142 toontownWindow, ManualResetEventSlim waitHandle, Class104 settings, PointF target, bool jump, bool finalTarget)
        {
            Class269.Class276 @class = new Class269.Class276();
            @class.bool_0 = false;
            EventHandler eventHandler = null;

            Class269.Class277 class2 = new Class269.Class277();
            class2.class276_0             = @class;
            class2.manualResetEventSlim_0 = new ManualResetEventSlim(false);
            bool result;

            try
            {
                try
                {
                    Class141 toonTownProcess = toontownWindow.ToonTownProcess;
                    if (eventHandler == null)
                    {
                        eventHandler = new EventHandler(class2.method_0);
                    }
                    toonTownProcess.ProcessExited += eventHandler;
                    result = Class269.smethod_5(toontownWindow, waitHandle, class2.manualResetEventSlim_0, settings, target, jump, finalTarget);
                }
                finally
                {
                    @class.bool_0 = true;
                }
            }
            finally
            {
                if (class2.manualResetEventSlim_0 != null)
                {
                    ((IDisposable)class2.manualResetEventSlim_0).Dispose();
                }
            }
            return(result);
        }
예제 #16
0
            // Token: 0x060027CF RID: 10191 RVA: 0x0009393C File Offset: 0x00091B3C
            public void method_0()
            {
                Class142 @class = this.object_0 as Class142;

                Invasions.Class430 class2 = this.invasions_0.cboDistricts.SelectedItem as Invasions.Class430;
                if (class2 != null)
                {
                    Class177 district = class2.District;
                    if (class2.Windows.IndexOf(@class) == 0 && district == @class.District)
                    {
                        switch (this.eventArgs31_0.InvasionState.enum97_0)
                        {
                        case Enum97.const_0:
                        case Enum97.const_2:
                            if (!this.invasions_0.class343_0.Enabled)
                            {
                                this.invasions_0.class343_0.Enabled = true;
                            }
                            this.invasions_0.method_3(@class.District, new Struct26?(this.eventArgs31_0.InvasionState));
                            this.invasions_0.method_8(@class.District, this.eventArgs31_0.InvasionState.class464_0.string_1, this.eventArgs31_0.InvasionState.uint_0, this.eventArgs31_0.InvasionState.bool_0, this.eventArgs31_0.InvasionState.dateTime_0);
                            break;

                        case (Enum97)1:
                            break;

                        case Enum97.const_1:
                            this.invasions_0.method_3(null, null);
                            this.invasions_0.method_9(@class.District);
                            return;

                        default:
                            return;
                        }
                    }
                }
            }
예제 #17
0
        // Token: 0x06001AD4 RID: 6868 RVA: 0x00050CBC File Offset: 0x0004EEBC
        private void method_1()
        {
            Connect.Class220 @class = new Connect.Class220();
            @class.connect_0 = this;
            if (!Class509.CanLoginToToonTownOrDialog)
            {
                return;
            }
            Class509.InstallingOrLoggingIn = true;
            @class.string_0 = this.txtUsername.Text;
            string text = this.txtPassword.Text;

            if (string.IsNullOrEmpty(@class.string_0) || string.IsNullOrEmpty(text))
            {
                DialogBox.smethod_3(Connect.string_0, Connect.string_1);
                Class509.InstallingOrLoggingIn = false;
                return;
            }
            @class.enum101_0 = (this.TestServerRadioButton.Checked ? Enum101.const_2 : (this.OpenServerRadioButton.Checked ? Enum101.const_1 : Enum101.const_1));
            if (Class142.smethod_1(@class.enum101_0, @class.string_0) && DialogBox.smethod_6(Connect.string_2, Connect.string_3, new Enum39[]
            {
                Enum39.const_5,
                Enum39.const_6
            }) != DialogResult.Yes)
            {
                Class509.InstallingOrLoggingIn = false;
                return;
            }
            Connect.Class221 class2 = new Connect.Class221();
            class2.class147_0 = new Class147(@class.enum101_0, @class.string_0, text);
            try
            {
                EventHandler     eventHandler = null;
                Connect.Class222 class3       = new Connect.Class222();
                class3.class221_0 = class2;
                class3.class220_0 = @class;
                class3.loading_0  = new Loading();
                try
                {
                    Form loading_ = class3.loading_0;
                    if (eventHandler == null)
                    {
                        eventHandler = new EventHandler(class3.method_0);
                    }
                    loading_.Shown += eventHandler;
                    class3.loading_0.ShowDialog();
                }
                finally
                {
                    if (class3.loading_0 != null)
                    {
                        ((IDisposable)class3.loading_0).Dispose();
                    }
                }
            }
            finally
            {
                if (class2.class147_0 != null)
                {
                    ((IDisposable)class2.class147_0).Dispose();
                }
            }
        }
예제 #18
0
        public static bool smethod_0(Enum101 type, string username, Dictionary <string, string> variables, out Class142 toontownWindow)
        {
            toontownWindow = null;
            Process process = null;
            bool    result;

            try
            {
                Class96 @class;
                switch (type)
                {
                case Enum101.const_1:
                {
                    Class99 connectSettings = Class110.Instance.ConnectSettings;
                    if (connectSettings.SpoofedToonTownEnabled)
                    {
                        @class = Class110.Instance.ConnectSettings.SpoofedToonTownVersionData;
                        Class80.smethod_1(Class80.string_0, connectSettings.PatchServer.PANDA_DOWNLOAD_URL);
                    }
                    else
                    {
                        @class = Class110.Instance.ConnectSettings.ActualToonTownVersionData;
                        Class80.smethod_1(Class80.string_0, @class.Properties.PANDA_DOWNLOAD_URL);
                    }
                    Class80.smethod_1(Class80.string_1, Class80.string_19);
                    Class80.smethod_1(Class80.string_2, Class80.string_25);
                    break;
                }

                case Enum101.const_2:
                    @class = Class110.Instance.ConnectSettings.ActualTestToonTownVersionData;
                    Class80.smethod_1(Class80.string_0, @class.Properties.PANDA_DOWNLOAD_URL);
                    Class80.smethod_1(Class80.string_1, Class80.string_20);
                    Class80.smethod_1(Class80.string_2, Class80.string_24);
                    break;

                default:
                    throw new NotSupportedException(Class80.string_3);
                }
                Class80.smethod_1(Class80.string_4, string.Empty);
                Class80.smethod_1(Class80.string_5, string.Empty);
                Class80.smethod_1(Class80.string_6, Class80.string_22);
                Class80.smethod_1(Class80.string_7, Class80.string_23);
                Class80.smethod_1(Class80.string_8, string.Empty);
                Class80.smethod_1(Class80.string_9, Class80.string_21);
                Class80.smethod_1(Class80.string_10, @class.Properties.GAME_VERSION_TEXT);
                Class80.smethod_1(Class80.string_11, @class.Properties.GAME_SERVER);
                Class80.smethod_1(Class80.string_12, @class.Properties.ACCOUNT_SERVER);
                string key = Class80.string_13;
                if (Class80.action_0 == null)
                {
                    Class80.action_0 = new Action <KeyValuePair <string, string> >(Class80.smethod_2);
                }
                variables.smethod_5(key, Class80.action_0);
                string key2 = Class80.string_14;
                if (Class80.action_1 == null)
                {
                    Class80.action_1 = new Action <KeyValuePair <string, string> >(Class80.smethod_3);
                }
                variables.smethod_5(key2, Class80.action_1);
                string key3 = Class80.string_15;
                if (Class80.action_2 == null)
                {
                    Class80.action_2 = new Action <KeyValuePair <string, string> >(Class80.smethod_4);
                }
                variables.smethod_5(key3, Class80.action_2);
                string key4 = Class80.string_16;
                if (Class80.action_3 == null)
                {
                    Class80.action_3 = new Action <KeyValuePair <string, string> >(Class80.smethod_5);
                }
                variables.smethod_5(key4, Class80.action_3);
                string key5 = Class80.string_17;
                if (Class80.action_4 == null)
                {
                    Class80.action_4 = new Action <KeyValuePair <string, string> >(Class80.smethod_6);
                }
                variables.smethod_5(key5, Class80.action_4);
                process = new Process();
                process.EnableRaisingEvents = true;
                ProcessStartInfo processStartInfo = new ProcessStartInfo();
                switch (type)
                {
                default:
                    processStartInfo.WorkingDirectory = Class291.ToonTownOpenDataDirectory;
                    processStartInfo.FileName         = Path.Combine(Class291.ToonTownOpenDataDirectory, Class502.string_8);
                    break;

                case Enum101.const_2:
                    processStartInfo.WorkingDirectory = Class291.ToonTownTestDataDirectory;
                    processStartInfo.FileName         = Path.Combine(Class291.ToonTownTestDataDirectory, Class502.string_8);
                    break;
                }
                processStartInfo.CreateNoWindow  = true;
                processStartInfo.WindowStyle     = ProcessWindowStyle.Hidden;
                processStartInfo.Arguments       = string.Empty;
                processStartInfo.UseShellExecute = true;
                process.StartInfo = processStartInfo;
                toontownWindow    = Class142.smethod_8(process, type, username, false);
                process.Start();
                result = true;
            }
            catch (Exception ex)
            {
                if (process != null)
                {
                    process.Dispose();
                }
                ex.smethod_0();
                result = false;
            }
            return(result);
        }
 public abstract void Visit(Class142 c);
 public override void Visit(Class142 c) { }
        // Token: 0x06001D70 RID: 7536 RVA: 0x0005EC58 File Offset: 0x0005CE58
        public static bool smethod_8(Class142 toontownWindow, ManualResetEventSlim waitHandle, Class104 settings, PointF target, bool jump)
        {
            Class269.Class280 @class = new Class269.Class280();
            @class.bool_0 = false;
            IntPtr mainWindowHandle = toontownWindow.ToonTownProcess.MainWindowHandle;

            if (!toontownWindow.ToonTownProcess.ProcessOpen)
            {
                return(false);
            }
            EventHandler eventHandler = null;
            EventHandler <EventArgs22> eventHandler2 = null;

            Class269.Class281 class2 = new Class269.Class281();
            class2.class280_0             = @class;
            class2.manualResetEventSlim_0 = new ManualResetEventSlim(false);
            bool result;

            try
            {
                try
                {
                    Class141 toonTownProcess = toontownWindow.ToonTownProcess;
                    if (eventHandler == null)
                    {
                        eventHandler = new EventHandler(class2.method_0);
                    }
                    toonTownProcess.ProcessExited += eventHandler;
                    Class129 logMonitor = toontownWindow.LogMonitor;
                    if (eventHandler2 == null)
                    {
                        eventHandler2 = new EventHandler <EventArgs22>(class2.method_1);
                    }
                    logMonitor.CoordinatesChanged += eventHandler2;
                    while (!class2.manualResetEventSlim_0.IsSet && !waitHandle.IsSet)
                    {
                        if (jump)
                        {
                            Class269.smethod_18(mainWindowHandle, new WaitHandle[]
                            {
                                waitHandle.WaitHandle,
                                class2.manualResetEventSlim_0.WaitHandle
                            });
                        }
                        if (!Class269.smethod_5(toontownWindow, waitHandle, class2.manualResetEventSlim_0, settings, target, jump, true))
                        {
                            class2.manualResetEventSlim_0.Wait(100);
                        }
                    }
                    result = (class2.manualResetEventSlim_0.IsSet && !waitHandle.IsSet);
                }
                finally
                {
                    @class.bool_0 = true;
                }
            }
            finally
            {
                if (class2.manualResetEventSlim_0 != null)
                {
                    ((IDisposable)class2.manualResetEventSlim_0).Dispose();
                }
            }
            return(result);
        }
        // Token: 0x06001D6D RID: 7533 RVA: 0x0005E7C8 File Offset: 0x0005C9C8
        public static bool smethod_5(Class142 toontownWindow, ManualResetEventSlim waitHandle, ManualResetEventSlim navigateWaitHandle, Class104 settings, PointF target, bool jump, bool finalTarget)
        {
            Class269.Class278 @class           = new Class269.Class278();
            IntPtr            mainWindowHandle = toontownWindow.ToonTownProcess.MainWindowHandle;

            if (!toontownWindow.ToonTownProcess.ProcessOpen)
            {
                return(false);
            }
            Class269.Enum58 @enum = Class269.Enum58.flag_0;
            @class.struct56_0 = Struct56.struct56_0;
            Struct56 a   = Struct56.struct56_0;
            DateTime t   = DateTime.Now.AddMilliseconds(2000.0);
            float    num = finalTarget ? settings.TargetRange : settings.IntermediateTargetRange;

            @class.bool_0 = false;
            EventHandler <EventArgs22> eventHandler = null;

            Class269.Class279 class2 = new Class269.Class279();
            class2.class278_0             = @class;
            class2.manualResetEventSlim_0 = new ManualResetEventSlim(false);
            try
            {
                try
                {
                    Class129 logMonitor = toontownWindow.LogMonitor;
                    if (eventHandler == null)
                    {
                        eventHandler = new EventHandler <EventArgs22>(class2.method_0);
                    }
                    logMonitor.CoordinatesChanged += eventHandler;
                    WaitHandle[] waitHandles = new WaitHandle[]
                    {
                        waitHandle.WaitHandle,
                        class2.manualResetEventSlim_0.WaitHandle,
                        navigateWaitHandle.WaitHandle
                    };
                    WaitHandle.WaitAny(waitHandles);
                    WaitHandle[] waitHandles2 = new WaitHandle[]
                    {
                        waitHandle.WaitHandle,
                        navigateWaitHandle.WaitHandle
                    };
                    DateTime t2 = DateTime.Now.AddMilliseconds(2000.0);
                    try
                    {
                        while (!waitHandle.IsSet && !navigateWaitHandle.IsSet)
                        {
                            Struct56 struct56_ = @class.struct56_0;
                            PointF   location  = struct56_.Location;
                            if (Class477.smethod_0(target, num, location))
                            {
                                return(true);
                            }
                            float num2 = struct56_.method_0(target);
                            float num3 = Math.Abs(num2 - struct56_.float_3);
                            float num4 = Class477.smethod_9(target, struct56_.Location);
                            if (t < DateTime.Now)
                            {
                                if (Struct56.smethod_0(a, struct56_))
                                {
                                    Class269.smethod_16(mainWindowHandle, ref @enum);
                                    Class269.smethod_15(mainWindowHandle, ref @enum);
                                    Class269.smethod_14(mainWindowHandle, ref @enum);
                                    Class269.smethod_19(mainWindowHandle);
                                }
                                t = DateTime.Now.AddMilliseconds(2000.0);
                            }
                            bool flag2;
                            if ((num4 > 20f && num3 > 20f) || (num4 <= 20f && Class237.smethod_0(target, num, location, struct56_.float_3) == null))
                            {
                                Class269.smethod_16(mainWindowHandle, ref @enum);
                                bool flag = num3 > 180f;
                                if (num2 < struct56_.float_3)
                                {
                                    if (flag)
                                    {
                                        flag2 = Class269.smethod_9(mainWindowHandle, ref @enum, waitHandles2, num3);
                                    }
                                    else
                                    {
                                        flag2 = Class269.smethod_10(mainWindowHandle, ref @enum, waitHandles2, num3);
                                    }
                                }
                                else if (flag)
                                {
                                    flag2 = Class269.smethod_10(mainWindowHandle, ref @enum, waitHandles2, num3);
                                }
                                else
                                {
                                    flag2 = Class269.smethod_9(mainWindowHandle, ref @enum, waitHandles2, num3);
                                }
                            }
                            else
                            {
                                Class269.smethod_15(mainWindowHandle, ref @enum);
                                Class269.smethod_14(mainWindowHandle, ref @enum);
                                if (jump && t2 < DateTime.Now)
                                {
                                    Class269.smethod_18(mainWindowHandle, waitHandles2);
                                    t2 = DateTime.Now.AddMilliseconds(2000.0);
                                }
                                flag2 = Class269.smethod_11(mainWindowHandle, ref @enum, waitHandles2, num4 - settings.TargetRange);
                            }
                            if (!flag2)
                            {
                                class2.manualResetEventSlim_0.Reset();
                                WaitHandle.WaitAny(waitHandles);
                            }
                            if (Class477.smethod_0(target, num, @class.struct56_0.Location))
                            {
                                return(true);
                            }
                            WaitHandle.WaitAny(waitHandles2, 25);
                            a = struct56_;
                        }
                    }
                    finally
                    {
                        Class269.smethod_16(mainWindowHandle, ref @enum);
                        Class269.smethod_15(mainWindowHandle, ref @enum);
                        Class269.smethod_14(mainWindowHandle, ref @enum);
                        Class269.smethod_19(mainWindowHandle);
                    }
                }
                finally
                {
                    @class.bool_0 = true;
                }
            }
            finally
            {
                if (class2.manualResetEventSlim_0 != null)
                {
                    ((IDisposable)class2.manualResetEventSlim_0).Dispose();
                }
            }
            return(false);
        }