Mono:Lua:mono invoke method
Jump to navigation
Jump to search
function mono_invoke_method(domain, method, instanseAddress, args): mono_readObject()??
Function Parameters
Parameter | Type | Description |
---|---|---|
domain | string | The namespace of the method |
methodId | integer | The method's id |
instanseAddress | integer | The address of instanse |
args | table | The arguments |
Examples
function my_mono_invoke_method(domain, method, args) --make it easier to call local c=mono_method_getClass(method) local instance = mono_class_findInstancesOfClassListOnly(domain,c) instance = instance[1] local params = mono_method_get_parameters(method) if #args ~= #params.parameters then print('ERROR:my_mono_invoke_method : wrong length of args') return end local i local args_t={} for i=1, #params.parameters do args_t[i] = {} args_t[i].type = monoTypeToVartypeLookup[params.parameters[i].type] args_t[i].value = args[i] end if method==nil or method==0 then print('ERROR:my_mono_invoke_method : method==0') return end if instance==nil or instance==0 then print('ERROR:my_mono_invoke_method : instance==0') return end local r=mono_invoke_method(domain, method, instance, args_t) return r end local methodId = mono_findMethod('', 'PlayerStatsManager', 'TakeDamage') --find target method my_mono_invoke_method('',methodId,{100.0})