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

📄 cmsdbmsgparser.cpp

📁 墨香最新私服
💻 CPP
📖 第 1 页 / 共 5 页
字号:
#include "stdafx.h"
#include "stdio.h"
#include "DataBase.h"
#include "CMSDBMsgParser.h"
#include "MonitorNetwork.h"
#include "UserIPCheckMgr.h"


#ifdef DBID
#undef DBID
#endif
#define DBID(a)

#ifdef DBRETID
#undef DBRETID
#endif
#define DBRETID(a) a,

DBMsgFunc g_DBMsgFunc[MaxQuery] =
{
	#include "MSDBMsgID.h"
};

char txt[512];
//----------------------------------------------------------------------------------------------
// DB孽府窍绰 窃荐
// Programmer啊 荤侩窍绰 何盒
void InsertIpAdress(WORD wConnectIdx, WORD wTempIdx, char* strIp)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_InsertIpAdress \'%s\'", strIp);	
	if(g_DB.LoginQuery(eQueryType_FreeQuery, eOperInsertIp, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void InsertOperator(WORD wConnectIdx, WORD wTempIdx, char* strId, char* strName, char* strPwd, WORD power)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_InsertOperator \'%s\', \'%s\', \'%s\', %d", strId, strName, strPwd, power);	
	if(g_DB.LoginQuery(eQueryType_FreeQuery,eOperInsertOper, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void DeleteIpAdress(WORD wConnectIdx, WORD wTempIdx, DWORD ipIdx)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_DeleteIp %d", ipIdx);	
	if(g_DB.LoginQuery(eQueryType_FreeQuery, eOperDeleteIp, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void DeleteOperator(WORD wConnectIdx, WORD wTempIdx, DWORD operIdx)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_DeleteOperator %d", operIdx);	
	if(g_DB.LoginQuery(eQueryType_FreeQuery, eOperDeleteOper, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void TotalIpAdressInfo(WORD wConnectIdx, WORD wTempIdx, DWORD startIdx)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_IpAdressInfo %d", startIdx);	
	if(g_DB.LoginQuery(eQueryType_FreeQuery, eOperTotalIpInfo, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void TotalOperatorInfo(WORD wConnectIdx, WORD wTempIdx, DWORD startIdx, DWORD operIdx)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_OperatorInfo %d, %d", startIdx, operIdx);	
	if(g_DB.LoginQuery(eQueryType_FreeQuery, eOperTotalOperInfo, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void OperatorLoginCheck(DWORD dwConnectIdx, char* strId, char* strPwd, char* strIp)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_OperatorLoginCheck \'%s\', \'%s\', \'%s\'", strId, strPwd, strIp);	
	if(g_DB.LoginQuery(eQueryType_FreeQuery, eOperLoginCheck, dwConnectIdx, txt) == FALSE)
	{
	}
}

void SearchUserInfoById(WORD wConnectIdx, WORD wTempIdx, WORD wServer, char* strId)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_SearchUserInfoById %d, \'%s\'", wServer, strId);	
	if(g_DB.LoginMiddleQuery(RSearchUserInfo, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void SearchUserInfoByIdCard(WORD wConnectIdx, WORD wTempIdx, WORD wServer, char* strIdCard)
{
	char Card1[7] = {0,};
	char Card2[8] = {0,};
	memcpy(Card1, strIdCard, 6);
	memcpy(Card2, &strIdCard[6], 7);

//	char txt[128];
	sprintf(txt, "EXEC RP_SearchUserInfoByIdCard %d, \'%s\', \'%s\'", wServer, Card1, Card2);	
	if(g_DB.LoginMiddleQuery(RSearchUserInfo, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void SearchUserInfoByCharName(WORD wConnectIdx, WORD wTempIdx, WORD wServer, char* strCharName)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_SearchUserInfoByCharName %d, \'%s\'", wServer, strCharName);	
	if(g_DB.LoginMiddleQuery(RSearchUserInfo, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}
/*
void SearchSimpleCharacterInfo(WORD wConnectIdx, WORD wTempIdx, WORD wServer, DWORD MemberNo)
{	
//	char txt[128];
	sprintf(txt, "EXEC RP_SearchCharacterSimpleInfo %d, %d", wServer, MemberNo);	
	if(g_DB.LoginMiddleQuery(RSearchSimpleCharacterInfo, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}
*/


void CharacterBaseInfo(WORD wConnectIdx, WORD wTempIdx, DWORD dwCharIdx)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_CharacterInfo %d", dwCharIdx);	
	if(g_DB.Query(eQueryType_FreeQuery, eCharacterBaseInfo, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void UpdateCharacterBaseInfo(WORD wConnectIdx, WORD wTempIdx, TMSG_CHARACTER_UPDATEBASEINFO* Info)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_UpdateCharacterInfo %d,\'%s\', \'%s\', %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d", 
													Info->CharIdx, Info->ObjectName, Info->NickName, Info->Stage, 
													Info->Level, Info->Fame, Info->ExpPoint, Info->wGenGol, 
													Info->wMinChub, Info->wCheRyuk, Info->wSimMek, Info->LevelUpPoint, 
													Info->Money, Info->AbilityExp);
	if(g_DB.Query(eQueryType_FreeQuery, eCharacterUpdateBaseInfo, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}


void CharacterInvenInfo(WORD wConnectIdx, WORD wTempIdx, DWORD dwCharIdx)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_CharacterInvenInfo %d", dwCharIdx);	
	if(g_DB.Query(eQueryType_FreeQuery, eCharacterInvenInfo, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void CharacterPyogukInfo(WORD wConnectIdx, WORD wTempIdx, DWORD dwUserIdx)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_CharacterPyogukInfo %d", dwUserIdx);	
	if(g_DB.Query(eQueryType_FreeQuery, eCharacterPyogukInfo, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void UpdateCharacterPyogukInfo(WORD wConnectIdx, WORD wTempIdx, DWORD UserIdx, WORD PyogukNum, MONEYTYPE Money)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_UpdatePyogukInfo %d, %d, %d", UserIdx, PyogukNum, Money );	
	if(g_DB.Query(eQueryType_FreeQuery, eCharacterUpdatePyogukInfo, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void CharacterPyogukItemInfo(WORD wConnectIdx, WORD wTempIdx, DWORD dwUserIdx, POSTYPE startPos)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_CharacterPyogukItemInfo %d, %d", dwUserIdx, startPos);	
	if(g_DB.Query(eQueryType_FreeQuery, eCharacterPyogukItemInfo, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void CharacterMugongInfo(WORD wConnectIdx, WORD wTempIdx, DWORD dwCharIdx)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_CharacterMugongInfo %d", dwCharIdx);	
	if(g_DB.Query(eQueryType_FreeQuery, eCharacterMugongInfo, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void CharacterAbilityInfo(WORD wConnectIdx, WORD wTempIdx, DWORD dwCharIdx)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_CharacterAbilityInfo %d", dwCharIdx);	
	if(g_DB.FreeMiddleQuery(RCharacterAbilityInfo, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void CharacterItemOptionInfo(WORD wConnectIdx, WORD wTempIdx, DWORD dwUserIdx, DWORD dwCharIdx, DWORD StartIdx)
{
//	char txt[128];
	sprintf(txt, "EXEC  RP_CharacterItemOptionInfo %d, %d, %d", dwUserIdx, dwCharIdx, StartIdx);	
	if(g_DB.Query(eQueryType_FreeQuery, eCharacterItemOptionInfo, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void SearchMunpaIdxByName(WORD wConnectIdx, WORD wTempIdx, WORD wServer, char* strName)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_SearchMunpaByName \'%s\'", strName);	
	if(g_DB.Query(eQueryType_FreeQuery, eSearchMunpaByName, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void MunpaBaseInfo(WORD wConnectIdx, WORD wTempIdx, DWORD MunpaIdx)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_MunpaBaseInfo %d", MunpaIdx);	
	if(g_DB.Query(eQueryType_FreeQuery, eMunpaBaseInfo, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void MunpaItemInfo(WORD wConnectIdx, WORD wTempIdx, DWORD MunpaIdx, POSTYPE startPos )
{
//	char txt[128];
	sprintf(txt, "EXEC RP_MunpaItemInfo %d, %d", MunpaIdx, startPos);	
	if(g_DB.Query(eQueryType_FreeQuery, eMunpaItemInfo, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void MunpaMemberInfo(WORD wConnectIdx, WORD wTempIdx, DWORD MunpaIdx, DWORD startIdx)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_MunpaMemberInfo %d, %d", MunpaIdx, startIdx);	
	if(g_DB.Query(eQueryType_FreeQuery, eMunpaMemberInfo, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void GameLogItemMoveLog(WORD wConnectIdx, WORD wTempIdx, DWORD startIdx, WORD wServer, char* strId, BYTE bDay, char* strStart, char* strEnd)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_GameLogItemMoveLog %d, \'%s\', %d, \'%s\', \'%s\'", startIdx, strId, bDay, strStart, strEnd);
	if(g_DB.Query(eQueryType_FreeQuery, eGameItemMoveLog, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void GameLogItemObtainLog(WORD wConnectIdx, WORD wTempIdx, DWORD startIdx, WORD wServer, char* strId, BYTE bDay, char* strStart, char* strEnd)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_GameLogItemObtainLog %d, \'%s\', %d, \'%s\', \'%s\'", startIdx, strId, bDay, strStart, strEnd);
	if(g_DB.Query(eQueryType_FreeQuery, eGameItemObtainLog, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void GameLogBaseInfoLog(WORD wConnectIdx, WORD wTempIdx, DWORD startIdx, WORD wServer, char* strId, BYTE bDay, char* strStart, char* strEnd)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_GameLogBaseInfoLog %d, \'%s\', %d, \'%s\', \'%s\'", startIdx, strId, bDay, strStart, strEnd);
	if(g_DB.Query(eQueryType_FreeQuery, eGameBaseInfoLog, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void GameLogMoneyLog(WORD wConnectIdx, WORD wTempIdx, DWORD startIdx, WORD wServer, char* strId, BYTE bDay, char* strStart, char* strEnd)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_GameLogMoneyLog %d, \'%s\', %d, \'%s\', \'%s\'", startIdx, strId, bDay, strStart, strEnd);
	if(g_DB.Query(eQueryType_FreeQuery, eGameMoneyLog, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void GameLogItemFromChrName( WORD wConnectIdx, WORD wTempIdx, DWORD dwStartIdx, WORD wServer, BYTE bDay, char* strStart, char* strEnd, char* strChrName )
{
//	char txt[128];
	sprintf( txt, "EXEC RP_GameLogItemFromChrName %d, \'%s\', %d, \'%s\', \'%s\'", dwStartIdx, strChrName, bDay, strStart, strEnd );
	if(g_DB.Query(eQueryType_FreeQuery, eGameItemFromChrName, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void GameLogItemFromItemDBIndex( WORD wConnectIdx, WORD wTempIdx, DWORD dwStartIdx, WORD wServer, BYTE bDay, char* strStart, char* strEnd, DWORD dwItemDBIdx )
{
//	char txt[128];
	sprintf( txt, "EXEC RP_GameLogItemFromItemDBIdx %d, %d, %d, \'%s\', \'%s\'", dwStartIdx, dwItemDBIdx, bDay, strStart, strEnd );
	if(g_DB.Query(eQueryType_FreeQuery, eGameItemFromItemDBIndex, MAKEDWORD(wConnectIdx, wTempIdx), txt) == FALSE)
	{
	}
}

void ItemDelete(DWORD dwItemDBIdx, DWORD dwOptionDBIdx)
{
//	char txt[128];
	sprintf(txt, "EXEC RP_ItemDelete %d, %d", dwItemDBIdx, dwOptionDBIdx);
	if(g_DB.Query(eQueryType_FreeQuery, eItemDelete, 0, txt) == FALSE)
	{
	}
}

void InvenItemInsert( char* sCharName, DWORD dwCharIdx, ITEMBASE* pItem, ITEM_OPTION_INFO* pOptionInfo)
{
//	char txt[256];
	sprintf(txt, "EXEC RP_InvenItemInsert \'%s\', %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d,  %d, %d, %d, %d, %d,  %d, %d,  %d, %d, %d, %d, %d,  %d",
		sCharName,
		dwCharIdx, 
		pItem->wIconIdx,
		pItem->Durability,
		pItem->Position,
		pOptionInfo->dwOptionIdx,
		pOptionInfo->GenGol,					
		pOptionInfo->MinChub,				
		pOptionInfo->CheRyuk,				
		pOptionInfo->SimMek,				
		pOptionInfo->Life,					
		pOptionInfo->NaeRyuk,			
		pOptionInfo->Shield,				
		(int)(pOptionInfo->AttrRegist.GetElement_Val(ATTR_FIRE)*100),
		(int)(pOptionInfo->AttrRegist.GetElement_Val(ATTR_WATER)*100),
		(int)(pOptionInfo->AttrRegist.GetElement_Val(ATTR_TREE)*100),
		(int)(pOptionInfo->AttrRegist.GetElement_Val(ATTR_IRON)*100),
		(int)(pOptionInfo->AttrRegist.GetElement_Val(ATTR_EARTH)*100),
		pOptionInfo->PhyAttack,
		pOptionInfo->CriticalPercent,
		(int)(pOptionInfo->AttrAttack.GetElement_Val(ATTR_FIRE)*100),
		(int)(pOptionInfo->AttrAttack.GetElement_Val(ATTR_WATER)*100),
		(int)(pOptionInfo->AttrAttack.GetElement_Val(ATTR_TREE)*100),
		(int)(pOptionInfo->AttrAttack.GetElement_Val(ATTR_IRON)*100),
		(int)(pOptionInfo->AttrAttack.GetElement_Val(ATTR_EARTH)*100),
		pOptionInfo->PhyDefense);
	if(g_DB.Query(eQueryType_FreeQuery, eInvenItemInsert, 0, txt) == FALSE)
	{
	}
}

void RInvenItemInsert(LPQUERY pData, LPDBMESSAGE pMessage)
{
	DWORD count = pMessage->dwResult;

	if( pMessage->dwResult == 1 )
	{
		char name[17];
		strcpy( name, (char*)pData[0].Data[0] );
		DWORD dwCharIdx = (DWORD)atoi((char*)pData[0].Data[1]);
		ITEMBASE item;
		item.dwDBIdx = (DWORD)atoi((char*)pData[0].Data[2]);
		item.wIconIdx = (DWORD)atoi((char*)pData[0].Data[3]);
		item.Position = (WORD)atoi((char*)pData[0].Data[4]);
		item.QuickPosition = (WORD)atoi((char*)pData[0].Data[5]);
		item.Durability = (WORD)atoi((char*)pData[0].Data[6]);

		InsertItemMoneyLog( 0, "", dwCharIdx, name, eLog_RMTool, 0, 0, 0, item.wIconIdx, item.dwDBIdx,
							item.Position, item.Position, item.Durability );
	}
}

void PyogukItemInsert( DWORD dwUserIdx, ITEMBASE* pItem, ITEM_OPTION_INFO* pOptionInfo )

⌨️ 快捷键说明

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