Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public void GetTraitForObject(int index, string traitClassName)
- {
- var objectType = this.stack[index].GetType();
- var methodInfo = objectType.GetMethods().FirstOrDefault(m => m.Name == "Trait");
- if (methodInfo != null)
- {
- var assemblies = AppDomain.CurrentDomain.GetAssemblies();
- var traitType = assemblies.FirstOrDefault(a => a.GetType("OpenRA.Traits." + traitClassName) != null);
- if (traitType != null)
- {
- methodInfo.MakeGenericMethod(new Type[] { traitType });
- if (methodInfo.ReturnType != typeof(void))
- {
- object result = info.Invoke(obj, null); // << crash
- this.stack.Push(result);
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement