Exemplo n.º 1
0
    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);
        }
    }
Exemplo n.º 2
0
    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);
    }
Exemplo n.º 3
0
    public bool IsFinished()
    {
        int day1 = TimeConvert.NowDay();

        if (day1 != mFinished)
        {
            return(false);
        }
        return(true);
    }
Exemplo n.º 4
0
    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);
    }
Exemplo n.º 5
0
    public bool IsOld()
    {
        if (mDateTime == null)
        {
            return(false);
        }
        int day1 = TimeConvert.GetDays(mDateTime);
        int day2 = TimeConvert.NowDay();

        if (day2 != day1)
        {
            return(true);
        }
        return(false);
    }
Exemplo n.º 6
0
    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);
    }
Exemplo n.º 7
0
    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);
        }
    }