allow make private static field/method accessiable

This commit is contained in:
zhurengong
2022-02-10 15:16:41 +08:00
parent 8ac7e08aac
commit 8dca5fa491

View File

@@ -67,7 +67,7 @@ namespace Barotrauma
public static void MakeFieldAccessible(IUserDataDescriptor IUUD, string fieldName)
{
var descriptor = (StandardUserDataDescriptor)IUUD;
var field = IUUD.Type.GetField(fieldName, BindingFlags.NonPublic | BindingFlags.Instance);
var field = IUUD.Type.GetField(fieldName, BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static);
descriptor.RemoveMember(fieldName);
descriptor.AddMember(fieldName, new FieldMemberDescriptor(field, InteropAccessMode.Default));
}
@@ -75,7 +75,7 @@ namespace Barotrauma
public static void MakeMethodAccessible(IUserDataDescriptor IUUD, string methodName)
{
var descriptor = (StandardUserDataDescriptor)IUUD;
var method = IUUD.Type.GetMethod(methodName, BindingFlags.NonPublic | BindingFlags.Instance);
var method = IUUD.Type.GetMethod(methodName, BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static);
descriptor.RemoveMember(methodName);
descriptor.AddMember(methodName, new MethodMemberDescriptor(method, InteropAccessMode.Default));
}