Пример #1
0
 void CheckPlayerOutCallback(Message msg)
 {
     RoomOptRouter.QueryUserBelongRoomResponse res = RoomOptRouter.QueryUserBelongRoomCallback(msg);
     if (res.ret != 0 || res.room_id != soldier.GetRoomID())
     {
         EventMgr.Instance.EventTrigger(EventName.PLAYER_OUT, soldier.GetUserID());
     }
 }
Пример #2
0
 private void CheckUserJoinCallback(Message msg)
 {
     RoomOptRouter.QueryRoomUsersResponse res = RoomOptRouter.QueryRoomUsersCallback(msg);
     if (res.ret == 0)
     {
         string[] userIDList = res.user_id_list.Split(';');
         playersController.CompareUserSet(userIDList);
     }
 }
Пример #3
0
 private void UserEnterRoomCallback(Message msg)
 {
     RoomOptRouter.EnterRoomResponse res = RoomOptRouter.UserEnterRoomCallback(msg);
     if (res.ret == 0)
     {
         roomID = res.room_id;
         ReadyGame();
         NetworkMgr.Instance.RemoveMsgListener(ServiceID.ROOM_ENTER_ROOM_SERVICE, UserEnterRoomCallback);
     }
 }
Пример #4
0
 void BeginGame()
 {
     if (roomID == -1)
     {
         RoomOptRouter.UserEnterRoom(userID, 1, 0);
     }
     else
     {
         ReadyGame();
     }
 }
Пример #5
0
        void Update()
        {
            if (queryTransform.CheckAndRun())
            {
                UserSynchronizationRouter.QueryUsersTransform(soldier.GetUserID());
            }

            if (checkPlayerOut.CheckAndRun())
            {
                RoomOptRouter.QueryUserBelongRoom(soldier.GetUserID());
            }
        }
Пример #6
0
        void Update()
        {
            if (!ready)
            {
                return;
            }

            if (checkJoin.CheckAndRun())
            {
                // 周期性查询玩家加入,请求成功会回调 CheckUserJoinCallback
                RoomOptRouter.QueryRoomUsers(roomID);
            }

            if (updateAction.CheckAndRun())
            {
                // 更新所有用户操作 回调 QueryActionCallback
                UserSynchronizationRouter.QueryActionRequestCall(userID, FrameSyncMgr.Instance.GetFrame());
            }
        }