From 173a7260957d4760d80d7ef3e91581a5ac66b070 Mon Sep 17 00:00:00 2001 From: mengyxu Date: Sat, 17 May 2025 15:04:14 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=80=E4=BA=9B=E6=98=BE=E7=A4=BABUG?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/config/i18n/zh/index.ts | 2 +- src/tool/caller/attribute.ts | 2 +- src/tool/formatter.ts | 3 +++ src/views/backpack/player.vue | 16 ++++------------ src/views/dungeon/battle.vue | 8 ++++---- src/views/dungeon/dungeonTips.vue | 4 ++-- src/views/message/attribute.vue | 2 +- 7 files changed, 16 insertions(+), 21 deletions(-) diff --git a/src/config/i18n/zh/index.ts b/src/config/i18n/zh/index.ts index 2f900c2..7e8e0e9 100644 --- a/src/config/i18n/zh/index.ts +++ b/src/config/i18n/zh/index.ts @@ -129,7 +129,7 @@ export default class Zh { monster = '小怪'; boss = '首领'; startDungeon = '你已进入'; - battle = '你遭遇了(lv${0}${1}),正在战斗中...'; + battle = '你遭遇了(${0}${1}),正在战斗中...'; bouts = '点击查看战斗过程'; // bout = ['回合', '你使用了【${0}】', '触发了暴击', '造成了${0}点伤害', '受到${0}点伤害', '战斗结束', '你获胜', '你战败', '偷取${0}点生命', '反弹${0}点伤害']; bout = ['战斗结束,你获胜', '战斗结束,你战败']; diff --git a/src/tool/caller/attribute.ts b/src/tool/caller/attribute.ts index 3dbf3fd..f0533b1 100644 --- a/src/tool/caller/attribute.ts +++ b/src/tool/caller/attribute.ts @@ -59,7 +59,7 @@ export const callPlayerAttribute = (player: Player, base: any) => { export const callReducPercent = (def: number, lv: number): number => { const constant = 300; const factor = def < 0 ? -1.05263 : 1.05263; - return def / (constant + factor * def) + lv * 0.0003; + return def / (constant + factor * def) + (100 - lv) * 0.0003; }; /** diff --git a/src/tool/formatter.ts b/src/tool/formatter.ts index 72dbf0a..791be89 100644 --- a/src/tool/formatter.ts +++ b/src/tool/formatter.ts @@ -1,4 +1,7 @@ export const formartNum = (num) => { + if (num > 100000000) { + return (num / 1000000).toFixed(1) + 'm'; + } if (num > 100000) { return (num / 1000).toFixed(1) + 'k'; } diff --git a/src/views/backpack/player.vue b/src/views/backpack/player.vue index 74e718e..db5bd73 100644 --- a/src/views/backpack/player.vue +++ b/src/views/backpack/player.vue @@ -2,7 +2,6 @@
-
{{ t('lv') }}:
{{ t('coins.0') }}:
@@ -10,10 +9,9 @@
-
{{ state.playerAttribute.lv }}
-
{{ coins }}
-
{{ attribute[attr] }}{{ attr_unitys[attr] }}
+
{{ formartNum(coins) }}
+
{{ formartNum(attribute[attr]) }}{{ attr_unitys[attr] }}
@@ -33,6 +31,7 @@ import { reactive, onMounted, ref, computed } from "vue"; import { useI18n } from "vue3-i18n"; import { EquipIcon } from "@/components" import { attr_unitys, playerImg2 } from "@/config"; +import { formartNum } from "@/tool"; const { t } = useI18n(); const { state, commit, dispatch } = useStore(); @@ -54,14 +53,7 @@ const attribute = computed(() => { const attrs = ['dps', 'atk', 'crit', 'critDmg', 'dmgPercent', 'hp', 'def', 'bloc', 'dmgReduc', 'critAvoid', 'critDmgReduc', 'moveSpeed']; const coins = computed(() => { - const coins = state.playerAttribute.coins; - if (coins > 100000000) { - return (coins / 1000000).toFixed(1) + 'm'; - } - if (coins > 100000) { - return (coins / 1000).toFixed(1) + 'k'; - } - return coins; + return state.playerAttribute.coins; }) onMounted(() => { }); diff --git a/src/views/dungeon/battle.vue b/src/views/dungeon/battle.vue index ef0d4e1..19e97e5 100644 --- a/src/views/dungeon/battle.vue +++ b/src/views/dungeon/battle.vue @@ -123,10 +123,10 @@ watch(() => state.playerAttribute.attribute, (n) => { const battleWithMonster = (monster) => { return new Promise((resolve, reject) => { const battleTime = Math.ceil(player_battle_time * 100 / (100 + state.baseAttribute.battleSpeed)) - const getMsg = (i18nName, takeDmg, sneak) => { - return replace(t(i18nName), [monster.lv, t('difficulty.' + props.dungeon?.difficulty) + t(monster.type), takeDmg, sneak]); - }; - commit("set_sys_info", { msg: getMsg('battle', 0, 0), type: 'battle' }); + const lvOrLayer = props.dungeon?.difficulty == 'dami' ? state.playerAttribute.layer + t('layer') : 'lv' + monster.lv; + const monsterName = t('difficulty.' + props.dungeon?.difficulty) + t(monster.type); + const msg = replace(t('battle'), [lvOrLayer, monsterName]) + commit("set_sys_info", { msg: msg, type: 'battle' }); const roles = createBattleRole(state.playerAttribute, monster, commit); const player: BattleRole = roles.player; battlePlayer.value = player; diff --git a/src/views/dungeon/dungeonTips.vue b/src/views/dungeon/dungeonTips.vue index 63a8384..71761ef 100644 --- a/src/views/dungeon/dungeonTips.vue +++ b/src/views/dungeon/dungeonTips.vue @@ -48,14 +48,14 @@ const rate4 = computed(() => { return ''; } const boss = props.dungeon.monsters[4]; - return boss.extraRate[0] * 100 + '%'; + return boss.extraRate[0].toFixed(4) * 100 + '%'; }) const rate5 = computed(() => { if (!props.dungeon) { return ''; } const boss = props.dungeon.monsters[4]; - return boss.extraRate[1] * 100 + '%'; + return boss.extraRate[1].toFixed(4) * 100 + '%'; }) const battle = computed(() => { return state.battle; diff --git a/src/views/message/attribute.vue b/src/views/message/attribute.vue index b1d95bc..ece54de 100644 --- a/src/views/message/attribute.vue +++ b/src/views/message/attribute.vue @@ -32,7 +32,7 @@
- {{ formartNum(attribute.curHp) }}/{{ (attribute.hp) }} + {{ formartNum(attribute.curHp) }}/{{ formartNum(attribute.hp) }}