NAK_CVR_Mods/.Experimental/LuaNetworkVariables/Patches.cs
2025-05-08 17:15:52 -05:00

26 lines
No EOL
931 B
C#

using ABI.Scripting.CVRSTL.Client;
using ABI.Scripting.CVRSTL.Common;
using HarmonyLib;
using MoonSharp.Interpreter;
using NAK.LuaNetworkVariables.Modules;
namespace NAK.LuaNetworkVariables.Patches;
internal static class LuaScriptFactory_Patches
{
[HarmonyPostfix]
[HarmonyPatch(typeof(LuaScriptFactory.CVRRequireModule), nameof(LuaScriptFactory.CVRRequireModule.Require))]
private static void Postfix_CVRRequireModule_require(
string moduleFriendlyName,
ref LuaScriptFactory.CVRRequireModule __instance,
ref object __result,
ref Script ____script,
ref CVRLuaContext ____context)
{
if (LuaNetModule.MODULE_ID != moduleFriendlyName)
return; // not our module
__result = LuaNetModule.RegisterUserData(____script, ____context);
__instance.RegisteredModules[LuaNetModule.MODULE_ID] = __result; // add module to cache
}
}