Example #1
0
            public override void OnClick(TreeView treeview)
            {
                ShaderEditor editor = (ShaderEditor)LibraryGUI.GetActiveContent(typeof(ShaderEditor));

                if (editor == null)
                {
                    editor = new ShaderEditor();
                    LibraryGUI.LoadEditor(editor);
                }

                editor.Text = Text;
                editor.Dock = DockStyle.Fill;
                editor.FillEditor(this, ((SHARCFB)Parent.Parent).header.sharcNX.header);
            }
Example #2
0
            public override void OnClick(TreeView treeview)
            {
                TextEditor editor = (TextEditor)LibraryGUI.GetActiveContent(typeof(TextEditor));

                if (editor == null)
                {
                    editor      = new TextEditor();
                    editor.Dock = DockStyle.Fill;
                    LibraryGUI.LoadEditor(editor);
                }

                editor.Text = Text;
                editor.FillEditor(string.Join("", Code));
            }
Example #3
0
            public override void OnClick(TreeView treeview)
            {
                ShaderBinaryDisplay editor = (ShaderBinaryDisplay)LibraryGUI.GetActiveContent(typeof(ShaderBinaryDisplay));

                if (editor == null)
                {
                    editor      = new ShaderBinaryDisplay();
                    editor.Dock = DockStyle.Fill;
                    LibraryGUI.LoadEditor(editor);
                }

                editor.Text = Text;
                editor.FillEditor(Utils.CombineByteArray(data.ToArray()), DecompileShader());
            }
Example #4
0
        private void UpdateEditor()
        {
            ImageEditorBase editor = (ImageEditorBase)LibraryGUI.GetActiveContent(typeof(ImageEditorBase));

            if (editor == null)
            {
                editor      = new ImageEditorBase();
                editor.Dock = DockStyle.Fill;
                LibraryGUI.LoadEditor(editor);
            }

            editor.LoadProperties(GenericProperties);
            editor.LoadImage(this);
        }
Example #5
0
        public override void OnClick(TreeView treeview)
        {
            ArchiveFilePanel editor = (ArchiveFilePanel)LibraryGUI.GetActiveContent(typeof(ArchiveFilePanel));

            if (editor == null)
            {
                editor      = new ArchiveFilePanel();
                editor.Dock = DockStyle.Fill;
                LibraryGUI.LoadEditor(editor);
            }

            editor.LoadFile((ArchiveFileInfo)Tag);
            editor.UpdateEditor();
        }
Example #6
0
            public void UpdateEditor()
            {
                BotwActorEditorControl editor = (BotwActorEditorControl)LibraryGUI.GetActiveContent(typeof(BotwActorEditorControl));

                if (editor == null)
                {
                    editor      = new BotwActorEditorControl();
                    editor.Dock = DockStyle.Fill;

                    LibraryGUI.LoadEditor(editor);
                }
                editor.Text = Text;
                editor.LoadActor(this);
            }
Example #7
0
            public override void OnClick(TreeView treeview)
            {
                HexEditor editor = (HexEditor)LibraryGUI.GetActiveContent(typeof(HexEditor));

                if (editor == null)
                {
                    editor = new HexEditor();
                    LibraryGUI.LoadEditor(editor);
                }

                editor.Text = Text;
                editor.Dock = DockStyle.Fill;
                editor.LoadData(Data);
            }
Example #8
0
            public override void OnClick(TreeView treeView)
            {
                ImageEditorBase editor = (ImageEditorBase)LibraryGUI.GetActiveContent(typeof(ImageEditorBase));

                if (editor == null)
                {
                    editor      = new ImageEditorBase();
                    editor.Dock = DockStyle.Fill;
                    LibraryGUI.LoadEditor(editor);
                }

                editor.LoadProperties(GenericProperties);
                editor.LoadImage(this);
            }
Example #9
0
        private bool IsEditorActive()
        {
            BfresEditor bfresEditor = (BfresEditor)LibraryGUI.GetActiveContent(typeof(BfresEditor));

            if (bfresEditor != null)
            {
                var imageEditor = bfresEditor.GetActiveEditor(typeof(ImageEditorBase));
                return(imageEditor != null);
            }
            else
            {
                ImageEditorBase editor = (ImageEditorBase)LibraryGUI.GetActiveContent(typeof(ImageEditorBase));
                return(editor != null);
            }
        }
Example #10
0
            public override void OnClick(TreeView treeview)
            {
                if (msbt != null)
                {
                    MSBTEditor editor = (MSBTEditor)LibraryGUI.GetActiveContent(typeof(MSBTEditor));
                    if (editor == null)
                    {
                        editor      = new MSBTEditor();
                        editor.Dock = DockStyle.Fill;
                        LibraryGUI.LoadEditor(editor);
                    }

                    editor.LoadMSBT(msbt);
                }
            }
