|
|
这里是数据结构相关设计
|
|
|
|
|
|
# 数据库表结构
|
|
|
## 角色
|
|
|
### 角色金钱
|
|
|
RoleMoney: {
|
|
|
#[pri_key=true, file_db=true]
|
|
|
rid: u32,
|
|
|
coin: u64,// 金币
|
|
|
btc: u64,// btc
|
|
|
diamond: u32// 金钱--钻石
|
|
|
}
|
|
|
### 角色材料
|
|
|
RoleMaterial: {
|
|
|
#[pri_key, file_db=true]
|
|
|
rid: u32,
|
|
|
materials: [u8; 16],// 材料列表
|
|
|
costs: [u8; 16]// 每种材料的消耗数量统计
|
|
|
}
|
|
|
|
|
|
- 枚举定义
|
|
|
|
|
|
enum MaterialType {
|
|
|
iron:0,//铁
|
|
|
wood:1,//木
|
|
|
skin:2//皮
|
|
|
stone:3//石
|
|
|
}
|
|
|
|
|
|
- 通过枚举定义出材料类型,列表对应位置存放对应材料
|
|
|
### 角色打造
|
|
|
RoleMake: {
|
|
|
#[pri_key, file_db=true],
|
|
|
rid: u32,
|
|
|
formula: &[Formula], // 配方图纸列表
|
|
|
makers: &[Maker], // 打造者列表
|
|
|
costs: [u32; 8], // 每个打造者的打造时间统计
|
|
|
}
|
|
|
Formula{
|
|
|
item_id: u32,
|
|
|
exp: u32, // 打造的经验
|
|
|
start_time: u32, // 获得该图纸的时间
|
|
|
last_time: u32, // 最后一次打造时间
|
|
|
count: u32, // 打造的数量
|
|
|
trade: u32, // 卖出价格
|
|
|
}
|
|
|
Maker{
|
|
|
item_id: u32, // 正在打造的物品编号
|
|
|
start: u32, // 开始时间
|
|
|
end: u32, // 结束时间
|
|
|
next: &[u32], // 等待打造的物品编号
|
|
|
}
|
|
|
|
|
|
- 配置表
|
|
|
|
|
|
FormulaCfg{
|
|
|
#[pri_key=true]
|
|
|
id: u32,
|
|
|
materials:&[MaterialType], // 消耗材料种类
|
|
|
cost:&[u32], // 消耗材料数量
|
|
|
duration:u32 // 持续时间
|
|
|
costCoin:u32 // 消耗金币
|
|
|
get:u32 // 获得的装备
|
|
|
}
|
|
|
### 英雄与装备
|
|
|
role_hero{
|
|
|
#[pri_key, file_db=true]
|
|
|
rid: u32,
|
|
|
arr: &[Hero],
|
|
|
}
|
|
|
Hero{
|
|
|
id: u32,
|
|
|
exp: u32, // 经验,可计算出等级
|
|
|
breakdown: u8, // 突破次数
|
|
|
hp: u32,// 当前血量
|
|
|
state: u8,// 当前状态
|
|
|
equips: &[Equip; 4],// 装备列表
|
|
|
special: Equip,// 特殊装备
|
|
|
}
|
|
|
|
|
|
Equip{
|
|
|
item_id: u32,
|
|
|
life: u8,//耐久
|
|
|
}
|
|
|
|
|
|
- 配置表
|
|
|
|
|
|
HeroCfg {
|
|
|
#[pri_key=true]
|
|
|
id: u32,
|
|
|
quality: u8,// 品质
|
|
|
attrs: [[attrId,u32]],// 属性列表
|
|
|
skills: [],// 技能列表
|
|
|
price: u8,// 解雇价格
|
|
|
race:RaceType,// 种族
|
|
|
raceEquip:EquipType,// 种族
|
|
|
}
|
|
|
EquipCfg {
|
|
|
#[pri_key=true]
|
|
|
id: u32,
|
|
|
type: EquipType, 装备类型
|
|
|
attrs: [[attrId,u32]],// 属性列表
|
|
|
skills: [],// 技能列表
|
|
|
price: u8,// 卖出价格
|
|
|
formulaId: u32, // 制作图纸编号
|
|
|
maxLife: u8, // 最大耐久
|
|
|
}
|
|
|
AttrCfg{
|
|
|
#[pri_key=true]
|
|
|
id:u32,
|
|
|
description:string // 描述
|
|
|
}
|
|
|
SkillCfg{
|
|
|
#[pri_key=true]
|
|
|
id:u32,
|
|
|
damagePer
|
|
|
damage // 伤害
|
|
|
crit // 暴击
|
|
|
description:string // 描述
|
|
|
}
|
|
|
|
|
|
- 枚举定义
|
|
|
|
|
|
enum {
|
|
|
Terran: 0,// 人族
|
|
|
Orc: 1,// 兽族
|
|
|
Elf: 2,// 精灵
|
|
|
Undead: 3,// 亡灵
|
|
|
}
|
|
|
enum EquipType {
|
|
|
weapon: 0,// 武器
|
|
|
armor: 1,// 盔甲
|
|
|
helmet: 2,// 头盔
|
|
|
shoes: 3,//鞋子
|
|
|
book: 4,// 书--人族
|
|
|
totem: 5,// 图腾--兽族
|
|
|
badge: 6,// 纹章--精灵
|
|
|
horcrux: 7,// 魂器--亡灵
|
|
|
}
|
|
|
### 角色包裹
|
|
|
role_box{
|
|
|
#[pri_key, file_db=true]
|
|
|
rid: u32,
|
|
|
arr: &[Item|Equip],// 物品列表
|
|
|
}
|
|
|
Item {
|
|
|
item_id: u32,
|
|
|
count: u32,// 物品数量
|
|
|
}
|
|
|
|
|
|
- 配置表
|
|
|
|
|
|
ItemCfg{
|
|
|
id:u32,
|
|
|
name:string // 物品名
|
|
|
limitCount:u32 // 限制数量
|
|
|
}
|
|
|
## 共享区域
|
|
|
### 共享打造
|
|
|
ShareMake: {
|
|
|
#[pri_key, file_db=true],
|
|
|
rid: u32,
|
|
|
makers: &[ShareMaker], // 打造者列表
|
|
|
costs: [u32; 8], // 每个打造者的打造时间统计
|
|
|
}
|
|
|
ShareMaker{
|
|
|
item_id: u32, // 正在打造的物品编号
|
|
|
start: u32, // 开始时间
|
|
|
end: u32, // 结束时间
|
|
|
quickens: &[u32], // 加速者编号
|
|
|
}
|
|
|
|
|
|
|
|
|
# 其他
|
|
|
|
|
|
### 基础属性
|
|
|
per_max_hp 单体生命最大值
|
|
|
per_attack 单体攻击力
|
... | ... | @@ -28,29 +201,7 @@ |
|
|
critical_per buff加暴击概率
|
|
|
un_critical_per buff加抗暴概率
|
|
|
|
|
|
### 角色
|
|
|
钻石
|
|
|
金币
|
|
|
btc
|
|
|
材料-木
|
|
|
材料-铁
|
|
|
材料-石
|
|
|
矿工位[]
|
|
|
### 共享区域
|
|
|
共享旷工位[]
|
|
|
### 英雄
|
|
|
基础属性
|
|
|
装备列表[]
|
|
|
特殊装备列表[]
|
|
|
技能列表
|
|
|
资质
|
|
|
职业
|
|
|
### 装备
|
|
|
属性
|
|
|
类型
|
|
|
### 技能
|
|
|
特性
|
|
|
damagePer
|
|
|
damage 伤害
|
|
|
crit 暴击
|
|
|
### 旷工位 |
|
|
\ No newline at end of file |
|
|
|
|
|
# 问题
|
|
|
|
|
|
- 共享打造位别人可以帮助领取吗,否则将出现一直占领该区域的情况;或者打造时间为0后,除了拥有者外无法再看见该打造的装备 |
|
|
\ No newline at end of file |