コード例 #1
0
        public void LoadSubFiles()
        {
            foreach (Bar.Entry barEntry in BarFile)
            {
                try
                {
                    switch (barEntry.Type)
                    {
                    case Bar.EntryType.Model:
                        ModelFile = Mdlx.Read(barEntry.Stream);
                        break;

                    case Bar.EntryType.ModelTexture:
                        TextureFile = ModelTexture.Read(barEntry.Stream);
                        break;

                    case Bar.EntryType.ModelCollision:
                        CollisionFile = new ModelCollision(barEntry.Stream);
                        break;

                    default:
                        break;
                    }
                }
                catch (Exception e) { }
            }
        }
コード例 #2
0
ファイル: ModelCollision.cs プロジェクト: lxc1030/ServerTest
 public static void Init()
 {
     if (instance == null)
     {
         instance = new ModelCollision();
     }
 }
コード例 #3
0
        public void analyzeFiles(List <string> list_filePaths)
        {
            int           totalFiles = 0;
            int           validFiles = 0;
            List <string> filesFalse = new List <string>();

            foreach (string filePath in list_filePaths)
            {
                totalFiles++;

                if (filePath == null || !filePath.EndsWith(".mdlx"))
                {
                    continue;
                }

                using var stream = File.Open(filePath, FileMode.Open);
                if (!Bar.IsValid(stream))
                {
                    continue;
                }

                Bar binarc = Bar.Read(stream);


                foreach (Bar.Entry barEntry in binarc)
                {
                    switch (barEntry.Type)
                    {
                    case Bar.EntryType.Model:
                        //Mdlx modelFile = Mdlx.Read(barEntry.Stream);
                        break;

                    case Bar.EntryType.ModelTexture:
                        //ModelTexture textureFile = ModelTexture.Read(barEntry.Stream);
                        break;

                    case Bar.EntryType.ModelCollision:
                        ModelCollision collisionFile = new ModelCollision(barEntry.Stream);
                        validFiles++;
                        if (collisionFile.Enable != 1)
                        {
                            filesFalse.Add(filePath);
                            Debug.WriteLine("FALSE: " + filePath + " [" + collisionFile.Enable + "]");
                        }
                        break;

                    default:
                        break;
                    }
                }
            }
            Debug.WriteLine("totalFiles: " + totalFiles);
            Debug.WriteLine("validFiles: " + validFiles);
            Debug.WriteLine("filesFalse count: " + filesFalse.Count);
        }
コード例 #4
0
        public void OpenMdlxFile(string filePath)
        {
            using var stream = File.Open(filePath, FileMode.Open);
            Bar binarc = Bar.Read(stream);

            ObservableCollection <Bar.Entry> testColl = new ObservableCollection <Bar.Entry>(binarc);

            testColl[0].Name = "Changed";
            Debug.WriteLine("TEST: " + binarc[0].Name);
            Debug.WriteLine("TEST: " + testColl[0].Name);

            if (binarc != null)
            {
                Mdlx           modelFile;
                ModelTexture   textureFile;
                ModelCollision collisionFile;

                foreach (Bar.Entry barEntry in binarc)
                {
                    switch (barEntry.Type)
                    {
                    case Bar.EntryType.Model:
                        modelFile = Mdlx.Read(barEntry.Stream);
                        break;

                    case Bar.EntryType.ModelTexture:
                        textureFile = ModelTexture.Read(barEntry.Stream);
                        break;

                    case Bar.EntryType.ModelCollision:
                        collisionFile = new ModelCollision(barEntry.Stream);
                        break;

                    default:
                        break;
                    }
                }
                Debug.WriteLine("BREAKPOINT");
            }
        }
コード例 #5
0
ファイル: Collision_VM.cs プロジェクト: osdanova/OpenKh
 public Collision_VM(ModelCollision collisionFile)
 {
     this.CollisionFile = collisionFile;
 }
コード例 #6
0
ファイル: ModelCollision.cs プロジェクト: lxc1030/ServerTest
 public ModelCollision()
 {
     instance = this;
 }
コード例 #7
0
 public Collision_Control(ModelCollision collisionFile)
 {
     InitializeComponent();
     collisionControlVM = new Collision_VM(collisionFile);
     DataContext        = collisionControlVM;
 }