private void OnKickOutUser(object a_oObject)
    {
        GS_BABELTOWER_LEAVE_REQ gS_BABELTOWER_LEAVE_REQ = new GS_BABELTOWER_LEAVE_REQ();

        if (this.m_nSelectIndex < 0)
        {
            return;
        }
        NrCharBase @char = NrTSingleton <NkCharManager> .Instance.GetChar(1);

        if (@char.GetPersonID() == this.user_info[this.m_nSelectIndex].PersonID)
        {
            gS_BABELTOWER_LEAVE_REQ.mode = 1;
        }
        else
        {
            gS_BABELTOWER_LEAVE_REQ.mode = 2;
        }
        gS_BABELTOWER_LEAVE_REQ.nLeavePersonID  = this.user_info[this.m_nSelectIndex].PersonID;
        gS_BABELTOWER_LEAVE_REQ.nBabelRoomIndex = SoldierBatch.BABELTOWER_INFO.m_nBabelRoomIndex;
        SendPacket.GetInstance().SendObject(eGAME_PACKET_ID.GS_BABELTOWER_LEAVE_REQ, gS_BABELTOWER_LEAVE_REQ);
    }
    public void OnClickCancelBabel(IUIObject obj)
    {
        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();
        NrTSingleton <NkClientLogic> .Instance.SetClearMiddleStage();
    }
예제 #3
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();
    }