/// <summary> /// Creates a particles_manifest.txt with the particles included in the base game plus the ones found in the particles folder. /// </summary> /// <param name="launcher">An instance of the Source SDK lib</param> public static void CreateManifest(Launcher launcher) { if (launcher == null) { return; } VPKManager vpkManager = new VPKManager(launcher); vpkManager.extractFile("particles/particles_manifest.txt"); string modPath = launcher.GetCurrentMod().installPath; KeyValue manifest = KeyValue.readChunkfile(launcher.GetCurrentMod().installPath + "\\particles\\particles_manifest.txt"); foreach (string file in Directory.GetFiles(launcher.GetCurrentMod().installPath + "\\particles", "*.pcf", SearchOption.AllDirectories)) { Uri path1 = new Uri(modPath + "\\"); Uri path2 = new Uri(file); Uri diff = path1.MakeRelativeUri(path2); manifest.addChild(new KeyValue("file", diff.OriginalString)); } KeyValue.writeChunkFile(launcher.GetCurrentMod().installPath + "\\particles\\particles_manifest.txt", manifest); }