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

📄 dbstruct.h

📁 网络游戏龙族服务器端管理工具 rmtool 源代码
💻 H
字号:

#pragma once
#pragma pack(push,1)

#include "stdafx.h"
#include <oledb.h>

#define MAX_DB_CONNECTION			10
#define DEFAULT_RETURNED_MAX_ROWS	20
#define DEFAULT_ROWS_PER_READ		10
#define MAX_SCHEMA_BUFFER_SIZE		128

//extern int DRAGON_DB;


struct ISequentialStream;

struct DBRECEIVEDATA
{
	DWORD			dwPoolIndex;
	DWORD			dwRowCount;
	DWORD			dwRowSize;
	BYTE			bColCount;	//漠烦 肮荐 
	DBBINDING*		pBindings;	//漠烦 沥焊
	char*			pData;		//角力 罐酒坷绰 单捞磐 
};

struct DBSCHEMA
{
	char szSchemaBuffer[ MAX_SCHEMA_BUFFER_SIZE ];

	DBSCHEMA()
	{
		memset(szSchemaBuffer, 0, sizeof(szSchemaBuffer));
	}
};


//GetServerInfo 窃荐俊辑 痕府 罐酒棵 备炼眉 
struct QueryServerInfo
{
	char	MachineName[15];
	char	Ip[16];
	int		Port;
	char	MapName[20];
	int		ServerType;
	int		RMToolListenPort;
};


struct ServerInfo
{
	char	MachineName[15];
	char	Ip[16];
	int		Port;
	char	MapName[20];
	int		ServerType;
	int		RMToolListenPort;
	DWORD	dwStatus;			//泅犁 惑怕 (立加吝捞唱 酒丛.. 殿殿..)
	DWORD	dwNumOfUser;		//立加 蜡历荐 
};

struct ListenerInfo
{
	BYTE	bStatus;			//泅犁 惑怕 
	char	Ip[16];				
	char	MachineName[15];	
};

//Login 侩 孽府 淬酒棵 Recordset
struct LoginInfo
{
	char ID[20];
	char Password[20];
	char Name[25];
	//int  LoginType;
	DWORD LoginType;
	char IP[16];

	LoginInfo()
	{
		memset(ID,0,20);
		memset(Password,0,20);
		memset(Name,0,25);
		memset(IP,0,16);
		LoginType = 0;
	}
	
};

struct CertainIPList
{
	char ip[16];
};

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//									咯扁辑 何磐绰 老馆 备炼眉 急攫 
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//ini颇老肺 何磐 ServerSetNum蔼苞 捞抚阑 历厘窍绊 乐阑 备炼眉 
struct ServerSetInfo
{
	int nServerSetIndex;	//DB俊辑狼 ServerSetNum蔼苞 鞍促 .  抗) 海鸥绰 100
	int nServerNum;			//弊辑滚悸俊 乐绰 辑滚箭磊.
	int nListenerNum;
	char szSetName[32];
//	char szDBName[32];
};

//ListControl 漠烦 努腐沁阑锭 沥纺 橇肺矫廉肺 焊郴临 Data蔼 备炼眉 
struct ListValue
{
	CListCtrl* pListCtrl;
	int	iSubItem;
	int	iListCtrl;
};

struct ServerStatusInfo
{
	WORD	wPort;
	DWORD	dwStatus;
	DWORD	dwNumOfUsers;
};

struct SelectServerInfo
{
	char szIp[16];
	CWordArray wPortArray;
	CByteArray bServerType;
};




//####################################################################################################
//                                咯扁辑何磐绰 Character Tool 备炼眉甸 
//####################################################################################################
struct ability_limit
{
	DWORD	pre_Class;
	DWORD	Step;		
	DWORD	Str;
	DWORD	Dex;
	DWORD	Con;
	DWORD	Wis;
	DWORD	Int;
	DWORD	Cha;
	DWORD	Endu;
	DWORD	Movp; 
	DWORD	Mor;
	DWORD	Luck;
	DWORD	WS;
	DWORD	PS;
	DWORD	Max_tactic;
};

struct char_name
{
	char name1[20];
	char name2[20];
	char name3[20];
	char name4[20];
};

