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

📄 gameserverquery.h

📁 奇迹世界data 服务器代码,研究游戏的朋友有帮助
💻 H
字号:
#ifndef __GAME_SERVER_QUERY_H__
#define __GAME_SERVER_QUERY_H__

//=======================================================================================================================
/// 孽府甫 眠啊且 锭 秦具 且 老!
/// 1. 孽府 努贰胶甫 父电促.
/// 2. 孽府 钱 努贰胶俊促啊 胶农赋飘俊 嘎眠绢 殿废茄促.
/// 3. 秦歹颇老阑 父甸菌阑 版快 -> Stdafx.h俊 孽府 努贰胶 颇老 庆歹甫 殿废茄促.
//=======================================================================================================================

#pragma once
#pragma pack(push, 1)

#include <Define.h>
#include "StructInQuery.h"
#include "QueryPoolFactoryDefine.h"

// 2005/12/28(taiyo)
// 1. 匙捞怪函版 CharacterQuery->SelectCharQuery
// 2. 俺喊利牢 POOL 荤侩
class SelectCharQuery : public QueryForUser
{
	_DECLARE_QUERY_POOL(SelectCharQuery)
public:
	enum
	{ 
		RESULT_ROW_NUM = 1,
		RESULT_COL_NUM = 59,
	};
	struct sQUERY_RESULT
	{
		USERGUID	m_UserGuid;
		BYTE		m_bySlot;
		BYTE		m_byClass;
		CHARGUID	m_CharGuid;
		TCHAR		m_tszCharName[MAX_CHARNAME_LENGTH];
		BYTE		m_byHeight;
		BYTE		m_byFace;
		BYTE		m_byHair;
		LEVELTYPE	m_LV;
		SHORT		m_sStrength;
		SHORT		m_sDexterity;
		SHORT		m_sVitality;
		SHORT		m_sInteligence;
		SHORT		m_sSpirit;
		SHORT		m_sSkillStat1;
		SHORT		m_sSkillStat2;
		UPTYPE		m_UserPoint;
		INT			m_iExp;
		INT			m_iMaxHP;
		INT			m_iHP;
		INT			m_iMaxMP;
		INT			m_iMP;

		MONEY		m_Money;
		INT			m_iRemainStat;
		INT			m_iRemainSkill;
		INT			m_iSelectStyleCode;	//< DB俊辑绰 INT肺 啊柳促 : 胶鸥老 内靛啊 6父锅何磐 矫累窍扁 锭巩俊 荤侩且锭绰 WORD肺 某胶泼秦辑 荤侩茄促.
		BYTE		m_byPKState;
		BYTE		m_byCharState;
		INT64		m_StateTime;
		INT			m_iRegion;
		SHORT		m_sX;
		SHORT		m_sY;
		SHORT		m_sZ;
		TCHAR		m_tszTitleID[MAX_TITLEID_LENGTH];
		INT64		m_TitleTime;
		BYTE		m_byInvisibleOpt;
		BOOL		m_bInventoryLock;
		BYTE		m_pInventoryItem[MAX_INVENTORYITEMSTREAM_SIZE];
		BYTE		m_pTempInventoryItem[MAX_TEMPINVENTORYITEMSTREAM_SIZE];
		BYTE		m_pEquipItem[MAX_EQUIPITEMSTREAM_SIZE];
		BYTE		m_pSkill[MAX_SKILLSTREAM_SIZE];
		BYTE		m_pQuick[MAX_QUICKSTREAM_SIZE];
		BYTE		m_pStyle[MAX_STYLESTREAM_SIZE];
		BYTE		m_pQuest[MAX_QUESTSTREAM_SIZE];
		BYTE		m_pMission[MAX_MISSIONSTREAM_SIZE];
		INT			m_iPlayLimitedTime;
		//-----------PVP---------------------------------
		INT			m_iPVPPoint;
		INT			m_iPVPScore;
		BYTE		m_byPVPGrade;
		INT			m_iPVPDraw;
		INT			m_iPVPSeries;
		INT			m_iPVPKill;
		INT			m_iPVPDie;
		INT			m_iPVPMaxKill;
		INT			m_iPVPMaxDie;
		//------ 辨靛沥焊---------------------------------
		TCHAR		m_tszGuildName[MAX_GUILDNAME_LENGTH];
		GUILDGUID	m_GuildGuid;
		BYTE		m_GuildPosition;
		TCHAR		m_tszGuildNickName[MAX_CHARNAME_LENGTH];
		//DWORD		m_Sts;
	} pCharacter[RESULT_ROW_NUM];
	ULONG uLength[RESULT_COL_NUM];

