예제 #1
0
        public async Task HandleEvent(AfterUnitDown @event)
        {
            var target = @event.Target;

            if (target.PlayerIndex == PlayerIndex && target.Status.CardRow == RowPosition)
            {
                await target.Effect.Damage(3, null);
            }
        }
예제 #2
0
 public async Task HandleEvent(AfterUnitDown @event)
 {
     if (@event.Target.PlayerIndex == PlayerIndex || !Card.IsAliveOnPlance() || [email protected])
     {
         return;
     }
     await Card.Effect.Ambush(async() =>
     {
         await @event.Target.Effect.Damage(7, Card);
     });
 }
예제 #3
0
        public async Task HandleEvent(AfterUnitDown @event)
        {
            if (!Card.Status.CardRow.IsOnPlace() || @event.Target == Card || (@event.Target != _tempCard))
            {
                return;
            }
            if (@event.Target.PlayerIndex == Card.PlayerIndex &&
                @event.Target.Status.Categories.Contains(Categorie.Soldier))
            {
                var cards = await Game.GetSelectPlaceCards(Card, selectMode : SelectModeType.MyRow);

                if (cards.Count == 0)
                {
                    return;
                }
                await cards.Single().Effect.Boost(2, Card);
            }
        }