Example #11
0
            public override void OnClick(TreeView treeview)
            {
                TextEditor editor = (TextEditor)LibraryGUI.GetActiveContent(typeof(TextEditor));

                if (editor == null)
                {
                    editor      = new TextEditor();
                    editor.Dock = DockStyle.Fill;
                    LibraryGUI.LoadEditor(editor);
                }

                editor.Text = Text;
                editor.FillEditor(Bfsha2Xml.WriteShaderModel(shaderModel));
                editor.IsXML = true;
            }
Example #12
0
            private void UpdateEditor()
            {
                ImageEditorBase editor = (ImageEditorBase)LibraryGUI.GetActiveContent(typeof(ImageEditorBase));

                if (editor == null)
                {
                    editor      = new ImageEditorBase();
                    editor.Dock = DockStyle.Fill;
                    LibraryGUI.LoadEditor(editor);
                }

                editor.LoadProperties(new WtaProperties(Format,
                                                        Width, Height, Depth, SurfaceType, ImageSize, HeaderSize));
                editor.LoadImage(this);
            }
Example #13
0
        public override void OnClick(TreeView treeview)
        {
            STPropertyGrid editor = (STPropertyGrid)LibraryGUI.GetActiveContent(typeof(STPropertyGrid));

            if (editor == null)
            {
                editor = new STPropertyGrid();
                LibraryGUI.LoadEditor(editor);
            }

            var prop = new BarsProperty(bars);

            editor.Text = Text;
            editor.Dock = DockStyle.Fill;
            editor.LoadProperty(prop, null);
        }
Example #14
0
 public override void OnClick(TreeView treeview)
 {
     if (UnknownData != null && UnknownData.Length > 0)
     {
         HexEditor editor = (HexEditor)LibraryGUI.GetActiveContent(typeof(HexEditor));
         if (editor == null)
         {
             editor = new HexEditor();
             LibraryGUI.LoadEditor(editor);
         }
         editor.Text = Text;
         editor.Dock = DockStyle.Fill;
         editor.LoadData(UnknownData);
         editor.SaveData += (object sender, byte[] data) => this.UnknownData = data;
     }
 }
Example #15
0
            private void ShowBfwavPlayer()
            {
                var audioFile = new VGAdudioFile();

                audioFile.LoadAudio(new MemoryStream(Data), new BFWAV());

                AudioPlayerPanel editor = (AudioPlayerPanel)LibraryGUI.GetActiveContent(typeof(AudioPlayerPanel));

                if (editor == null)
                {
                    editor = new AudioPlayerPanel();
                    LibraryGUI.LoadEditor(editor);
                }
                editor.Text = Text;
                editor.Dock = DockStyle.Fill;
                editor.LoadFile(audioFile.audioData, new BFWAV(), true);
            }
Example #16
0
            public override void Replace(string FileName)
            {
                FTEX ftex = new FTEX();

                ftex.ReplaceTexture(FileName, Format);
                if (ftex.texture != null)
                {
                    surface.swizzle    = ftex.texture.Swizzle;
                    surface.tileMode   = (uint)ftex.texture.TileMode;
                    surface.format     = (uint)ftex.texture.Format;
                    surface.aa         = (uint)ftex.texture.AAMode;
                    surface.use        = (uint)ftex.texture.Use;
                    surface.alignment  = (uint)ftex.texture.Alignment;
                    surface.dim        = (uint)ftex.texture.Dim;
                    surface.width      = (uint)ftex.texture.Width;
                    surface.height     = (uint)ftex.texture.Height;
                    surface.depth      = (uint)ftex.texture.Depth;
                    surface.numMips    = (uint)ftex.texture.MipCount;
                    surface.imageSize  = (uint)ftex.texture.Data.Length;
                    surface.mipSize    = (uint)ftex.texture.MipData.Length;
                    surface.data       = ftex.texture.Data;
                    surface.mipData    = ftex.texture.MipData;
                    surface.mipOffset  = ftex.texture.MipOffsets;
                    surface.firstMip   = ftex.texture.ViewMipFirst;
                    surface.firstSlice = 0;
                    surface.numSlices  = ftex.texture.ArrayLength;
                    surface.imageCount = ftex.texture.MipCount;
                    surface.pitch      = ftex.texture.Pitch;
                    surface.texRegs    = GX2.CreateRegisters(surface);

                    SetChannelComponents();

                    Format     = FTEX.ConvertFromGx2Format((Syroot.NintenTools.Bfres.GX2.GX2SurfaceFormat)surface.format);
                    Width      = surface.width;
                    Height     = surface.height;
                    MipCount   = surface.numMips;
                    ArrayCount = surface.depth;

                    ImageEditorBase editor = (ImageEditorBase)LibraryGUI.GetActiveContent(typeof(ImageEditorBase));

                    if (editor != null)
                    {
                        UpdateEditor();
                    }
                }
            }