struct wchar_name
{
	WCHAR name1[20];
	WCHAR name2[20];
	WCHAR name3[20];
	WCHAR name4[20];
};

struct logintable
{
	char servername[20];
	char ip[20];
};

//select passwd, d_name, d_jumin, d_tel2, d_email, d_regday from chr_log_info where login_id = @id
struct chr_log_info
{
	char		passwd[ 20 ];
	wchar_t		Wname[ 20 ];
	wchar_t		Wjumin[ 15 ];
	wchar_t		Wphone[ 15 ];
	char		email[ 50 ];
	DBTIMESTAMP regday;
};
struct chr_log_infoUNI_jp
{
	wchar_t		passwd[ 20 ];
	wchar_t		Wname[ 10 ];
	wchar_t		Wjumin[ 15 ];
	wchar_t		Wphone[ 15 ];
	wchar_t		email[ 50 ];
	DBTIMESTAMP regday;
};
//措父侩 鞭洒 父电巴
struct chr_log_info2
{
	char		passwd[ 20 ];
	wchar_t		Wname[ 20 ];
	wchar_t		Wjumin[ 15 ];
	//wchar_t		Wphone[ 15 ];
	//char		email[ 50 ];
	DBTIMESTAMP regday;
};

struct chr_guild_item
{
	//捞镑俊 抛捞喉 郴侩阑 利绢 林绞寂..
};


struct MY_DB_NUMERIC
{
	BYTE precision;
    BYTE scale;
    BYTE sign;
    unsigned __int64 least;
	unsigned __int64 most;
};

struct NPC_LV2EXP_MAX_VALUE
{
	DWORD	dwMaxLevel;
	DWORD	dwMaxStep;
};


struct RM_GET_MAP_NAME
{
	char szMapFile[30];
	char szMapName[30];
	DWORD dwNation;
};

struct RM_GET_MAP_NAME_UNI
{
	wchar_t szwMapFile[30];
	wchar_t szwMapName[30];
	DWORD dwNation;
};

struct RM_GET_LEVEL_FROM_STEP
{
	DWORD dwLevel;
	DWORD dwExpMax;
};

struct RM_GET_EXP_FROM_LEVEL
{
	DWORD	dwStep;
	DWORD	dwExpMax;
};

/*

#define N_NEUTRAL		0		
#define N_NONSTER		2
#define N_VYSEUS		3
#define N_ZYPERN		4
#define N_HEGEMONIA		5
#define N_YILSE			6
#define N_NATION_ALL	7		// 葛电 惫啊 

*/
typedef struct tag_CharRank
{
	DWORD	nation		: 3;
	DWORD	guild_master: 3;	
	DWORD	king		: 1;
	DWORD	guild_code	: 9;

	DWORD	counselor	: 2;

	DWORD	ultra_nk3	: 1;
	DWORD	ultra_nk4	: 1;
	DWORD	ultra_nk6	: 1;
	
	DWORD	reporter	: 1;
	DWORD	imsi		: 10;
}CCharRank;

typedef struct tagItemAttr
{
	WORD	item_no;
	WORD	blank;		//救敬促...
	DWORD	attr[6];
}ItemAttr;

typedef struct ITEMRAREMAIN//020925 lsw
{
	DWORD	grade			: 4;//殿鞭
	DWORD	soksung1		: 8;//加己1
	DWORD	soksung2		: 8;//加己2 钢萍 加己
	DWORD	soksung3		: 8;//矫埃殿鞭
	DWORD	HighLevel		: 3;//1捞搁 窍捞 酒捞袍
	DWORD	IsDynamicRare	: 1;//1 捞搁 扁瓷 酒捞袍 0 捞搁 饭绢 酒捞袍
}t_RareMain, *LPRareMain;

struct chr_info
{
	//Basic Dlg
	char login_id[20];
	DWORD class1;	//class
	DWORD spell;
	DWORD reset;	//age field
	DWORD lev;
	MY_DB_NUMERIC exp;		//numeric

