Exemplo n.º 1
0
    // Token: 0x06000476 RID: 1142 RVA: 0x0001FF8C File Offset: 0x0001E38C
    public void ActiveMath(TimerEvent.Type proc_evtType)
    {
        List <EventTimerFormat> list = new List <EventTimerFormat>();

        foreach (EventTimerFormat eventTimerFormat in SuperGameMaster.saveData.evtList_active)
        {
            if (proc_evtType == TimerEvent.Type.NONE || proc_evtType == eventTimerFormat.evtType)
            {
                switch (eventTimerFormat.evtType)
                {
                case TimerEvent.Type.GoTravel:
                    if (eventTimerFormat.timeSpanSec < 0)
                    {
                        SuperGameMaster.set_FlagAdd(Flag.Type.GOTRAVEL, 1);
                    }
                    SuperGameMaster.ResetSave_BagDeskList_virtual();
                    break;

                case TimerEvent.Type.BackHome:
                    SuperGameMaster.ResetSave_BagDeskList_virtual();
                    break;

                case TimerEvent.Type.Picture:
                    if (eventTimerFormat.timeSpanSec < 0)
                    {
                        SuperGameMaster.set_FlagAdd(Flag.Type.GOTRAVEL, 1);
                    }
                    SuperGameMaster.ResetSave_BagDeskList_virtual();
                    break;

                case TimerEvent.Type.Return:
                    SuperGameMaster.ResetSave_BagDeskList_virtual();
                    break;

                case TimerEvent.Type.Friend:
                    if (eventTimerFormat.timeSpanSec <= 0)
                    {
                        int num  = eventTimerFormat.timeSpanSec;
                        int num2 = 0;
                        CharacterDataFormat characterDataFormat = SuperGameMaster.sDataBase.get_CharaDB_forId(eventTimerFormat.evtId);
IL_2E9:
                        while (num + num2 <= 0)
                        {
                            num += 21600;
                            while (UnityEngine.Random.Range(0, 100) >= 10)
                            {
                                num += 1800;
                                if (num > 1296000)
                                {
IL_2C1:
                                    num2  = UnityEngine.Random.Range(6, 9);
                                    num2 *= 1800;
                                    if (characterDataFormat.flagValue > SuperGameMaster.Count_CollectionFlag())
                                    {
                                        num2 = 0;
                                        goto IL_2E9;
                                    }
                                    goto IL_2E9;
                                }
                            }
                            goto IL_2C1;
                        }
                        list.Add(new EventTimerFormat
                        {
                            id          = -1,
                            timeSpanSec = num,
                            activeTime  = num2,
                            addTime     = new DateTime(1970, 1, 1),
                            evtType     = TimerEvent.Type.Friend,
                            evtId       = characterDataFormat.id,
                            evtValue    = new List <int>(),
                            evtValue    =
                            {
                                UnityEngine.Random.Range(0,   characterDataFormat.rndPos.Length),
                                0,
                                eventTimerFormat.evtValue[2],
                                eventTimerFormat.evtValue[3],
                                eventTimerFormat.evtValue[4],
                                0
                            },
                            trigger = false
                        });
                    }
                    break;

                case TimerEvent.Type.Gift:
                {
                    int count = SuperGameMaster.saveData.MailList.Count;
                    if (count >= 100)
                    {
                        SuperGameMaster.saveData.MailList.RemoveAt(0);
                        Debug.Log("[EventTimerManager] 昔のメールを削除しました");
                    }
                    MailEventFormat mailEventFormat = new MailEventFormat();
                    mailEventFormat.NewMail();
                    int evtId = eventTimerFormat.evtId;
                    CharacterDataFormat characterDataFormat2 = SuperGameMaster.sDataBase.get_CharaDB_forId(evtId);
                    Define.Gift         gift = (Define.Gift)eventTimerFormat.evtValue[0];
                    if (gift != Define.Gift.Clover)
                    {
                        if (gift != Define.Gift.FourClover)
                        {
                            if (gift == Define.Gift.Ticket)
                            {
                                mailEventFormat.title  = characterDataFormat2.name + "のおかえし";
                                mailEventFormat.ticket = eventTimerFormat.evtValue[1];
                            }
                        }
                        else
                        {
                            mailEventFormat.title     = characterDataFormat2.name + "のおかえし";
                            mailEventFormat.itemId    = 1000;
                            mailEventFormat.itemStock = eventTimerFormat.evtValue[1];
                        }
                    }
                    else
                    {
                        mailEventFormat.title       = characterDataFormat2.name + "のおかえし";
                        mailEventFormat.CloverPoint = eventTimerFormat.evtValue[1];
                    }
                    mailEventFormat.senderCharaId = characterDataFormat2.id;
                    mailEventFormat.mailEvt       = EvtId.Gift;
                    mailEventFormat.mailId        = SuperGameMaster.saveData.MailList_nextId;
                    mailEventFormat.date          = SuperGameMaster.saveData.lastDateTime;
                    SuperGameMaster.saveData.MailList.Add(mailEventFormat);
                    SuperGameMaster.saveData.MailList_nextId++;
                    Debug.Log(string.Concat(new object[]
                        {
                            "[EventTimerManager] メール追加(",
                            SuperGameMaster.saveData.MailList.Count,
                            ") ID:",
                            mailEventFormat.mailId,
                            " next:",
                            SuperGameMaster.saveData.MailList_nextId
                        }));
                    eventTimerFormat.trigger     = false;
                    eventTimerFormat.timeSpanSec = -1;
                    break;
                }
                }
            }
        }
        foreach (EventTimerFormat addEvt in list)
        {
            SuperGameMaster.evtMgr.TimerAdd(addEvt);
        }
    }