	_BEGIN_BINDING_DATA(sQUERY_RESULT, pCharacter, uLength, RESULT_ROW_NUM, RESULT_COL_NUM)		
		_BINDING_COLUMN(0, m_UserGuid)
		_BINDING_COLUMN(1, m_bySlot)
		_BINDING_COLUMN(2, m_byClass)
		_BINDING_COLUMN(3, m_CharGuid)
		_BINDING_COLUMN_PTR(4, m_tszCharName)
		_BINDING_COLUMN(5, m_byHeight)
		_BINDING_COLUMN(6, m_byFace)
		_BINDING_COLUMN(7, m_byHair)
		_BINDING_COLUMN(8, m_LV)
		_BINDING_COLUMN(9, m_sStrength)
		_BINDING_COLUMN(10, m_sDexterity)
		_BINDING_COLUMN(11, m_sVitality)
		_BINDING_COLUMN(12, m_sInteligence)
		_BINDING_COLUMN(13, m_sSpirit)
		_BINDING_COLUMN(14, m_sSkillStat1)
		_BINDING_COLUMN(15, m_sSkillStat2)
		_BINDING_COLUMN(16, m_UserPoint)
		_BINDING_COLUMN(17, m_iExp)
		_BINDING_COLUMN(18, m_iMaxHP)
		_BINDING_COLUMN(19, m_iHP)
		_BINDING_COLUMN(20, m_iMaxMP)
		_BINDING_COLUMN(21, m_iMP)

		_BINDING_COLUMN(22, m_Money)
		_BINDING_COLUMN(23, m_iRemainStat)
		_BINDING_COLUMN(24, m_iRemainSkill)
		_BINDING_COLUMN(25, m_iSelectStyleCode)
		_BINDING_COLUMN(26, m_byPKState)
		_BINDING_COLUMN(27, m_byCharState)
		_BINDING_COLUMN(28, m_StateTime)
		_BINDING_COLUMN(29, m_iRegion)
		_BINDING_COLUMN(30, m_sX)
		_BINDING_COLUMN(31, m_sY)
		_BINDING_COLUMN(32, m_sZ)

		_BINDING_COLUMN_PTR(33, m_tszTitleID)
		_BINDING_COLUMN(34, m_TitleTime)
		_BINDING_COLUMN(35, m_byInvisibleOpt)
		_BINDING_COLUMN(36, m_bInventoryLock)
		_BINDING_COLUMN_PTR(37, m_pInventoryItem)
		_BINDING_COLUMN_PTR(38, m_pTempInventoryItem)
		_BINDING_COLUMN_PTR(39, m_pEquipItem)
		_BINDING_COLUMN_PTR(40, m_pSkill)
		_BINDING_COLUMN_PTR(41, m_pQuick)
		_BINDING_COLUMN_PTR(42, m_pStyle)

		_BINDING_COLUMN_PTR(43, m_pQuest)
		_BINDING_COLUMN_PTR(44, m_pMission)
		_BINDING_COLUMN(45, m_iPlayLimitedTime )
		//-PVP---------------------------------
		_BINDING_COLUMN(46, m_iPVPPoint )
		_BINDING_COLUMN(47, m_iPVPScore )
		_BINDING_COLUMN(48, m_byPVPGrade )
		_BINDING_COLUMN(49, m_iPVPDraw )
		_BINDING_COLUMN(50, m_iPVPSeries )
		_BINDING_COLUMN(51, m_iPVPKill )
		_BINDING_COLUMN(52, m_iPVPDie )
		_BINDING_COLUMN(53, m_iPVPMaxKill )

