/*****************************************************************************************/ protected override IEnumerator ActionLogic() { if (ThisCard.IsEliminated || (investigatorToSelect?.IsDefeat ?? false)) { yield break; } if (!IsFast) { yield return(new SelectInvestigatorAction(ThisCard.VisualOwner).RunNow()); } if (WithPreview) { yield return(DOTween.Sequence().Append(ThisCard.Preview(timePause: PreviewPause)) .Join(ThisCard.TurnDown(IsBack)).SetId("MoveCard") .AppendCallback(ChangingInvestigatorWithPreviewCard)); } yield return(DOTween.Sequence().Append(ThisCard.MoveTo(Zone, timeAnimation: timeMove)) .Join(ThisCard.TurnDown(ReturnIsBack)) .SetDelay(WithPreview ? GameData.ANIMATION_TIME_DEFAULT * 2 + PreviewPause : 0) .SetId("MoveCard")); DOTween.Kill(ThisCard.transform); if (!IsFast) { yield return(new WaitWhile(() => DOTween.IsTweening("MoveCard"))); } }
IEnumerator PayCostEffect() { ThisCard.MoveFast(ThisCard.CurrentZone); InvestigatorDiscardHand investigatorDiscard = new InvestigatorDiscardHand(ThisCard.Owner, isOptional: true); yield return(investigatorDiscard.RunNow()); newTokenCardEffect.IsCancel = investigatorDiscard.IsCanceled; }
private void Start() { camera = Camera.main; _canvas = GetComponent <Canvas>(); _rectTransform = GetComponent <RectTransform>(); //startScale = _rectTransform.localScale; hand = GameObject.Find("Hand").GetComponent <Hand>(); DiscardPile = GameObject.Find("Discard Pile").GetComponent <DiscardPile>(); _turnManager = GameObject.Find("GameManager").GetComponent <TurnManager>(); _draftCards = DiscardPile.GetComponent <DraftCards>(); _card = GetComponent <ThisCard>(); }