⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pyogukmanager.cpp

📁 墨香最新私服
💻 CPP
字号:
// CPyoGukManager.cpp: implementation of the PyoGukManager class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "PyoGukManager.h"
#include "GameIn.h"
#include "ChatManager.h"
#include "ObjectManager.h"
#include "./interface/cWindowManager.h"
#include "WindowIdEnum.h"
#include "cDivideBox.h"



#include "PyogukDialog.h"
#include "MunpaDialog.h"
#include "CharacterDialog.h"

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
GLOBALTON(CPyoGukManager);
CPyoGukManager::CPyoGukManager()
{
}

CPyoGukManager::~CPyoGukManager()
{

}

void CPyoGukManager::NetworkMsgParse(BYTE Protocol,void* pMsg)
{
	switch(Protocol) 
	{
	case MP_PYOGUK_INFO:
		{
			MSG_BYTE* pmsg = (MSG_BYTE*)pMsg;
			HERO->SetPyogukNum(pmsg->bData);
		}
		break;
	case MP_PYOGUK_BUY_ACK:
		{
			MSG_BYTE * pmsg = (MSG_BYTE*)pMsg;
			HERO->SetPyogukNum(pmsg->bData);
			
			if(pmsg->bData == 1)
			{
				GAMEIN->GetPyogukDialog()->SetItemInit(TRUE);
				GAMEIN->GetPyogukDialog()->SetPyogukMoney(0);
			}
		//	GAMEIN->GetPyogukDialog()->ShowPyogukMode(ePyogukMode_PyogukWare1+pmsg->bData-1);
		//	GAMEIN->GetPyogukDialog()->AddPyogukMode(ePyogukMode_PyogukWare1+pmsg->bData-1);
			
			GAMEIN->GetPyogukDialog()->ShowPyogukMode(ePyogukMode_PyogukListInfo);
			GAMEIN->GetPyogukDialog()->AddPyogukMode(ePyogukMode_PyogukListInfo);
			CHATMGR->AddMsg( CTC_SYSMSG, CHATMGR->GetChatMsg(152) );
		}
		break;
	case MP_PYOGUK_PUTIN_MONEY_ACK:
		{
			MSG_DWORD* pmsg = (MSG_DWORD*)pMsg;
			GAMEIN->GetPyogukDialog()->SetPyogukMoney(pmsg->dwData);
		}
		break;
	case MP_PYOGUK_PUTOUT_MONEY_ACK:
		{
			MSG_DWORD* pmsg = (MSG_DWORD*)pMsg;
			GAMEIN->GetPyogukDialog()->SetPyogukMoney(pmsg->dwData);
		}
		break;
		
		//////////////////////////////////////////////////////////////////////////
		//nack 
	case MP_PYOGUK_BUY_NACK:
		{
			CHATMGR->AddMsg( CTC_SYSMSG, CHATMGR->GetChatMsg(50) );
		}
		break;
	case MP_PYOGUK_PUTIN_MONEY_NACK:
		{
			CHATMGR->AddMsg( CTC_SYSMSG, CHATMGR->GetChatMsg(130) );
		}
		break;
	}
}

void CPyoGukManager::BuyPyogukSyn()
{
	if(GAMEIN->GetPyogukDialog()->CanBuyPyoguk() == FALSE)
	{
		CHATMGR->AddMsg( CTC_SYSMSG, CHATMGR->GetChatMsg(50) );
		return;
	}

	MSGBASE msg;
	msg.Category = MP_PYOGUK;
	msg.Protocol = MP_PYOGUK_BUY_SYN;
	msg.dwObjectID = HEROID;
	
	NETWORK->Send(&msg, sizeof(msg));
}

void CPyoGukManager::DelPyogukSyn(BYTE num)
{
	MSG_BYTE msg;
	msg.Category = MP_PYOGUK;
	msg.Protocol = MP_PYOGUK_DEL_SYN;
	msg.dwObjectID = HEROID;
	msg.bData = num;

	NETWORK->Send(&msg, sizeof(msg));
}


void CPyoGukManager::PyogukItemInfoSyn()
{
	MSGBASE msg;
	msg.Category = MP_ITEM;
	msg.Protocol = MP_ITEM_PYOGUK_ITEM_INFO_SYN;
	msg.dwObjectID = HEROID;
				
	NETWORK->Send(&msg, sizeof(msg));
}

void CPyoGukManager::PutInOutMoney(int vals)
{	
	CPyogukDialog* pPyogukDlg = GAMEIN->GetPyogukDialog();
	CInventoryExDialog* pInvenDlg = GAMEIN->GetInventoryDialog();

	cStatic* pPyogukMoney = (cStatic*)WINDOWMGR->GetWindowForIDEx(PYO_MONEY);

	if(vals)
	{
		cDivideBox * pDivideBox = WINDOWMGR->DivideBox( DBOX_INPUT_MONEY, pPyogukMoney->GetAbsX()-50 , pPyogukMoney->GetAbsY()-100, OnPutInMoneyPyogukOk, OnPutInMoneyPyogukCancel, pInvenDlg, pPyogukDlg, CHATMGR->GetChatMsg(230) );
	}
	else
	{
		cDivideBox * pDivideBox = WINDOWMGR->DivideBox( DBOX_INPUT_MONEY, pPyogukMoney->GetAbsX()-50 , pPyogukMoney->GetAbsY()-100, OnPutOutMoneyPyogukOk, OnPutInMoneyPyogukCancel, pInvenDlg, pPyogukDlg, CHATMGR->GetChatMsg(231) );
	}
}


void CPyoGukManager::OnPutInMoneyPyogukOk( LONG iId, void* p, DWORD param1, void * vData1, void * vData2 )
{
	if(param1 == 0)	return;

	MSG_DWORD msg;
	msg.Category = MP_PYOGUK;
	msg.Protocol = MP_PYOGUK_PUTIN_MONEY_SYN;
	msg.dwObjectID = HEROID;
	msg.dwData = param1;
	
	NETWORK->Send(&msg, sizeof(msg));
}

void CPyoGukManager::OnPutInMoneyPyogukCancel( LONG iId, void* p, DWORD param1, void * vData1, void * vData2 )
{
}

void CPyoGukManager::PutInOutMoneyResult(MSG_DWORD3 * msg)
{
	if(HEROID == msg->dwData1)
	{
		HERO->SetMoney(msg->dwData2);
		GAMEIN->GetCharacterDialog()->UpdateData();
		
	}
	GAMEIN->GetMunpaDialog()->SetMoney(msg->dwData3);
}

void CPyoGukManager::OnPutOutMoneyPyogukOk( LONG iId, void* p, DWORD param1, void * vData1, void * vData2 )
{
	if(param1 == 0)	return;

	MSG_DWORD msg;
	msg.Category = MP_PYOGUK;
	msg.Protocol = MP_PYOGUK_PUTOUT_MONEY_SYN;
	msg.dwObjectID = HEROID;
	msg.dwData = param1;
	
	NETWORK->Send(&msg, sizeof(msg));
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -