// Here we process incoming SFS objects private void OnObjectReceived(SFSObject data, User fromUser) { //First determine the type of this object - what it contains ? String _cmd = data.GetString("_cmd"); switch (_cmd) { case "t": // "t" - means transform sync data SendTransformToRemotePlayerObject(data, fromUser); break; case "f": // "f" - means force our local player to send his transform ForceSendTransform(data); break; case "a": // "a" - for animation message received SendAnimationMessageToRemotePlayerObject(data, fromUser); break; case "d": //"d" - for damage message received DamageLocalPlayer(data.GetNumber("amount")); break; case "k": //"k" - for player killed KillRemotePlayer(); break; } }
private void SendAnimationMessageToRemotePlayerObject(SFSObject data, User fromUser) { int userId = fromUser.GetId(); if (userId!=smartFoxClient.myUserId) { // If it's not myself //Find user object with such Id GameObject user = GameObject.Find("remote_"+userId); //If found - send him animation message if (user) user.SendMessage("PlayAnimation", data.GetString("mes")); } }