Commit 7aa98dd5 authored by POLYMER's avatar POLYMER

fix

parent 46e9ee66
...@@ -5539,7 +5539,6 @@ ...@@ -5539,7 +5539,6 @@
12812005 0 12812005 0
30000320 0 30000320 0
40009280 0 40009280 0
67670308 0
82207012 0 82207012 0
11591111 0 11591111 0
79250000 0 79250000 0
......
No preview for this file type
...@@ -67,13 +67,12 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -67,13 +67,12 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
Duel.RegisterEffect(e1,tp) Duel.RegisterEffect(e1,tp)
local eid=e1:GetFieldID() local eid=e1:GetFieldID()
e1:SetLabel(eid) e1:SetLabel(eid)
local ce=nil
local eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451961)} local eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451961)}
DEFECT_ORAL_COUNT=DEFECT_ORAL_COUNT or 3 DEFECT_ORAL_COUNT=DEFECT_ORAL_COUNT or 3
if #eset==DEFECT_ORAL_COUNT then if #eset==DEFECT_ORAL_COUNT then
local de=eset[1] local de=eset[1]
local ce=de:GetLabelObject() local ce=de:GetLabelObject()
if ce then if ce and aux.GetValueType(ce)=="Effect" then
local tc=ce:GetHandler() local tc=ce:GetHandler()
local eset2={tc:IsHasEffect(EFFECT_FLAG_EFFECT+11451961)} local eset2={tc:IsHasEffect(EFFECT_FLAG_EFFECT+11451961)}
local res=false local res=false
...@@ -94,7 +93,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -94,7 +93,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
te2:SetDescription(te:GetDescription()-16) te2:SetDescription(te:GetDescription()-16)
Duel.RegisterEffect(te2,tp) Duel.RegisterEffect(te2,tp)
local ce=te:GetLabelObject() local ce=te:GetLabelObject()
if ce then if ce and aux.GetValueType(ce)=="Effect" then
local tc=ce:GetHandler() local tc=ce:GetHandler()
local ce2=ce:Clone() local ce2=ce:Clone()
ce2:SetDescription(ce:GetDescription()-16) ce2:SetDescription(ce:GetDescription()-16)
...@@ -105,6 +104,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -105,6 +104,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
te:Reset() te:Reset()
end end
end end
local ce=nil
eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451961)} eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451961)}
if c:GetFlagEffect(11451962)>0 or (c:IsFaceup() and c:IsLocation(LOCATION_ONFIELD+LOCATION_GRAVE+LOCATION_REMOVED) and not e:IsHasType(EFFECT_TYPE_ACTIVATE)) then if c:GetFlagEffect(11451962)>0 or (c:IsFaceup() and c:IsLocation(LOCATION_ONFIELD+LOCATION_GRAVE+LOCATION_REMOVED) and not e:IsHasType(EFFECT_TYPE_ACTIVATE)) then
--Duel.HintSelection(Group.FromCards(c)) --Duel.HintSelection(Group.FromCards(c))
...@@ -126,7 +126,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -126,7 +126,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
de:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CLIENT_HINT) de:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CLIENT_HINT)
de:SetTargetRange(1,0) de:SetTargetRange(1,0)
Duel.RegisterEffect(de,tp) Duel.RegisterEffect(de,tp)
if ce then de:SetLabelObject(ce) end if ce and aux.GetValueType(ce)=="Effect" then de:SetLabelObject(ce) end
end end
function cm.recon(e,tp,eg,ep,ev,re,r,rp) function cm.recon(e,tp,eg,ep,ev,re,r,rp)
return re:IsHasType(EFFECT_TYPE_ACTIVATE) return re:IsHasType(EFFECT_TYPE_ACTIVATE)
...@@ -165,7 +165,7 @@ function cm.drop(e,tp,eg,ep,ev,re,r,rp) ...@@ -165,7 +165,7 @@ function cm.drop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) and Duel.SSet(tp,c)>0 and c:IsLocation(LOCATION_SZONE) then if c:IsRelateToEffect(e) and Duel.SSet(tp,c)>0 and c:IsLocation(LOCATION_SZONE) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectMatchingCard(tp,cm.cclfilter,tp,LOCATION_ONFIELD,0,1,1,nil,e:GetHandler()) local g=Duel.SelectMatchingCard(tp,cm.cclfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,nil,e:GetHandler())
if not g or #g==0 then return end if not g or #g==0 then return end
Duel.Destroy(g,REASON_EFFECT) Duel.Destroy(g,REASON_EFFECT)
end end
......
...@@ -64,13 +64,12 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -64,13 +64,12 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
Duel.RegisterEffect(e1,tp) Duel.RegisterEffect(e1,tp)
local eid=e1:GetFieldID() local eid=e1:GetFieldID()
e1:SetLabel(eid) e1:SetLabel(eid)
local ce=nil
local eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451961)} local eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451961)}
DEFECT_ORAL_COUNT=DEFECT_ORAL_COUNT or 3 DEFECT_ORAL_COUNT=DEFECT_ORAL_COUNT or 3
if #eset==DEFECT_ORAL_COUNT then if #eset==DEFECT_ORAL_COUNT then
local de=eset[1] local de=eset[1]
local ce=de:GetLabelObject() local ce=de:GetLabelObject()
if ce then if ce and aux.GetValueType(ce)=="Effect" then
local tc=ce:GetHandler() local tc=ce:GetHandler()
local eset2={tc:IsHasEffect(EFFECT_FLAG_EFFECT+11451961)} local eset2={tc:IsHasEffect(EFFECT_FLAG_EFFECT+11451961)}
local res=false local res=false
...@@ -91,7 +90,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -91,7 +90,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
te2:SetDescription(te:GetDescription()-16) te2:SetDescription(te:GetDescription()-16)
Duel.RegisterEffect(te2,tp) Duel.RegisterEffect(te2,tp)
local ce=te:GetLabelObject() local ce=te:GetLabelObject()
if ce then if ce and aux.GetValueType(ce)=="Effect" then
local tc=ce:GetHandler() local tc=ce:GetHandler()
local ce2=ce:Clone() local ce2=ce:Clone()
ce2:SetDescription(ce:GetDescription()-16) ce2:SetDescription(ce:GetDescription()-16)
...@@ -102,6 +101,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -102,6 +101,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
te:Reset() te:Reset()
end end
end end
local ce=nil
eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451961)} eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451961)}
if c:GetFlagEffect(11451962)>0 or (c:IsFaceup() and c:IsLocation(LOCATION_ONFIELD+LOCATION_GRAVE+LOCATION_REMOVED) and not e:IsHasType(EFFECT_TYPE_ACTIVATE)) then if c:GetFlagEffect(11451962)>0 or (c:IsFaceup() and c:IsLocation(LOCATION_ONFIELD+LOCATION_GRAVE+LOCATION_REMOVED) and not e:IsHasType(EFFECT_TYPE_ACTIVATE)) then
ce=c:RegisterFlagEffect(11451961,RESET_EVENT+RESET_TODECK+RESET_TOHAND+RESET_TURN_SET+RESET_OVERLAY,EFFECT_FLAG_CLIENT_HINT,1,eid,aux.Stringid(11451961+#eset,1)) ce=c:RegisterFlagEffect(11451961,RESET_EVENT+RESET_TODECK+RESET_TOHAND+RESET_TURN_SET+RESET_OVERLAY,EFFECT_FLAG_CLIENT_HINT,1,eid,aux.Stringid(11451961+#eset,1))
...@@ -114,7 +114,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -114,7 +114,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
de:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CLIENT_HINT) de:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CLIENT_HINT)
de:SetTargetRange(1,0) de:SetTargetRange(1,0)
Duel.RegisterEffect(de,tp) Duel.RegisterEffect(de,tp)
if ce then de:SetLabelObject(ce) end if ce and aux.GetValueType(ce)=="Effect" then de:SetLabelObject(ce) end
end end
function cm.recon(e,tp,eg,ep,ev,re,r,rp) function cm.recon(e,tp,eg,ep,ev,re,r,rp)
return re:IsHasType(EFFECT_TYPE_ACTIVATE) return re:IsHasType(EFFECT_TYPE_ACTIVATE)
......
...@@ -82,13 +82,12 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -82,13 +82,12 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
local e3=e1:Clone() local e3=e1:Clone()
e3:SetCode(EFFECT_QP_ACT_IN_SET_TURN) e3:SetCode(EFFECT_QP_ACT_IN_SET_TURN)
Duel.RegisterEffect(e3,tp) Duel.RegisterEffect(e3,tp)
local ce=nil
local eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451961)} local eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451961)}
DEFECT_ORAL_COUNT=DEFECT_ORAL_COUNT or 3 DEFECT_ORAL_COUNT=DEFECT_ORAL_COUNT or 3
if #eset==DEFECT_ORAL_COUNT then if #eset==DEFECT_ORAL_COUNT then
local de=eset[1] local de=eset[1]
local ce=de:GetLabelObject() local ce=de:GetLabelObject()
if ce then if ce and aux.GetValueType(ce)=="Effect" then
local tc=ce:GetHandler() local tc=ce:GetHandler()
local eset2={tc:IsHasEffect(EFFECT_FLAG_EFFECT+11451961)} local eset2={tc:IsHasEffect(EFFECT_FLAG_EFFECT+11451961)}
local res=false local res=false
...@@ -109,7 +108,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -109,7 +108,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
te2:SetDescription(te:GetDescription()-16) te2:SetDescription(te:GetDescription()-16)
Duel.RegisterEffect(te2,tp) Duel.RegisterEffect(te2,tp)
local ce=te:GetLabelObject() local ce=te:GetLabelObject()
if ce then if ce and aux.GetValueType(ce)=="Effect" then
local tc=ce:GetHandler() local tc=ce:GetHandler()
local ce2=ce:Clone() local ce2=ce:Clone()
ce2:SetDescription(ce:GetDescription()-16) ce2:SetDescription(ce:GetDescription()-16)
...@@ -120,6 +119,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -120,6 +119,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
te:Reset() te:Reset()
end end
end end
local ce=nil
eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451961)} eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451961)}
if c:GetFlagEffect(11451962)>0 or (c:IsFaceup() and c:IsLocation(LOCATION_ONFIELD+LOCATION_GRAVE+LOCATION_REMOVED) and not e:IsHasType(EFFECT_TYPE_ACTIVATE)) then if c:GetFlagEffect(11451962)>0 or (c:IsFaceup() and c:IsLocation(LOCATION_ONFIELD+LOCATION_GRAVE+LOCATION_REMOVED) and not e:IsHasType(EFFECT_TYPE_ACTIVATE)) then
ce=c:RegisterFlagEffect(11451961,RESET_EVENT+RESET_TODECK+RESET_TOHAND+RESET_TURN_SET+RESET_OVERLAY,EFFECT_FLAG_CLIENT_HINT,1,eid,aux.Stringid(11451961+#eset,1)) ce=c:RegisterFlagEffect(11451961,RESET_EVENT+RESET_TODECK+RESET_TOHAND+RESET_TURN_SET+RESET_OVERLAY,EFFECT_FLAG_CLIENT_HINT,1,eid,aux.Stringid(11451961+#eset,1))
...@@ -132,7 +132,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -132,7 +132,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
de:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CLIENT_HINT) de:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CLIENT_HINT)
de:SetTargetRange(1,0) de:SetTargetRange(1,0)
Duel.RegisterEffect(de,tp) Duel.RegisterEffect(de,tp)
if ce then de:SetLabelObject(ce) end if ce and aux.GetValueType(ce)=="Effect" then de:SetLabelObject(ce) end
end end
function cm.drtg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.drtg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -72,13 +72,12 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -72,13 +72,12 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
local eid=e1:GetFieldID() local eid=e1:GetFieldID()
e1:SetLabel(eid) e1:SetLabel(eid)
cm[e1]={} cm[e1]={}
local ce=nil
local eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451961)} local eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451961)}
DEFECT_ORAL_COUNT=DEFECT_ORAL_COUNT or 3 DEFECT_ORAL_COUNT=DEFECT_ORAL_COUNT or 3
if #eset==DEFECT_ORAL_COUNT then if #eset==DEFECT_ORAL_COUNT then
local de=eset[1] local de=eset[1]
local ce=de:GetLabelObject() local ce=de:GetLabelObject()
if ce then if ce and aux.GetValueType(ce)=="Effect" then
local tc=ce:GetHandler() local tc=ce:GetHandler()
local eset2={tc:IsHasEffect(EFFECT_FLAG_EFFECT+11451961)} local eset2={tc:IsHasEffect(EFFECT_FLAG_EFFECT+11451961)}
local res=false local res=false
...@@ -99,7 +98,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -99,7 +98,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
te2:SetDescription(te:GetDescription()-16) te2:SetDescription(te:GetDescription()-16)
Duel.RegisterEffect(te2,tp) Duel.RegisterEffect(te2,tp)
local ce=te:GetLabelObject() local ce=te:GetLabelObject()
if ce then if ce and aux.GetValueType(ce)=="Effect" then
local tc=ce:GetHandler() local tc=ce:GetHandler()
local ce2=ce:Clone() local ce2=ce:Clone()
ce2:SetDescription(ce:GetDescription()-16) ce2:SetDescription(ce:GetDescription()-16)
...@@ -110,6 +109,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -110,6 +109,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
te:Reset() te:Reset()
end end
end end
local ce=nil
eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451961)} eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451961)}
if c:GetFlagEffect(11451962)>0 or (c:IsFaceup() and c:IsLocation(LOCATION_ONFIELD+LOCATION_GRAVE+LOCATION_REMOVED) and not e:IsHasType(EFFECT_TYPE_ACTIVATE)) then if c:GetFlagEffect(11451962)>0 or (c:IsFaceup() and c:IsLocation(LOCATION_ONFIELD+LOCATION_GRAVE+LOCATION_REMOVED) and not e:IsHasType(EFFECT_TYPE_ACTIVATE)) then
ce=c:RegisterFlagEffect(11451961,RESET_EVENT+RESET_TODECK+RESET_TOHAND+RESET_TURN_SET+RESET_OVERLAY,EFFECT_FLAG_CLIENT_HINT,1,eid,aux.Stringid(11451961+#eset,1)) ce=c:RegisterFlagEffect(11451961,RESET_EVENT+RESET_TODECK+RESET_TOHAND+RESET_TURN_SET+RESET_OVERLAY,EFFECT_FLAG_CLIENT_HINT,1,eid,aux.Stringid(11451961+#eset,1))
...@@ -122,7 +122,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -122,7 +122,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
de:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CLIENT_HINT) de:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CLIENT_HINT)
de:SetTargetRange(1,0) de:SetTargetRange(1,0)
Duel.RegisterEffect(de,tp) Duel.RegisterEffect(de,tp)
if ce then de:SetLabelObject(ce) end if ce and aux.GetValueType(ce)=="Effect" then de:SetLabelObject(ce) end
end end
function cm.actarget2(e,te,tp) function cm.actarget2(e,te,tp)
local tc=te:GetHandler() local tc=te:GetHandler()
......
...@@ -37,7 +37,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -37,7 +37,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
local op=1+Duel.SelectOption(tp,table.unpack(tab)) local op=1+Duel.SelectOption(tp,table.unpack(tab))
local de=eset[op] local de=eset[op]
local ce=de:GetLabelObject() local ce=de:GetLabelObject()
if ce then if ce and aux.GetValueType(ce)=="Effect" then
local tc=ce:GetHandler() local tc=ce:GetHandler()
local eset2={tc:IsHasEffect(EFFECT_FLAG_EFFECT+11451961)} local eset2={tc:IsHasEffect(EFFECT_FLAG_EFFECT+11451961)}
local res=false local res=false
...@@ -59,7 +59,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -59,7 +59,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
te2:SetDescription(te:GetDescription()-16) te2:SetDescription(te:GetDescription()-16)
Duel.RegisterEffect(te2,tp) Duel.RegisterEffect(te2,tp)
local ce=te:GetLabelObject() local ce=te:GetLabelObject()
if ce then if ce and aux.GetValueType(ce)=="Effect" then
local tc=ce:GetHandler() local tc=ce:GetHandler()
local ce2=ce:Clone() local ce2=ce:Clone()
ce2:SetDescription(ce:GetDescription()-16) ce2:SetDescription(ce:GetDescription()-16)
......
...@@ -63,21 +63,35 @@ function c189127.xdisfil(c,sc) ...@@ -63,21 +63,35 @@ function c189127.xdisfil(c,sc)
local seq=c:GetSequence() local seq=c:GetSequence()
return seq<5 and math.abs(seq-xseq)==1 return seq<5 and math.abs(seq-xseq)==1
end end
function c189127.sfilter(c,p,seq,loc)
local sseq=c:GetSequence()
if c:IsControler(1-p) then
return loc==LOCATION_MZONE and c:IsLocation(LOCATION_MZONE)
and (sseq==5 and seq==3 or sseq==6 and seq==1)
end
if c:IsLocation(LOCATION_SZONE) then
return sseq<5 and (sseq==seq or loc==LOCATION_SZONE and math.abs(sseq-seq)==1)
end
if sseq<5 then
return sseq==seq or loc==LOCATION_MZONE and math.abs(sseq-seq)==1
else
return loc==LOCATION_MZONE and (sseq==5 and seq==1 or sseq==6 and seq==3)
end
end
function c189127.distg(e,tp,eg,ep,ev,re,r,rp,chk) function c189127.distg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
local c=e:GetHandler() local c=e:GetHandler()
local g1=c:GetColumnGroup():Filter(Card.IsControler,nil,tp) local g=Duel.GetMatchingGroup(c189127.sfilter,0,LOCATION_ONFIELD,LOCATION_ONFIELD,nil,c:GetControler(),c:GetSequence(),c:GetLocation())
local g2=Duel.GetMatchingGroup(c189127.xdisfil,tp,LOCATION_MZONE,0,nil,c) g:AddCard(c)
g1:Merge(g2) g=g:Filter(aux.NegateAnyFilter,nil)
local g=g1:Filter(aux.NegateAnyFilter,nil)
Duel.SetOperationInfo(0,CATEGORY_DISABLE,g,g:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_DISABLE,g,g:GetCount(),0,0)
end end
function c189127.disop(e,tp,eg,ep,ev,re,r,rp) function c189127.disop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local g1=c:GetColumnGroup():Filter(Card.IsControler,nil,tp) if not c:IsRelateToEffect(e) then return end
local g2=Duel.GetMatchingGroup(c189127.xdisfil,tp,LOCATION_MZONE,0,nil,c) local g=Duel.GetMatchingGroup(c189127.sfilter,0,LOCATION_ONFIELD,LOCATION_ONFIELD,nil,c:GetControler(),c:GetSequence(),c:GetLocation())
g1:Merge(g2) g:AddCard(c)
local g=g1:Filter(aux.NegateAnyFilter,nil) g=g:Filter(aux.NegateAnyFilter,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
local tc=g:GetFirst() local tc=g:GetFirst()
while tc do while tc do
......
--重兵装型女子高中生・壱
function c67670301.initial_effect(c)
--cannot be material
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_CANNOT_BE_LINK_MATERIAL)
e1:SetValue(c67670301.limit)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_CANNOT_BE_SYNCHRO_MATERIAL)
c:RegisterEffect(e2)
local e3=e2:Clone()
e3:SetCode(EFFECT_CANNOT_BE_FUSION_MATERIAL)
c:RegisterEffect(e3)
local e4=e3:Clone()
e4:SetCode(EFFECT_CANNOT_BE_XYZ_MATERIAL)
c:RegisterEffect(e4)
--cannot release
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_SINGLE)
e5:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e5:SetRange(LOCATION_MZONE)
e5:SetCode(EFFECT_UNRELEASABLE_SUM)
e5:SetValue(1)
c:RegisterEffect(e5)
local e6=e5:Clone()
e6:SetCode(EFFECT_UNRELEASABLE_NONSUM)
c:RegisterEffect(e6)
--spsummon
local e7=Effect.CreateEffect(c)
e7:SetDescription(aux.Stringid(67670301,0))
e7:SetCategory(CATEGORY_SPECIAL_SUMMON)
e7:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e7:SetCode(EVENT_SUMMON_SUCCESS)
e7:SetProperty(EFFECT_FLAG_DELAY)
e7:SetCountLimit(1,67670301*1)
e7:SetTarget(c67670301.sptg)
e7:SetOperation(c67670301.spop)
c:RegisterEffect(e7)
local e8=e7:Clone()
e8:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e8)
--immune
local e9=Effect.CreateEffect(c)
e9:SetDescription(aux.Stringid(67670301,1))
e9:SetType(EFFECT_TYPE_QUICK_O)
e9:SetCode(EVENT_FREE_CHAIN)
e9:SetProperty(EFFECT_FLAG_CARD_TARGET)
e9:SetRange(LOCATION_GRAVE)
e9:SetCountLimit(1,67670301*2)
e9:SetCost(c67670301.imcost)
e9:SetTarget(c67670301.imtg)
e9:SetOperation(c67670301.imop)
c:RegisterEffect(e9)
end
function c67670301.limit(e,c,sumtype)
if not c then return false end
return not c:IsSetCard(0x1b7)
end
--spsummon
function c67670301.spfilter(c,e,tp)
return c:IsSetCard(0x1b7) and not c:IsCode(67670301) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c67670301.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(c67670301.spfilter,tp,LOCATION_DECK,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK)
end
function c67670301.spop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c67670301.spfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp)
if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
end
--immune
function c67670301.costfilter(c)
return c:IsSetCard(0x1b7) and c:IsAbleToRemoveAsCost()
end
function c67670301.imcost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
local g=Duel.GetMatchingGroup(c67670301.costfilter,tp,LOCATION_GRAVE,0,c)
if chk==0 then return c:IsAbleToRemoveAsCost() and #g>0 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local sg=g:Select(tp,1,1,nil)
sg:AddCard(c)
Duel.Remove(sg,POS_FACEUP,REASON_COST)
end
function c67670301.imfilter(c,e,tp)
return c:IsLocation(LOCATION_MZONE) and c:IsFaceup() and c:IsSetCard(0x1b7)
end
function c67670301.imtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local tp=e:GetHandler():GetControler()
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and chkc:IsFaceup() end
if chk==0 then return Duel.IsExistingTarget(c67670301.imfilter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
Duel.SelectTarget(tp,c67670301.imfilter,tp,LOCATION_MZONE,0,1,1,nil)
end
function c67670301.imop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsFaceup() and tc:IsControler(tp) and tc:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_IMMUNE_EFFECT)
e1:SetValue(c67670301.efilter)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
e1:SetOwnerPlayer(tp)
tc:RegisterEffect(e1)
end
end
function c67670301.efilter(e,re)
return e:GetOwnerPlayer()~=re:GetOwnerPlayer()
end
--重兵装型女子高中生・弐
function c67670302.initial_effect(c)
--cannot be material
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_CANNOT_BE_LINK_MATERIAL)
e1:SetValue(c67670302.limit)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_CANNOT_BE_SYNCHRO_MATERIAL)
c:RegisterEffect(e2)
local e3=e2:Clone()
e3:SetCode(EFFECT_CANNOT_BE_FUSION_MATERIAL)
c:RegisterEffect(e3)
local e4=e3:Clone()
e4:SetCode(EFFECT_CANNOT_BE_XYZ_MATERIAL)
c:RegisterEffect(e4)
--cannot release
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_SINGLE)
e5:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e5:SetRange(LOCATION_MZONE)
e5:SetCode(EFFECT_UNRELEASABLE_SUM)
e5:SetValue(1)
c:RegisterEffect(e5)
local e6=e5:Clone()
e6:SetCode(EFFECT_UNRELEASABLE_NONSUM)
c:RegisterEffect(e6)
--search
local e7=Effect.CreateEffect(c)
e7:SetDescription(aux.Stringid(67670302,0))
e7:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e7:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e7:SetCode(EVENT_SUMMON_SUCCESS)
e7:SetProperty(EFFECT_FLAG_DELAY)
e7:SetCountLimit(1,67670302*1)
e7:SetTarget(c67670302.shtg)
e7:SetOperation(c67670302.shop)
c:RegisterEffect(e7)
local e8=e7:Clone()
e8:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e8)
--atk up
local e9=Effect.CreateEffect(c)
e9:SetDescription(aux.Stringid(67670302,1))
e9:SetType(EFFECT_TYPE_QUICK_O)
e9:SetCode(EVENT_FREE_CHAIN)
e9:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP)
e9:SetRange(LOCATION_GRAVE)
e9:SetCountLimit(1,67670302*2)
e9:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_END_PHASE)
e9:SetCost(c67670302.cost)
e9:SetTarget(c67670302.target)
e9:SetOperation(c67670302.operation)
c:RegisterEffect(e9)
end
function c67670302.limit(e,c,sumtype)
if not c then return false end
return not c:IsSetCard(0x1b7)
end
--search
function c67670302.filter1(c)
return c:IsSetCard(0x1b7) and not c:IsCode(67670302) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand()
end
function c67670302.shtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c67670302.filter1,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end
function c67670302.shop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c67670302.filter1,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
end
--atk up
function c67670302.costfilter(c)
return c:IsSetCard(0x1b7) and c:IsAbleToRemoveAsCost()
end
function c67670302.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local tp=e:GetHandlerPlayer()
local c=e:GetHandler()
local g=Duel.GetMatchingGroup(c67670302.costfilter,tp,LOCATION_GRAVE,0,c)
if chk==0 then return c:IsAbleToRemoveAsCost() and #g>0 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local sg=g:Select(tp,1,1,nil)
sg:AddCard(c)
Duel.Remove(sg,POS_FACEUP,REASON_COST)
end
function c67670302.filter2(c)
return c:IsFaceup() and c:IsSetCard(0x1b7)
end
function c67670302.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c67670302.filter2(chkc) end
if chk==0 then return Duel.IsExistingTarget(c67670302.filter2,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
Duel.SelectTarget(tp,c67670302.filter2,tp,LOCATION_MZONE,0,1,1,nil)
end
function c67670302.operation(e,tp,eg,ep,ev,re,r,rp)
local val=Duel.GetMatchingGroupCount(c67670302.filter2,tp,LOCATION_ONFIELD,0,nil)*800
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and tc:IsFaceup() then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetValue(val)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_UPDATE_DEFENSE)
tc:RegisterEffect(e2)
end
end
\ No newline at end of file
--重兵装型女子高中生・参
function c67670303.initial_effect(c)
--cannot be material
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_CANNOT_BE_LINK_MATERIAL)
e1:SetValue(c67670303.limit)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_CANNOT_BE_SYNCHRO_MATERIAL)
c:RegisterEffect(e2)
local e3=e2:Clone()
e3:SetCode(EFFECT_CANNOT_BE_FUSION_MATERIAL)
c:RegisterEffect(e3)
local e4=e3:Clone()
e4:SetCode(EFFECT_CANNOT_BE_XYZ_MATERIAL)
c:RegisterEffect(e4)
--cannot release
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_SINGLE)
e5:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e5:SetRange(LOCATION_MZONE)
e5:SetCode(EFFECT_UNRELEASABLE_SUM)
e5:SetValue(1)
c:RegisterEffect(e5)
local e6=e5:Clone()
e6:SetCode(EFFECT_UNRELEASABLE_NONSUM)
c:RegisterEffect(e6)
--spsummon
local e7=Effect.CreateEffect(c)
e7:SetDescription(aux.Stringid(67670303,0))
e7:SetCategory(CATEGORY_SPECIAL_SUMMON)
e7:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e7:SetCode(EVENT_SUMMON_SUCCESS)
e7:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET)
e7:SetCountLimit(1,67670303*1)
e7:SetTarget(c67670303.sptg)
e7:SetOperation(c67670303.spop)
c:RegisterEffect(e7)
local e8=e7:Clone()
e8:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e8)
--Damage
local e9=Effect.CreateEffect(c)
e9:SetDescription(aux.Stringid(67670303,1))
e9:SetType(EFFECT_TYPE_QUICK_O)
e9:SetCode(EVENT_FREE_CHAIN)
e9:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP)
e9:SetRange(LOCATION_GRAVE)
e9:SetCountLimit(1,67670303*2)
e9:SetCost(c67670303.imcost)
e9:SetTarget(c67670303.imtg)
e9:SetOperation(c67670303.imop)
c:RegisterEffect(e9)
end
function c67670303.limit(e,c,sumtype)
if not c then return false end
return not c:IsSetCard(0x1b7)
end
--spsummon
function c67670303.spfilter(c,e,tp)
return c:IsSetCard(0x1b7) and not c:IsCode(67670303) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c67670303.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c67670303.spfilter(chkc,e,tp) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingTarget(c67670303.spfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectTarget(tp,c67670303.spfilter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0)
end
function c67670303.spop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
end
end
--Damage
function c67670303.costfilter(c)
return c:IsSetCard(0x1b7) and c:IsAbleToRemoveAsCost()
end
function c67670303.imcost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
local g=Duel.GetMatchingGroup(c67670303.costfilter,tp,LOCATION_GRAVE,0,c)
if chk==0 then return c:IsAbleToRemoveAsCost() and #g>0 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local sg=g:Select(tp,1,1,nil)
sg:AddCard(c)
Duel.Remove(sg,POS_FACEUP,REASON_COST)
end
function c67670303.imfilter(c,e,tp)
return c:IsLocation(LOCATION_MZONE) and c:IsFaceup() and c:IsSetCard(0x1b7)
end
function c67670303.imtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local tp=e:GetHandler():GetControler()
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c67670303.imfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c67670303.imfilter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
Duel.SelectTarget(tp,c67670303.imfilter,e:GetHandlerPlayer(),LOCATION_MZONE,0,1,1,nil)
end
function c67670303.imop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and tc:IsFaceup() then
--damage
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_DAMAGE)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_BATTLE_DESTROYING)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCondition(aux.bdocon)
e1:SetTarget(c67670303.damtg)
e1:SetOperation(c67670303.damop)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1)
end
end
function c67670303.damcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return c:IsRelateToBattle() and c:GetBattleTarget():IsType(TYPE_MONSTER)
end
function c67670303.damtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
local tc=e:GetHandler():GetBattleTarget()
local atk=tc:GetBaseAttack()
if atk<0 then atk=0 end
Duel.SetTargetPlayer(1-tp)
Duel.SetTargetParam(atk)
Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,1-tp,atk)
end
function c67670303.damop(e,tp,eg,ep,ev,re,r,rp)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
Duel.Damage(p,d,REASON_EFFECT)
end
\ No newline at end of file
--重兵装型女子高中生・肆
function c67670304.initial_effect(c)
--cannot be material
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_CANNOT_BE_LINK_MATERIAL)
e1:SetValue(c67670304.limit)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_CANNOT_BE_SYNCHRO_MATERIAL)
c:RegisterEffect(e2)
local e3=e2:Clone()
e3:SetCode(EFFECT_CANNOT_BE_FUSION_MATERIAL)
c:RegisterEffect(e3)
local e4=e3:Clone()
e4:SetCode(EFFECT_CANNOT_BE_XYZ_MATERIAL)
c:RegisterEffect(e4)
--cannot release
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_SINGLE)
e5:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e5:SetRange(LOCATION_MZONE)
e5:SetCode(EFFECT_UNRELEASABLE_SUM)
e5:SetValue(1)
c:RegisterEffect(e5)
local e6=e5:Clone()
e6:SetCode(EFFECT_UNRELEASABLE_NONSUM)
c:RegisterEffect(e6)
--spsummon
local e7=Effect.CreateEffect(c)
e7:SetDescription(aux.Stringid(67670304,0))
e7:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_DRAW)
e7:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e7:SetCode(EVENT_SUMMON_SUCCESS)
e7:SetProperty(EFFECT_FLAG_DELAY)
e7:SetCountLimit(1,67670304*1)
e7:SetTarget(c67670304.sptg)
e7:SetOperation(c67670304.spop)
c:RegisterEffect(e7)
local e8=e7:Clone()
e8:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e8)
--ex attack
local e9=Effect.CreateEffect(c)
e9:SetDescription(aux.Stringid(67670304,1))
e9:SetType(EFFECT_TYPE_QUICK_O)
e9:SetCode(EVENT_FREE_CHAIN)
e9:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP)
e9:SetRange(LOCATION_GRAVE)
e9:SetCountLimit(1,67670304*2)
e9:SetCost(c67670304.imcost)
e9:SetTarget(c67670304.imtg)
e9:SetOperation(c67670304.imop)
c:RegisterEffect(e9)
end
function c67670304.limit(e,c,sumtype)
if not c then return false end
return not c:IsSetCard(0x1b7)
end
--spsummon
function c67670304.spfilter(c,e,tp)
return c:IsSetCard(0x1b7) and not c:IsCode(67670304) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c67670304.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsPlayerCanDraw(tp,1) end
Duel.SetTargetPlayer(tp)
Duel.SetTargetParam(1)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,1)
end
function c67670304.spop(e,tp,eg,ep,ev,re,r,rp)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
local h1=Duel.Draw(tp,1,REASON_EFFECT)
if h1>0 and Duel.IsExistingMatchingCard(c67670304.spfilter,tp,LOCATION_HAND,0,1,nil,e,tp) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.SelectYesNo(tp,aux.Stringid(67670304,1)) then
Duel.ShuffleHand(tp)
Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local tc=Duel.SelectMatchingCard(tp,c67670304.spfilter,tp,LOCATION_HAND,0,1,1,nil,e,tp):GetFirst()
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
end
end
--ex attack
function c67670304.costfilter(c)
return c:IsSetCard(0x1b7) and c:IsAbleToRemoveAsCost()
end
function c67670304.imcost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
local g=Duel.GetMatchingGroup(c67670304.costfilter,tp,LOCATION_GRAVE,0,c)
if chk==0 then return c:IsAbleToRemoveAsCost() and #g>0 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local sg=g:Select(tp,1,1,nil)
sg:AddCard(c)
Duel.Remove(sg,POS_FACEUP,REASON_COST)
end
function c67670304.imfilter(c,e,tp)
return c:IsLocation(LOCATION_MZONE) and c:IsFaceup() and c:IsSetCard(0x1b7)
end
function c67670304.imtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local tp=e:GetHandler():GetControler()
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c67670304.imfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c67670304.imfilter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
Duel.SelectTarget(tp,c67670304.imfilter,tp,LOCATION_MZONE,0,1,1,nil)
end
function c67670304.imop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and tc:IsFaceup() then
--ex attack
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_EXTRA_ATTACK)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetValue(3)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1)
end
end
--重兵装型女子高中生・伍
function c67670305.initial_effect(c)
--cannot be material
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_CANNOT_BE_LINK_MATERIAL)
e1:SetValue(c67670305.limit)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_CANNOT_BE_SYNCHRO_MATERIAL)
c:RegisterEffect(e2)
local e3=e2:Clone()
e3:SetCode(EFFECT_CANNOT_BE_FUSION_MATERIAL)
c:RegisterEffect(e3)
local e4=e3:Clone()
e4:SetCode(EFFECT_CANNOT_BE_XYZ_MATERIAL)
c:RegisterEffect(e4)
--cannot release
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_SINGLE)
e5:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e5:SetRange(LOCATION_MZONE)
e5:SetCode(EFFECT_UNRELEASABLE_SUM)
e5:SetValue(1)
c:RegisterEffect(e5)
local e6=e5:Clone()
e6:SetCode(EFFECT_UNRELEASABLE_NONSUM)
c:RegisterEffect(e6)
--special summon
local e7=Effect.CreateEffect(c)
e7:SetType(EFFECT_TYPE_FIELD)
e7:SetCode(EFFECT_SPSUMMON_PROC)
e7:SetProperty(EFFECT_FLAG_UNCOPYABLE)
e7:SetRange(LOCATION_HAND+LOCATION_GRAVE)
e7:SetCountLimit(1,67670305+EFFECT_COUNT_CODE_OATH)
e7:SetCondition(c67670305.spcon)
e7:SetOperation(c67670305.spop)
c:RegisterEffect(e7)
--to grave
local e8=Effect.CreateEffect(c)
e8:SetDescription(aux.Stringid(67670305,1))
e8:SetCategory(CATEGORY_TOGRAVE)
e8:SetType(EFFECT_TYPE_QUICK_O)
e8:SetCode(EVENT_FREE_CHAIN)
e8:SetRange(LOCATION_GRAVE)
e8:SetCountLimit(1,67670305*2)
e8:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_END_PHASE)
e8:SetCost(c67670305.cost)
e8:SetOperation(c67670305.operation)
c:RegisterEffect(e8)
end
function c67670305.limit(e,c,sumtype)
if not c then return false end
return not c:IsSetCard(0x1b7)
end
--special summon
function c67670305.spfilter(c)
return c:IsSetCard(0x1b7) and not c:IsCode(67670305) and (c:IsLocation(LOCATION_GRAVE) or c:IsLocation(LOCATION_HAND)) and c:IsAbleToRemoveAsCost()
end
function c67670305.spcon(e,c)
if c==nil then return true end
local tp=c:GetControler()
return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(c67670305.spfilter,tp,LOCATION_GRAVE+LOCATION_HAND,0,1,c)
end
function c67670305.spop(e,tp,eg,ep,ev,re,r,rp,c)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local g=Duel.SelectMatchingCard(tp,c67670305.spfilter,tp,LOCATION_GRAVE+LOCATION_HAND,0,1,1,c)
Duel.Remove(g,POS_FACEUP,REASON_COST)
end
--to grave
function c67670305.costfilter(c)
return c:IsSetCard(0x1b7) and c:IsAbleToRemoveAsCost()
end
function c67670305.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local tp=e:GetHandlerPlayer()
local c=e:GetHandler()
local g=Duel.GetMatchingGroup(c67670305.costfilter,tp,LOCATION_GRAVE,0,c)
if chk==0 then return c:IsAbleToRemoveAsCost() and #g>0 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local sg=g:Select(tp,1,1,nil)
sg:AddCard(c)
Duel.Remove(sg,POS_FACEUP,REASON_COST)
end
function c67670305.spfilter2(c,e,tp)
return c:IsSetCard(0x1b7) and not c:IsCode(67670305) and c:IsAbleToGrave()
end
function c67670305.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,c67670305.spfilter2,tp,LOCATION_DECK,0,1,1,e:GetHandler())
if g:GetCount()>0 then
Duel.SendtoGrave(g,REASON_EFFECT)
end
end
\ No newline at end of file
--重兵装型女子高中生・陸
function c67670306.initial_effect(c)
--cannot be material
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_CANNOT_BE_LINK_MATERIAL)
e1:SetValue(c67670306.limit)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_CANNOT_BE_SYNCHRO_MATERIAL)
c:RegisterEffect(e2)
local e3=e2:Clone()
e3:SetCode(EFFECT_CANNOT_BE_FUSION_MATERIAL)
c:RegisterEffect(e3)
local e4=e3:Clone()
e4:SetCode(EFFECT_CANNOT_BE_XYZ_MATERIAL)
c:RegisterEffect(e4)
--cannot release
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_SINGLE)
e5:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e5:SetRange(LOCATION_MZONE)
e5:SetCode(EFFECT_UNRELEASABLE_SUM)
e5:SetValue(1)
c:RegisterEffect(e5)
local e6=e5:Clone()
e6:SetCode(EFFECT_UNRELEASABLE_NONSUM)
c:RegisterEffect(e6)
--special summon
local e7=Effect.CreateEffect(c)
e7:SetType(EFFECT_TYPE_FIELD)
e7:SetCode(EFFECT_SPSUMMON_PROC)
e7:SetProperty(EFFECT_FLAG_UNCOPYABLE)
e7:SetRange(LOCATION_HAND)
e7:SetCountLimit(1,67670306+EFFECT_COUNT_CODE_OATH)
e7:SetCondition(c67670306.sprcon)
c:RegisterEffect(e7)
--Special Summon
local e8=Effect.CreateEffect(c)
e8:SetDescription(aux.Stringid(67670306,1))
e8:SetCategory(CATEGORY_SPECIAL_SUMMON)
e8:SetType(EFFECT_TYPE_QUICK_O)
e8:SetCode(EVENT_FREE_CHAIN)
e8:SetRange(LOCATION_GRAVE)
e8:SetCountLimit(1,67670306*2)
e8:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_END_PHASE)
e8:SetCost(c67670306.cost)
e8:SetOperation(c67670306.operation)
c:RegisterEffect(e8)
end
--special summon
function c67670306.cfilter(c)
return c:IsFaceup() and c:IsSetCard(0x1b7) and not c:IsCode(67670306)
end
function c67670306.sprcon(e,c)
if c==nil then return true end
local tp=c:GetControler()
return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(c67670306.cfilter,tp,LOCATION_MZONE,0,1,nil)
end
--Special Summon
function c67670306.costfilter(c)
return c:IsSetCard(0x1b7) and c:IsAbleToRemoveAsCost()
end
function c67670306.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local tp=e:GetHandlerPlayer()
local c=e:GetHandler()
local g=Duel.GetMatchingGroup(c67670306.costfilter,tp,LOCATION_GRAVE,0,c)
if chk==0 then return c:IsAbleToRemoveAsCost() and #g>0 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local sg=g:Select(tp,1,1,nil)
sg:AddCard(c)
Duel.Remove(sg,POS_FACEUP,REASON_COST)
end
function c67670306.spfilter2(c,e,tp)
return c:IsLevelBelow(4) and c:IsSetCard(0x1b7) and not c:IsCode(67670306) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP)
end
function c67670306.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(c67670306.spfilter2),tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
end
\ No newline at end of file
--重兵装型女子高中生・Null
function c67670307.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterBoolFunction(Card.IsSetCard,0x1b7),4,2)
c:EnableReviveLimit()
--cannot be material
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_CANNOT_BE_LINK_MATERIAL)
e1:SetValue(c67670307.limit)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_CANNOT_BE_SYNCHRO_MATERIAL)
c:RegisterEffect(e2)
local e3=e2:Clone()
e3:SetCode(EFFECT_CANNOT_BE_FUSION_MATERIAL)
c:RegisterEffect(e3)
local e4=e3:Clone()
e4:SetCode(EFFECT_CANNOT_BE_XYZ_MATERIAL)
c:RegisterEffect(e4)
--cannot release
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_SINGLE)
e5:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e5:SetRange(LOCATION_MZONE)
e5:SetCode(EFFECT_UNRELEASABLE_SUM)
e5:SetValue(1)
c:RegisterEffect(e5)
local e6=e5:Clone()
e6:SetCode(EFFECT_UNRELEASABLE_NONSUM)
c:RegisterEffect(e6)
--atk
local e7=Effect.CreateEffect(c)
e7:SetType(EFFECT_TYPE_SINGLE)
e7:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e7:SetRange(LOCATION_MZONE)
e7:SetCode(EFFECT_UPDATE_ATTACK)
e7:SetValue(c67670307.value)
c:RegisterEffect(e7)
--remove
local e8=Effect.CreateEffect(c)
e8:SetDescription(aux.Stringid(67670307,0))
e8:SetCategory(CATEGORY_REMOVE)
e8:SetProperty(EFFECT_FLAG_CARD_TARGET)
e8:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e8:SetCode(EVENT_SPSUMMON_SUCCESS)
e8:SetCountLimit(1,67670307*1)
e8:SetCondition(c67670307.rmcon)
e8:SetTarget(c67670307.rmtg)
e8:SetOperation(c67670307.rmop)
c:RegisterEffect(e8)
--to grave
local e9=Effect.CreateEffect(c)
e9:SetDescription(aux.Stringid(67670307,1))
e9:SetCategory(CATEGORY_TOGRAVE)
e9:SetType(EFFECT_TYPE_IGNITION)
e9:SetRange(LOCATION_MZONE)
e9:SetCountLimit(1,67670307*2)
e9:SetCost(c67670307.drcost)
e9:SetTarget(c67670307.drtg)
e9:SetOperation(c67670307.drop)
c:RegisterEffect(e9)
end
function c67670307.limit(e,c,sumtype)
if not c then return false end
return not c:IsSetCard(0x1b7)
end
--atk
function c67670307.value(e,c)
return Duel.GetFieldGroupCount(c:GetControler(),0,LOCATION_MZONE)*800
end
--remove
function c67670307.rmcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_XYZ)
end
function c67670307.rmtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsOnField() and chkc:IsControler(1-tp) end
if chk==0 then return Duel.IsExistingTarget(Card.IsAbleToRemove,tp,0,LOCATION_ONFIELD,1,nil,c) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local g=Duel.SelectTarget(tp,Card.IsAbleToRemove,tp,0,LOCATION_ONFIELD,1,2,nil,c)
Duel.SetOperationInfo(0,CATEGORY_REMOVE,g,g:GetCount(),0,0)
end
function c67670307.rmop(e,tp,eg,ep,ev,re,r,rp)
local tg=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS):Filter(Card.IsRelateToEffect,nil,e)
if Duel.Remove(tg,POS_FACEUP,REASON_EFFECT)==0 then return end
local ct=Duel.GetOperatedGroup():FilterCount(Card.IsPreviousControler,nil,1-tp)
if ct>0 and Duel.IsPlayerCanDraw(1-tp,ct) then
Duel.BreakEffect()
Duel.Draw(1-tp,ct,REASON_EFFECT)
end
end
--to grave
function c67670307.drcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
end
function c67670307.tdfilter(c)
return c:IsSetCard(0x1b7) and c:IsAbleToGrave()
end
function c67670307.drtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c67670307.tdfilter,tp,LOCATION_REMOVED,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,tp,LOCATION_GRAVE)
end
function c67670307.drop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=Duel.GetMatchingGroup(c67670307.tdfilter,tp,LOCATION_REMOVED,0,nil)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
aux.GCheckAdditional=aux.dncheck
local sg=g:SelectSubGroup(tp,aux.TRUE,false,1,6)
aux.GCheckAdditional=nil
if sg then Duel.SendtoGrave(sg,REASON_EFFECT) end
end
\ No newline at end of file
--重兵装型女子高中生・Eins
function c67670308.initial_effect(c)
c:SetSPSummonOnce(67670308)
--link summon
aux.AddLinkProcedure(c,c67670308.mfilter,1,1)
c:EnableReviveLimit()
--cannot be material
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_CANNOT_BE_LINK_MATERIAL)
e1:SetValue(c67670308.limit)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_CANNOT_BE_SYNCHRO_MATERIAL)
c:RegisterEffect(e2)
local e3=e2:Clone()
e3:SetCode(EFFECT_CANNOT_BE_FUSION_MATERIAL)
c:RegisterEffect(e3)
local e4=e3:Clone()
e4:SetCode(EFFECT_CANNOT_BE_XYZ_MATERIAL)
c:RegisterEffect(e4)
--cannot release
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_SINGLE)
e5:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e5:SetRange(LOCATION_MZONE)
e5:SetCode(EFFECT_UNRELEASABLE_SUM)
e5:SetValue(1)
c:RegisterEffect(e5)
local e6=e5:Clone()
e6:SetCode(EFFECT_UNRELEASABLE_NONSUM)
c:RegisterEffect(e6)
--search
local e7=Effect.CreateEffect(c)
e7:SetDescription(aux.Stringid(67670308,0))
e7:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e7:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e7:SetCode(EVENT_SPSUMMON_SUCCESS)
e7:SetProperty(EFFECT_FLAG_DELAY)
e7:SetCountLimit(1,67670308*1)
e7:SetTarget(c67670308.shtg)
e7:SetOperation(c67670308.shop)
c:RegisterEffect(e7)
--atk
local e8=Effect.CreateEffect(c)
e8:SetType(EFFECT_TYPE_FIELD)
e8:SetCode(EFFECT_UPDATE_ATTACK)
e8:SetRange(LOCATION_MZONE)
e8:SetTargetRange(LOCATION_MZONE,0)
e8:SetTarget(c67670308.atktg)
e8:SetValue(800)
c:RegisterEffect(e8)
local e9=e8:Clone()
e9:SetCode(EFFECT_UPDATE_DEFENSE)
c:RegisterEffect(e9)
end
function c67670308.mfilter(c)
return c:IsSetCard(0x1b7)
end
function c67670308.limit(e,c,sumtype)
if not c then return false end
return not c:IsSetCard(0x1b7)
end
--search
function c67670308.filter1(c)
return c:IsSetCard(0x1b7) and c:IsAbleToHand()
end
function c67670308.shtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c67670308.filter1,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end
function c67670308.shop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_OPERATECARD)
local g=Duel.SelectMatchingCard(tp,c67670308.filter1,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()<=0 then return end
local tc=g:GetFirst()
if tc:IsAbleToHand() then
Duel.SendtoHand(tc,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,tc)
end
end
--atk
function c67670308.atktg(e,c)
return c:IsSetCard(0x1b7) and c~=e:GetHandler()
end
\ No newline at end of file
--重兵装型女子高中生・Zwei
function c67670309.initial_effect(c)
--link summon
aux.AddLinkProcedure(c,c67670309.mfilter,2,2)
c:EnableReviveLimit()
--cannot be material
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_CANNOT_BE_LINK_MATERIAL)
e1:SetValue(c67670309.limit)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_CANNOT_BE_SYNCHRO_MATERIAL)
c:RegisterEffect(e2)
local e3=e2:Clone()
e3:SetCode(EFFECT_CANNOT_BE_FUSION_MATERIAL)
c:RegisterEffect(e3)
local e4=e3:Clone()
e4:SetCode(EFFECT_CANNOT_BE_XYZ_MATERIAL)
c:RegisterEffect(e4)
--cannot release
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_SINGLE)
e5:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e5:SetRange(LOCATION_MZONE)
e5:SetCode(EFFECT_UNRELEASABLE_SUM)
e5:SetValue(1)
c:RegisterEffect(e5)
local e6=e5:Clone()
e6:SetCode(EFFECT_UNRELEASABLE_NONSUM)
c:RegisterEffect(e6)
--INDESTRUCTABLE_BATTLE
local e7=Effect.CreateEffect(c)
e7:SetType(EFFECT_TYPE_FIELD)
e7:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e7:SetRange(LOCATION_MZONE)
e7:SetTargetRange(LOCATION_MZONE,0)
e7:SetTarget(aux.TargetBoolFunction(Card.IsSetCard,0x1b7))
e7:SetValue(1)
c:RegisterEffect(e7)
--atk
local e8=Effect.CreateEffect(c)
e8:SetDescription(aux.Stringid(67670309,0))
e3:SetCategory(CATEGORY_ATKCHANGE)
e8:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e8:SetCode(EVENT_BATTLE_DAMAGE)
e8:SetRange(LOCATION_MZONE)
e8:SetCountLimit(1,67670309*1)
e8:SetCondition(c67670309.atkcon)
e8:SetOperation(c67670309.atkop)
c:RegisterEffect(e8)
end
function c67670309.mfilter(c)
return c:IsSetCard(0x1b7)
end
function c67670309.limit(e,c,sumtype)
if not c then return false end
return not c:IsSetCard(0x1b7)
end
--atk
function c67670309.atkcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsRelateToBattle()
end
function c67670309.atkop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsFaceup() and c:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(ev)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE)
c:RegisterEffect(e1)
end
end
\ No newline at end of file
--重兵装型女子高中生・Drei
function c67670310.initial_effect(c)
--link summon
aux.AddLinkProcedure(c,c67670310.mfilter,2)
c:EnableReviveLimit()
--cannot be material
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_CANNOT_BE_LINK_MATERIAL)
e1:SetValue(c67670310.limit)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_CANNOT_BE_SYNCHRO_MATERIAL)
c:RegisterEffect(e2)
local e3=e2:Clone()
e3:SetCode(EFFECT_CANNOT_BE_FUSION_MATERIAL)
c:RegisterEffect(e3)
local e4=e3:Clone()
e4:SetCode(EFFECT_CANNOT_BE_XYZ_MATERIAL)
c:RegisterEffect(e4)
--cannot release
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_SINGLE)
e5:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e5:SetRange(LOCATION_MZONE)
e5:SetCode(EFFECT_UNRELEASABLE_SUM)
e5:SetValue(1)
c:RegisterEffect(e5)
local e6=e5:Clone()
e6:SetCode(EFFECT_UNRELEASABLE_NONSUM)
c:RegisterEffect(e6)
--indes
local e7=Effect.CreateEffect(c)
e7:SetType(EFFECT_TYPE_FIELD)
e7:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e7:SetCode(EFFECT_CANNOT_REMOVE)
e7:SetRange(LOCATION_MZONE)
e7:SetTargetRange(1,1)
e7:SetTarget(c67670310.infilter)
c:RegisterEffect(e7)
--remove
local e8=Effect.CreateEffect(c)
e8:SetCategory(CATEGORY_REMOVE)
e8:SetType(EFFECT_TYPE_QUICK_O)
e8:SetCode(EVENT_CHAINING)
e8:SetRange(LOCATION_MZONE)
e8:SetCountLimit(1,67670310*1)
e8:SetCondition(c67670310.rmcon)
e8:SetCost(c67670310.rmcost)
e8:SetOperation(c67670310.rmop)
c:RegisterEffect(e8)
end
function c67670310.mfilter(c)
return c:IsSetCard(0x1b7)
end
function c67670310.limit(e,c,sumtype)
if not c then return false end
return not c:IsSetCard(0x1b7)
end
--indes
function c67670310.infilter(e,c,rp,r,re)
local tp=e:GetHandlerPlayer()
return c:IsFaceup() and c:IsControler(tp) and c:IsSetCard(0x1b7) and c:IsLocation(LOCATION_ONFIELD+LOCATION_GRAVE) and re and r&REASON_EFFECT>0 and rp==1-tp
end
--remove
function c67670310.rmcon(e,tp,eg,ep,ev,re,r,rp)
return ep==1-tp
end
function c67670310.rmfilter(c)
return c:IsSetCard(0x1b7) and c:IsAbleToRemoveAsCost()
end
function c67670310.rmcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c67670310.rmfilter,tp,LOCATION_GRAVE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local g=Duel.SelectMatchingCard(tp,c67670310.rmfilter,tp,LOCATION_GRAVE,0,1,1,nil)
Duel.Remove(g,POS_FACEUP,REASON_COST)
end
function c67670310.rmop(e,tp,eg,ep,ev,re,r,rp)
local op=0
local b1=Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,0,LOCATION_ONFIELD,1,nil)
local b2=Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,0,LOCATION_HAND,1,nil)
local g2=Duel.GetFieldGroup(1-tp,LOCATION_HAND,0)
Duel.Hint(HINT_SELECTMSG,tp,0)
if b1 and b2 then op=Duel.SelectOption(tp,aux.Stringid(67670310,0),aux.Stringid(67670310,1))
elseif b1 then op=Duel.SelectOption(tp,aux.Stringid(67670310,0))
elseif b2 then Duel.SelectOption(tp,aux.Stringid(67670310,1)) op=1
else return end
if op==0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local dg=Duel.SelectMatchingCard(tp,Card.IsAbleToRemove,tp,0,LOCATION_ONFIELD,1,1,nil)
Duel.Remove(dg,POS_FACEDOWN,REASON_EFFECT)
else
local sg=g2:RandomSelect(1-tp,1)
Duel.Remove(sg,POS_FACEDOWN,REASON_EFFECT)
end
end
\ No newline at end of file
--重兵装型女子高中生・Arche
function c67670311.initial_effect(c)
--link summon
aux.AddLinkProcedure(c,c67670311.mfilter,3)
c:EnableReviveLimit()
--cannot be material
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_CANNOT_BE_LINK_MATERIAL)
e1:SetValue(c67670311.limit)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_CANNOT_BE_SYNCHRO_MATERIAL)
c:RegisterEffect(e2)
local e3=e2:Clone()
e3:SetCode(EFFECT_CANNOT_BE_FUSION_MATERIAL)
c:RegisterEffect(e3)
local e4=e3:Clone()
e4:SetCode(EFFECT_CANNOT_BE_XYZ_MATERIAL)
c:RegisterEffect(e4)
--cannot release
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_SINGLE)
e5:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e5:SetRange(LOCATION_MZONE)
e5:SetCode(EFFECT_UNRELEASABLE_SUM)
e5:SetValue(1)
c:RegisterEffect(e5)
local e6=e5:Clone()
e6:SetCode(EFFECT_UNRELEASABLE_NONSUM)
c:RegisterEffect(e6)
--immune
local e7=Effect.CreateEffect(c)
e7:SetType(EFFECT_TYPE_FIELD)
e7:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e7:SetCode(EFFECT_IMMUNE_EFFECT)
e7:SetRange(LOCATION_MZONE)
e7:SetValue(c67670311.efilter)
e7:SetTargetRange(LOCATION_MZONE,0)
e7:SetTarget(aux.TargetBoolFunction(Card.IsSetCard,0x1b7))
c:RegisterEffect(e7)
--Special Summon
local e8=Effect.CreateEffect(c)
e8:SetDescription(aux.Stringid(67670311,0))
e8:SetCategory(CATEGORY_SPECIAL_SUMMON)
e8:SetProperty(EFFECT_FLAG_CARD_TARGET)
e8:SetType(EFFECT_TYPE_IGNITION)
e8:SetCode(EVENT_CHAINING)
e8:SetRange(LOCATION_MZONE)
e8:SetCountLimit(1,67670311*1)
e8:SetCost(c67670311.spcost)
e8:SetTarget(c67670311.sptg)
e8:SetOperation(c67670311.spop)
c:RegisterEffect(e8)
end
function c67670311.mfilter(c)
return c:IsSetCard(0x1b7)
end
function c67670311.limit(e,c,sumtype)
if not c then return false end
return not c:IsSetCard(0x1b7)
end
--immune
function c67670311.efilter(e,te)
if te:GetOwnerPlayer()==e:GetHandlerPlayer() then return false end
if not te:IsHasProperty(EFFECT_FLAG_CARD_TARGET) then return true end
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS)
return not g or not g:IsContains(e:GetHandler())
end
--Special Summon
function c67670311.spfilter1(c)
return c:IsSetCard(0x1b7) and c:IsAbleToRemoveAsCost()
end
function c67670311.spfilter2(c,e,tp)
return c:IsSetCard(0x1b7) and not c:IsCode(67670311)
and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP)
end
function c67670311.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c67670311.spfilter1,tp,LOCATION_GRAVE,0,2,nil) and Duel.IsExistingMatchingCard(c67670311.spfilter2,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local g=Duel.SelectMatchingCard(tp,c67670311.spfilter1,tp,LOCATION_GRAVE,0,1,1,nil)
Duel.Remove(g,POS_FACEUP,REASON_COST)
end
function c67670311.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_GRAVE) and c67670311.spfilter2(chkc,e,tp) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingTarget(c67670311.spfilter2,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectTarget(tp,c67670311.spfilter2,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0)
end
function c67670311.spop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then
if Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_LEAVE_FIELD_REDIRECT)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetReset(RESET_EVENT+RESETS_REDIRECT)
e1:SetValue(LOCATION_REMOVED)
tc:RegisterEffect(e1)
end
Duel.SpecialSummonComplete()
end
end
\ No newline at end of file
--重兵装型女子高生・集结
function c67670313.initial_effect(c)
--spsummon and to grave
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(67670313,0))
e1:SetCategory(CATEGORY_TOGRAVE+CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,67670313)
e1:SetTarget(c67670313.tstg)
e1:SetOperation(c67670313.tsop)
c:RegisterEffect(e1)
--special summon
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(67670313,1))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetRange(LOCATION_GRAVE)
e2:SetCountLimit(1,67670313)
e2:SetCost(aux.bfgcost)
e2:SetTarget(c67670313.target)
e2:SetOperation(c67670313.operation)
c:RegisterEffect(e2)
end
function c67670313.thfilter(c,e,tp,ft)
return c:IsFaceup() and c:IsSetCard(0x1b7) and c:IsAbleToGrave() and (ft>0 or c:GetSequence()<5)
and Duel.IsExistingMatchingCard(c67670313.spfilter2,tp,LOCATION_DECK,0,1,nil,e,tp,c:GetCode())
end
function c67670313.spfilter2(c,e,tp,code)
return c:IsSetCard(0x1b7) and not c:IsCode(code) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c67670313.tstg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c67670313.thfilter(chkc,e,tp,ft) end
if chk==0 then return ft>-1 and Duel.IsExistingTarget(c67670313.thfilter,tp,LOCATION_MZONE,0,1,e:GetHandler(),e,tp,ft) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectTarget(tp,c67670313.thfilter,tp,LOCATION_MZONE,0,1,1,e:GetHandler(),e,tp,ft)
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK)
end
function c67670313.tsop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and tc:IsFaceup() then
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg=Duel.SelectMatchingCard(tp,c67670313.spfilter2,tp,LOCATION_DECK,0,1,1,nil,e,tp,tc:GetCode())
if sg:GetCount()>0 then
Duel.SpecialSummon(sg,0,tp,tp,false,false,POS_FACEUP)
Duel.BreakEffect()
Duel.SendtoGrave(tc,nil,REASON_EFFECT)
end
end
end
--special summon
function c67670313.spfilter(c,e,tp)
return c:IsFaceup() and c:IsSetCard(0x1b7) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c67670313.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_REMOVED) and c67670313.spfilter(chkc,e,tp) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingTarget(c67670313.spfilter,tp,LOCATION_REMOVED,LOCATION_REMOVED,1,nil,e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectTarget(tp,c67670313.spfilter,tp,LOCATION_REMOVED,LOCATION_REMOVED,1,1,nil,e,tp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0)
end
function c67670313.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
end
end
\ No newline at end of file
--重兵装型女子高生・出击
function c67670314.initial_effect(c)
--Activate1
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(67670314,0))
e1:SetCategory(CATEGORY_NEGATE+CATEGORY_REMOVE)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_CHAINING)
e1:SetCountLimit(1,67670314)
e1:SetCondition(c67670314.discon)
e1:SetTarget(aux.nbtg)
e1:SetOperation(c67670314.disop)
c:RegisterEffect(e1)
--Activate2
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(67670314,1))
e2:SetType(EFFECT_TYPE_ACTIVATE)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetCountLimit(1,67670314)
e2:SetCondition(c67670314.limcon)
e2:SetTarget(c67670314.limtg)
e2:SetOperation(c67670314.limop)
c:RegisterEffect(e2)
--double damge
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(67670314,2))
e3:SetType(EFFECT_TYPE_QUICK_O)
e3:SetCode(EVENT_FREE_CHAIN)
e3:SetRange(LOCATION_GRAVE)
e3:SetHintTiming(0,TIMING_END_PHASE)
e3:SetCountLimit(1,67670314)
e3:SetCost(aux.bfgcost)
e3:SetOperation(c67670314.operation)
c:RegisterEffect(e3)
end
--Activate1
function c67670314.cfilter(c)
return c:IsFaceup() and c:IsSetCard(0x1b7)
end
function c67670314.discon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetMatchingGroup(c67670314.cfilter,tp,LOCATION_REMOVED,0,nil):GetClassCount(Card.GetCode)>=6
and Duel.IsChainNegatable(ev) and (re:IsActiveType(TYPE_MONSTER) or re:IsHasType(EFFECT_TYPE_ACTIVATE))
end
function c67670314.disop(e,tp,eg,ep,ev,re,r,rp)
if Duel.NegateActivation(ev) and re:GetHandler():IsRelateToEffect(re) then
Duel.Remove(eg,POS_FACEDOWN,REASON_EFFECT)
end
end
--Activate2
function c67670314.limcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetMatchingGroup(c67670314.cfilter,tp,LOCATION_REMOVED,0,nil):GetClassCount(Card.GetCode)>=13
end
function c67670314.limtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
Duel.SetChainLimit(c67670314.chainlm)
end
function c67670314.chainlm(e,rp,tp)
return tp==rp
end
function c67670314.limop(e,tp,eg,ep,ev,re,r,rp)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetTargetRange(0,1)
e1:SetValue(c67670314.aclimit)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
end
function c67670314.aclimit(e,re,tp)
return re:GetHandler():IsOnField() or re:IsHasType(EFFECT_TYPE_ACTIVATE)
end
--double damge
function c67670314.operation(e,tp,eg,ep,ev,re,r,rp)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE)
e1:SetCode(EFFECT_DIRECT_ATTACK)
e1:SetTargetRange(LOCATION_MZONE,0)
e1:SetTarget(c67670314.efftg)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
end
function c67670314.efftg(e,c)
return c:IsSetCard(0x1b7)
end
...@@ -6,6 +6,7 @@ function s.initial_effect(c) ...@@ -6,6 +6,7 @@ function s.initial_effect(c)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e1:SetRange(LOCATION_HAND) e1:SetRange(LOCATION_HAND)
e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_MAIN_END)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetTarget(s.sptg) e1:SetTarget(s.sptg)
e1:SetOperation(s.spop) e1:SetOperation(s.spop)
...@@ -98,7 +99,6 @@ function s.mvalue(e,fp,rp,r) ...@@ -98,7 +99,6 @@ function s.mvalue(e,fp,rp,r)
end end
function s.drcost(e,tp,eg,ep,ev,re,r,rp,chk) function s.drcost(e,tp,eg,ep,ev,re,r,rp,chk)
local g=Duel.GetMatchingGroup(Card.IsType,tp,LOCATION_MZONE,0,nil,TYPE_MONSTER) local g=Duel.GetMatchingGroup(Card.IsType,tp,LOCATION_MZONE,0,nil,TYPE_MONSTER)
e:SetLabel(g:GetCount())
if chk==0 then return g:GetCount()>0 and g:FilterCount(Card.IsReleasable,nil)==g:GetCount() end if chk==0 then return g:GetCount()>0 and g:FilterCount(Card.IsReleasable,nil)==g:GetCount() end
Duel.Release(g,REASON_COST) Duel.Release(g,REASON_COST)
end end
......
...@@ -1334,8 +1334,7 @@ ...@@ -1334,8 +1334,7 @@
#数据删除 181 #数据删除 181
!setname 0x7bc2 机天使 !setname 0x7bc2 机天使
#齿轮 1097693897 676 0x1b1-0x1bf #齿轮 1097693897 676
!setname 0x1b7 重兵装
#yee 792 #yee 792
!setname 0x10e3 星钢 !setname 0x10e3 星钢
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment