public void Start() { EventManager.AddListener(EventType.OnMatch, OnMatch); //查询玩家自己的房间 room = new Room(null); Listener.Add(room); room.GetRoomDetail((ResponseEvent evt) => { if (evt.Code != 0 && evt.Code != 20011) { Debug.Log("初始化失败"); } // Type type = e.data.GetType(); // Debug.LogFormat ("查询成功: {0}", type); Debug.Log("查询成功"); if (evt.Code == 20011) { Debug.Log("玩家不在房间内"); } else { // 玩家已在房间内 var res = (GetRoomByRoomIdRsp)evt.Data; Debug.LogFormat("房间名 {0}", res.RoomInfo.Name); EventManager.Invoke(EventType.OnMatch, new BaseEventArgs() { Code = evt.Code }); } }); }
void OnListenerInit(ResponseEvent eve) { if (eve.Code == ErrCode.EcOk) { Global.Room = new Room(null); Debug.Log("初始化成功"); Listener.Add(Global.Room); // TODO: more if (waitStartInfo != null) { AutoJoinRoom(); } } InitBroadcast(); }
private void RegisterCallback() { Listener.Add(paintRoom); paintRoom.OnJoinRoom = onJoinIn; // 广播:房间有玩家退出 paintRoom.OnLeaveRoom = onLeaveRoom; // 广播:房间被解散 paintRoom.OnDismissRoom = onDismis; // update paintRoom.onUpdate = onRoomUpdate; // recv msg paintRoom.OnRecvFromClient = eve => AppendTxt("同步随机数种子:" + ((RecvFromClientBst)eve.Data).Msg + "\r\n"); // start step paintRoom.OnStartFrameSync = eve => AppendTxt("收到开始帧同步!\r\n"); // paintRoom.OnStopFrameSync = eve => AppendTxt("收到停止帧同步!\r\n"); paintRoom.OnRecvFrame = recvFrameStep; // match Room.OnMatch = onMatch; }