	char guildname[20];	//0锅掳绰 掂倔 努贰胶 窜拌.. 0 ~ 5鳖瘤 
						//1锅掳绰 掂倔努贰胶 0 ~ 4鳖瘤.. (warrior, wizard...)
						//2锅掳绰 版氰摹 窜拌 //3锅掳绰 expStep
						//4锅掳何磐绰 SkillStep
	DWORD	nut1;	//nk 官捞辑胶
	DWORD	nut2;	//nk 磊捞戚 
	DWORD	nut3;	//nk 老胶 
	DWORD	mana;
	DWORD	hp;
	DWORD	hungry;
	
	DWORD	str;
	DWORD	con;
	DWORD	dex;
	DWORD	wis;
	DWORD	int1;
	DWORD	movep;
	DWORD	char1;
	DWORD	endu;
	DWORD	moral;
	DWORD	luck;
	DWORD	wsps;
	DWORD	reserved_point;

	CCharRank nation;
	DWORD	ladderscore;
	MY_DB_NUMERIC	BankMoney;			//71锅掳 Column		//numeric屈 
	char	MapName[ 20 ];		//81锅掳 Column
	DWORD	LastLoan;
	DWORD	fame;

	//ItemDlg	
	ItemAttr inv[3][3][8];
	ItemAttr equip[8];				//kkk
	ItemAttr quick[6];

};

struct chr_infoUNI
{
	//Basic Dlg
	wchar_t login_id[40];
	//wchar_t login_id[40];
	DWORD class1;	//class
	DWORD spell;
	DWORD reset;	//age field
	DWORD lev;
	MY_DB_NUMERIC exp;		//numeric

	wchar_t guildname[20];	//0锅掳绰 掂倔 努贰胶 窜拌.. 0 ~ 5鳖瘤 
						//1锅掳绰 掂倔努贰胶 0 ~ 4鳖瘤.. (warrior, wizard...)
						//2锅掳绰 版氰摹 窜拌 //3锅掳绰 expStep
						//4锅掳何磐绰 SkillStep
	DWORD	nut1;	//nk 官捞辑胶
	DWORD	nut2;	//nk 磊捞戚 
	DWORD	nut3;	//nk 老胶 
	DWORD	mana;
	DWORD	hp;
	DWORD	hungry;
	
	DWORD	str;
	DWORD	con;
	DWORD	dex;
	DWORD	wis;
	DWORD	int1;
	DWORD	movep;
	DWORD	char1;
	DWORD	endu;
	DWORD	moral;
	DWORD	luck;
	DWORD	wsps;
	DWORD	reserved_point;

	CCharRank nation;
	DWORD	ladderscore;
	MY_DB_NUMERIC	BankMoney;			//71锅掳 Column		//numeric屈 
	wchar_t	MapName[ 20 ];		//81锅掳 Column
	DWORD	LastLoan;
	DWORD	fame;

	//ItemDlg	
	ItemAttr inv[3][3][8];
	ItemAttr equip[8];				//kkk
	ItemAttr quick[6];

};

struct chr_info_update
{
	//Basic Dlg
	char login_id[20];
	DWORD class1;	//class
	DWORD spell;
	DWORD reset;	//age field
	DWORD lev;
	MY_DB_NUMERIC exp;		//numeric

	BYTE guildname[20];	//0锅掳绰 掂倔 努贰胶 窜拌.. 0 ~ 5鳖瘤 
						//1锅掳绰 掂倔努贰胶 0 ~ 4鳖瘤.. (warrior, wizard...)
						//2锅掳绰 版氰摹 窜拌 
						//3锅掳何磐绰 TacticStep
	DWORD	nut1;	//nk 官捞辑胶
	DWORD	nut2;	//nk 磊捞戚 
	DWORD	nut3;	//nk 老胶 
	DWORD	mana;
	DWORD	hp;
	DWORD	hungry;
	
	DWORD	str;
	DWORD	con;
	DWORD	dex;
	DWORD	wis;
	DWORD	int1;
	DWORD	movep;
	DWORD	char1;
	DWORD	endu;
	DWORD	moral;
	DWORD	luck;
	DWORD	wsps;
	DWORD	reserved_point;

	CCharRank nation;
	DWORD	ladderscore;
	MY_DB_NUMERIC	BankMoney;	//71锅掳 Column		//numeric屈 
	char	MapName[ 20 ];		//81锅掳 Column
	DWORD	LastLoan;
	DWORD	fame;
};

