From 828e061fdd346e8b2561c717ed3cbd69d9bedaf6 Mon Sep 17 00:00:00 2001 From: unanmed <1319491857@qq.com> Date: Sat, 2 Mar 2024 15:51:58 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=A4=9A=E6=9C=9D=E5=90=91=E6=80=AA?= =?UTF-8?q?=E7=89=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/game/enemy/battle.ts | 15 ++++++++++++--- src/plugin/ui/fixed.ts | 1 - src/types/enemy.d.ts | 5 +++++ 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/src/game/enemy/battle.ts b/src/game/enemy/battle.ts index 0363718..653de76 100644 --- a/src/game/enemy/battle.ts +++ b/src/game/enemy/battle.ts @@ -56,6 +56,14 @@ function init() { callback?.(); }; + const getFacedId = (enemy: DamageEnemy) => { + const e = enemy.enemy; + + if (e.displayIdInBook) return e.displayIdInBook; + if (e.faceIds) return e.faceIds.down; + return e.id; + }; + core.enemys.getCurrentEnemys = function getCurrentEnemys( floorId = core.status.floorId ) { @@ -65,7 +73,8 @@ function init() { Damage.ensureFloorDamage(floorId); const floor = core.status.maps[floorId]; floor.enemy.list.forEach(v => { - if (!(v.id in used)) { + const id = getFacedId(v); + if (!(id in used)) { const e = new DamageEnemy(v.enemy); e.calAttribute(); e.getRealInfo(); @@ -75,9 +84,9 @@ function init() { onMapEnemy: [v] }; enemys.push(curr); - used[v.id] = curr.onMapEnemy; + used[id] = curr.onMapEnemy; } else { - used[v.id].push(v); + used[id].push(v); } }); diff --git a/src/plugin/ui/fixed.ts b/src/plugin/ui/fixed.ts index a3fef8b..f03f819 100644 --- a/src/plugin/ui/fixed.ts +++ b/src/plugin/ui/fixed.ts @@ -31,7 +31,6 @@ export function getDetailedEnemy( const special: [string, string, string][] = enemy.info.special.map(vv => { const s = Mota.require('var', 'enemySpecials')[vv]; const info = { ...enemy.enemy, ...enemy.info }; - console.log(info); return [ fromFunc(s.name, info), diff --git a/src/types/enemy.d.ts b/src/types/enemy.d.ts index 832b1fa..201a1d4 100644 --- a/src/types/enemy.d.ts +++ b/src/types/enemy.d.ts @@ -58,6 +58,11 @@ type Enemy = { */ displayIdInBook: EnemyIds; + /** + * 行走图朝向。在勇士撞上图块时,或图块在移动时,会自动选择最合适的朝向图块(如果存在定义)来进行绘制。 + */ + faceIds: Record; + /** * 战前事件 */