Files
mir_server/server/robot/LogicSystem/NetMsgDef.h
aixianling 5c9f1dae4a init
2025-01-09 17:45:40 +08:00

151 lines
5.0 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#pragma once
/*
** 本文件主要用于定义客户端同服务器之间的网络消息协议数据定义。
*/
#pragma pack(push, 1)
/*
enum ScriptSubSystemID
{
enScriptMiscSystem = 139,
enScriptTestSystem = 150,
};
*/
enum ScriptMiscSystemMsgID
{
enMisc_QuickTel = 7, // 速传
};
// 测试子系统消息定义
enum TestSystemMsgID
{
enTestSys_ReliveInPlace = 1, // 原地复活
enTestSys_EnterFuben = 2, // 进入副本
enTestSys_RequestEquips=3, // 请求装备
};
// 其他非玩家实体数据( TODELETE )
typedef struct tagNonActorPropData
{
EntityHandle handle; // 实体句柄
char szDecorateName[256]; // 修饰名称
WORD wPosX; // 实体坐标X
WORD wPosY; // 实体坐标Y
unsigned int wModelId; // 实体模型Id
BYTE ucDir; // 朝向
// 以下是怪物、宠物特有的数据
BYTE ucLevel; // 等级
unsigned int nHP; // HP
unsigned int nMP; // MP
unsigned int nMaxHP; // 最大HP
unsigned int nMaxMP; // 最大MP
WORD wMoveSpeed; // 移动速度实际上是移动一个格子需要的时间ms
WORD wAttackSpeed; // 攻击速度实际上是攻击时间间隔ms
unsigned int nStatus; // 实体状态
unsigned int nCreatureColor;
unsigned int nNameColor; // 名字颜色
BYTE ucAttackType; // 攻击类型和怪物类型。攻击类型占低4位怪物类型占高4位
// 以下还有Buff数据、效果Effect数据、怪物拥有者句柄、NPC功能分类Id等暂时未用到不做定义
}NonActorPropData;
// 其他玩家数据
typedef struct tagOtherActorPropData
{
EntityHandle handle; // 实体句柄
char szDecorateName[256]; // 修饰名称
WORD wPosX; // 实体坐标X
WORD wPosY; // 实体坐标Y
int nModelId; // 实体模型Id
unsigned int nHP; // HP
unsigned int nMP; // MP
unsigned int nMaxHP; // MaxHP
unsigned int nMaxMP; // MaxMP
WORD wMoveSpeed; // 移动速度
BYTE ucSex; // 性别
BYTE ucVocation; // 职业
WORD ucLevel; // 等级
unsigned int nCircle; //转数
int nWeaponAppear; // 武器外观
int nSwingAppear; //翅膀外观
int nSocialMask; //社会关系
WORD wIcon; // 图标
WORD nAttackSpeed; // 攻击速度
BYTE ucDir; // 朝向
unsigned int nStatus; // 状态掩码
unsigned int nRes1;
int nTeamId; // 队伍Id
BYTE ucCamp; // 阵营
unsigned int nHeadTitle; // 头衔
unsigned int nNameColor; // 名字颜色ARGB值
unsigned int nSupLevel; // 超玩等级
unsigned int nSoldierSoulAppear; // 兵魂外观
WORD nWeaponId; // 正在装备的武器id
unsigned int nGuildID; // 行会id
unsigned int nMonsterID; // 怪物模型id
unsigned int nMeritoriousPoint; // 累计功勋
unsigned int nNextSkillFlag; // 战士下一次技能标记
unsigned int nEvilPkStatus; // 恶意PK状态
unsigned int nPkValue; // PK值
// 下面还有Buff数据、效果数据。暂时没用到先不处理
}OtherActorPropData;
// 怪物数据
typedef struct tagMonsterPropData
{
EntityHandle handle; // 实体句柄
char szDecorateName[256]; // 修饰名称
WORD wPosX; // 实体坐标X
WORD wPosY; // 实体坐标Y
int nModelId; // 实体模型Id
BYTE ucDir; // 朝向
WORD ucLevel; // 等级
unsigned int nHP; // HP
unsigned int nMP; // MP
unsigned int nMaxHP; // MaxHP
unsigned int nMaxMP; // MaxMP
WORD wMoveSpeed; // 移动速度
WORD wAttkSpeed; // 攻击速度
unsigned int nStatus; // 状态掩码
unsigned int nNameColor; // 名字颜色ARGB值
WORD wMonsterId; // 怪物id
unsigned int nLiveTimeOut; // 生命到期时间
}MonsterPropData;
// 宠物数据
typedef struct tagPetPropData
{
EntityHandle handle; // 实体句柄
char szDecorateName[256]; // 修饰名称
WORD wPosX; // 实体坐标X
WORD wPosY; // 实体坐标Y
int nModelId; // 实体模型Id
BYTE ucDir; // 朝向
WORD ucLevel; // 等级
unsigned int nHP; // HP
unsigned int nMP; // MP
unsigned int nMaxHP; // MaxHP
unsigned int nMaxMP; // MaxMP
WORD wMoveSpeed; // 移动速度
WORD wAttkSpeed; // 攻击速度
unsigned int nStatus; // 状态掩码
unsigned int nNameColor; // 名字颜色ARGB值
WORD wEntityId; // 宠物id
}PetPropData;
typedef struct tagClientSkillData
{
WORD wSkillId;
BYTE ucSkillLevel;
WORD wSkillMiji;
int nSkillCD; // 技能CD
int nSkillExp; // 技能经验?
unsigned int nMijiExpireTick; // 秘籍过期时刻
BYTE nSkillInvalid; // 技能失效。1表示失效1表示正常
}ClientSkillData;
#pragma pack(pop)