Exemple #1
0
 private IEnumerator CreateMembersOnResume()
 {
     if (MonoBehaviourSingleton <LoungeMatchingManager> .I.loungeData != null)
     {
         List <LoungeModel.SlotInfo> slots = MonoBehaviourSingleton <LoungeMatchingManager> .I.loungeData.slotInfos;
         for (int i = 0; i < slots.Count; i++)
         {
             if (slots[i].userInfo != null)
             {
                 int userId = slots[i].userInfo.userId;
                 if (userId != MonoBehaviourSingleton <UserInfoManager> .I.userInfo.id && MonoBehaviourSingleton <LoungeMatchingManager> .I.loungeMemberStatus != null)
                 {
                     LoungeMemberStatus status = MonoBehaviourSingleton <LoungeMatchingManager> .I.loungeMemberStatus[userId];
                     if (status != null)
                     {
                         LoungeMemberStatus.MEMBER_STATUS partyStatus = status.GetStatus();
                         if (partyStatus == LoungeMemberStatus.MEMBER_STATUS.LOUNGE || partyStatus == LoungeMemberStatus.MEMBER_STATUS.QUEST_READY)
                         {
                             HomePeople.CreateLoungePlayer(slots[i], false, true);
                             yield return((object)null);
                         }
                     }
                 }
             }
         }
     }
 }
Exemple #2
0
    private void DestoryMembersOnResume()
    {
        if (!(HomePeople == null) && HomePeople.loungePlayers != null)
        {
            for (int i = 0; i < HomePeople.loungePlayers.Count; i++)
            {
                int userId = HomePeople.loungePlayers[i].GetUserId();
                if (userId != 0)
                {
                    LoungeModel.SlotInfo slotInfoByUserId = MonoBehaviourSingleton <LoungeMatchingManager> .I.GetSlotInfoByUserId(userId);

                    if (slotInfoByUserId == null)
                    {
                        HomePeople.DestroyLoungePlayer(userId);
                    }
                    else if (MonoBehaviourSingleton <LoungeMatchingManager> .I.loungeMemberStatus != null)
                    {
                        LoungeMemberStatus loungeMemberStatus   = MonoBehaviourSingleton <LoungeMatchingManager> .I.loungeMemberStatus[userId];
                        LoungeMemberStatus.MEMBER_STATUS status = loungeMemberStatus.GetStatus();
                        if (status == LoungeMemberStatus.MEMBER_STATUS.QUEST || status == LoungeMemberStatus.MEMBER_STATUS.FIELD)
                        {
                            HomePeople.DestroyLoungePlayer(userId);
                        }
                    }
                }
            }
        }
    }
Exemple #3
0
 public void OnRecvMemberMoveArena(Lounge_Model_MemberArena model)
 {
     if (this.loungeMemberStatus != null)
     {
         LoungeMemberStatus loungeMemberStatus   = this.loungeMemberStatus[model.cid];
         LoungeMemberStatus.MEMBER_STATUS status = loungeMemberStatus.GetStatus();
         loungeMemberStatus.ToArena(model.aid);
         if (loungeMemberStatus != null)
         {
             OnChangeMemberStatus.SafeInvoke(loungeMemberStatus);
             if (MonoBehaviourSingleton <LoungeNetworkManager> .IsValid())
             {
                 MonoBehaviourSingleton <LoungeNetworkManager> .I.MoveLoungeNotification(status, loungeMemberStatus);
             }
         }
         AFKCheck();
     }
 }
Exemple #4
0
 public void OnRecvMemberMoveQuest(Lounge_Model_MemberQuest model)
 {
     if (this.loungeMemberStatus != null)
     {
         LoungeMemberStatus loungeMemberStatus   = this.loungeMemberStatus[model.cid];
         LoungeMemberStatus.MEMBER_STATUS status = loungeMemberStatus.GetStatus();
         if (loungeMemberStatus != null)
         {
             loungeMemberStatus.ToQuest(model.pid.ToString(), model.qid, model.h);
             OnChangeMemberStatus.SafeInvoke(loungeMemberStatus);
             if (MonoBehaviourSingleton <LoungeNetworkManager> .IsValid())
             {
                 MonoBehaviourSingleton <LoungeNetworkManager> .I.MoveLoungeNotification(status, loungeMemberStatus);
             }
         }
         AFKCheck();
     }
 }
