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); } } } } } } }
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); } } } } } }
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(); } }
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(); } }
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(); } }
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); } } } } }
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; } } }