Hi,
I encounter the same problem as well. My scene is pretty simple. A sphere with tnObject ID 10. Apparently the tno ID is not capture or response the way it should be.
I tried RFC(ID) too, but it don work too.
The project contain 2 scene, first is login.scene (when detected LAN server/ host, it will connect and join the channel, and launch my second scene "TestRFC.scene", that is where the sphere gameobject store in.)
I could see the sphere(this mean editor had connected to tnet lan server), upon clicking on sphere, "Unable to execute function xxxx. Did you forget an [RFC] prefix, perhaps?"
these are the codes attach to sphere gameObject
void OnPress(bool Status)
{
if (!Status) return;
tno.Send(1,Target.All, 12);
}
[RFC(1)] void ReceivePressOnTime (int Timing)
{
MyCount+=1;
print("MyCount: " + MyCount);
print ("ReceivePressOnTime : " +Timing);
}
It work when i delete the (original scene asset) sphere gameObject, and recreate a new one, and reattach TNObject component, set the id to 10, and my class which react to OnPress. Then it suddenly work. I don have chance to try restart Unity Application to test whether or not the problem will solve by restarting the unity or window.
Somehow i manage to find the steps to recreate the problem.
I going to repeat the step for creating second scene : TestRFC.scene
New Scene
Attach TouchHandler.cs to Camera gameObject
Create a sphere gameObject
Attach TNObject (don set any id, left the id to default 0)
Save scene
Open Login scene. (any TNManager component which can connect to Standalone server, make sure loadlevel "TestRFC" when joining channel)
Run LoginScene (when TestRFC scene was loaded, try click on the sphere. By right, nothing should be flag out in message, as i guess 0 is not meant for communicating..)
Stop the game, launch TestRFC.scene
Change the TNObject id to 1, then save, and run Login.scene
Upon clicking on the sphere, the alert "Unable to execute function with ID of '1'. Make sure there is a script that can receive this call."
After this point, no matter what number u change in tno.id, the same error will occur.
If you delete the sphere gameObject, and recreate it, reattach all require components, but do remember to fill in tno.id to not 0, then save and test run. Then it work.
Basically, my cause for this is, i forgot to set TNObject ID when i attached it in first place. Hope this help you to recreate the problem. Sorry for my english.