void SelectExpires() //만기일 온 애들 큐에 집어넣는 과정. { string visitMsg = UIGeneralTextsManager.GetUIGeneralText("quickMessage", "visited"); int idx = 0; while (idx < charaList.Count) { if (charaList[idx].hasCommission && !charaList[idx].haveComeBeforeExpire) //기본 조건. { if (!expired(charaList[idx])) { idx++; continue; } CharactorIdea expireOne = charaList[idx]; charaList.RemoveAt(idx); expireCharaQue.Enqueue(new VisitChara(InGameTimeManager.GetInstance().GetNowInGameTimeStamp(), expireOne)); QuickMessageUIManager.GetInstance().ShowQuickMessage(expireOne.CharaName + visitMsg); Debug.Log(expireOne.CharaName + "만기 큐에 들어옴. 현재시각 - " + InGameTimeManager.GetInstance().GetNowTime() + "캐릭터의 만기는" + expireOne.GetExpire() + "였음" ); } else { idx++; } } }
void GoBackExpires() //만기일 온 애들 기다리다가 그냥 가는 애들. { string leaveMsg = UIGeneralTextsManager.GetUIGeneralText("quickMessage", "leaved"); if (expireCharaQue.Count <= 0) { return; } uint nowTime = InGameTimeManager.GetInstance().GetNowInGameTimeStamp(); VisitChara visited; visited = expireCharaQue.Peek(); while (visited != null) //1시간 기다리다 감. { if (visited.comeTimeStamp + 60 >= nowTime) { CharactorIdea goback = expireCharaQue.Dequeue().one; goback.haveComeBeforeExpire = true; visitedToday.Add(goback); QuickMessageUIManager.GetInstance().ShowQuickMessage(goback.CharaName + leaveMsg); Debug.Log(goback.CharaName + "만기 기다리다 그냥 돌아감 현재 시각 " + InGameTimeManager.GetInstance().GetNowTime() + "캐릭터의 만기는" + goback.GetExpire() + "였음 비지트 타음스탬프 =" + visited.comeTimeStamp + "현재시각 타임스탬프 =" + nowTime ); if (expireCharaQue.Count <= 0) { return; } visited = expireCharaQue.Peek(); } else { return; } } }
void Awake() { instance = this; }