void _Packet(ScChaseTaskUnlock p)
    {
        PChaseTask[] tasks = null;
        p.chaseList.CopyTo(ref tasks);

        HandleTasks(tasks);
        DispatchModuleEvent(EventRefreshGaidenTask);
    }
    private void _Packet(ScChaseTaskUnlock p)
    {
        PChaseTask[] tasks = null;
        p.chaseList.CopyTo(ref tasks);

        for (var i = 0; i < tasks?.Length; i++)
        {
            TaskInfo ti    = ConfigManager.Get <TaskInfo>(tasks[i].taskId);
            TaskType _type = moduleChase.GetCurrentTaskType(ti);
            if (_type != TaskType.Awake)
            {
                continue;
            }
            if (!canEnterList.Exists(item => item.taskConfigInfo.ID == ti.ID))
            {
                canEnterList.Add(ChaseTask.Create(tasks[i]));
            }
        }

        ClassifyList();
    }