public override void OnHandlerMessage(OperationRequest request, OperationResponse response, ARPeer peer, SendParameters sendParameters)
        {
            SubCode subcode = ParameterTool.GetParameter <SubCode>(request.Parameters, ParameterCode.SubCode, false);

            switch (subcode)
            {
            case SubCode.AddRole:
            {
                int heroIndex = ParameterTool.GetParameter <int>(request.Parameters, ParameterCode.RoleID, false);
                Dictionary <byte, object> responseParameter = new Dictionary <byte, object>();
                responseParameter.Add((byte)ParameterCode.RoleID, heroIndex);
                //response.Parameters = responseParameter;
                for (int i = 0; i < ARApplication.AR_Instance.peerListForTeam.Count; i++)
                {
                    if (peer != ARApplication.AR_Instance.peerListForTeam[i])
                    {
                        EventData data = new EventData();
                        data.Parameters = responseParameter;
                        ARApplication.AR_Instance.peerListForTeam[i].SendEvent(data, sendParameters);
                    }
                }
            } break;

            case SubCode.SendTeam:
            {
                if (ARApplication.AR_Instance.peerListForTeam.Count == 2)
                {
                    ARPeer peer1 = ARApplication.AR_Instance.peerListForTeam[0];
                    Team   t     = new Team(peer1, peer);
                    Dictionary <byte, object> parameterDic = new Dictionary <byte, object>();
                    parameterDic.Add((byte)ParameterCode.SubCode, SubCode.GetTeam);
                    response.Parameters = parameterDic;
                }
                else
                {
                    ARApplication.AR_Instance.peerListForTeam.Add(peer);
                    Dictionary <byte, object> parameterDic = new Dictionary <byte, object>();
                    parameterDic.Add((byte)ParameterCode.SubCode, SubCode.WaitTeam);
                    response.Parameters = parameterDic;
                }
            }
            break;
            }
        }
Example #2
0
 public abstract void OnHandlerMessage(OperationRequest request, OperationResponse response, ARPeer peer, SendParameters sendParameters);
        public override void OnHandlerMessage(OperationRequest request, OperationResponse response, ARPeer peer, SendParameters sendParameters)
        {
            SubCode subcode = ParameterTool.GetParameter <SubCode>(request.Parameters, ParameterCode.SubCode, false);

            switch (subcode)
            {
            case SubCode.LoadRoomList:
            {
                IList <Room> roomList               = roomManager.GetAllRoom();
                string       jsonObject             = JsonMapper.ToJson(roomList);
                Dictionary <byte, object> parameter = new Dictionary <byte, object>();
                parameter.Add((byte)ParameterCode.SubCode, SubCode.LoadRoomList);
                parameter.Add((byte)ParameterCode.ServerList, jsonObject);
                response.Parameters = parameter;
            }
            break;

            case SubCode.AddRoom:
            {
                Room roomToAdd = ParameterTool.GetParameter <Room>(request.Parameters, ParameterCode.RoomName);
                roomManager.AddRoom(roomToAdd);
                Dictionary <byte, object> parameter = new Dictionary <byte, object>();
                parameter.Add((byte)ParameterCode.SubCode, SubCode.AddRoom);
                response.Parameters = parameter;
            }
            break;

            case SubCode.RemoveRoom:
            {
                string roomName = ParameterTool.GetParameter <string>(request.Parameters, ParameterCode.RoomName, false);
                roomManager.RemoveRoomByName(roomName);
                Dictionary <byte, object> parameter = new Dictionary <byte, object>();
                parameter.Add((byte)ParameterCode.SubCode, SubCode.RemoveRoom);
                parameter.Add((byte)ParameterCode.RoomName, "成功移除房间");
                response.Parameters = parameter;
            }
            break;
            }
        }
Example #4
0
        public override void OnHandlerMessage(OperationRequest request, OperationResponse respons, ARPeer peer, SendParameters sendParameters)
        {
            string       userName = ParameterTool.GetParameter <string>(request.Parameters, ParameterCode.UserName, false);
            string       pwd      = ParameterTool.GetParameter <string>(request.Parameters, ParameterCode.Pwd, false);
            IList <User> userList = userManager.GetUserName(userName);

            if (userList.Count == 0 || userList == null)
            {
                Dictionary <byte, object> parameter = new Dictionary <byte, object>();
                parameter.Add((byte)ReturnCode.Sucess, "登录失败,用户名或密码错误!");
                respons.Parameters = parameter;
            }
            if (userList.Count > 0)
            {
                Dictionary <byte, object> parameter = new Dictionary <byte, object>();
                parameter.Add((byte)ReturnCode.Sucess, "登录成功!");
                respons.Parameters = parameter;
            }
        }