Move git root from Client/ to src/ to track all source code: - Client: Game client source (moved to Client/Client/) - Server: Game server source - GameTools: Development tools - CryptoSource: Encryption utilities - database: Database scripts - Script: Game scripts - rylCoder_16.02.2008_src: Legacy coder tools - GMFont, Game: Additional resources 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
144 lines
4.6 KiB
C++
144 lines
4.6 KiB
C++
// ItemQtyControlAddDlg.cpp : 구현 파일입니다.
|
|
//
|
|
|
|
#include "stdafx.h"
|
|
#include "AdminToolClient.h"
|
|
#include "ItemQtyControlAddDlg.h"
|
|
|
|
#include "GlobalFunctions.h"
|
|
#include "WindowMgr.h"
|
|
#include "PacketManager.h"
|
|
#include "CharacterDoc.h"
|
|
#include <Network/Protocol/RYL_AdminMgrProtocol.h>
|
|
#include <Item/ItemMgr.h>
|
|
|
|
#include "ItemQuantityControlDlg.h"
|
|
#include ".\itemqtycontroladddlg.h"
|
|
|
|
|
|
// CItemQtyControlAddDlg 대화 상자입니다.
|
|
|
|
IMPLEMENT_DYNAMIC(CItemQtyControlAddDlg, CDialog)
|
|
CItemQtyControlAddDlg::CItemQtyControlAddDlg(CWnd* pParent /*=NULL*/)
|
|
: CDialog(CItemQtyControlAddDlg::IDD, pParent)
|
|
, m_strItemName(_T(""))
|
|
, m_strFrequencyStartHour(_T(""))
|
|
, m_strFrequencyStartMin(_T(""))
|
|
, m_strFrequencyEndHour(_T(""))
|
|
, m_strFrequencyEndMin(_T(""))
|
|
, m_dwItemQty(0)
|
|
{
|
|
}
|
|
|
|
CItemQtyControlAddDlg::~CItemQtyControlAddDlg()
|
|
{
|
|
}
|
|
|
|
void CItemQtyControlAddDlg::DoDataExchange(CDataExchange* pDX)
|
|
{
|
|
CDialog::DoDataExchange(pDX);
|
|
DDX_Text(pDX, IDC_ITEMQTYCONTROL_ITEMADD_NAME, m_strItemName);
|
|
DDX_Control(pDX, IDC_ITEMQTYCONTROL_ITEMADD_STARTDROP_DATE, m_ctrlStartDropDate);
|
|
DDX_Control(pDX, IDC_ITEMQTYCONTROL_ITEMADD_ENDDROP_DATE, m_ctrlEndDropDate);
|
|
|
|
DDX_Text(pDX, IDC_IDC_ITEMQTYCONTROL_ITEMADD_FREQUENCY_H1_EDIT, m_strFrequencyStartHour);
|
|
DDX_Text(pDX, IDC_IDC_ITEMQTYCONTROL_ITEMADD_FREQUENCY_M1_EDIT, m_strFrequencyStartMin);
|
|
DDX_Text(pDX, IDC_IDC_ITEMQTYCONTROL_ITEMADD_FREQUENCY_H2_EDIT, m_strFrequencyEndHour);
|
|
DDX_Text(pDX, IDC_IDC_ITEMQTYCONTROL_ITEMADD_FREQUENCY_M2_EDIT, m_strFrequencyEndMin);
|
|
DDX_Text(pDX, IDC_IDC_ITEMQTYCONTROL_ITEMADD_QUANTITY_EDIT, m_dwItemQty);
|
|
}
|
|
|
|
|
|
BEGIN_MESSAGE_MAP(CItemQtyControlAddDlg, CDialog)
|
|
ON_BN_CLICKED(IDC_ITEMQTYCONTROL_ADD, OnBnClickedItemqtycontrolAdd)
|
|
ON_BN_CLICKED(IDC_CANCEL, OnBnClickedCancel)
|
|
END_MESSAGE_MAP()
|
|
|
|
|
|
// CItemQtyControlAddDlg 메시지 처리기입니다.
|
|
|
|
void CItemQtyControlAddDlg::OnBnClickedItemqtycontrolAdd()
|
|
{
|
|
UpdateData(true);
|
|
|
|
if(m_strItemName != ""
|
|
&& "" != m_strFrequencyStartHour && "" != m_strFrequencyStartMin
|
|
&& "" != m_strFrequencyEndHour && "" != m_strFrequencyEndMin
|
|
&& 0 != m_dwItemQty)
|
|
{
|
|
CItemQuantityControlDlg* lpDialog = static_cast<CItemQuantityControlDlg*>(GetParent());
|
|
|
|
if(NULL != lpDialog)
|
|
{
|
|
const Item::ItemInfo* ItemInfo =
|
|
Item::CItemMgr::GetInstance().GetItemInfoFromItemName(CONV_NETSTRING(m_strItemName));
|
|
|
|
if(NULL != ItemInfo)
|
|
{
|
|
unsigned long dwServerGroup = 0;
|
|
CString strGroupName;
|
|
lpDialog->m_ctrlServerGroupCb.GetLBText(lpDialog->m_ctrlServerGroupCb.GetCurSel(), strGroupName);
|
|
CCharacterDoc::GetInstance().GetServerIndex(strGroupName, dwServerGroup);
|
|
|
|
COleDateTime GetTime1, GetTime2;
|
|
m_ctrlStartDropDate.GetTime(GetTime1);
|
|
m_ctrlEndDropDate.GetTime(GetTime2);
|
|
|
|
tm tInStartTime;
|
|
memset(&tInStartTime, 0, sizeof(tm));
|
|
tInStartTime.tm_year = GetTime1.GetYear() - 1900;
|
|
tInStartTime.tm_mon = GetTime1.GetMonth() - 1;
|
|
tInStartTime.tm_mday = GetTime1.GetDay();
|
|
tInStartTime.tm_hour = _ttoi(m_strFrequencyStartHour);
|
|
tInStartTime.tm_min = _ttoi(m_strFrequencyStartMin);
|
|
|
|
tm tInEndTime;
|
|
memset(&tInEndTime, 0, sizeof(tm));
|
|
tInEndTime.tm_year = GetTime2.GetYear() - 1900;
|
|
tInEndTime.tm_mon = GetTime2.GetMonth() - 1;
|
|
tInEndTime.tm_mday = GetTime2.GetDay();
|
|
tInEndTime.tm_hour = _ttoi(m_strFrequencyEndHour);
|
|
tInEndTime.tm_min = _ttoi(m_strFrequencyEndMin);
|
|
|
|
time_t tStartTime = mktime(&tInStartTime);
|
|
time_t tEndTime = mktime(&tInEndTime);
|
|
|
|
CPacketMgr::GetInstance()->SendItemQtyControlData(
|
|
PktAdminMgr::PktItemQtyControl::ADD, (unsigned char)dwServerGroup,
|
|
ItemInfo->m_usProtoTypeID, tStartTime, tEndTime, m_dwItemQty);
|
|
|
|
this->OnOK();
|
|
}
|
|
else
|
|
{
|
|
lpDialog->m_strMessage.Format(_T("%s"), GetLocalString("MSG_0106"));
|
|
lpDialog->UpdateData(false);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
void CItemQtyControlAddDlg::OnBnClickedCancel()
|
|
{
|
|
this->OnCancel();
|
|
}
|
|
|
|
BOOL CItemQtyControlAddDlg::OnInitDialog()
|
|
{
|
|
CDialog::OnInitDialog();
|
|
|
|
SetWindowText(GetLocalString("IDD_ITEMQTYCONTROLADDDLG"));
|
|
|
|
SetUIString(this->m_hWnd, IDC_ITEMADD_01, "IDC_ITEMADD_01");
|
|
SetUIString(this->m_hWnd, IDC_ITEMADD_02, "IDC_ITEMADD_02");
|
|
SetUIString(this->m_hWnd, IDC_ITEMADD_03, "IDC_ITEMADD_03");
|
|
SetUIString(this->m_hWnd, IDC_ITEMADD_04, "IDC_ITEMADD_04");
|
|
SetUIString(this->m_hWnd, IDC_ITEMADD_05, "IDC_ITEMADD_05");
|
|
SetUIString(this->m_hWnd, IDC_ITEMADD_06, "IDC_ITEMADD_06");
|
|
SetUIString(this->m_hWnd, IDC_ITEMADD_07, "IDC_ITEMADD_07");
|
|
SetUIString(this->m_hWnd, IDC_ITEMADD_08, "IDC_ITEMADD_08");
|
|
SetUIString(this->m_hWnd, IDC_ITEMADD_09, "IDC_ITEMADD_09");
|
|
SetUIString(this->m_hWnd, IDC_ITEMADD_10, "IDC_ITEMADD_10");
|
|
|
|
return TRUE;
|
|
} |