Example #1
0
        private void openToolStripMenuItem_Click(object sender, EventArgs e)
        {
            var ofd = new OpenFileDialog();

            if (ofd.ShowDialog() == DialogResult.OK)
            {
                try
                {
                    FilePath = ofd.FileName;
                    c0000    = DataFile.LoadFromFile <ANIBND>(FilePath);
                    c0000.CreateBackup("mebak");
                } catch (Exception ex)
                {
                    MessageBox.Show(@"Error loading ANIBND.\n\n" + ex.ToString());
                    openToolStripMenuItem_Click(sender, e);
                    return;
                }
                RefreshMovesetList(0);
            }
        }
Example #2
0
        public void LoadFromPath(string file)
        {
            StandardTAE = null;
            PlayerTAE   = null;

            file = file.ToUpper();
            var fileNoDcx = file;

            IsDcx = false;
            if (file.EndsWith(".DCX"))
            {
                IsDcx     = true;
                fileNoDcx = file.Substring(0, file.Length - 4);
            }

            if (fileNoDcx.EndsWith(".ANIBND"))
            {
                if (IsDcx)
                {
                    dataANIBND = DataFile.LoadFromFile <ANIBND>(file, loadDcxVersion: true);
                }
                else
                {
                    dataANIBND = DataFile.LoadFromFile <ANIBND>(fileNoDcx);
                }

                StandardTAE = dataANIBND.StandardTAE;
                PlayerTAE   = dataANIBND.PlayerTAE;

                ContainerType = TaeFileContainerType.Anibnd;
            }
            else if (fileNoDcx.EndsWith(".OBJBND"))
            {
                if (IsDcx)
                {
                    dataEntityBND = DataFile.LoadFromFile <EntityBND>(file, loadDcxVersion: true);
                }
                else
                {
                    dataEntityBND = DataFile.LoadFromFile <EntityBND>(fileNoDcx);
                }

                StandardTAE = new Dictionary <int, TAE>();
                PlayerTAE   = new Dictionary <int, TAE>();

                foreach (var m in dataEntityBND.Models)
                {
                    if (m.AnimContainer != null)
                    {
                        foreach (var tae in m.AnimContainer.StandardTAE)
                        {
                            StandardTAE.Add(tae.Key, tae.Value);
                        }
                        foreach (var tae in m.AnimContainer.PlayerTAE)
                        {
                            PlayerTAE.Add(tae.Key, tae.Value);
                        }
                    }
                }

                ContainerType = TaeFileContainerType.Objbnd;
            }
            else if (file.EndsWith(".REMOBND"))
            {
                if (IsDcx)
                {
                    dataREMOBND = DataFile.LoadFromFile <REMOBND>(file, loadDcxVersion: true);
                }
                else
                {
                    dataREMOBND = DataFile.LoadFromFile <REMOBND>(fileNoDcx);
                }
                ContainerType = TaeFileContainerType.Remobnd;
            }
            else if (fileNoDcx.EndsWith(".TAE"))
            {
                if (IsDcx)
                {
                    dataTAE = DataFile.LoadFromFile <TAE>(file, loadDcxVersion: true);
                }
                else
                {
                    dataTAE = DataFile.LoadFromFile <TAE>(fileNoDcx);
                }
                ContainerType = TaeFileContainerType.Tae;
            }
        }