Exemple #5
0
 public void OnRecvMemberMoveLounge(int userId)
 {
     if (this.loungeMemberStatus != null)
     {
         LoungeMemberStatus loungeMemberStatus   = this.loungeMemberStatus[userId];
         LoungeMemberStatus.MEMBER_STATUS status = loungeMemberStatus.GetStatus();
         if (loungeMemberStatus != null)
         {
             loungeMemberStatus.ToLounge();
             OnChangeMemberStatus.SafeInvoke(loungeMemberStatus);
             if (MonoBehaviourSingleton <LoungeNetworkManager> .IsValid())
             {
                 MonoBehaviourSingleton <LoungeNetworkManager> .I.MoveLoungeNotification(status, loungeMemberStatus);
             }
         }
         AFKCheck();
     }
 }
Exemple #6
0
 private IEnumerator CreateLoungePlayerFromSlotInfo()
 {
     if (MonoBehaviourSingleton <LoungeMatchingManager> .I.loungeData != null)
     {
         List <LoungeModel.SlotInfo> data = MonoBehaviourSingleton <LoungeMatchingManager> .I.loungeData.slotInfos;
         for (int i = 0; i < data.Count; i++)
         {
             if (data[i].userInfo != null && data[i].userInfo.userId != MonoBehaviourSingleton <UserInfoManager> .I.userInfo.id)
             {
                 if (MonoBehaviourSingleton <LoungeMatchingManager> .I.loungeMemberStatus == null)
                 {
                     break;
                 }
                 LoungeMemberStatus status = MonoBehaviourSingleton <LoungeMatchingManager> .I.loungeMemberStatus[data[i].userInfo.userId];
                 LoungeMemberStatus.MEMBER_STATUS partyStatus = status.GetStatus();
                 if (partyStatus == LoungeMemberStatus.MEMBER_STATUS.LOUNGE || partyStatus == LoungeMemberStatus.MEMBER_STATUS.QUEST_READY)
                 {
                     HomePeople.CreateLoungePlayer(data[i], false, false);
                     yield return((object)null);
                 }
             }
         }
     }
 }
Exemple #7
0
    public void MoveLoungeNotification(LoungeMemberStatus.MEMBER_STATUS beforeStatus, LoungeMemberStatus after)
    {
        if (MonoBehaviourSingleton <LoungeMatchingManager> .I.IsUserInLounge(after.userId))
        {
            LoungeMemberStatus.MEMBER_STATUS status           = after.GetStatus();
            LoungeModel.SlotInfo             slotInfoByUserId = MonoBehaviourSingleton <LoungeMatchingManager> .I.GetSlotInfoByUserId(after.userId);

            switch (beforeStatus)
            {
            case LoungeMemberStatus.MEMBER_STATUS.LOUNGE:
                switch (status)
                {
                case LoungeMemberStatus.MEMBER_STATUS.QUEST:
                    break;

                case LoungeMemberStatus.MEMBER_STATUS.QUEST_READY:
                    if (after.isHost)
                    {
                        chatConnection.OnReceiveNotification(StringTable.Format(STRING_CATEGORY.LOUNGE, 14u, slotInfoByUserId.userInfo.name));
                    }
                    break;

                case LoungeMemberStatus.MEMBER_STATUS.FIELD:
                    chatConnection.OnReceiveNotification(StringTable.Format(STRING_CATEGORY.LOUNGE, 15u, slotInfoByUserId.userInfo.name));
                    break;

                case LoungeMemberStatus.MEMBER_STATUS.ARENA:
                    chatConnection.OnReceiveNotification(StringTable.Format(STRING_CATEGORY.LOUNGE, 20u, slotInfoByUserId.userInfo.name));
                    break;
                }
                break;

            case LoungeMemberStatus.MEMBER_STATUS.QUEST_READY:
                if (status == LoungeMemberStatus.MEMBER_STATUS.QUEST)
                {
                    chatConnection.OnReceiveNotification(StringTable.Format(STRING_CATEGORY.LOUNGE, 16u, slotInfoByUserId.userInfo.name));
                }
                break;

            case LoungeMemberStatus.MEMBER_STATUS.QUEST:
                if (status == LoungeMemberStatus.MEMBER_STATUS.LOUNGE)
                {
                    chatConnection.OnReceiveNotification(StringTable.Format(STRING_CATEGORY.LOUNGE, 17u, slotInfoByUserId.userInfo.name));
                }
                break;

            case LoungeMemberStatus.MEMBER_STATUS.ARENA:
                if (status == LoungeMemberStatus.MEMBER_STATUS.LOUNGE)
                {
                    chatConnection.OnReceiveNotification(StringTable.Format(STRING_CATEGORY.LOUNGE, 21u, slotInfoByUserId.userInfo.name));
                }
                break;

            default:
                if (status == LoungeMemberStatus.MEMBER_STATUS.LOUNGE)
                {
                    chatConnection.OnReceiveNotification(StringTable.Format(STRING_CATEGORY.LOUNGE, 18u, slotInfoByUserId.userInfo.name));
                }
                break;
            }
        }
    }