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; + /** * 战前事件 */