/// <summary> /// 反序列UDP proto /// </summary> public static ProtoUdpWarp DeSerializeUDPProto(byte[] data, ref ProtoUdpWarp udpWarp) { if (!udpWarp.Parse(data)) { return(null); } return(udpWarp); }
protected override void OnInit() { upLoadWarp = new ProtoUdpWarp(); upDateWarp = new ProtoUdpWarp(); model = SyncController.instance.GetModel <SyncModel>(SyncModel.name); Global.instance.AddUpdateFunction(SendSyncObjectList); inputModel = InputController.instance.GetModel <InputModel>(InputModel.name); //同步玩家输入 RegisterSendProto(ProtoIDCfg.SYNC_INPUT, SendSyncInput); RegisterListenProto(ProtoIDCfg.SYNC_INPUT, OnSyncInput); //更新同步对象 RegisterListenProto(ProtoIDCfg.SYNC_OBJECTS, OnSyncObjectList); //移除对象 RegisterSendProto(ProtoIDCfg.REMOVE_OBJECTS, ReqRemoveObject); RegisterListenProto(ProtoIDCfg.REMOVE_OBJECTS, OnRemoveObject); //同步对象行为 RegisterSendProto(ProtoIDCfg.OBJECT_ACTION, ReqObjectAction); RegisterListenProto(ProtoIDCfg.OBJECT_ACTION, OnObjectAction); }