public void Load() { string path = Misc.GetPersistentDataPath() + "/savedata.json"; if (File.Exists(path)) { string json_str = File.ReadAllText(path); List <object> lst = Json.Deserialize(json_str) as List <object>; if (lst != null) { ToModel(lst); } } else { Mission mis = new Mission(); mis.mId = MaxID++; mis.mType = MissionType.Daily; mis.mDateTime = TimeConvert.GetNow(); mis.mFinished = TimeConvert.NowDay(); mis.mDesc = "test1"; AddMission(mis); mis = new Mission(); mis.mId = MaxID++; mis.mType = MissionType.Daily; mis.mDateTime = TimeConvert.GetNow(); mis.mFinished = TimeConvert.NowDay(); mis.mDesc = "test2"; AddMission(mis); mis = new Mission(); mis.mId = MaxID++; mis.mType = MissionType.Daily; mis.mDateTime = new DateTime(2000, 1, 1, 8, 0, 0); mis.mDesc = "test3"; AddMission(mis); mis = new Mission(); mis.mId = MaxID++; mis.mType = MissionType.Daily; mis.mDateTime = new DateTime(2001, 1, 1, 8, 0, 0); mis.mDesc = "test4"; AddMission(mis); mis = new Mission(); mis.mId = MaxID++; mis.mType = MissionType.Daily; mis.mDateTime = TimeConvert.GetNow(); mis.mDesc = "test5"; AddMission(mis); mis = new Mission(); mis.mId = MaxID++; mis.mType = MissionType.Daily; mis.mDateTime = TimeConvert.GetNow(); mis.mDesc = "test6"; AddMission(mis); } }
void BtnMissionFinishOnClick(PointerEventData eventData, UI_Event ev) { int type = ev.GetData <int>("t"); Mission mis = ev.GetData <Mission>("d"); if (type == 1) { mis.mDateTime = TimeConvert.GetNow(); mis.mCount++; } else if (type == 2) { mis.mDateTime = TimeConvert.GetTommorrow(); mis.mFinished = TimeConvert.NowDay(); mis.mCount++; } mis.mLog = StatisticsManager.instance.AddLog(mis.mId, mis.mDesc); StatisticsManager.instance.Save(); MissionManager.instance.Save(); List <Mission> lst_mis = MissionManager.instance.GetDailyMission(); float _pos = mContent.transform.localPosition.y; ShowMission(lst_mis); MoveScrollTo(_pos); }
public bool IsFinished() { int day1 = TimeConvert.NowDay(); if (day1 != mFinished) { return(false); } return(true); }
void BtnMissionFinishOnClick(PointerEventData eventData, UI_Event ev) { Mission mis = ev.GetData <Mission>("d"); //mis.mDateTime = DateTime.Now; mis.mFinished = TimeConvert.NowDay(); List <Mission> lst_mis = MissionManager.instance.GetDailyMission(); ShowMission(lst_mis); }
public bool IsOld() { if (mDateTime == null) { return(false); } int day1 = TimeConvert.GetDays(mDateTime); int day2 = TimeConvert.NowDay(); if (day2 != day1) { return(true); } return(false); }
public MissionLog AddLog(int _missionId, string _name, DateTime _time) { MissionLog log = new MissionLog(); log.mId = MaxID++; log.mMissionName = _name; log.mDateTime = _time; log.mMissionId = _missionId; mListMissionLog.Add(log); MissionDayLog daylog = null; if (mListMissionDayLog.Count > 0) { int _day_time = TimeConvert.GetDays(mListMissionDayLog[mListMissionDayLog.Count - 1].mDateTime); if (_day_time == TimeConvert.NowDay()) { daylog = mListMissionDayLog[mListMissionDayLog.Count - 1]; } } if (daylog == null) { daylog = new MissionDayLog(); daylog.mCount = 0; daylog.mDateTime = TimeConvert.GetNow(); mListMissionDayLog.Add(daylog); } daylog.mCount++; daylog.mTotalExp = PlayerInfo.Exp; MissionNameLog namelog = null; if (!mDicMissionNameLog.TryGetValue(_name, out namelog)) { namelog = new MissionNameLog(); namelog.mName = _name; namelog.mCount = 0; namelog.mDateTime = TimeConvert.GetNow(); mDicMissionNameLog.Add(_name, namelog); } namelog.mCount++; return(log); }
public void ShowMission(List <Mission> _lstmission) { mView.sizeDelta = new Vector2(mCanvas.sizeDelta.x, mCanvas.sizeDelta.y - VIEW_TOP); for (int i = 0; i < mListOldMission.Count; i++) { Destroy(mListOldMission[i].gameObject); } mListOldMission.Clear(); for (int i = 0; i < mListNowMission.Count; i++) { Destroy(mListNowMission[i].gameObject); } mListNowMission.Clear(); for (int i = 0; i < mListFinishedMission.Count; i++) { Destroy(mListFinishedMission[i].gameObject); } mListFinishedMission.Clear(); List <Mission> lst_old = new List <Mission>(); List <Mission> lst_now = new List <Mission>(); List <Mission> lst_finished = new List <Mission>(); int sum_hight = HEIGHT_ITEM * _lstmission.Count; bool have_old = false; bool have_finished = false; bool have_now = false; for (int i = 0; i < _lstmission.Count; i++) { Mission mis = _lstmission[i]; int day_time = TimeConvert.NowDay(); if (mis.IsFinished()) { lst_finished.Add(mis); if (!have_finished) { have_finished = true; sum_hight += HEIGHT_TEXT; } } else if (mis.IsOld()) { lst_old.Add(mis); if (!have_old) { have_old = true; sum_hight += HEIGHT_TEXT; } } else { lst_now.Add(mis); if (!have_now) { have_now = true; sum_hight += HEIGHT_TEXT; } } } mScrollRect.content.sizeDelta = new Vector2(mCanvas.sizeDelta.x, sum_hight); if (mScrollRect.content.sizeDelta.y < mView.sizeDelta.y) { mView.sizeDelta = new Vector2(mView.sizeDelta.x, mScrollRect.content.sizeDelta.y); mView.transform.localPosition = new Vector3(0, (mCanvas.sizeDelta.y - mView.sizeDelta.y) / 2 - VIEW_TOP, 0); } else { mView.transform.localPosition = new Vector3(0, (mCanvas.sizeDelta.y - mView.sizeDelta.y) / 2 - VIEW_TOP, 0); } mScrollRect.CalculateLayoutInputVertical(); //mScrollRect.Rebuild(CanvasUpdate.Layout); MoveToTop(); sum_hight = sum_hight / 2; int y_pos = 0; if (lst_old.Count > 0) { mOldItemParent.SetActive(true); y_pos += HEIGHT_TEXT / 2; mOldItemParent.transform.localPosition = new Vector3(0, sum_hight - y_pos, 0); for (int i = 0; i < lst_old.Count; i++) { GameObject obj = GameObject.Instantiate(Resources.Load("ui/UIDailyMissionItem")) as GameObject; obj.transform.parent = mOldItemParent.transform; obj.transform.localPosition = new Vector3(0, -HEIGHT_TEXT - HEIGHT_ITEM * i, 0); obj.transform.localScale = Vector3.one; UIDailyMissionItem mission_item = obj.GetComponent <UIDailyMissionItem>(); mission_item.SetMission(lst_old[i]); mission_item.mBtnBg.SetData("drag", 1); mission_item.mBtnBg.SetData("d", lst_old[i]); mission_item.mBtnBg.onBeginDrag = BtnItemOnBeginDrag; mission_item.mBtnBg.onDrag = BtnItemOnDrag; mission_item.mBtnBg.onEndDrag = BtnItemOnEndDrag; mission_item.mBtnFinish.SetData("d", lst_old[i]); mission_item.mBtnFinish.SetData("t", 1); mission_item.mBtnFinish.onClick = BtnMissionFinishOnClick; mission_item.mBtnFinish.SetData("drag", 1); mission_item.mBtnFinish.onBeginDrag = BtnItemOnBeginDrag; mission_item.mBtnFinish.onDrag = BtnItemOnDrag; mission_item.mBtnFinish.onEndDrag = BtnItemOnEndDrag; mission_item.mBtnCancel.SetData("d", lst_old[i]); mission_item.mBtnCancel.SetData("t", 1); mission_item.mBtnCancel.onClick = BtnMissionCancelOnClick; mission_item.mBtnCancel.SetData("drag", 1); mission_item.mBtnCancel.onBeginDrag = BtnItemOnBeginDrag; mission_item.mBtnCancel.onDrag = BtnItemOnDrag; mission_item.mBtnCancel.onEndDrag = BtnItemOnEndDrag; mission_item.mBtnDelete.SetData("d", lst_old[i]); mission_item.mBtnDelete.onClick = BtnMissionDeleteOnClick; mission_item.mBtnEditor.SetData("d", lst_old[i]); mission_item.mBtnEditor.onClick = BtnMissionEditorOnClick; mission_item.mDeleteEditorNode.gameObject.SetActive(false); mListOldMission.Add(mission_item); } } else { mOldItemParent.SetActive(false); } if (lst_now.Count > 0) { mNowItemParent.SetActive(true); y_pos += HEIGHT_INTERVAL; y_pos += lst_old.Count * HEIGHT_ITEM; mNowItemParent.transform.localPosition = new Vector3(0, sum_hight - y_pos, 0); //y_pos += HEIGHT_TEXT; for (int i = 0; i < lst_now.Count; i++) { GameObject obj = GameObject.Instantiate(Resources.Load("ui/UIDailyMissionItem")) as GameObject; obj.transform.parent = mNowItemParent.transform; obj.transform.localPosition = new Vector3(0, -HEIGHT_TEXT - HEIGHT_ITEM * i, 0); obj.transform.localScale = Vector3.one; UIDailyMissionItem mission_item = obj.GetComponent <UIDailyMissionItem>(); mission_item.SetMission(lst_now[i]); mission_item.mBtnBg.SetData("drag", 1); mission_item.mBtnBg.SetData("d", lst_now[i]); mission_item.mBtnBg.onBeginDrag = BtnItemOnBeginDrag; mission_item.mBtnBg.onDrag = BtnItemOnDrag; mission_item.mBtnBg.onEndDrag = BtnItemOnEndDrag; mission_item.mBtnFinish.SetData("d", lst_now[i]); mission_item.mBtnFinish.SetData("t", 2); mission_item.mBtnFinish.onClick = BtnMissionFinishOnClick; mission_item.mBtnFinish.SetData("drag", 1); mission_item.mBtnFinish.onBeginDrag = BtnItemOnBeginDrag; mission_item.mBtnFinish.onDrag = BtnItemOnDrag; mission_item.mBtnFinish.onEndDrag = BtnItemOnEndDrag; mission_item.mBtnCancel.gameObject.SetActive(false); mission_item.mBtnDelete.SetData("d", lst_now[i]); mission_item.mBtnDelete.onClick = BtnMissionDeleteOnClick; mission_item.mBtnEditor.SetData("d", lst_now[i]); mission_item.mBtnEditor.onClick = BtnMissionEditorOnClick; mission_item.mDeleteEditorNode.gameObject.SetActive(false); mListNowMission.Add(mission_item); } } else { mNowItemParent.SetActive(false); } if (lst_finished.Count > 0) { mFinishedItemParent.SetActive(true); y_pos += HEIGHT_INTERVAL; y_pos += lst_now.Count * HEIGHT_ITEM; mFinishedItemParent.transform.localPosition = new Vector3(0, sum_hight - y_pos, 0); //y_pos += HEIGHT_TEXT; for (int i = 0; i < lst_finished.Count; i++) { GameObject obj = GameObject.Instantiate(Resources.Load("ui/UIDailyMissionItem")) as GameObject; obj.transform.parent = mFinishedItemParent.transform; obj.transform.localPosition = new Vector3(0, -HEIGHT_TEXT - HEIGHT_ITEM * i, 0); obj.transform.localScale = Vector3.one; UIDailyMissionItem mission_item = obj.GetComponent <UIDailyMissionItem>(); mission_item.SetMission(lst_finished[i]); mission_item.mBtnBg.SetData("drag", 1); mission_item.mBtnBg.SetData("d", lst_finished[i]); mission_item.mBtnBg.onBeginDrag = BtnItemOnBeginDrag; mission_item.mBtnBg.onDrag = BtnItemOnDrag; mission_item.mBtnBg.onEndDrag = BtnItemOnEndDrag; mission_item.mBtnCancel.SetData("d", lst_finished[i]); mission_item.mBtnCancel.SetData("t", 3); mission_item.mBtnCancel.onClick = BtnMissionCancelOnClick; mission_item.mBtnCancel.SetData("drag", 1); mission_item.mBtnCancel.onBeginDrag = BtnItemOnBeginDrag; mission_item.mBtnCancel.onDrag = BtnItemOnDrag; mission_item.mBtnCancel.onEndDrag = BtnItemOnEndDrag; mission_item.mBtnFinish.gameObject.SetActive(false); mission_item.mBtnDelete.SetData("d", lst_finished[i]); mission_item.mBtnDelete.onClick = BtnMissionDeleteOnClick; mission_item.mBtnEditor.SetData("d", lst_finished[i]); mission_item.mBtnEditor.onClick = BtnMissionEditorOnClick; mission_item.mDeleteEditorNode.gameObject.SetActive(false); mListFinishedMission.Add(mission_item); } } else { mFinishedItemParent.SetActive(false); } }