private void RemoteInvocation(EntityBase target, MethodInfo method, NetworkTarget netTarget, int channelId, params object[] args) { if (!method.ContainsAttribute <RemoteInvocationAttribute>()) { #if RELEASE return; #else throw new AttributeUsageException("Method did not contain RemoteInvocation attribute"); #endif } #if !(RELEASE && RELEASE_DISABLE_CHECKS) if (target == null) { throw new RemoteInvocationException("Non-static method owner does not derive from EntityBase."); } #endif EntityInterop.RemoteInvocation(this.Id, target.Id, method.Name, args, netTarget, channelId); }