diff --git a/public/img/attribute/recover.png b/public/img/attribute/recover.png new file mode 100644 index 0000000..b7a08e3 Binary files /dev/null and b/public/img/attribute/recover.png differ diff --git a/src/config/assets.ts b/src/config/assets.ts index 9ebf96e..bac19cb 100644 --- a/src/config/assets.ts +++ b/src/config/assets.ts @@ -30,6 +30,7 @@ export const attr_icon_urls = { def: root + '/img/attribute/icon_11.png', eva: root + '/img/attribute/S_EVA.png', bloc: root + '/img/attribute/S_BLOC.png', + recoverSpeed: root + '/img/attribute/recover.png', moveSpeed: root + '/img/attribute/S_EVA.png', battleSpeed: root + '/img/attribute/S_EVA.png', }; @@ -43,7 +44,6 @@ export const playerImg = root + '/img/player.png'; export const playerImg2 = root + '/img/player2.png'; export const red_icon = root + '/img/red.gif'; - export const warning_icon = root + '/img/tip/warning.png'; export const dungeon_icon = { diff --git a/src/config/base.ts b/src/config/base.ts index cfd7438..d7b5e0f 100644 --- a/src/config/base.ts +++ b/src/config/base.ts @@ -1,5 +1,5 @@ export const backpack_num = 32; -export const reborn_arrts = ['hp', 'atk', 'crit', 'critDmg', 'def', 'bloc', 'moveSpeed', 'battleSpeed']; +export const reborn_arrts = ['hp', 'atk', 'crit', 'critDmg', 'def', 'bloc', 'recoverSpeed', 'moveSpeed', 'battleSpeed']; export const reborn_point_coefficients = { hp: 10, atk: 3, @@ -7,6 +7,7 @@ export const reborn_point_coefficients = { critDmg: 1, def: 2, bloc: 2, + recoverSpeed: 4, moveSpeed: 4, battleSpeed: 4, }; diff --git a/src/config/equips/constant.ts b/src/config/equips/constant.ts index 98ca2e8..f7be804 100644 --- a/src/config/equips/constant.ts +++ b/src/config/equips/constant.ts @@ -67,6 +67,7 @@ export const attr_unitys = { hpPercent: '%', defPercent: '%', blocPercent: '%', + recoverSpeed: '%', moveSpeed: '%', battleSpeed: '%', }; diff --git a/src/config/i18n/zh.ts b/src/config/i18n/zh.ts index bc28660..8b416b2 100644 --- a/src/config/i18n/zh.ts +++ b/src/config/i18n/zh.ts @@ -97,6 +97,7 @@ export default class Zh { eva = ['闪避值', '角色闪避几率', '闪避几率采用非线性计算', '多个闪避来源自身乘法叠加']; bloc = ['格挡', '角色格挡伤害', '计算护甲后再计算格挡伤害就是最终受到的伤害']; blocPercent = ['格挡', '角色格挡百分比']; + recoverSpeed = ['生命回复速度']; moveSpeed = ['副本行进速度']; battleSpeed = ['副本战斗速度']; dps = ['秒伤', 'DPS:角色每秒伤害', '这个只是伤害数据,并没有统计防御属性,所以只是作为战斗力评估的一个依据']; diff --git a/src/store/action.ts b/src/store/action.ts index 1826214..ab24d57 100644 --- a/src/store/action.ts +++ b/src/store/action.ts @@ -103,6 +103,7 @@ export const loadGame = ({ commit }, data?) => { commit('set_backpack', data.backpack); commit('set_auto_sell', data.autoSell); commit('set_shop', data.shop); + data.reborn && (data.reborn.recoverSpeed = 0); commit('set_reborn_points', data.reborn); commit('set_sys_info', { msg: t('loadSuccess'), type: 'win' }); } diff --git a/src/store/state.ts b/src/store/state.ts index 9966909..4c325ee 100644 --- a/src/store/state.ts +++ b/src/store/state.ts @@ -28,6 +28,7 @@ export default { critDmg: 0, def: 0, bloc: 0, + recoverSpeed: 0, moveSpeed: 0, battleSpeed: 0, }, @@ -40,6 +41,7 @@ export default { critDmg: 0, def: 0, bloc: 0, + recoverSpeed: 0, moveSpeed: 0, battleSpeed: 0, }, diff --git a/src/views/dungeon/battle.vue b/src/views/dungeon/battle.vue index 4f42d91..a2dc158 100644 --- a/src/views/dungeon/battle.vue +++ b/src/views/dungeon/battle.vue @@ -105,7 +105,6 @@ const battleWithMonster = (monster) => { return new Promise((resolve, reject) => { const player = state.playerAttribute.attribute; const battleTime = Math.round(player_battle_time * 100 / (100 + state.rebornAttribute.battleSpeed)) - const getMsg = (i18nName, takeDmg) => { return t(i18nName).replace('${lv}', monster.lv).replace('${name}', t('difficulty.' + props.dungeon?.difficulty) + t(monster.type)).replace('${dmg}', takeDmg + ''); }; diff --git a/src/views/message/attribute.vue b/src/views/message/attribute.vue index b1d95bc..40d737b 100644 --- a/src/views/message/attribute.vue +++ b/src/views/message/attribute.vue @@ -72,10 +72,13 @@ let interval = 0; const attribute = computed(() => { return state.playerAttribute.attribute; }) +const recoverSpeed = computed(() => { + return state.rebornAttribute.recoverSpeed; +}) onMounted(() => { interval = setInterval(() => { - commit('add_player_curhp', Math.ceil(attribute.value.hp * 0.02)) + commit('add_player_curhp', Math.ceil(attribute.value.hp * 0.02 * (1 + recoverSpeed.value / 100))) }, 1000); }); onBeforeUnmount(() => {