msghandler.h

来自「国外网游源码....除工具源码缺少之外,其余程序都全...至于,什么游戏,因为国」· C头文件 代码 · 共 242 行

H
242
字号
#ifndef __MSGHANDLER_H
#define __MSGHANDLER_H


#include "../Common/msgkind.h"



#pragma pack(push, 1)

typedef struct _MSGINFO		//菩哦沥焊
{
	union
	{
		char packet[NET_MAXBUFSIZE+1];

		struct _uUserInfo
		{
			short login_userindex;
			char user_id[LEN_ID+1];
			char user_nick[LEN_NICKNAME+1];
			char clan_name[LEN_CLANNAME+1];
			BYTE gender;
			BYTE pilot;
			UINT64 cash;
			UINT64 point;
			UINT best_point;
			UINT best_straight;
			UINT win_straight;
			UINT win;
			UINT lose;
			UINT kill;
			UINT death;
			UINT rank;
			UINT quit;
			UINT black;
			BYTE level;
			UINT64 exp;
			BYTE inven_cnt;
			BYTE mechanic_cnt;
		} uUserInfo;

		struct _lsmsUserInfo
		{
			short login_userindex;
			char user_id[LEN_ID+1];
			char user_nick[LEN_NICKNAME+1];
			char clan_name[LEN_CLANNAME+1];
			BYTE gender;
			BYTE pilot;
			UINT64 cash;
			UINT64 point;
			UINT best_point;
			UINT best_straight;
			UINT win_straight;
			UINT win;
			UINT lose;
			UINT kill;
			UINT death;
			UINT rank;
			UINT quit;
			UINT black;
			BYTE level;
			UINT64 exp;
			BYTE inven_cnt;
			BYTE mechanic_cnt;
			DWORD private_ip;
			UINT64 account;
		} lsmsUserInfo;

		struct _uMechanicInfo
		{
			char index;
			DWORD id;
			DWORD fight;
			BYTE dur;
			BYTE skin;
			BYTE color;
			BYTE weapon_slot[WEAPON_MAX];
		} uMechanicInfo;

		struct _uServerList
		{
			BYTE list_type;
			short lobby_serverindex;
			short user_cnt;
			short user_limit;
			char server_name[LEN_SVRNAME+1];
		} uServerList;

		struct _uServerUpdate
		{
			BYTE list_type;
			short lobby_serverindex;
			short user_cnt;
		} uServerUpdate;

		struct _uServerDelete
		{
			BYTE list_type;
			short lobby_serverindex;
		} uServerDelete;

		struct _uServerInfo
		{
			char ip[LEN_IP+1];
			WORD port;
			BYTE auth_size;
			BYTE auth_count;
		} uServerInfo;

		struct _mslsUserInfo
		{
			short lobby_userindex;
			DWORD private_ip;
			bool symmetric;
			UINT64 account;
			char user_id[LEN_ID+1];
			char user_nick[LEN_NICKNAME+1];
			char clan_name[LEN_CLANNAME+1];
			BYTE gender;
			BYTE pilot;
			UINT64 cash;
			UINT64 point;
			UINT best_point;
			UINT best_straight;
			UINT win_straight;
			UINT win;
			UINT lose;
			UINT kill;
			UINT death;
			UINT rank;
			UINT quit;
			UINT black;
			BYTE level;
			UINT64 exp;
			BYTE inven_cnt;
			BYTE mechanic_cnt;
		} mslsUserInfo;

		struct _mslsMechanicInfo
		{
			char index;
			DWORD id;
			DWORD fight;
			BYTE dur;
			BYTE skin;
			BYTE color;
			BYTE weapon_slot[WEAPON_MAX];
			UINT64 account;
		} mslsMechanicInfo, lsmsMechanicInfo;

		struct _lsmsItemBuy
		{
			BYTE item_invenindex;
			DWORD item_id;
			BYTE use_type;
			DWORD item_value;
			UINT64 cash;
			UINT64 point;

			UINT64 account;
		} lsmsItemBuy;

		struct _lsmsItemCreate
		{
			BYTE item_invenindex;
			DWORD item_id;
			BYTE use_type;
			DWORD item_value;

			UINT64 account;
		} lsmsItemCreate;

		struct _lsmsItemDelete
		{
			BYTE item_invenindex;
			BYTE item_equipslot;

			UINT64 account;
			UINT64 mechanic;
		} lsmsItemDelete;

		struct _mslsGameOut
		{
			UINT64 mechanic;			//唱埃 蜡历狼 皋墨葱 侥喊锅龋
			BYTE level;					//饭骇
			UINT64 exp;					//版氰摹
			short point;				//霸烙郴俊辑 裙垫茄 器牢飘
			BYTE kill_cnt;				//霸烙郴俊辑 磷牢冉荐
			BYTE death_cnt;				//霸烙郴俊辑 磷篮冉荐
			bool win;					//铰府咯何
			bool quit;					//厚沥惑辆丰咯何
		} mslsGameOut;
	};
} MSGINFO;

#pragma pack(pop)


void msc_dummy(int id, char *packet, DWORD msg, DWORD size);
void cms_author_code(int id, char *packet);
void cms_login_info(int id, char *packet);
void cms_udp_ping(int id);

bool msc_user_info(int id);
void msc_server_list(int id);
void msc_server_update(int id);
void msc_server_add(int lobby_serverindex);
void msc_server_delete(int lobby_serverindex);

void sms_author(int id, char *packet);
void sms_login(int id, char *packet);
void sms_open(int id);
void sms_user_cnt(int id, char *packet, DWORD size);
void sms_load_balance(int id, char *packet);

void sms_author_info(int id, char *packet, DWORD size);

void gsms_login_info(int id, char *packet, DWORD size);
void gsms_gamezone_info(int id, char *packet, DWORD size);
void gsms_gamezone_open_full(int id, char *packet, DWORD size);
void gsms_gamezone_open_fail(int id, char *packet, DWORD size);
void gsms_game_end(int id, char *packet, DWORD size);
void gsms_relay_info(int id, char *packet, DWORD size);


void lsms_login_info(int id, char *packet, DWORD size);
void lsms_user_info(int id, char *packet, DWORD size);
void lsms_user_connect(int id, char *packet);
void lsms_item_buy(int id, char *packet, DWORD size);
void lsms_item_create(int id, char *packet, DWORD size);
void lsms_item_delete(int id, char *packet, DWORD size);
void lsms_gamezone_info(int id, char *packet, DWORD size);
void lsms_player_info(int id, char *packet, DWORD size);

void cms_server_select(int id, char *packet);
void cms_login_back(int id, char *packet, DWORD size);


#endif

⌨️ 快捷键说明

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