Example #17
0
            public void UpdateEditor()
            {
                ImageEditorBase editor = (ImageEditorBase)LibraryGUI.GetActiveContent(typeof(ImageEditorBase));

                if (editor == null)
                {
                    editor      = new ImageEditorBase();
                    editor.Dock = DockStyle.Fill;

                    LibraryGUI.LoadEditor(editor);
                }
                editor.Text = Text;
                var tex = FTEX.FromGx2Surface(surface, Text);

                tex.MipCount = MipCount;
                editor.LoadProperties(tex);
                editor.LoadImage(this);
            }
Example #18
0
        public void UpdateEditor()
        {
            //Here we check for an active editor and load a new one if not found
            //This is used when a tree/object editor is used
            ImageEditorBase editor = (ImageEditorBase)LibraryGUI.GetActiveContent(typeof(ImageEditorBase));

            if (editor == null)
            {
                editor      = new ImageEditorBase();
                editor.Dock = DockStyle.Fill;
                LibraryGUI.LoadEditor(editor);
            }

            //Load our image and any properties
            //If you don't make a class for properties you can use a generic class provided in STGenericTexture
            editor.LoadProperties(GenericProperties);
            editor.LoadImage(this);
        }
Example #19
0
        public override void OnClick(TreeView treeview)
        {
            if (LocFile == null)
            {
                LocFile = (NLG_NLOC)STFileLoader.OpenFileFormat(DataStream, "", true, true);
            }

            TextEditor editor = (TextEditor)LibraryGUI.GetActiveContent(typeof(TextEditor));

            if (editor == null)
            {
                editor = new TextEditor();
                LibraryGUI.LoadEditor(editor);
            }
            editor.Text = Text;
            editor.Dock = DockStyle.Fill;
            editor.FillEditor(LocFile.ConvertToString());
        }
Example #20
0
            public override void OnClick(TreeView treeview)
            {
                ImageEditorBase editor = (ImageEditorBase)LibraryGUI.GetActiveContent(typeof(ImageEditorBase));

                if (editor == null)
                {
                    editor      = new ImageEditorBase();
                    editor.Dock = DockStyle.Fill;
                    LibraryGUI.LoadEditor(editor);
                }

                if (GX2Surface != null)
                {
                    var tex = Bfres.Structs.FTEX.FromGx2Surface(GX2Surface, Text);
                    editor.LoadProperties(tex);
                }

                editor.Text = Text;
                editor.LoadImage(this);
            }
Example #21
0
        public static void LoadStage(string MapName)
        {
            string StageByml = $"{Runtime.SmoGamePath}\\StageData\\{MapName}Map.szs";

            Console.WriteLine($"{StageByml} {File.Exists($"{StageByml}")}");
            if (File.Exists($"{StageByml}"))
            {
                var TextureSzs = $"{Runtime.SmoGamePath}\\ObjectData\\{MapName}Texture.szs";

                ObjectEditor editor = new ObjectEditor();
                LibraryGUI.CreateMdiWindow(editor);

                var level = new Level(StageByml, -1);
                foreach (var obj in level.objs)
                {
                    foreach (var ob in obj.Value)
                    {
                        var Transform = Utils.TransformValues(ob.transform.Pos, ob.transform.Rot, ob.transform.Scale);

                        var bfresData = BfresFromSzs(ob.Name);

                        if (bfresData != null)
                        {
                            BFRES bfresFile = (BFRES)STFileLoader.OpenFileFormat(ob.Name, bfresData);
                            bfresFile.BFRESRender.ModelTransform = Transform;

                            editor.AddNode(bfresFile);
                            bfresFile.LoadEditors(null);
                            DiableLoadCheck();
                        }
                    }
                }

                TextureSzs = null;
                GC.Collect();
            }

            BfresEditor bfresEditor = (BfresEditor)LibraryGUI.GetActiveContent(typeof(BfresEditor));

            bfresEditor.DisplayAll = true;
        }
