示例#1
0
        IEnumerator Grabbing()
        {
            while (effectTarget.GetIntChoice("Grab") == -1)
            {
                yield return(new WaitForEndOfFrame());
            }

            SC_GrabCard.canGrab = null;

            for (int i = 0; i < Mathf.Max(CurrentEffect.effectValue, 1); i++)
            {
                SC_CardZone zone = effectTarget.GetIntChoice("Grab" + i) == 0 ? effectTarget.Deck : ((effectTarget.GetIntChoice("Grab" + i) == 1 ? effectTarget.Graveyard : (effectTarget == Caller ? Receiver : Caller).Graveyard) as SC_CardZone);

                SC_BaseCard grabbed = zone.GetCards().Find((c) => { return(c.Path == effectTarget.GetStringChoice("Grab" + i)); });

                yield return(StartCoroutine(zone.Grab(effectTarget.IsLocalPlayer, grabbed)));
            }

            ApplyingEffects = false;
        }