		_BINDING_COLUMN(54, m_iPVPMaxDie )
		//辨靛沥焊--------------------------------
		_BINDING_COLUMN_PTR(55, m_tszGuildName )
		_BINDING_COLUMN(56, m_GuildGuid )
		_BINDING_COLUMN(57, m_GuildPosition )
		_BINDING_COLUMN_PTR(58, m_tszGuildNickName )
	_END_BINDING_DATA()

public:
	inline BYTE GetType()				{ return m_Type; }
	inline VOID SetType( BYTE type )	{ m_Type=type; }
private:
	BYTE m_Type;
};

class SelectWarehouseQuery : public QueryForUser
{
public:
	enum
	{ 
		WAREHOUSE_ROW_NUM = 1,
		WAREHOUSE_COL_NUM = 3,
	};
	struct sQUERY_WAREHOUSE
	{
		BYTE		m_byaWarehouseItem[MAX_WAREHOUSESTREAM_SIZE];
		MONEY		m_Money;
		DWORD		m_dwPassword;
	}pWarehouse[WAREHOUSE_ROW_NUM];

	ULONG uWarehouseLength[WAREHOUSE_COL_NUM];

	_BEGIN_BINDING_DATA(sQUERY_WAREHOUSE, pWarehouse, uWarehouseLength, WAREHOUSE_ROW_NUM, WAREHOUSE_COL_NUM)		
		_BINDING_COLUMN_PTR(0, m_byaWarehouseItem)
		_BINDING_COLUMN(1, m_Money)
		_BINDING_COLUMN(2, m_dwPassword)
	_END_BINDING_DATA()

};


class SelectEventQuery : public QueryForUser
{
	_DECLARE_QUERY_POOL(SelectEventQuery)
public:
	enum
	{ 
		PARAM_ROW_NUM	= 1,
		PARAM_COL_NUM	= 1,

		RESULT_ROW_NUM	= MAX_EVENT_INVENTORY_SLOT_NUM,
		RESULT_COL_NUM	= 3,
	};

	struct sPARAM
	{
		INT	m_Result;
	} pParam[PARAM_ROW_NUM];

	struct sQUERY
	{
		INT		m_ItemSeq;
		BYTE	m_ItemCode;
		BYTE	m_ItemCount;
	}pResult[RESULT_ROW_NUM];

	ULONG uLength[RESULT_COL_NUM];

	_BEGIN_PARAM_DATA		(sPARAM, pParam, PARAM_COL_NUM)
		_BINDING_PARAM		(0, m_Result, SQL_PARAM_OUTPUT)
	_END_PARAM_DATA			()

	_BEGIN_BINDING_DATA(sQUERY, pResult, uLength, RESULT_ROW_NUM, RESULT_COL_NUM)		
		_BINDING_COLUMN(0, m_ItemSeq)
		_BINDING_COLUMN(1, m_ItemCode)
		_BINDING_COLUMN(2, m_ItemCount)
	_END_BINDING_DATA()

	inline BOOL ResultSuccess() { return (pParam[0].m_Result==0); }
};

class UdpateEventQuery : public QueryForUser
{
	_DECLARE_QUERY_POOL(UdpateEventQuery)
public:
	enum
	{ 
		PARAM_ROW_NUM	= 1,
		PARAM_COL_NUM	= 1,
	};

	struct sPARAM
	{
		INT	m_Result;
	} pParam[PARAM_ROW_NUM];


	_BEGIN_PARAM_DATA		(sPARAM, pParam, PARAM_COL_NUM)
		_BINDING_PARAM		(0, m_Result, SQL_PARAM_OUTPUT)
	_END_PARAM_DATA			()

	_INIT_BINDING_DATA()

	inline BOOL ResultSuccess() { return (pParam[0].m_Result==0); }
public:
	VOID		SetItemPos( POSTYPE pos )	{ m_ItemPos = pos;	}
	POSTYPE		GetItemPos()				{ return m_ItemPos; }
private:
	POSTYPE		m_ItemPos;
};

#pragma pack(pop, 1)

#endif // __GAME_SERVER_QUERY_H__

⌨️ 快捷键说明

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