示例#1
0
    public void Operation(IDuel duel, Card card, LauchEffect effect, Group group = null)
    {
        Group      g = duel.GetIncludeNameCardFromArea("", true, card.controller, 0, ComVal.Area_Field);
        normalDele d = delegate
        {
            duel.AddFinishHandle();
            duel.DiscardFromDeck(3, card, effect, card.controller);
        };

        GetMes d1 = delegate(bool val)
        {
            if (val)
            {
                GroupCardSelectBack d2 = delegate(Group target)
                {
                    duel.AddDelegate(d, true);
                    duel.SendToGraveyard(ComVal.Area_Field, target, card, ComVal.reason_EffectDestroy, effect);
                };
                duel.SelectCardFromGroup(g, d2, 1, card.controller);
            }
            else
            {
                d();
            }
        };

        if (g.GroupNum > 0)
        {
            duel.ShowDialogBox(card, d1, card.controller.isMy);
        }
        else
        {
            d();
        }
    }
示例#2
0
    public void Operation(IDuel duel, Card card, LauchEffect effect, Group group = null)
    {
        normalDele d = delegate
        {
            duel.AddFinishHandle();
            duel.DiscardFromDeck(2, card, effect, card.controller);
        };

        duel.AddDelegate(d, true);
        duel.DrawCard(card.controller, 2, card, effect);
    }
示例#3
0
    public void Operation(IDuel duel, Card card, LauchEffect effect, Group group = null)
    {
        Group      g  = new Group();
        normalDele d1 = delegate
        {
            duel.AddFinishHandle();
            g = g.GetFitlerGroup(cardFiter);
            duel.DrawCard(card.controller, g.GroupNum, card, effect);
        };

        duel.AddDelegate(d1, true);
        g = duel.DiscardFromDeck(3, card, effect, card.controller);
    }
示例#4
0
    private void Operation1(IDuel duel, Card card, LauchEffect effect, Group target = null)
    {
        normalDele d = delegate
        {
            duel.AddFinishHandle();
            duel.DiscardFromDeck(3, card, effect, card.controller);
        };

        GroupCardSelectBack callBack = delegate(Group val)
        {
            duel.AddDelegate(d, true);
            duel.SendToGraveyard(ComVal.Area_Monster, val, card, ComVal.reason_EffectDestroy, effect);
        };

        Group g = duel.GetIncludeNameCardFromArea("", false, duel.GetOpsitePlayer(card.controller), ComVal.cardType_Monster, ComVal.Area_Monster);

        duel.SelectCardFromGroup(g, callBack, 1, card.controller);
    }
示例#5
0
    private void Operation1(IDuel duel, Card card, LauchEffect effect, Group target = null)
    {
        Group      g  = new Group();
        normalDele d1 = delegate
        {
            GetMes d2 = delegate(bool val)
            {
                if (val)
                {
                    GroupCardSelectBack gCallBack = delegate(Group g2)
                    {
                        duel.AddFinishHandle();
                        duel.SendToGraveyard(ComVal.Area_Field, g2, card, ComVal.reason_EffectDestroy, effect);
                    };

                    Group selectGroup = duel.GetIncludeNameCardFromArea("", true, card.controller, 0, ComVal.Area_Field);
                    duel.SelectCardFromGroup(selectGroup, gCallBack, g.GroupNum, card.controller, false);
                }
                else
                {
                    duel.FinishHandle();
                }
            };

            g = g.GetFitlerGroup(cardFiter);
            if (g.GroupNum > 0)
            {
                duel.ShowDialogBox(card, d2, card.controller.isMy);
            }
            else
            {
                duel.FinishHandle();
            }
        };

        duel.AddDelegate(d1, true);
        g = duel.DiscardFromDeck(3, card, effect, card.controller);
    }
示例#6
0
    public void Operation(IDuel duel, Card card, LauchEffect effect, Group group = null)
    {
        Group      g = new Group();
        normalDele d = delegate
        {
            g = g.GetFitlerGroup(fiter);
            if (g.GroupNum > 0)
            {
                StateEffect e1 = new StateEffect();
                e1.SetRangeArea(ComVal.Area_Monster);
                e1.SetCategory(ComVal.category_stateEffect | ComVal.category_limitTime);
                e1.SetCardEffectType(ComVal.cardEffectType_Single | ComVal.cardEffectType_normalStateEffect);
                e1.SetStateEffectType(ComVal.stateEffectType_addAfkVal);
                e1.SetTarget(card);
                e1.SetStateEffectVal(200);
                e1.SetResetCode(ComVal.resetEvent_LeaveEndPhase, 1);
                duel.ResignEffect(e1, card, card.controller);
            }
            duel.FinishHandle();
        };

        duel.AddDelegate(d, true);
        g = duel.DiscardFromDeck(2, card, effect, card.controller);
    }
示例#7
0
 private void Operation2(IDuel duel, Card card, LauchEffect effect, Group target = null)
 {
     duel.AddFinishHandle();
     duel.DiscardFromDeck(3, card, effect, card.controller);
 }
示例#8
0
 private void Cost(IDuel duel, Card card, LauchEffect effect)
 {
     duel.AddFinishHandle();
     duel.DiscardFromDeck(3, card, effect, card.controller);
 }