public bool BackToParentFolder() { if (NowFolder.Index == 0xFFFFFFFF) { return(false); } JMDPackedFolderInfo nowFolder = this.FolderStack.Pop(); this.NowFolderContent = JMDPackedFilesInfoDecoder.GetJMDPackedFileInfos(GetStreamData(nowFolder.ParentIndex), this.HeaderKey, nowFolder.ParentIndex); this.PathStack.Pop(); return(true); }
public bool EnterToFolder(string FolderName) { JMDPackedFolderInfo FolderInfo = (JMDPackedFolderInfo)Array.Find(NowFolderContent, x => x.Type == ObjectType.Folder && ((JMDPackedFolderInfo)x).FolderName == FolderName); if (FolderName is null) { return(false); } this.ParentFolder = this.NowFolder; this.NowFolderContent = JMDPackedFilesInfoDecoder.GetJMDPackedFileInfos(GetStreamData(FolderInfo.Index), this.HeaderKey, this.NowFolder.Index); this.FolderStack.Push(FolderInfo); this.PathStack.Push(FolderInfo.FolderName); return(true); }
public IPackedObject[] GetInFolderObject(JMDPackedFolderInfo info) { return(JMDPackedFilesInfoDecoder.GetJMDPackedFileInfos(GetStreamData(info.Index), HeaderKey, info.Index)); }