Example #22
0
            public void LoadCostumes(string fileName)
            {
                editor = null;

                fileName = System.IO.Path.ChangeExtension(fileName, null);

                List <string> CostumeNames = new List <string>();

                CostumeNames.Add($"{fileName}.szs");
                CostumeNames.Add($"{fileName}Face.szs");
                CostumeNames.Add($"{fileName}Eye.szs");
                CostumeNames.Add($"{fileName}Head.szs");
                CostumeNames.Add($"{fileName}HeadTexture.szs");
                CostumeNames.Add($"{fileName}Under.szs");
                CostumeNames.Add($"{fileName}HandL.szs");
                CostumeNames.Add($"{fileName}HandR.szs");
                CostumeNames.Add($"{fileName}HandTexture.szs");
                CostumeNames.Add($"{fileName}BodyTexture.szs");
                CostumeNames.Add($"{fileName}Shell.szs");
                CostumeNames.Add($"{fileName}Tail.szs");
                CostumeNames.Add($"{fileName}Hair.szs");
                //     CostumeNames.Add($"{fileName}Hakama.szs");
                CostumeNames.Add($"{fileName}Skirt.szs");
                //     CostumeNames.Add($"{fileName}Poncho.szs");
                CostumeNames.Add($"{fileName}Guitar.szs");

                foreach (string path in CostumeNames)
                {
                    Console.WriteLine("Path = " + path);

                    if (System.IO.File.Exists(path))
                    {
                        LoadCostume(path);
                    }
                    else
                    {
                        //Load default meshes unless it's these file names
                        List <string> ExcludeFileList = new List <string>(new string[] {
                            "MarioHack", "MarioDot",
                        });

                        bool Exluded = ExcludeFileList.Any(path.Contains);

                        if (Exluded == false)
                        {
                            string parent = System.IO.Directory.GetParent(path).FullName;

                            if (path.Contains($"{fileName}Face"))
                            {
                                LoadCostume($"{parent}\\MarioFace.szs");
                            }
                            else if (path.Contains($"{fileName}Eye"))
                            {
                                LoadCostume($"{parent}\\MarioEye.szs");
                            }
                            else if (path.Contains($"{fileName}HeadTexture"))
                            {
                                LoadCostume($"{parent}\\MarioHeadTexture.szs");
                            }
                            else if (path.Contains($"{fileName}Head"))
                            {
                                LoadCostume($"{parent}\\MarioHead.szs");
                            }
                            else if (path.Contains($"{fileName}HandL"))
                            {
                                LoadCostume($"{parent}\\MarioHandL.szs");
                            }
                            else if (path.Contains($"{fileName}HandR"))
                            {
                                LoadCostume($"{parent}\\MarioHandR.szs");
                            }
                            else if (path.Contains($"{fileName}HandTexture"))
                            {
                                LoadCostume($"{parent}\\MarioHandTexture.szs");
                            }
                        }
                    }
                }

                BfresEditor bfresEditor = (BfresEditor)LibraryGUI.GetActiveContent(typeof(BfresEditor));

                bfresEditor.DisplayAll = true;
            }
Example #23
0
        public void LoadEditors(TreeNode Wrapper, Action OnPropertyChanged)
        {
            BcresEditor bcresEditor = (BcresEditor)LibraryGUI.GetActiveContent(typeof(BcresEditor));
            bool        HasModels   = RenderedBcres.Models.Count > 0;

            if (bcresEditor == null)
            {
                bcresEditor      = new BcresEditor(HasModels);
                bcresEditor.Dock = DockStyle.Fill;
                LibraryGUI.LoadEditor(bcresEditor);
            }

            if (!DrawablesLoaded)
            {
                ObjectEditor.AddContainer(DrawableContainer);

                for (int m = 0; m < RenderedBcres.Models.Count; m++)
                {
                    if (RenderedBcres.Models[m].Skeleton.Renderable != null)
                    {
                        DrawableContainer.Drawables.Add(RenderedBcres.Models[m].Skeleton.Renderable);
                    }
                }

                DrawablesLoaded = true;
            }

            if (Runtime.UseOpenGL)
            {
                bcresEditor.LoadViewport(this, DrawableContainer);
            }

            if (Wrapper is BcresTextureMapWrapper)
            {
                BcresSamplerEditorSimple editor = (BcresSamplerEditorSimple)bcresEditor.GetActiveEditor(typeof(BcresSamplerEditorSimple));
                if (editor == null)
                {
                    editor      = new BcresSamplerEditorSimple();
                    editor.Dock = DockStyle.Fill;
                    bcresEditor.LoadEditor(editor);
                }
                editor.LoadTexture(((BcresTextureMapWrapper)Wrapper));
            }
            else if (Wrapper is BCRES)
            {
                LoadPropertyGrid(((BCRES)Wrapper).BcresFile, bcresEditor, OnPropertyChanged);
            }
            else if (Wrapper is MTOBWrapper)
            {
                LoadPropertyGrid(((MTOBWrapper)Wrapper).Material, bcresEditor, OnPropertyChanged);
            }
            else if (Wrapper is CMDLWrapper)
            {
                LoadPropertyGrid(((CMDLWrapper)Wrapper).Model, bcresEditor, OnPropertyChanged);
            }
            else if (Wrapper is CRESBoneWrapper)
            {
                LoadPropertyGrid(((CRESBoneWrapper)Wrapper).Bone, bcresEditor, OnPropertyChanged);
            }
            else if (Wrapper is CRESSkeletonWrapper)
            {
                LoadPropertyGrid(((CRESSkeletonWrapper)Wrapper).Skeleton, bcresEditor, OnPropertyChanged);
            }
        }