示例#1
0
 protected override void InitializeFile(IDataFile dataFile, string name)
 {
     if (_acd?.IsPacked == false)
     {
         dataFile.Initialize(this, name, _acd.GetFilename(name));
     }
     else
     {
         base.InitializeFile(dataFile, name);
     }
 }
示例#2
0
        protected AbstractDataFile(string carDir, string name, Acd acd)
        {
            Name         = name;
            _acdFilename = Path.Combine(carDir, "data.acd");

            if (acd != null)
            {
                _acd = acd;

                if (acd.IsPacked)
                {
                    Mode     = StorageMode.AcdFile;
                    Filename = null;
                }
                else
                {
                    Mode     = StorageMode.UnpackedFile;
                    Filename = acd.GetFilename(Name);
                }
            }
            else
            {
                if (File.Exists(_acdFilename))
                {
                    Mode     = StorageMode.AcdFile;
                    Filename = _acdFilename;
                }
                else
                {
                    Mode     = StorageMode.UnpackedFile;
                    Filename = Path.Combine(carDir, "data", name);
                }
            }

            Load();
        }