除了充盈都做完了
This commit is contained in:
@@ -17,11 +17,14 @@ namespace Continentis.MainGame.Commands
|
||||
private readonly List<CardInstance> cardsToDiscard;
|
||||
private readonly float interval;
|
||||
private readonly float singleCardAnimationDuration = 0.5f; // 单张卡牌的动画时长
|
||||
|
||||
private readonly bool isInitiative;
|
||||
|
||||
public Cmd_DiscardCards(DeckSubmodule deck, List<CardInstance> cards, float interval)
|
||||
public Cmd_DiscardCards(DeckSubmodule deck, List<CardInstance> cards, bool isInitiative, float interval)
|
||||
{
|
||||
this.deck = deck;
|
||||
this.cardsToDiscard = cards;
|
||||
this.isInitiative = isInitiative;
|
||||
this.interval = interval;
|
||||
}
|
||||
|
||||
@@ -67,9 +70,19 @@ namespace Continentis.MainGame.Commands
|
||||
|
||||
private IObservable<Unit> DiscardCard(CardInstance card)
|
||||
{
|
||||
deck.TransferCard(deck.Pile(card.cardLocation.pileName), deck.DiscardPile, card);
|
||||
card.cardLogic.eventSubmodule.onDiscard.Invoke();
|
||||
if (isInitiative)
|
||||
{
|
||||
if (card.cardLogic.eventSubmodule.onInitiativeDiscard.GetChecks().Any()) // 如果主动弃牌后,有触发条件,则打断弃牌,直接触发效果
|
||||
{
|
||||
CommandQueueManager.Instance.AddCommand(new Cmd_Function(() =>
|
||||
{
|
||||
card.cardLogic.eventSubmodule.onInitiativeDiscard.GetEffects().ForEach(effect => effect.Invoke());
|
||||
}));
|
||||
return Observable.Return(Unit.Default);
|
||||
}
|
||||
}
|
||||
|
||||
deck.TransferCard(deck.Pile(card.cardLocation.pileName), deck.DiscardPile, card);
|
||||
card.handCardView.TransferCardView(CombatUIManager.Instance.combatMainPage.discardPile);
|
||||
|
||||
RectTransform cardTransform = card.handCardView.cardTransform;
|
||||
|
||||
@@ -68,7 +68,7 @@ namespace Continentis.MainGame.Commands
|
||||
private IObservable<Unit> DiscardCard(CardInstance card)
|
||||
{
|
||||
deck.TransferCard(deck.Pile(card.cardLocation.pileName), deck.DrawPile, card);
|
||||
card.cardLogic.eventSubmodule.onDiscard.Invoke();
|
||||
//card.cardLogic.eventSubmodule.onInitiativeDiscard.Invoke();
|
||||
|
||||
card.handCardView.TransferCardView(CombatUIManager.Instance.combatMainPage.drawPile);
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@ namespace Continentis.MainGame.Commands
|
||||
private IObservable<Unit> MoveCardToDrawPile(CardInstance card)
|
||||
{
|
||||
deck.TransferCard(deck.DiscardPile, deck.DrawPile, card);
|
||||
card.cardLogic.eventSubmodule.onDiscard.Invoke();
|
||||
//card.cardLogic.eventSubmodule.onInitiativeDiscard.Invoke();
|
||||
|
||||
card.handCardView.TransferCardView(CombatUIManager.Instance.combatMainPage.drawPile);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user