mirror of
https://github.com/unanmed/HumanBreak.git
synced 2026-11-01 07:24:30 +08:00
修复取消方向伤害造成的错误
This commit is contained in:
1 parent
b8711e2014
commit
7ce6acb664
8 files changed
+72
-104
No files matched your search
+18
-24
@@ -60,26 +60,23 @@ export function getDefDamage(
|
||||
const max = 100 - Math.floor(addDef / ratio);
|
||||
|
||||
for (let i = 0; i <= max; i++) {
|
||||
const dam = enemy.enemy.calEnemyDamage(
|
||||
{
|
||||
atk: core.status.hero.atk + addAtk,
|
||||
def: core.status.hero.def + addDef + i * ratio
|
||||
},
|
||||
'none'
|
||||
);
|
||||
const dam = enemy.enemy.calDamage({
|
||||
atk: core.status.hero.atk + addAtk,
|
||||
def: core.status.hero.def + addDef + i * ratio
|
||||
});
|
||||
|
||||
if (res.length === 0) {
|
||||
origin = dam[0].damage;
|
||||
origin = dam.damage;
|
||||
if (has(origin)) {
|
||||
res.push([addDef + i * ratio, origin]);
|
||||
last = origin;
|
||||
}
|
||||
continue;
|
||||
}
|
||||
if (!isFinite(dam[0].damage)) continue;
|
||||
if (dam[0].damage === res.at(-1)?.[1]) continue;
|
||||
last = dam[0].damage;
|
||||
res.push([ratio * i + addDef, dam[0].damage]);
|
||||
if (!isFinite(dam.damage)) continue;
|
||||
if (dam.damage === res.at(-1)?.[1]) continue;
|
||||
last = dam.damage;
|
||||
res.push([ratio * i + addDef, dam.damage]);
|
||||
}
|
||||
|
||||
return res;
|
||||
@@ -103,26 +100,23 @@ export function getCriticalDamage(
|
||||
const max = 100 - Math.floor(addAtk / ratio);
|
||||
|
||||
for (let i = 0; i <= max; i++) {
|
||||
const dam = enemy.enemy.calEnemyDamage(
|
||||
{
|
||||
atk: core.status.hero.atk + addAtk + i * ratio,
|
||||
def: core.status.hero.def + addDef
|
||||
},
|
||||
'none'
|
||||
);
|
||||
const dam = enemy.enemy.calDamage({
|
||||
atk: core.status.hero.atk + addAtk + i * ratio,
|
||||
def: core.status.hero.def + addDef
|
||||
});
|
||||
|
||||
if (res.length === 0) {
|
||||
origin = dam[0].damage;
|
||||
origin = dam.damage;
|
||||
if (has(origin)) {
|
||||
res.push([addAtk + i * ratio, origin]);
|
||||
last = origin;
|
||||
}
|
||||
continue;
|
||||
}
|
||||
if (!isFinite(dam[0].damage)) continue;
|
||||
if (dam[0].damage === res.at(-1)?.[1]) continue;
|
||||
last = dam[0].damage;
|
||||
res.push([ratio * i + addAtk, dam[0].damage]);
|
||||
if (!isFinite(dam.damage)) continue;
|
||||
if (dam.damage === res.at(-1)?.[1]) continue;
|
||||
last = dam.damage;
|
||||
res.push([ratio * i + addAtk, dam.damage]);
|
||||
}
|
||||
|
||||
return res;
|
||||
|
||||
@@ -13,8 +13,9 @@ const show = debounce((ev: MouseEvent) => {
|
||||
if (!flags.mouseLoc) return;
|
||||
flags.clientLoc = [ev.clientX, ev.clientY];
|
||||
const [mx, my] = getLocFromMouseLoc(...flags.mouseLoc);
|
||||
|
||||
const e = core.status.thisMap.enemy.list.find(v => {
|
||||
v.x === mx && v.y === my;
|
||||
return v.x === mx && v.y === my;
|
||||
});
|
||||
|
||||
if (!e) return;
|
||||
@@ -68,8 +69,8 @@ export function getDetailedEnemy(
|
||||
const dam = enemy.calDamage().damage;
|
||||
const cri = enemy.calCritical(1)[0];
|
||||
const critical = core.formatBigNumber(cri?.atkDelta);
|
||||
const criticalDam = core.formatBigNumber(cri?.delta);
|
||||
const defDam = core.formatBigNumber(enemy.calDefDamage(ratio).damage);
|
||||
const criticalDam = core.formatBigNumber(-cri?.delta);
|
||||
const defDam = core.formatBigNumber(-enemy.calDefDamage(ratio).delta);
|
||||
const damage = core.formatBigNumber(dam);
|
||||
|
||||
const fromFunc = (
|
||||
|
||||
Reference in new issue
Block a user