internal static bool Initialize( MainWindow mainWindow ) { if (File.Exists( Path.Combine( StartupPath, "Updater_New.exe" ) )) { try { File.Copy( Path.Combine( StartupPath, "Updater_New.exe" ), Path.Combine( StartupPath, "Updater.exe" ), true ); } catch (Exception) { } } string[] renameFiles = Directory.GetFiles( StartupPath, "*.new", SearchOption.AllDirectories ); foreach (string renameFile in renameFiles) { string path = Path.GetDirectoryName( renameFile ); string origFile = Path.Combine( path, Path.GetFileNameWithoutExtension( renameFile ) ); try { File.Delete( origFile ); File.Move( renameFile, origFile ); } catch (Exception) { } } if (!MainWindow.CurrentOptions.IsValid()) return false; try { Config.Register( "UOM hooks", Path.Combine( StartupPath, "UOMachine.exe" ), Path.Combine( StartupPath, "ClientHook.dll" ) ); } catch (Exception ex) { Utility.Log.LogMessage( ex ); /* Ensure EasyHook files are in output directory if you get this error */ System.Windows.MessageBox.Show( Strings.ErrorwithGACinstallation ); return false; } myMainWindow = mainWindow; InternalEventHandler.IncomingPacketHandler.Initialize(); InternalEventHandler.OutgoingPacketHandler.Initialize(); Network.Initialize(); InternalEventHandler.IPCHandler.Initialize(); mySkillNames = Skills.GetSkills( MainWindow.CurrentOptions.UOFolder ); TileData.Initialize( MainWindow.CurrentOptions.UOFolder ); Map.Initialize( MainWindow.CurrentOptions.UOFolder, MainWindow.CurrentOptions.CacheLevel ); Art.Initialize( MainWindow.CurrentOptions.UOFolder ); Cliloc.Initialize( MainWindow.CurrentOptions.UOFolder ); NamespaceToAssembly.Initialize(); IncomingPacketHandlers.Initialize(); OutgoingPacketHandlers.Initialize(); return true; }