/// <summary> /// Loads data given the path of a file or directory /// </summary> public static WzFile LoadFile(this Wz wz, string filePath, WzMapleVersion encryption, bool force = true) { WzFile file = null; if (!force) { if ((file = GetFile(wz)) != null) { return(file); } } if (File.Exists(filePath) || File.Exists(filePath + Resources.FileExtensionWZ)) { file = new WzFile(filePath + Resources.FileExtensionWZ, encryption); file.ParseWzFile(); } else if (Directory.Exists(filePath)) { file = new WzFile(filePath, encryption); WzDirectory dir = new WzDirectory(filePath, file); file.WzDirectory = dir; LoadFilesImg(dir, filePath, encryption); } return(WzCache[(int)wz] = file); }
/// <summary> /// Disposes then nulls the cached WZ file /// </summary> public static void Dispose(this Wz wz) { var file = WzCache[(int)wz]; file?.Dispose(); WzCache[(int)wz] = null; }
/// <summary> /// Disposes then nulls the cached WZ file /// </summary> public static void Dispose(this Wz wz) { var file = WzCache[(int)wz]; file?.Dispose(); WzCache[(int)wz] = null; if (wz == Wz.String) { StringWz.Dispose(); } }
/// <summary> /// Gets the cached WZ file /// </summary> public static WzFile GetFile(this Wz wz) { return(WzCache[(int)wz]); }
public string SizeString() { return(Wx.ToString("0.0") + "," + Wy.ToString("0.0") + "," + Wz.ToString("0.0")); }