diff --git a/Pathfinder.csproj b/Pathfinder.csproj
index de6c4e30..522493fe 100644
--- a/Pathfinder.csproj
+++ b/Pathfinder.csproj
@@ -96,12 +96,10 @@
-
-
-
-
+
+
diff --git a/Pathfinder/Executable/Handler.cs b/Pathfinder/Executable/Handler.cs
index ff878653..34bb17fd 100644
--- a/Pathfinder/Executable/Handler.cs
+++ b/Pathfinder/Executable/Handler.cs
@@ -26,12 +26,14 @@ public static bool AddExecutable(string exeName, Interface inter)
internal static void ExecutableListener(ExecutableExecuteEvent e)
{
- Interface i;
- if (interfaces.TryGetValue(e.ExecutableName, out i)
- && e.ExecutableData.Equals(i.FileData))
+ foreach(Interface i in interfaces.Values)
{
- e.OsInstance.addExe(new Instance(e.Location, e.OsInstance, e.Parameters, i));
- e.IsCancelled = true;
+ if (e.ExecutableData.Equals(i.FileData))
+ {
+ e.OsInstance.addExe(new Instance(e.Location, e.OsInstance, e.Parameters, i));
+ e.IsCancelled = true;
+ break;
+ }
}
}
diff --git a/PathfinderPatcher/Pathfinder.cs b/PathfinderPatcher/Pathfinder.cs
index abc3dd34..5a6b0261 100644
--- a/PathfinderPatcher/Pathfinder.cs
+++ b/PathfinderPatcher/Pathfinder.cs
@@ -105,6 +105,7 @@ internal static void Main(string[] args)
flags: InjectFlags.PassInvokingInstance | InjectFlags.ModifyReturn
);
+ // SENSIBLE CODE, CHANGE OFFSET IF NEEDED
ad.MainModule.GetType("Hacknet.OS").GetMethod("launchExecutable").InjectWith(
hooks.GetMethod("onExecutableExecute"),
48,
@@ -112,6 +113,7 @@ internal static void Main(string[] args)
localsID: new int[] { 2 }
);
+ // SENSIBLE CODE, CHANGE OFFSET IF NEEDED
var mainMenu = ad.MainModule.GetType("Hacknet.MainMenu");
mainMenu.GetMethod("DrawBackgroundAndTitle").InjectWith(
hooks.GetMethod("onDrawMainMenuTitles"),