// 出牌 void PlayCard() { List <CardFighter> temp = new List <CardFighter>(); // 能出场的卡牌全部出场 for (int i = 0; i < waitCard.Count; i++) { CardFighter card = waitCard[i]; if (card.waitRound <= 0) { temp.Add(card); } } foreach (CardFighter card in temp) { waitCard[waitCard.IndexOf(card)] = null; fightCard.Add(card); Actions.Add(CardFightAction.GetAction(ID, card.ID, CardArea.WaitArea)); // 卡牌出场消息 card.OnPresent(); } status = FigtherStatus.attack; }
/// <summary> /// 卡牌复活 /// </summary> public void CardRevive(CardFighter card) { deadCard[deadCard.IndexOf(card)] = null; fightCard.Add(card); Actions.Add(CardFightAction.GetAction(ID, this.ID, CardArea.DeadArea)); // 卡牌出场 card.OnPresent(); }
/// <summary> /// 卡牌出场 /// </summary> public void OnPresent() { Actions.Add(CardFightAction.GetAction(owner.ID, this.ID)); DispatchEvent(BattleEventType.ON_CARD_PRESENT); }