New Cheat List - fix bugs in file loading
This commit is contained in:
parent
55cab352a1
commit
a32578eb42
|
@ -274,6 +274,18 @@ namespace BizHawk.MultiClient
|
||||||
return Path.Combine(MakeAbsolutePath(pathEntry.Path, game.System), name);
|
return Path.Combine(MakeAbsolutePath(pathEntry.Path, game.System), name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static string GetCheatsPath(GameInfo game)
|
||||||
|
{
|
||||||
|
PathEntry pathEntry = Global.Config.PathEntries[game.System, "Cheats"];
|
||||||
|
|
||||||
|
if (pathEntry == null)
|
||||||
|
{
|
||||||
|
pathEntry = Global.Config.PathEntries[game.System, "Base"];
|
||||||
|
}
|
||||||
|
|
||||||
|
return MakeAbsolutePath(pathEntry.Path, game.System);
|
||||||
|
}
|
||||||
|
|
||||||
public static string ScreenshotPrefix(GameInfo game)
|
public static string ScreenshotPrefix(GameInfo game)
|
||||||
{
|
{
|
||||||
string name = FilesystemSafeName(game);
|
string name = FilesystemSafeName(game);
|
||||||
|
|
|
@ -166,9 +166,14 @@ namespace BizHawk.MultiClient
|
||||||
|
|
||||||
using (StreamReader sr = file.OpenText())
|
using (StreamReader sr = file.OpenText())
|
||||||
{
|
{
|
||||||
if (!append)
|
if (append)
|
||||||
|
{
|
||||||
|
_changes = true;
|
||||||
|
}
|
||||||
|
else
|
||||||
{
|
{
|
||||||
Clear();
|
Clear();
|
||||||
|
_changes = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
string s;
|
string s;
|
||||||
|
@ -176,7 +181,8 @@ namespace BizHawk.MultiClient
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
int ADDR, VALUE, COMPARE;
|
int ADDR, VALUE;
|
||||||
|
int? COMPARE;
|
||||||
MemoryDomain DOMAIN;
|
MemoryDomain DOMAIN;
|
||||||
bool ENABLED;
|
bool ENABLED;
|
||||||
string NAME;
|
string NAME;
|
||||||
|
@ -186,7 +192,15 @@ namespace BizHawk.MultiClient
|
||||||
string[] vals = s.Split('\t');
|
string[] vals = s.Split('\t');
|
||||||
ADDR = Int32.Parse(vals[0], NumberStyles.HexNumber);
|
ADDR = Int32.Parse(vals[0], NumberStyles.HexNumber);
|
||||||
VALUE = Int32.Parse(vals[1], NumberStyles.HexNumber);
|
VALUE = Int32.Parse(vals[1], NumberStyles.HexNumber);
|
||||||
|
|
||||||
|
if (vals[2] == "N")
|
||||||
|
{
|
||||||
|
COMPARE = null;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
COMPARE = Int32.Parse(vals[2], NumberStyles.HexNumber);
|
COMPARE = Int32.Parse(vals[2], NumberStyles.HexNumber);
|
||||||
|
}
|
||||||
DOMAIN = ToolHelpers.DomainByName(vals[3]);
|
DOMAIN = ToolHelpers.DomainByName(vals[3]);
|
||||||
ENABLED = vals[4] == "1";
|
ENABLED = vals[4] == "1";
|
||||||
NAME = vals[5];
|
NAME = vals[5];
|
||||||
|
@ -210,7 +224,7 @@ namespace BizHawk.MultiClient
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
throw new NotImplementedException();
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public string CurrentFileName
|
public string CurrentFileName
|
||||||
|
@ -241,9 +255,7 @@ namespace BizHawk.MultiClient
|
||||||
{
|
{
|
||||||
ofd.FileName = Path.GetFileNameWithoutExtension(currentFile);
|
ofd.FileName = Path.GetFileNameWithoutExtension(currentFile);
|
||||||
}
|
}
|
||||||
ofd.InitialDirectory = PathManager.MakeAbsolutePath(
|
ofd.InitialDirectory = PathManager.GetCheatsPath(Global.Game);
|
||||||
Global.Config.PathEntries[Global.Emulator.SystemId, "Cheats"].Path,
|
|
||||||
Global.Emulator.SystemId);
|
|
||||||
ofd.Filter = "Cheat Files (*.cht)|*.cht|All Files|*.*";
|
ofd.Filter = "Cheat Files (*.cht)|*.cht|All Files|*.*";
|
||||||
ofd.RestoreDirectory = true;
|
ofd.RestoreDirectory = true;
|
||||||
|
|
||||||
|
|
|
@ -26,7 +26,7 @@ namespace BizHawk.MultiClient
|
||||||
{ ADDRESS, 60 },
|
{ ADDRESS, 60 },
|
||||||
{ VALUE, 59 },
|
{ VALUE, 59 },
|
||||||
{ COMPARE, 59 },
|
{ COMPARE, 59 },
|
||||||
{ ON, 25 },
|
{ ON, 28 },
|
||||||
{ DOMAIN, 55 },
|
{ DOMAIN, 55 },
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -75,11 +75,24 @@ namespace BizHawk.MultiClient
|
||||||
{
|
{
|
||||||
Global.Config.RecentWatches.Add(path);
|
Global.Config.RecentWatches.Add(path);
|
||||||
UpdateListView();
|
UpdateListView();
|
||||||
MessageLabel.Text = Path.GetFileName(path) + " loaded";
|
ShowFileName(loaded: true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void ShowFileName(bool loaded)
|
||||||
|
{
|
||||||
|
MessageLabel.Text = Path.GetFileName(Global.CheatList2.CurrentFileName);
|
||||||
|
if (loaded)
|
||||||
|
{
|
||||||
|
MessageLabel.Text += " loaded";
|
||||||
|
}
|
||||||
|
else if (Global.CheatList2.Changes)
|
||||||
|
{
|
||||||
|
MessageLabel.Text += " *";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public bool AskSave()
|
public bool AskSave()
|
||||||
{
|
{
|
||||||
if (Global.Config.SupressAskSave) //User has elected to not be nagged
|
if (Global.Config.SupressAskSave) //User has elected to not be nagged
|
||||||
|
|
Loading…
Reference in New Issue