Fix bug with mod preset checking... again

This commit is contained in:
pizzaboxer 2023-07-15 13:12:46 +01:00
parent 78869e5e7e
commit 232cd4f5c0
No known key found for this signature in database
GPG Key ID: 59D4A1DBAD0F2BA8

View File

@ -1000,8 +1000,10 @@ namespace Bloxstrap
Directory.CreateDirectory(modFolder); Directory.CreateDirectory(modFolder);
// cursors // cursors
await CheckModPreset(App.Settings.Prop.CursorType != CursorType.Default, @"content\textures\Cursors\KeyboardMouse\ArrowCursor.png", $"Cursor.{App.Settings.Prop.CursorType}.ArrowCursor.png"); await CheckModPreset(App.Settings.Prop.CursorType == CursorType.From2006, @"content\textures\Cursors\KeyboardMouse\ArrowCursor.png", "Cursor.From2006.ArrowCursor.png");
await CheckModPreset(App.Settings.Prop.CursorType != CursorType.Default, @"content\textures\Cursors\KeyboardMouse\ArrowFarCursor.png", $"Cursor.{App.Settings.Prop.CursorType}.ArrowFarCursor.png"); await CheckModPreset(App.Settings.Prop.CursorType == CursorType.From2006, @"content\textures\Cursors\KeyboardMouse\ArrowFarCursor.png", "Cursor.From2006.ArrowFarCursor.png");
await CheckModPreset(App.Settings.Prop.CursorType == CursorType.From2013, @"content\textures\Cursors\KeyboardMouse\ArrowCursor.png", "Cursor.From2013.ArrowCursor.png");
await CheckModPreset(App.Settings.Prop.CursorType == CursorType.From2013, @"content\textures\Cursors\KeyboardMouse\ArrowFarCursor.png", "Cursor.From2013.ArrowFarCursor.png");
// character sounds // character sounds
await CheckModPreset(App.Settings.Prop.UseOldCharacterSounds, @"content\sounds\action_footsteps_plastic.mp3", "OldWalk.mp3"); await CheckModPreset(App.Settings.Prop.UseOldCharacterSounds, @"content\sounds\action_footsteps_plastic.mp3", "OldWalk.mp3");
@ -1151,17 +1153,17 @@ namespace Bloxstrap
string fullLocation = Path.Combine(Directories.Modifications, location); string fullLocation = Path.Combine(Directories.Modifications, location);
string fileHash = File.Exists(fullLocation) ? Utility.MD5Hash.FromFile(fullLocation) : ""; string fileHash = File.Exists(fullLocation) ? Utility.MD5Hash.FromFile(fullLocation) : "";
byte[] embeddedData = string.IsNullOrEmpty(name) ? Array.Empty<byte>() : await Resource.Get(name);
string embeddedHash = Utility.MD5Hash.FromBytes(embeddedData);
if (!condition) if (!condition)
{ {
if (fileHash != "") if (fileHash != "" && fileHash == embeddedHash)
File.Delete(fullLocation); File.Delete(fullLocation);
return; return;
} }
byte[] embeddedData = string.IsNullOrEmpty(name) ? Array.Empty<byte>() : await Resource.Get(name);
string embeddedHash = Utility.MD5Hash.FromBytes(embeddedData);
if (fileHash != embeddedHash) if (fileHash != embeddedHash)
{ {
Directory.CreateDirectory(Path.GetDirectoryName(fullLocation)!); Directory.CreateDirectory(Path.GetDirectoryName(fullLocation)!);