diff --git a/Assets/PerfectWorld/Scripts/UI/Dialogs/DlgNPC.cs b/Assets/PerfectWorld/Scripts/UI/Dialogs/DlgNPC.cs index 014e6587ea..a51b84a603 100644 --- a/Assets/PerfectWorld/Scripts/UI/Dialogs/DlgNPC.cs +++ b/Assets/PerfectWorld/Scripts/UI/Dialogs/DlgNPC.cs @@ -2771,8 +2771,9 @@ namespace BrewMonster.UI } else if (iService == CDLGNPC.CDLGNPC_VIEW_TRASHBOX && (pEssence?.combined_services & 0x40000000) != 0) { - //GetGameSession().c2s_CmdNPCSevViewTrash(); - //CloseDialogue(); + UnityGameSession.c2s_CmdGetTrashBoxData(true); + CloseDialogue(); + GetGameUIMan().EndNPCService(); return; } else if (iService == CDLGNPC.CDLGNPC_VIEW_DPS_DPH_RANK && (pEssence?.combined_services & 0x80000000) != 0) @@ -3258,12 +3259,11 @@ namespace BrewMonster.UI // id_dialog = (int)pService.id_dialog; // idFunction = (int)SERVICE_TYPE.NPC_PROXY; // } - /*else if (DataType == DATA_TYPE.DT_NPC_STORAGE_SERVICE) + else if (DataType == DATA_TYPE.DT_NPC_STORAGE_SERVICE) { - NPC_STORAGE_SERVICE pService = (NPC_STORAGE_SERVICE)pData; string strText1 = m_pLst_Main.GetText(nCurSel); - string strComp1 = (GetStringFromTable(249)) + (GetStringFromTable(253)); - string strComp2 = (GetStringFromTable(249)) + (GetStringFromTable(8080)); + string strComp1 = GetStringFromTable(249) + GetStringFromTable(253); + string strComp2 = GetStringFromTable(249) + GetStringFromTable(8080); if (string.Equals(strText1, strComp1, StringComparison.OrdinalIgnoreCase)) idFunction = (int)SERVICE_TYPE.NPC_STORAGE_PASSWORD; @@ -3271,7 +3271,7 @@ namespace BrewMonster.UI idFunction = (int)SERVICE_TYPE.NPC_ACCOUNT_STORAGE; else idFunction = (int)SERVICE_TYPE.NPC_STORAGE; - }*/ + } else if (DataType == DATA_TYPE.DT_NPC_MAKE_SERVICE) { NPC_MAKE_SERVICE pService = (NPC_MAKE_SERVICE)pData; @@ -3765,13 +3765,16 @@ namespace BrewMonster.UI } else if (idFunction == (int)SERVICE_TYPE.NPC_STORAGE) { - //if (GetHostPlayer().TrashBoxHasPsw()) - //{ - // pShow1 = m_pAUIManager.GetDialog("Win_InputString"); - // pShow1.GetDlgItem("DEFAULT_Txt_Input").SetText(_AL("")); - //} - //else - // g_pGame.GetGameSession().c2s_CmdNPCSevOpenTrash(""); + if (GetHostPlayer().TrashBoxHasPsw()) + { + dialogue1 = "Win_InputString"; + // PW_TODO: password input → c2s_CmdNPCSevOpenTrash(password) + } + else + { + UnityGameSession.c2s_CmdNPCSevOpenTrash(""); + GetGameUIMan().EndNPCService(); + } } else if (idFunction == (int)SERVICE_TYPE.NPC_STORAGE_PASSWORD) {