示例#1
0
 private void TerminateRunners()
 {
     if (runner != null)
     {
         runner.Kill();
         runner = null;
     }
 }
示例#2
0
        private void UI_FileList_AfterSelect(object sender, TreeViewEventArgs e)
        {
            TreeNode node = UI_FileList.SelectedNode;
            if (node != null && node.Tag is CASCFile)
            {
                CASCFile file = (CASCFile)node.Tag;
                TerminateRunners();

                extractModelFile = null;
                extractSkinFile = null;

                selectedFileName = file.Name;
                string skinFile = skinPattern.Replace(file.FullName, "00.skin");
                runner = new RunnerExtractItemUnsafe(file.FullName, skinFile);
                runner.Begin();

                loadingWindow = new LoadingWindow(string.Format("Loading {0} model...", Path.GetFileNameWithoutExtension(selectedFileName)), "Extracting from data source...", true, cancelCallback);
                loadingWindow.ShowDialog();
            }
        }
示例#3
0
        private void PrepareTextureFiles()
        {
            loadingWindow.SetFirstLine("Extracting WMO textures...");

            Chunk_MOTX texChunk = (Chunk_MOTX)loadedFile.getChunk(Chunk_MOTX.Magic);
            string[] textures = texChunk.textures.all().ToArray();

            texTotal = textures.Length;
            texDone = 0;

            UpdateTexturePrepStatus();

            texRunner = new RunnerExtractItemUnsafe(textures);
            texRunner.CacheCheck = true;
            texRunner.Begin();
        }