コード例 #1
0
    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
                });
            }
        });
    }
コード例 #2
0
ファイル: NetWork.cs プロジェクト: CrispyServal/GameOff2020
    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();
    }
コード例 #3
0
    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;
    }