protected override bool witnessSuccessHandler(EventWitness witness, DeckController deck, GenericAction callback = null) { int playerIndex = witness.getVar <int>("playerIndex"); int cardRID = witness.getVar <int>("cardRID"); int cardDID = witness.getVar <int>("cardDID"); // 随从位置 int position = witness.getVar <int>("position"); var arg = new RetinueSummonEventArgs() { CardDID = cardDID, CardRID = cardRID, PlayerID = playerIndex, Position = position }; deck.RecvEvent(arg, callback); return(true); }
/// <summary> /// 将一个随从放到场上 /// </summary> /// <param name="arg"></param> void servantSummon(RetinueSummonEventArgs arg) { var card = GetCardByRID(arg.CardRID); if (card == null) { card = drawCardInternal(new CardID(arg.CardDID, arg.CardRID)); } if (handCards.Contains(card)) { handCards.Remove(card); } if (!servants.Contains(card)) { servants.Insert(arg.Position, card); } moveCard(card, CardPos.Servant); ReArrangeHandCards(); reArrangeServants(); }