public void RequestRpc(int frame, UdpNetBehaviour beh, string methodName, ArraySegment <byte> seg) { /* * var builder = new FlatBufferBuilder(1); * var vec = RpcMsg.CreateRpcMsg(builder, beh.NetId, builder.CreateString(methodName), builder.CreateBuffVector(RpcMsg.StartArgbufVector, seg)); * builder.Finish(vec.Value); * var dataBuffer = builder.DataBuffer; * */ var msg = MsgRpc.CreateBuilder() .SetNetId(beh.NetId) .SetMethod(methodName) .SetArgbuf(ByteString.CopyFrom(seg.Array, seg.Offset, seg.Count)).Build(); Request(MessageType.Rpc, frame, msg); }
void OnRpcMsgCallback(int frame, int pIdx, ByteString bb) { var msg = MsgRpc.ParseFrom(bb); FrameController.Instance.GetPlayer(pIdx).GetCommand(new RpcExeObj(frame, msg)); }
public void InvokeRpc(MsgRpc msg) { behs[msg.NetId].InvokeRpc(msg); }