Files
mir_server/Gateway/common/db/role_data.h

171 lines
2.6 KiB
C
Raw Normal View History

2025-01-09 17:45:40 +08:00
#ifndef _DB_ROLE_DATA_H_
#define _DB_ROLE_DATA_H_
#include "common.h"
#include "common/datalist.h"
#include "common/property_set.h"
#define MAX_FUWEN 8
#define MAX_WING_PILL 2 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#pragma pack(push,1)
using namespace SrvDef;
//tolua_begin
struct SkillsData
{
int skill_level[5];
};
struct YuanShenData
{
bool slot_filled[6];
};
enum EquipSlotType
{
EquipSlotType_Weapon = 0,//<2F><><EFBFBD><EFBFBD>
EquipSlotType_Helmet,//1.ͷ<><CDB7>
EquipSlotType_Coat,//2.<2E>·<EFBFBD>
EquipSlotType_Necklace,//3.<2E><><EFBFBD><EFBFBD>
EquipSlotType_Wrist,//4.<2E><><EFBFBD><EFBFBD>
EquipSlotType_Belt,//5.<2E><><EFBFBD><EFBFBD>
EquipSlotType_Ring,//6.<2E><>ָ
EquipSlotType_Shoes,//7.Ь<><D0AC>
EquipSlotType_Dzi, //8.<2E><>ӡ
EquipSlotType_Hats, //9.<2E><><EFBFBD><EFBFBD>
EquipSlotType_Mark, //10.<2E><><EFBFBD><EFBFBD>
EquipSlotType_Cloak, //11.<2E><><EFBFBD><EFBFBD>
EquipSlotType_Shield, //12.<2E><><EFBFBD><EFBFBD>
EquipSlotType_Max,
};
enum WingSlotType
{
WingSlotType_Hub = 0,
WingSlotType_Stone,
WingSlotType_Feathers,
WingSlotType_Colorplume,
WingSlotType_Max,
};
struct EquipSlotData
{
int strength_lv; //ǿ<><C7BF><EFBFBD>ȼ<EFBFBD>
int fuling_lv; //<2F><><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>
int gem_lv; //<2F><>ʯ<EFBFBD>ȼ<EFBFBD>
ItemData equip_data;
int zhuling_lv; //ע<><D7A2><EFBFBD>ȼ<EFBFBD>
int soul_lv; //ħ<><C4A7><EFBFBD>ȼ<EFBFBD>(1-8<><38>λ<EFBFBD><CEBB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>9-12<31><32>ʾħ<CABE><C4A7><EFBFBD>ȼ<EFBFBD>)
int bless_lv; //ף<><D7A3><EFBFBD>ȼ<EFBFBD>(<28><><EFBFBD><EFBFBD>)(<28><>û<EFBFBD>õ<EFBFBD>)
int fuling_exp; //<2F><><EFBFBD><EFBFBD><E9BEAD>
};
struct EquipsData
{
EquipSlotData slot_data[EquipSlotType_Max];
};
struct ExRingsData
{
int ring_level[4];
};
struct WingsData
{
int level;
//int star_lv;
int exp;
int openStatus;
unsigned int ctime;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
short pill[MAX_WING_PILL];
};
struct WingsEquip
{
EquipSlotData wing_slot[WingSlotType_Max];
};
//<2F><><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
struct JingMaiData
{
int level;
int stage;
};
struct SkillsBreakData
{
int skill_break_level[5];
};
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
struct LoogsoulData
{
int stage;
int level;
int exp;
char act;
};
struct ShieldData
{
int stage;
int level;
int exp;
char act;
};
struct XueyuData
{
int stage;
int level;
int exp;
char act;
};
struct FuWenData
{
ItemData fuwen_slot[MAX_FUWEN];
};
#define HEIRLOOM_TYPE_MAX 8 //<2F><><EFBFBD><EFBFBD>װ<EFBFBD><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
//<2F>޸<EFBFBD>RoleData<74>Ļ<EFBFBD><C4BB><EFBFBD>Ҫ֪ͨ<CDA8>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD>޸<EFBFBD>ͬ<EFBFBD><CDAC>RoleData<74><61>Э<EFBFBD>
struct RoleData
{
int id;
int job;
int sex;
double power;
SkillsData skills;
SkillsBreakData skillbreaks;
int yuanshen_level;
YuanShenData yuanshen_data;
EquipsData equips_data;
ExRingsData ex_rings;
WingsData wings;
//WingsEquip wingequips_data;
JingMaiData jingmai_data;
LoogsoulData loogsoul_data;
//ShieldData shield_data;
//XueyuData xueyu_data;
FuWenData fuwen_data;
int heirloom[HEIRLOOM_TYPE_MAX];
int weapon_soul_id;//<2F><>ǰʹ<C7B0>õı<C3B5><C4B1><EFBFBD>ID
};
struct RoleDatas
{
int role_count;
RoleData roles[3];
RoleDatas() { memset(this, 0, sizeof(RoleDatas)); }
};
//tolua_end
#pragma pack(pop)
#endif