protected override void LoadChildren()
        {
            _lmpFile.ReadDirectory();
            foreach (var entry in _lmpFile.Directory)
            {
                var ext = "";
                try
                {
                    ext = (System.IO.Path.GetExtension(entry.Key) ?? "").ToLower();
                }
                catch (Exception e)
                {
                    Console.WriteLine(e);
                    continue;
                }

                TreeViewItemViewModel child;
                switch (ext)
                {
                case ".world":
                    child = new WorldFileTreeViewModel(_world, this, _lmpFile, entry.Key);
                    break;

                default:
                    child = new LmpEntryTreeViewModel(_world, this, _lmpFile, entry.Key);
                    break;
                }
                Children.Add(child);
            }
        }
Exemplo n.º 2
0
        private void OnWorldEntrySelected(WorldFileTreeViewModel worldFileModel)
        {
            var engineVersion        = App.Settings.Get <EngineVersion>("Core.EngineVersion", EngineVersion.DarkAlliance);
            var lmpFile              = worldFileModel.LmpFileProperty;
            var entry                = lmpFile.Directory[worldFileModel.Text];
            WorldFileDecoder decoder = new WorldFileDecoder();
            var log = new StringLogger();

            _world.worldData = decoder.Decode(engineVersion, _worldTreeViewModel.World().WorldTex, log, lmpFile.FileData, entry.StartOffset, entry.Length);
            worldFileModel.ReloadChildren();
            _levelViewModel.WorldNode = worldFileModel;
            _levelViewModel.WorldData = _world.worldData;
            LogText  = log.ToString();
            LogText += _world.worldData.ToString();

            _window.tabControl.SelectedIndex = 3;                // Level View
            _window.ResetCamera();
            _window.SetViewportText(3, worldFileModel.Text, ""); // Set Level View Text
        }
Exemplo n.º 3
0
        private void OnWorldEntrySelected(WorldFileTreeViewModel worldFileModel)
        {
            var engineVersion = App.Settings.Get<EngineVersion>("Core.EngineVersion", EngineVersion.DarkAlliance);
            var lmpFile = worldFileModel.LmpFileProperty;
            var entry = lmpFile.Directory[worldFileModel.Text];
            WorldFileDecoder decoder = new WorldFileDecoder();
            var log = new StringLogger();
            _world.worldData = decoder.Decode(engineVersion, _worldTreeViewModel.World().WorldTex, log, lmpFile.FileData, entry.StartOffset, entry.Length);
            worldFileModel.ReloadChildren();
            _levelViewModel.WorldNode = worldFileModel;
            _levelViewModel.WorldData = _world.worldData;
            LogText = log.ToString();
            LogText += _world.worldData.ToString();

            _window.tabControl.SelectedIndex = 3; // Level View
            _window.ResetCamera();
            _window.SetViewportText(3, worldFileModel.Text, ""); // Set Level View Text
        }
Exemplo n.º 4
0
        protected override void LoadChildren()
        {
            _lmpFile.ReadDirectory();
            foreach (var entry in _lmpFile.Directory)
            {
                var ext = (System.IO.Path.GetExtension(entry.Key) ?? "").ToLower();

                TreeViewItemViewModel child;
                switch (ext)
                {
                    case ".world":
                        child = new WorldFileTreeViewModel(_world, this, _lmpFile, entry.Key);
                        break;
                    default:
                        child = new LmpEntryTreeViewModel(_world, this, _lmpFile, entry.Key);
                        break;
                }
                Children.Add(child);
            }
        }