Exemplo n.º 1
0
    public override void CloseForm(IUIObject obj)
    {
        base.CloseForm(obj);
        if (SoldierBatch.SOLDIER_BATCH_MODE == eSOLDIER_BATCH_MODE.MODE_INFIBATTLE)
        {
            PlunderStartAndReMatchDlg plunderStartAndReMatchDlg = NrTSingleton <FormsManager> .Instance.GetForm(G_ID.PLUNDER_STARTANDREMATCH_DLG) as PlunderStartAndReMatchDlg;

            if (plunderStartAndReMatchDlg != null)
            {
                NrTSingleton <NkCharManager> .Instance.m_kMyCharInfo.InfiBattleCharLevel = 0;
                plunderStartAndReMatchDlg.Send_InfiBattleMatch(1);
            }
        }
        NrTSingleton <NkClientLogic> .Instance.SetClearMiddleStage();
    }
Exemplo n.º 2
0
    public override void CloseForm(IUIObject obj)
    {
        base.CloseForm(obj);
        if (SoldierBatch.SOLDIER_BATCH_MODE == eSOLDIER_BATCH_MODE.MODE_BABEL_TOWER)
        {
            TsAudioManager.Instance.AudioContainer.RequestAudioClip("UI_SFX", "PLUNDER", "CANCEL", new PostProcPerItem(NrAudioClipDownloaded.OnEventAudioClipDownloadedImmedatePlay));
            NrPersonInfoUser charPersonInfo = NrTSingleton <NkCharManager> .Instance.GetCharPersonInfo(1);

            byte mode;
            if (SoldierBatch.BABELTOWER_INFO.IsBabelLeader(charPersonInfo.GetPersonID()))
            {
                mode = 0;
            }
            else
            {
                mode = 1;
            }
            GS_BABELTOWER_LEAVE_REQ gS_BABELTOWER_LEAVE_REQ = new GS_BABELTOWER_LEAVE_REQ();
            gS_BABELTOWER_LEAVE_REQ.mode            = mode;
            gS_BABELTOWER_LEAVE_REQ.nLeavePersonID  = charPersonInfo.GetPersonID();
            gS_BABELTOWER_LEAVE_REQ.nBabelRoomIndex = SoldierBatch.BABELTOWER_INFO.m_nBabelRoomIndex;
            SendPacket.GetInstance().SendObject(eGAME_PACKET_ID.GS_BABELTOWER_LEAVE_REQ, gS_BABELTOWER_LEAVE_REQ);
            SoldierBatch.BABELTOWER_INFO.Init();
        }
        else if (SoldierBatch.SOLDIER_BATCH_MODE == eSOLDIER_BATCH_MODE.MODE_MYTHRAID)
        {
            TsAudioManager.Instance.AudioContainer.RequestAudioClip("UI_SFX", "PLUNDER", "CANCEL", new PostProcPerItem(NrAudioClipDownloaded.OnEventAudioClipDownloadedImmedatePlay));
            NrPersonInfoUser charPersonInfo2 = NrTSingleton <NkCharManager> .Instance.GetCharPersonInfo(1);

            byte mode2;
            if (SoldierBatch.MYTHRAID_INFO.IsMythRaidLeader(charPersonInfo2.GetPersonID()))
            {
                mode2 = 0;
            }
            else
            {
                mode2 = 1;
            }
            GS_MYTHRAID_LEAVE_REQ gS_MYTHRAID_LEAVE_REQ = new GS_MYTHRAID_LEAVE_REQ();
            gS_MYTHRAID_LEAVE_REQ.mode               = mode2;
            gS_MYTHRAID_LEAVE_REQ.nLeavePersonID     = charPersonInfo2.GetPersonID();
            gS_MYTHRAID_LEAVE_REQ.nMythRaidRoomIndex = SoldierBatch.MYTHRAID_INFO.m_nMythRaidRoomIndex;
            SendPacket.GetInstance().SendObject(eGAME_PACKET_ID.GS_MYTHRAID_LEAVE_REQ, gS_MYTHRAID_LEAVE_REQ);
            SoldierBatch.MYTHRAID_INFO.Init();
            NrTSingleton <NkClientLogic> .Instance.SetClearMiddleStage();
        }
        else if (SoldierBatch.SOLDIER_BATCH_MODE == eSOLDIER_BATCH_MODE.MODE_GUILDBOSS_MAKEUP)
        {
            StageWorld.BATCH_MODE = eSOLDIER_BATCH_MODE.MODE_GUILDBOSS_MAKEUP;
            SoldierBatch.BABELTOWER_INFO.Init();
        }
        else if (SoldierBatch.SOLDIER_BATCH_MODE == eSOLDIER_BATCH_MODE.MODE_INFIBATTLE)
        {
            PlunderStartAndReMatchDlg plunderStartAndReMatchDlg = NrTSingleton <FormsManager> .Instance.GetForm(G_ID.PLUNDER_STARTANDREMATCH_DLG) as PlunderStartAndReMatchDlg;

            if (plunderStartAndReMatchDlg != null)
            {
                NrTSingleton <NkCharManager> .Instance.m_kMyCharInfo.InfiBattleCharLevel = 0;
                plunderStartAndReMatchDlg.Send_InfiBattleMatch(1);
            }
        }
        else if (SoldierBatch.SOLDIER_BATCH_MODE == eSOLDIER_BATCH_MODE.MODE_DAILYDUNGEON)
        {
            SoldierBatch.DailyDungeonDifficulty = 0;
        }
        NrTSingleton <NkClientLogic> .Instance.SetClearMiddleStage();
    }