struct chr_info_item
{
	//ItemDlg
	ItemAttr inv[3][3][8];
	ItemAttr equip[8];				//kkk
	ItemAttr quick[6];
};

//select tac_skillEXP, script_var, skill, skill_exp  from chr_info where name='%s'", m_ComboCharName.GetBuffer( m_ComboCharName.GetLength()) );
struct chr_info_etc
{
	DWORD tac_skillexp[13];
	int script_var[ 300 ];
	BYTE skill[200];
	DWORD skillexp[45];
};

struct chr_info_etc_for_update
{
	DWORD tac_skillexp[13];
	int script_var[ 300 ];
	BYTE skill[200];
	DWORD skillexp[45];
	BYTE guildname[20];	//0锅掳绰 掂倔 努贰胶 窜拌.. 0 ~ 5鳖瘤 
						//1锅掳绰 掂倔努贰胶 0 ~ 4鳖瘤.. (warrior, wizard...)
						//2锅掳绰 版氰摹 窜拌 
						//3锅掳何磐绰 TacticStep
};

struct chr_info_etc_for_updateUNI
{
	DWORD tac_skillexp[13];
	int script_var[ 300 ];
	BYTE skill[200];
	DWORD skillexp[45];
	wchar_t guildname[20];	//0锅掳绰 掂倔 努贰胶 窜拌.. 0 ~ 5鳖瘤 
							//1锅掳绰 掂倔努贰胶 0 ~ 4鳖瘤.. (warrior, wizard...)
							//2锅掳绰 版氰摹 窜拌 
							//3锅掳何磐绰 TacticStep
};

typedef struct SkillExp
{
	DWORD	skillexp:	20 ;//胶懦 版氰摹
	DWORD	rare	:	12 ;//饭绢 己傍伏
}t_skillexp, *LPSKILLEXP;

typedef struct SkillExp2
{
	DWORD	skillexp	:	20	;//胶懦 版氰摹
	DWORD	makecount	:	6	;//父电 肮荐
	DWORD	day 		:	3	;//历厘等 朝楼
	DWORD	month 		:	3	;//历厘等 朝楼
}t_skillexp2, *LPSKILLEXP2;


typedef struct ITEMLIMITNUMBER
{
	int year 	:2	;//斥档 4肺 唱传芭
	int month	:4	;//岿
	int day 	:5	;//朝楼
	int hour 	:5	;//矫埃
	int min 	:6	;//盒
	int sec		:10	;//檬
}LimitNumber, *LPLimitNumber;

struct TotalSkill
{
	int	num;
	char name[40];
};
struct TotalSkillUNI	//for japan
{
	int	num;
	wchar_t name[40];
};
	
struct LevelFromTacticExp
{
	DWORD	dwLevel;
	DWORD	dwMaxExp;
};

struct ExpFromTacticLevel
{
	DWORD	dwMaxExp;	
	DWORD	dwStep;
};


struct chr_info2
{
	ItemAttr bankitem[5][3][6];		
};

struct ItemData
{
	int item_id;
	char han_name[31];
	int image_number;
	int object;
	int mouse_mr;
};

struct ItemData51
{
	int item_id;
	char han_name[51];		
	int image_number;
	int object;
	int mouse_mr;
};

struct LoginAccount
{
	char id[20];
	char password[20];
	char name[25];
	int	 logintype;
	char ip[16];
};

struct LogData
{
	int index;
	char id[20];
	int type;
	DBTIMESTAMP date;
	char ip[16];
	char log[1024];
};

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//						Comfig俊辑狼 荤侩窍绰 备炼眉 抗) 203.235.238.2 秋墨匙胶
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

struct IPAddressAndName
{
	CString szAddressName;
	CString szIPAddress;
};

/////////////////////////////////////////////
struct SQLItemAttr1
{
	int index;
	int item_no;
	int guild_code;
	char name[20];
	DBTIMESTAMP	time;
};

struct SQLItemAttr2
{
	int item_no;
	DWORD attr[6];
};

////////////////////////////////////////////////





#pragma pack(pop)

⌨️ 快捷键说明

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