feat(web/server): add dodge and accuracy stats support
1. 调整FieldEditor中光环档位默认等级为4级 2. 更新SUPPORT_ULT技能列表,新增6415、6416、6518、6519 3. 新增闪避(dodge)和命中(accuracy)属性配置: - 在常量中定义属性注释 - 在前端表单添加属性编辑控件 - 在后端渲染逻辑中支持属性导出 4. 新增测试英雄"闪避哥"用于展示新属性
This commit is contained in:
@@ -1259,6 +1259,106 @@
|
||||
"hp_bonus": [],
|
||||
"def_bonus": [],
|
||||
"info": "大招全体反伤 普攻暴击 暴击反伤辅助"
|
||||
},
|
||||
{
|
||||
"uuid": 5014,
|
||||
"name": "闪避哥",
|
||||
"comment": "",
|
||||
"path": "hk4",
|
||||
"rarity": 4,
|
||||
"roleKey": "Warrior",
|
||||
"growKey": "Warrior",
|
||||
"typeKey": "Melee",
|
||||
"statBase": {
|
||||
"hp": 0,
|
||||
"ap": 0,
|
||||
"def": 0
|
||||
},
|
||||
"dis": null,
|
||||
"speed": null,
|
||||
"dodge": null,
|
||||
"accuracy": null,
|
||||
"skills": [
|
||||
{
|
||||
"uuid": 6004,
|
||||
"name": "普攻强化",
|
||||
"cd": 1.05,
|
||||
"cdExpr": "AtkSpeedSet[AtkSpeedLv.Normal].cd",
|
||||
"overrides": {},
|
||||
"desc": "",
|
||||
"lv_entries": [
|
||||
{
|
||||
"lv": 2,
|
||||
"s_lv": 2,
|
||||
"overrides": {
|
||||
"proc_skill": {
|
||||
"s_uuid": 6518,
|
||||
"chance": 20,
|
||||
"overrides": {
|
||||
"buff_value": 30
|
||||
}
|
||||
}
|
||||
},
|
||||
"desc": ""
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"uuid": 6100,
|
||||
"name": "寒冰斩",
|
||||
"cd": 8,
|
||||
"cdExpr": null,
|
||||
"overrides": {
|
||||
"ap": 200,
|
||||
"timed_buff_id": 7030,
|
||||
"buff_value": 50
|
||||
},
|
||||
"desc": "",
|
||||
"lv_entries": [
|
||||
{
|
||||
"lv": 8,
|
||||
"s_lv": 2,
|
||||
"overrides": {
|
||||
"ap": 250,
|
||||
"timed_buff_id": 7030,
|
||||
"buff_value": 50
|
||||
},
|
||||
"desc": ""
|
||||
},
|
||||
{
|
||||
"lv": 16,
|
||||
"s_lv": 3,
|
||||
"overrides": {
|
||||
"ap": 350,
|
||||
"timed_buff_id": 7030,
|
||||
"buff_value": 80
|
||||
},
|
||||
"desc": ""
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"atking": {},
|
||||
"atked": {},
|
||||
"fstart": {},
|
||||
"dead": {},
|
||||
"field": [
|
||||
{
|
||||
"lv": 4,
|
||||
"uuids": [
|
||||
{
|
||||
"uuid": 7023,
|
||||
"value": 10,
|
||||
"name": ""
|
||||
}
|
||||
],
|
||||
"desc": ""
|
||||
}
|
||||
],
|
||||
"ap_bonus": [],
|
||||
"hp_bonus": [],
|
||||
"def_bonus": [],
|
||||
"info": ""
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -131,6 +131,8 @@ function renderSingleHero(h) {
|
||||
)
|
||||
if (h.dis != null) push(` dis: ${h.dis},`)
|
||||
if (h.speed != null) push(` speed: ${h.speed},`)
|
||||
if (h.dodge != null) push(` dodge: ${h.dodge},`)
|
||||
if (h.accuracy != null) push(` accuracy: ${h.accuracy},`)
|
||||
|
||||
// skills
|
||||
push(` skills: {`)
|
||||
@@ -336,6 +338,8 @@ function renderHeroCsv(heroes) {
|
||||
rows.push(['ap', ...sorted.map((h) => csvStatLine(h, 'ap'))])
|
||||
rows.push(['hp', ...sorted.map((h) => csvStatLine(h, 'hp'))])
|
||||
rows.push(['def', ...sorted.map((h) => csvStatLine(h, 'def'))])
|
||||
rows.push(['dodge', ...sorted.map((h) => (h.dodge != null ? h.dodge : ''))])
|
||||
rows.push(['accuracy', ...sorted.map((h) => (h.accuracy != null ? h.accuracy : ''))])
|
||||
rows.push(['skill[0]_lv1', ...sorted.map((h) => csvSkillLv1(h.skills?.[0], false))])
|
||||
rows.push(['skill[0]_lv2', ...sorted.map((h) => csvSkillLvUp(h.skills?.[0], 2))])
|
||||
rows.push(['skill[1]_lv1', ...sorted.map((h) => csvSkillLv1(h.skills?.[1], true))])
|
||||
|
||||
Reference in New Issue
Block a user