mirror of
https://github.com/crskycode/GARbro.git
synced 2024-12-25 12:24:12 +08:00
(FormatCatalog.DataDirectory): new property.
This commit is contained in:
parent
7f272a6c16
commit
7c5b26933a
@ -122,7 +122,7 @@ namespace GameRes.Formats.Neko
|
|||||||
static string[] KnownFileNames { get { return s_known_file_names.Value; } }
|
static string[] KnownFileNames { get { return s_known_file_names.Value; } }
|
||||||
|
|
||||||
static string[] s_known_dir_names = {
|
static string[] s_known_dir_names = {
|
||||||
"image/actor", "image/back", "image/mask", "image/visual",
|
"image/actor", "image/back", "image/mask", "image/visual", "image/actor/big",
|
||||||
"sound/bgm", "sound/env", "sound/se", "voice", "script", "system", "count",
|
"sound/bgm", "sound/env", "sound/se", "voice", "script", "system", "count",
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -177,7 +177,7 @@ namespace GameRes.Formats.Neko
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
var dir = Path.GetDirectoryName (System.Reflection.Assembly.GetExecutingAssembly().Location);
|
var dir = FormatCatalog.Instance.DataDirectory;
|
||||||
var lst_file = Path.Combine (dir, "nekopack.lst");
|
var lst_file = Path.Combine (dir, "nekopack.lst");
|
||||||
if (!File.Exists (lst_file))
|
if (!File.Exists (lst_file))
|
||||||
return new string[0];
|
return new string[0];
|
||||||
|
@ -219,7 +219,7 @@ namespace GameRes.Formats.NonColor
|
|||||||
{
|
{
|
||||||
if (null != LastAccessedScheme && LastAccessedScheme.Item1 == scheme.Hash)
|
if (null != LastAccessedScheme && LastAccessedScheme.Item1 == scheme.Hash)
|
||||||
return LastAccessedScheme.Item2;
|
return LastAccessedScheme.Item2;
|
||||||
var dir = Path.GetDirectoryName (System.Reflection.Assembly.GetExecutingAssembly().Location);
|
var dir = FormatCatalog.Instance.DataDirectory;
|
||||||
var lst_file = Path.Combine (dir, PersistentFileMapName);
|
var lst_file = Path.Combine (dir, PersistentFileMapName);
|
||||||
var idx_file = Path.ChangeExtension (lst_file, ".idx");
|
var idx_file = Path.ChangeExtension (lst_file, ".idx");
|
||||||
using (var idx_stream = File.OpenRead (idx_file))
|
using (var idx_stream = File.OpenRead (idx_file))
|
||||||
|
@ -70,11 +70,15 @@ namespace GameRes
|
|||||||
|
|
||||||
public int CurrentSchemeVersion { get; private set; }
|
public int CurrentSchemeVersion { get; private set; }
|
||||||
public string SchemeID { get { return "GARbroDB"; } }
|
public string SchemeID { get { return "GARbroDB"; } }
|
||||||
|
public string AssemblyLocation { get { return m_gameres_dir.Value; } }
|
||||||
|
public string DataDirectory { get { return AssemblyLocation; } }
|
||||||
|
|
||||||
public Exception LastError { get; set; }
|
public Exception LastError { get; set; }
|
||||||
|
|
||||||
public event ParametersRequestEventHandler ParametersRequest;
|
public event ParametersRequestEventHandler ParametersRequest;
|
||||||
|
|
||||||
|
private Lazy<string> m_gameres_dir = new Lazy<string> (() => Path.GetDirectoryName (System.Reflection.Assembly.GetExecutingAssembly().Location));
|
||||||
|
|
||||||
private FormatCatalog ()
|
private FormatCatalog ()
|
||||||
{
|
{
|
||||||
//An aggregate catalog that combines multiple catalogs
|
//An aggregate catalog that combines multiple catalogs
|
||||||
@ -82,7 +86,7 @@ namespace GameRes
|
|||||||
//Adds all the parts found in the same assembly as the Program class
|
//Adds all the parts found in the same assembly as the Program class
|
||||||
catalog.Catalogs.Add (new AssemblyCatalog (typeof(FormatCatalog).Assembly));
|
catalog.Catalogs.Add (new AssemblyCatalog (typeof(FormatCatalog).Assembly));
|
||||||
//Adds parts matching pattern found in the directory of the assembly
|
//Adds parts matching pattern found in the directory of the assembly
|
||||||
catalog.Catalogs.Add (new DirectoryCatalog (Path.GetDirectoryName (System.Reflection.Assembly.GetExecutingAssembly().Location), "Arc*.dll"));
|
catalog.Catalogs.Add (new DirectoryCatalog (AssemblyLocation, "Arc*.dll"));
|
||||||
|
|
||||||
//Create the CompositionContainer with the parts in the catalog
|
//Create the CompositionContainer with the parts in the catalog
|
||||||
using (var container = new CompositionContainer (catalog))
|
using (var container = new CompositionContainer (catalog))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user