private void AutoCompleteAchievableDelivery()
    {
        CardData selectedCardData = GetSelectedCardData();

        if (selectedCardData != null)
        {
            BingoData bingoData = FindBingoMissionCompleted(selectedCardData);
            if (bingoData != null)
            {
                DoCompleteBingo(bingoData);
            }
            else
            {
                GridData gridData = FindGridMissionCompleted(selectedCardData);
                if (gridData != null)
                {
                    DoCompleteGrid(gridData);
                }
                else
                {
                    AllBingoData allBingoData = FindAllBingoMissionCompleted(selectedCardData);
                    if (allBingoData != null)
                    {
                        DoCompleteAllBingo(allBingoData);
                    }
                }
            }
        }
    }
    private void DoCompleteAllBingo(AllBingoData completedData)
    {
        string event_name = "COMPLETE_ALL_BINGO";

        if (isComeFromAutoEvent)
        {
            DispatchEvent(event_name, completedData);
            isComeFromAutoEvent = false;
        }
        else
        {
            RequestEvent(event_name, completedData);
        }
    }
    private AllBingoData FindAllBingoMissionCompleted(CardData cardData)
    {
        AllBingoData allBingoData = cardData.allBingoData;

        if (allBingoData == null)
        {
            return(null);
        }
        if (allBingoData.isCompleted)
        {
            return(null);
        }
        if (!MonoBehaviourSingleton <DeliveryManager> .I.IsCompletableDelivery((int)allBingoData.deliveryData.id))
        {
            return(null);
        }
        return(allBingoData);
    }
    private void OnQuery_COMPLETE_ALL_BINGO()
    {
        AllBingoData allBingoData = GameSection.GetEventData() as AllBingoData;

        GameSection.StayEvent();
        Delivery        deliveryInfo = allBingoData.deliveryInfo;
        CardData        cardData     = GetCurrentCard();
        List <GridData> gridDatas    = cardData.gridDataList;

        MonoBehaviourSingleton <DeliveryManager> .I.isStoryEventEnd = false;
        MonoBehaviourSingleton <DeliveryManager> .I.SendDeliveryComplete(deliveryInfo.uId, false, delegate(bool is_success, DeliveryRewardList recv_reward)
        {
            //IL_0036: Unknown result type (might be due to invalid IL or missing references)
            this.StartCoroutine(WaitAndDo(delegate
            {
                OnEndSendAllMission(is_success, cardData, allBingoData, gridDatas);
            }, 0.2f));
        });
    }
 private void OnEndSendAllMission(bool is_success, CardData cardData, AllBingoData allBingoData, List <GridData> gridDatas)
 {
     //IL_00aa: Unknown result type (might be due to invalid IL or missing references)
     if (is_success)
     {
         if (gridDatas == null || gridDatas.Count <= 0)
         {
             PlayAllCompleteAnimation(delegate
             {
                 OnSuccessSend(cardData, allBingoData.deliveryData);
             });
         }
         else
         {
             int i = 0;
             for (int count = gridDatas.Count; i < count; i++)
             {
                 PlayGridCompleteAnimation(gridDatas[i], false, null);
             }
             PlayCenterAnimation();
             UpdateReward(GetCurrentCard(), allBingoData, true);
             PlayTweenComplete();
             this.StartCoroutine(WaitAndDo(delegate
             {
                 PlayAllCompleteAnimation(delegate
                 {
                     OnSuccessSend(cardData, allBingoData.deliveryData);
                 });
             }, GridAnimationTime));
         }
     }
     else
     {
         GameSection.ResumeEvent(false, null);
     }
 }