public override void ConfirmSelectAttackAction(int attackNodeId, int actionNumber, int subActionNumber) { SelectedAttackNode = GameGraph.Nodes[attackNodeId]; SelectedMovementPath = null; _actionNumber = actionNumber; _subActionNumber = subActionNumber; Monster opponent = EnemyMonsters.FirstOrDefault(monster => monster.CurrentNode.Equals(SelectedAttackNode)) ?? FriendlyMonsters.FirstOrDefault(monster => monster.CurrentNode.Equals(SelectedAttackNode)); ProcessAttackAction(SelectedMonster, opponent); }
void OnPreviewEnter(int nodeId) { if (_actionNumber == 1 || _actionNumber == 2) { PreviewMonster = EnemyMonsters.FirstOrDefault(m => m.CurrentNode.Id == nodeId) ?? FriendlyMonsters.FirstOrDefault(m => m.CurrentNode.Id == nodeId); UpdatePreviewMenu(); if (SelectedMonster != null && EnemyMonsters.Any(m => m.CurrentNode.Id == nodeId)) { UpdateAttackResultPreview(); } else if (SelectedMonster != null && FriendlyMonsters.Any(m => m.CurrentNode.Id == nodeId)) { ClearAttackResultPreview(); } } }