--眼前一片白! local m=33701337 local cm=_G["c"..m] function cm.initial_effect(c) --Activate local e1=Effect.CreateEffect(c) e1:SetDescription(aux.Stringid(m,0)) e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetCode(EVENT_FREE_CHAIN) e1:SetCondition(cm.condition) e1:SetOperation(cm.activate) c:RegisterEffect(e1) local e2=Effect.CreateEffect(c) e2:SetDescription(aux.Stringid(m,1)) e2:SetType(EFFECT_TYPE_QUICK_O) e2:SetCode(EVENT_FREE_CHAIN) e2:SetRange(LOCATION_HAND) e2:SetCondition(cm.condition1) e2:SetCost(cm.cost1) e2:SetOperation(cm.operation1) c:RegisterEffect(e2) if not cm.global_check then cm.global_check=true cm[0]=0 cm[1]=0 cm[2]=0 cm[3]=0 local ge1=Effect.CreateEffect(c) ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) ge1:SetCode(EVENT_DESTROY) ge1:SetOperation(cm.checkop) Duel.RegisterEffect(ge1,0) local ge2=ge1:Clone() ge2:SetOperation(cm.checkop1) Duel.RegisterEffect(ge2,0) local ge3=Effect.CreateEffect(c) ge3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) ge3:SetCode(EVENT_PHASE_START+PHASE_DRAW) ge3:SetOperation(cm.clear) Duel.RegisterEffect(ge3,0) end end function cm.condition(e,tp,eg,ep,ev,re,r,rp) return cm[tp]>=6 end function cm.activate(e,tp,eg,ep,ev,re,r,rp) Duel.SkipPhase(1-tp,PHASE_STANDBY,RESET_PHASE+PHASE_END,1) Duel.SkipPhase(1-tp,PHASE_MAIN1,RESET_PHASE+PHASE_END,1) Duel.SkipPhase(1-tp,PHASE_BATTLE,RESET_PHASE+PHASE_END,1,1) Duel.SkipPhase(1-tp,PHASE_MAIN2,RESET_PHASE+PHASE_END,1) Duel.SetLP(tp,math.ceil(Duel.GetLP(tp)/2)) end function cm.condition1(e,tp,eg,ep,ev,re,r,rp) return cm[tp+2]>=5 and Duel.GetFieldGroupCount(tp,LOCATION_ONFIELD,0) end function cm.cost1(e,tp,eg,ep,ev,re,r,rp,chk) if chk==0 then return e:GetHandler():IsDiscardable() end Duel.SendtoGrave(e:GetHandler(),REASON_COST+REASON_DISCARD) end function cm.operation1(e,tp,eg,ep,ev,re,r,rp) if Duel.GetTurnPlayer()==tp then Duel.SkipPhase(tp,PHASE_DRAW,RESET_PHASE+PHASE_END,1) Duel.SkipPhase(tp,PHASE_STANDBY,RESET_PHASE+PHASE_END,1) Duel.SkipPhase(tp,PHASE_MAIN1,RESET_PHASE+PHASE_END,1) Duel.SkipPhase(tp,PHASE_BATTLE,RESET_PHASE+PHASE_END,1,1) Duel.SkipPhase(tp,PHASE_MAIN2,RESET_PHASE+PHASE_END,1) Duel.SkipPhase(tp,PHASE_END,RESET_PHASE+PHASE_END,1) local e1=Effect.CreateEffect(c) e1:SetType(EFFECT_TYPE_FIELD) e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e1:SetCode(EFFECT_SKIP_TURN) e1:SetTargetRange(0,1) e1:SetReset(RESET_PHASE+PHASE_END+RESET_OPPO_TURN) Duel.RegisterEffect(e1,tp) Duel.SkipPhase(tp,PHASE_DRAW,RESET_PHASE+PHASE_END,2) else Duel.SkipPhase(1-tp,PHASE_DRAW,RESET_PHASE+PHASE_END,1) Duel.SkipPhase(1-tp,PHASE_STANDBY,RESET_PHASE+PHASE_END,1) Duel.SkipPhase(1-tp,PHASE_MAIN1,RESET_PHASE+PHASE_END,1) Duel.SkipPhase(1-tp,PHASE_BATTLE,RESET_PHASE+PHASE_END,1,1) Duel.SkipPhase(1-tp,PHASE_MAIN2,RESET_PHASE+PHASE_END,1) Duel.SkipPhase(1-tp,PHASE_END,RESET_PHASE+PHASE_END,1) Duel.SkipPhase(tp,PHASE_DRAW,RESET_PHASE+PHASE_END,1) end local e1=Effect.CreateEffect(c) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e1:SetCode(EVENT_PHASE_START+PHASE_DRAW) e1:SetCountLimit(1) e1:SetOperation(cm.op) e1:SetReset(EVENT_PHASE+PHASE_DRAW) Duel.RegisterEffect(e1,tp) Duel.SetLP(tp,math.ceil(Duel.GetLP(tp)/2)) end function cm.op(e,tp,eg,ep,ev,re,r,rp) local e2=Effect.CreateEffect(c) e2:SetType(EFFECT_TYPE_FIELD) e2:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e2:SetCode(EFFECT_CANNOT_EP) e2:SetTargetRange(1,0) e2:SetReset(RESET_PHASE+PHASE_DRAW+RESET_SELF_TURN) Duel.RegisterEffect(e2,tp) end function cm.checkop(e,tp,eg,ep,ev,re,r,rp) local tc=eg:GetFirst() while tc do if tc:IsPreviousLocation(LOCATION_MZONE) then cm[tc:GetPreviousControler()]=cm[tc:GetPreviousControler()]+1 end tc=eg:GetNext() end end function cm.checkop1(e,tp,eg,ep,ev,re,r,rp) local tc=eg:GetFirst() while tc do if tc:IsPreviousLocation(LOCATION_ONFIELD) then cm[tc:GetPreviousControler()+2]=cm[tc:GetPreviousControler()+2]+1 end tc=eg:GetNext() end end function cm.clear(e,tp,eg,ep,ev,re,r,rp) cm[0]=0 cm[1]=0 cm[2]=0 cm[3]=0 end