public void InitTaskInfo(int taskId, int times, int mathches)
        {
            sTaskId   = taskId;
            sTimes    = times;
            sMathches = mathches;
            data      = ConfigReader.GetGuideHelpInfo(sTaskId);
            switch (taskId)
            {
            case 20001:    //cp enough to buy
                curCheckBase = new SecondaryTaskCpEnoughCheck();
                break;

            case 20002:    //hp less back to city
                curCheckBase = new SecondaryTaskHpLessCheck();
                break;

            case 20003:
                curCheckBase = new SecondaryTaskFullFuryCheck();
                break;

            case 20004:
                curCheckBase = new SecondaryTaskOpenShopCheck();
                break;

            default:
                GameMethod.DebugError("Secondary task not define");
                break;
            }
            if (curCheckBase != null)
            {
                curCheckBase.OnEnter(this);
            }
        }
        public void Clean()
        {
            sTaskId   = 0;
            sTimes    = 0;
            sMathches = 0;
            data      = null;
            isFinish  = false;
            if (taskEffect != null)
            {
                taskEffect.OnEnd();
            }
            taskEffect = null;
            if (curCheckBase != null)
            {
                curCheckBase.OnEnd();
            }

            curCheckBase = null;
        }