Commit 44ae38e0 authored by TanakaKotoha's avatar TanakaKotoha

fbk

parent 14bcc784
...@@ -56,6 +56,6 @@ function c47500000.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -56,6 +56,6 @@ function c47500000.penop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,c47500000.penfilter,tp,LOCATION_DECK+LOCATION_EXTRA,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47500000.penfilter,tp,LOCATION_DECK+LOCATION_EXTRA,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
...@@ -87,7 +87,7 @@ function c47500011.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -87,7 +87,7 @@ function c47500011.penop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,c47500011.penfilter,tp,LOCATION_EXTRA,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47500011.penfilter,tp,LOCATION_EXTRA,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_LEAVE_FIELD_REDIRECT) e1:SetCode(EFFECT_LEAVE_FIELD_REDIRECT)
......
...@@ -74,7 +74,7 @@ function c47500017.teop(e,tp,eg,ep,ev,re,r,rp) ...@@ -74,7 +74,7 @@ function c47500017.teop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,c47500017.penfilter,tp,LOCATION_EXTRA,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47500017.penfilter,tp,LOCATION_EXTRA,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
local code=tc:GetOriginalCode() local code=tc:GetOriginalCode()
if tc and Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) then if tc and Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c47500017.tefilter,tp,LOCATION_DECK,0,1,1,code) local g=Duel.SelectMatchingCard(tp,c47500017.tefilter,tp,LOCATION_DECK,0,1,1,code)
if g:GetCount()>0 then if g:GetCount()>0 then
......
...@@ -55,7 +55,7 @@ function c47500031.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -55,7 +55,7 @@ function c47500031.activate(e,tp,eg,ep,ev,re,r,rp)
local sg=g:Select(tp,1,ct,nil) local sg=g:Select(tp,1,ct,nil)
local sc=sg:GetFirst() local sc=sg:GetFirst()
while sc do while sc do
Duel.MoveToField(sc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(sc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
sc=sg:GetNext() sc=sg:GetNext()
end end
end end
......
...@@ -139,7 +139,7 @@ function c47501007.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -139,7 +139,7 @@ function c47501007.thop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,c47501007.penfilter,tp,LOCATION_EXTRA,0,2,2,nil) local g=Duel.SelectMatchingCard(tp,c47501007.penfilter,tp,LOCATION_EXTRA,0,2,2,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
while tc do while tc do
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
tc=g:GetNext() tc=g:GetNext()
end end
end end
......
...@@ -95,7 +95,7 @@ function c47510044.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -95,7 +95,7 @@ function c47510044.penop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,c47510044.penfilter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47510044.penfilter,tp,LOCATION_DECK,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
end end
......
...@@ -151,7 +151,7 @@ function c47510046.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -151,7 +151,7 @@ function c47510046.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
function c47510046.backon(e,tp,eg,ep,ev,re,r,rp) function c47510046.backon(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -180,6 +180,6 @@ function c47510084.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -180,6 +180,6 @@ function c47510084.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
...@@ -40,7 +40,7 @@ function c47510095.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -40,7 +40,7 @@ function c47510095.activate(e,tp,eg,ep,ev,re,r,rp)
local sg=g:Select(tp,1,ct,nil) local sg=g:Select(tp,1,ct,nil)
local sc=sg:GetFirst() local sc=sg:GetFirst()
while sc do while sc do
Duel.MoveToField(sc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(sc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
sc=sg:GetNext() sc=sg:GetNext()
end end
end end
......
...@@ -40,7 +40,7 @@ function c47510096.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -40,7 +40,7 @@ function c47510096.activate(e,tp,eg,ep,ev,re,r,rp)
local sg=g:Select(tp,1,ct,nil) local sg=g:Select(tp,1,ct,nil)
local sc=sg:GetFirst() local sc=sg:GetFirst()
while sc do while sc do
Duel.MoveToField(sc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(sc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
sc=sg:GetNext() sc=sg:GetNext()
end end
end end
......
...@@ -40,7 +40,7 @@ function c47510097.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -40,7 +40,7 @@ function c47510097.activate(e,tp,eg,ep,ev,re,r,rp)
local sg=g:Select(tp,1,ct,nil) local sg=g:Select(tp,1,ct,nil)
local sc=sg:GetFirst() local sc=sg:GetFirst()
while sc do while sc do
Duel.MoveToField(sc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(sc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
sc=sg:GetNext() sc=sg:GetNext()
end end
end end
......
...@@ -40,7 +40,7 @@ function c47510098.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -40,7 +40,7 @@ function c47510098.activate(e,tp,eg,ep,ev,re,r,rp)
local sg=g:Select(tp,1,ct,nil) local sg=g:Select(tp,1,ct,nil)
local sc=sg:GetFirst() local sc=sg:GetFirst()
while sc do while sc do
Duel.MoveToField(sc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(sc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
sc=sg:GetNext() sc=sg:GetNext()
end end
end end
......
...@@ -40,7 +40,7 @@ function c47510099.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -40,7 +40,7 @@ function c47510099.activate(e,tp,eg,ep,ev,re,r,rp)
local sg=g:Select(tp,1,ct,nil) local sg=g:Select(tp,1,ct,nil)
local sc=sg:GetFirst() local sc=sg:GetFirst()
while sc do while sc do
Duel.MoveToField(sc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(sc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
sc=sg:GetNext() sc=sg:GetNext()
end end
end end
......
...@@ -40,7 +40,7 @@ function c47510100.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -40,7 +40,7 @@ function c47510100.activate(e,tp,eg,ep,ev,re,r,rp)
local sg=g:Select(tp,1,ct,nil) local sg=g:Select(tp,1,ct,nil)
local sc=sg:GetFirst() local sc=sg:GetFirst()
while sc do while sc do
Duel.MoveToField(sc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(sc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
sc=sg:GetNext() sc=sg:GetNext()
end end
end end
......
...@@ -184,6 +184,6 @@ function c47510101.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -184,6 +184,6 @@ function c47510101.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
...@@ -200,6 +200,6 @@ function c47510103.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -200,6 +200,6 @@ function c47510103.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
...@@ -133,6 +133,6 @@ function c47510107.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -133,6 +133,6 @@ function c47510107.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
...@@ -165,6 +165,6 @@ function c47510111.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -165,6 +165,6 @@ function c47510111.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
...@@ -97,6 +97,6 @@ function c47510115.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -97,6 +97,6 @@ function c47510115.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
...@@ -179,6 +179,6 @@ function c47510119.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -179,6 +179,6 @@ function c47510119.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
...@@ -73,7 +73,7 @@ function c47510129.psop(e,tp,eg,ep,ev,re,r,rp) ...@@ -73,7 +73,7 @@ function c47510129.psop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,c47510129.psfilter,tp,LOCATION_EXTRA,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47510129.psfilter,tp,LOCATION_EXTRA,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
local atk=tc:GetLeftScale() local atk=tc:GetLeftScale()
if g:GetCount()>0 and Duel.MoveToField(g:GetFirst(),tp,tp,LOCATION_SZONE,POS_FACEUP,true) then if g:GetCount()>0 and Duel.MoveToField(g:GetFirst(),tp,tp,LOCATION_PZONE,POS_FACEUP,true) then
local dg=Duel.GetMatchingGroup(nil,tp,LOCATION_ONFIELD,0,nil) local dg=Duel.GetMatchingGroup(nil,tp,LOCATION_ONFIELD,0,nil)
Duel.BreakEffect() Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
......
...@@ -136,6 +136,6 @@ function c47510233.tpop(e,tp,eg,ep,ev,re,r,rp) ...@@ -136,6 +136,6 @@ function c47510233.tpop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
...@@ -79,7 +79,7 @@ function c47510235.tpop(e,tp,eg,ep,ev,re,r,rp) ...@@ -79,7 +79,7 @@ function c47510235.tpop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
function c47510235.atktg(e,c) function c47510235.atktg(e,c)
......
...@@ -123,7 +123,7 @@ function c47510237.tpop(e,tp,eg,ep,ev,re,r,rp) ...@@ -123,7 +123,7 @@ function c47510237.tpop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
function c47510237.cost(e,tp,eg,ep,ev,re,r,rp,chk) function c47510237.cost(e,tp,eg,ep,ev,re,r,rp,chk)
......
...@@ -69,7 +69,7 @@ function c47510239.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -69,7 +69,7 @@ function c47510239.thop(e,tp,eg,ep,ev,re,r,rp)
if g:GetCount()>0 then if g:GetCount()>0 then
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
end end
......
...@@ -122,7 +122,7 @@ function c47510252.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -122,7 +122,7 @@ function c47510252.thop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,c47510252.penfilter,tp,LOCATION_EXTRA+LOCATION_GRAVE,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47510252.penfilter,tp,LOCATION_EXTRA+LOCATION_GRAVE,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
end end
...@@ -139,7 +139,7 @@ function c47510252.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -139,7 +139,7 @@ function c47510252.penop(e,tp,eg,ep,ev,re,r,rp)
if g:GetCount()>0 and Duel.SendtoHand(g,tp,REASON_EFFECT) then if g:GetCount()>0 and Duel.SendtoHand(g,tp,REASON_EFFECT) then
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
end end
...@@ -175,7 +175,7 @@ function c47510252.tfop(e,tp,eg,ep,ev,re,r,rp) ...@@ -175,7 +175,7 @@ function c47510252.tfop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,c47510252.tffilter,tp,LOCATION_GRAVE,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47510252.tffilter,tp,LOCATION_GRAVE,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
local e2=Effect.CreateEffect(tc) local e2=Effect.CreateEffect(tc)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetRange(LOCATION_SZONE) e2:SetRange(LOCATION_SZONE)
......
...@@ -172,6 +172,6 @@ end ...@@ -172,6 +172,6 @@ end
function c47510260.penop(e,tp,eg,ep,ev,re,r,rp) function c47510260.penop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetFieldGroup(tp,LOCATION_PZONE,0) local g=Duel.GetFieldGroup(tp,LOCATION_PZONE,0)
if Duel.Destroy(g,REASON_EFFECT)~=0 and e:GetHandler():IsRelateToEffect(e) then if Duel.Destroy(g,REASON_EFFECT)~=0 and e:GetHandler():IsRelateToEffect(e) then
Duel.MoveToField(e:GetHandler(),tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(e:GetHandler(),tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
--护国真龙 斯卡哈 --护国真龙 斯卡哈
function c47510269.initial_effect(c) function c47510269.initial_effect(c)
--revive limit --revive limit
aux.EnableReviveLimitPendulumSummonable(c,LOCATION_HAND+LOCATION_EXTRA) aux.EnableReviveLimitPendulumSummonable(c,LOCATION_HAND+LOCATION_EXTRA)
--pendulum summon --pendulum summon
aux.EnablePendulumAttribute(c) aux.EnablePendulumAttribute(c)
--special summon condition --special summon condition
local e0=Effect.CreateEffect(c) local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE) e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE) e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCode(EFFECT_SPSUMMON_CONDITION) e0:SetCode(EFFECT_SPSUMMON_CONDITION)
c:RegisterEffect(e0) c:RegisterEffect(e0)
--special summon --special summon
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_SPSUMMON_PROC) e1:SetCode(EFFECT_SPSUMMON_PROC)
e1:SetProperty(EFFECT_FLAG_UNCOPYABLE) e1:SetProperty(EFFECT_FLAG_UNCOPYABLE)
e1:SetRange(LOCATION_DECK) e1:SetRange(LOCATION_DECK)
e1:SetCondition(c47510269.spcon) e1:SetCondition(c47510269.spcon)
e1:SetOperation(c47510269.spop) e1:SetOperation(c47510269.spop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--spsummon limit --spsummon limit
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_SPSUMMON_SUCCESS) e2:SetCode(EVENT_SPSUMMON_SUCCESS)
e2:SetOperation(c47510269.regop) e2:SetOperation(c47510269.regop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--effect --effect
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(47510269,0)) e3:SetDescription(aux.Stringid(47510269,0))
e3:SetType(EFFECT_TYPE_TRIGGER_O+EFFECT_TYPE_SINGLE) e3:SetType(EFFECT_TYPE_TRIGGER_O+EFFECT_TYPE_SINGLE)
e3:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY) e3:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY)
e3:SetCode(EVENT_SPSUMMON_SUCCESS) e3:SetCode(EVENT_SPSUMMON_SUCCESS)
e3:SetCountLimit(1,47510269) e3:SetCountLimit(1,47510269)
e3:SetCondition(c47510269.tfcon) e3:SetCondition(c47510269.tfcon)
e3:SetTarget(c47510269.tftg) e3:SetTarget(c47510269.tftg)
e3:SetOperation(c47510269.tfop) e3:SetOperation(c47510269.tfop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
--rehand --rehand
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(47510269,2)) e4:SetDescription(aux.Stringid(47510269,2))
e4:SetCategory(CATEGORY_TOHAND) e4:SetCategory(CATEGORY_TOHAND)
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e4:SetCode(EVENT_LEAVE_FIELD) e4:SetCode(EVENT_LEAVE_FIELD)
e4:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e4:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e4:SetRange(LOCATION_EXTRA) e4:SetRange(LOCATION_EXTRA)
e4:SetCountLimit(1,47510269) e4:SetCountLimit(1,47510269)
e4:SetCondition(c47510269.thcon) e4:SetCondition(c47510269.thcon)
e4:SetTarget(c47510269.thtg) e4:SetTarget(c47510269.thtg)
e4:SetOperation(c47510269.thop) e4:SetOperation(c47510269.thop)
c:RegisterEffect(e4) c:RegisterEffect(e4)
--splimit --splimit
local e5=Effect.CreateEffect(c) local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_FIELD) e5:SetType(EFFECT_TYPE_FIELD)
e5:SetRange(LOCATION_PZONE) e5:SetRange(LOCATION_PZONE)
e5:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON) e5:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e5:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CANNOT_DISABLE) e5:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CANNOT_DISABLE)
e5:SetTargetRange(1,0) e5:SetTargetRange(1,0)
e5:SetTarget(c47510269.splimit1) e5:SetTarget(c47510269.splimit1)
c:RegisterEffect(e5) c:RegisterEffect(e5)
--to hand --to hand
local e6=Effect.CreateEffect(c) local e6=Effect.CreateEffect(c)
e6:SetDescription(aux.Stringid(47510269,1)) e6:SetDescription(aux.Stringid(47510269,1))
e6:SetCategory(CATEGORY_DESTROY+CATEGORY_TOHAND) e6:SetCategory(CATEGORY_DESTROY+CATEGORY_TOHAND)
e6:SetType(EFFECT_TYPE_IGNITION) e6:SetType(EFFECT_TYPE_IGNITION)
e6:SetProperty(EFFECT_FLAG_CARD_TARGET) e6:SetProperty(EFFECT_FLAG_CARD_TARGET)
e6:SetRange(LOCATION_PZONE) e6:SetRange(LOCATION_PZONE)
e6:SetCountLimit(1,47510270) e6:SetCountLimit(1,47510270)
e6:SetCost(c47510269.descost) e6:SetCost(c47510269.descost)
e6:SetTarget(c47510269.destg) e6:SetTarget(c47510269.destg)
e6:SetOperation(c47510269.desop) e6:SetOperation(c47510269.desop)
c:RegisterEffect(e6) c:RegisterEffect(e6)
Duel.AddCustomActivityCounter(47510269,ACTIVITY_SPSUMMON,c47510269.counterfilter) Duel.AddCustomActivityCounter(47510269,ACTIVITY_SPSUMMON,c47510269.counterfilter)
end end
function c47510269.counterfilter(c) function c47510269.counterfilter(c)
return c:IsType(TYPE_PENDULUM) return c:IsType(TYPE_PENDULUM)
end end
function c47510269.splimit1(e,c,tp,sumtp,sumpos) function c47510269.splimit1(e,c,tp,sumtp,sumpos)
return not c:IsType(TYPE_PENDULUM) return not c:IsType(TYPE_PENDULUM)
end end
function c47510269.rfilter(c,tp) function c47510269.rfilter(c,tp)
return c:IsType(TYPE_PENDULUM) and (c:IsControler(tp) or c:IsFaceup()) return c:IsType(TYPE_PENDULUM) and (c:IsControler(tp) or c:IsFaceup())
end end
function c47510269.mzfilter(c,tp) function c47510269.mzfilter(c,tp)
return c:IsControler(tp) and c:GetSequence()<5 return c:IsControler(tp) and c:GetSequence()<5
end end
function c47510269.spcon(e,c) function c47510269.spcon(e,c)
if c==nil then return true end if c==nil then return true end
local tp=c:GetControler() local tp=c:GetControler()
local g=Duel.GetMatchingGroup(c47510269.rfilter,tp,LOCATION_ONFIELD,0,nil) local g=Duel.GetMatchingGroup(c47510269.rfilter,tp,LOCATION_ONFIELD,0,nil)
return g:IsExists(c47510269.rfilter,3,nil,tp,g) and c:IsFacedown() return g:IsExists(c47510269.rfilter,3,nil,tp,g) and c:IsFacedown()
end end
function c47510269.spop(e,tp,eg,ep,ev,re,r,rp,c) function c47510269.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Duel.GetMatchingGroup(c47510269.rfilter,tp,LOCATION_ONFIELD,0,nil) local g=Duel.GetMatchingGroup(c47510269.rfilter,tp,LOCATION_ONFIELD,0,nil)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g1=g:FilterSelect(tp,c47510269.rfilter,3,3,nil,tp,g) local g1=g:FilterSelect(tp,c47510269.rfilter,3,3,nil,tp,g)
local cg=g1:Filter(Card.IsFacedown,nil) local cg=g1:Filter(Card.IsFacedown,nil)
if cg:GetCount()>0 then if cg:GetCount()>0 then
Duel.ConfirmCards(1-tp,cg) Duel.ConfirmCards(1-tp,cg)
end end
Duel.Release(g1,REASON_COST) Duel.Release(g1,REASON_COST)
end end
function c47510269.regop(e,tp,eg,ep,ev,re,r,rp) function c47510269.regop(e,tp,eg,ep,ev,re,r,rp)
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON) e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetTargetRange(1,0) e1:SetTargetRange(1,0)
e1:SetTarget(c47510269.splimit) e1:SetTarget(c47510269.splimit)
e1:SetReset(RESET_PHASE+PHASE_END) e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp) Duel.RegisterEffect(e1,tp)
end end
function c47510269.splimit(e,c,sump,sumtype,sumpos,targetp,se) function c47510269.splimit(e,c,sump,sumtype,sumpos,targetp,se)
return not c:IsType(TYPE_PENDULUM) return not c:IsType(TYPE_PENDULUM)
end end
function c47510269.tfcon(e,tp,eg,ep,ev,re,r,rp) function c47510269.tfcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsPreviousLocation(LOCATION_DECK) return e:GetHandler():IsPreviousLocation(LOCATION_DECK)
end end
function c47510269.tffilter(c) function c47510269.tffilter(c)
return not c:IsForbidden() and c:IsType(TYPE_PENDULUM) return not c:IsForbidden() and c:IsType(TYPE_PENDULUM)
end end
function c47510269.tftg(e,tp,eg,ep,ev,re,r,rp,chk) function c47510269.tftg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c47510269.tffilter,tp,LOCATION_DECK,0,1,nil) and (Duel.CheckLocation(tp,LOCATION_PZONE,0) or Duel.CheckLocation(tp,LOCATION_PZONE,1)) end if chk==0 then return Duel.IsExistingMatchingCard(c47510269.tffilter,tp,LOCATION_DECK,0,1,nil) and (Duel.CheckLocation(tp,LOCATION_PZONE,0) or Duel.CheckLocation(tp,LOCATION_PZONE,1)) end
end end
function c47510269.tfop(e,tp,eg,ep,ev,re,r,rp) function c47510269.tfop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c47510269.tffilter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47510269.tffilter,tp,LOCATION_DECK,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetCode(EFFECT_CHANGE_TYPE) e1:SetCode(EFFECT_CHANGE_TYPE)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD-RESET_TURN_SET) e1:SetReset(RESET_EVENT+RESETS_STANDARD-RESET_TURN_SET)
e1:SetValue(TYPE_SPELL+TYPE_CONTINUOUS) e1:SetValue(TYPE_SPELL+TYPE_CONTINUOUS)
tc:RegisterEffect(e1) tc:RegisterEffect(e1)
local e2=Effect.CreateEffect(e:GetHandler()) local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetRange(LOCATION_SZONE) e2:SetRange(LOCATION_SZONE)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_CANNOT_DISABLE) e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_CANNOT_DISABLE)
e2:SetCode(EFFECT_LINK_SPELL_KOISHI) e2:SetCode(EFFECT_LINK_SPELL_KOISHI)
e2:SetValue(LINK_MARKER_TOP+LINK_MARKER_TOP_LEFT+LINK_MARKER_TOP_RIGHT) e2:SetValue(LINK_MARKER_TOP+LINK_MARKER_TOP_LEFT+LINK_MARKER_TOP_RIGHT)
e2:SetReset(RESET_EVENT+RESETS_STANDARD-RESET_TURN_SET) e2:SetReset(RESET_EVENT+RESETS_STANDARD-RESET_TURN_SET)
tc:RegisterEffect(e2) tc:RegisterEffect(e2)
end end
end end
function c47510269.drcfilter(c,tp) function c47510269.drcfilter(c,tp)
return c:IsPreviousLocation(LOCATION_PZONE) and c:GetPreviousControler()==tp return c:IsPreviousLocation(LOCATION_PZONE) and c:GetPreviousControler()==tp
end end
function c47510269.thcon(e,tp,eg,ep,ev,re,r,rp) function c47510269.thcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(c47510269.drcfilter,1,nil,tp) return eg:IsExists(c47510269.drcfilter,1,nil,tp)
end end
function c47510269.thtg(e,tp,eg,ep,ev,re,r,rp,chk) function c47510269.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return eg:IsExists(c47510269.drcfilter,1,nil,tp) end if chk==0 then return eg:IsExists(c47510269.drcfilter,1,nil,tp) end
local g=eg:Filter(c47510269.drcfilter,nil,tp) local g=eg:Filter(c47510269.drcfilter,nil,tp)
Duel.SetTargetCard(g) Duel.SetTargetCard(g)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,g:GetCount(),tp,LOCATION_GRAVE+LOCATION_REMOVED+LOCATION_EXTRA+LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,g:GetCount(),tp,LOCATION_GRAVE+LOCATION_REMOVED+LOCATION_EXTRA+LOCATION_DECK)
end end
function c47510269.thop(e,tp,eg,ep,ev,re,r,rp) function c47510269.thop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local g=eg:Filter(c47510269.drcfilter,nil,tp) local g=eg:Filter(c47510269.drcfilter,nil,tp)
if g:GetCount()>0 and Duel.SendtoHand(g,nil,REASON_EFFECT) then if g:GetCount()>0 and Duel.SendtoHand(g,nil,REASON_EFFECT) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetCode(EFFECT_CHANGE_TYPE) e1:SetCode(EFFECT_CHANGE_TYPE)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD-RESET_TURN_SET) e1:SetReset(RESET_EVENT+RESETS_STANDARD-RESET_TURN_SET)
e1:SetValue(TYPE_SPELL+TYPE_CONTINUOUS) e1:SetValue(TYPE_SPELL+TYPE_CONTINUOUS)
c:RegisterEffect(e1) c:RegisterEffect(e1)
local e2=Effect.CreateEffect(e:GetHandler()) local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetRange(LOCATION_SZONE) e2:SetRange(LOCATION_SZONE)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_CANNOT_DISABLE) e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_CANNOT_DISABLE)
e2:SetCode(EFFECT_LINK_SPELL_KOISHI) e2:SetCode(EFFECT_LINK_SPELL_KOISHI)
e2:SetValue(LINK_MARKER_TOP+LINK_MARKER_TOP_LEFT+LINK_MARKER_TOP_RIGHT) e2:SetValue(LINK_MARKER_TOP+LINK_MARKER_TOP_LEFT+LINK_MARKER_TOP_RIGHT)
e2:SetReset(RESET_EVENT+RESETS_STANDARD-RESET_TURN_SET) e2:SetReset(RESET_EVENT+RESETS_STANDARD-RESET_TURN_SET)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
end end
function c47510269.descost(e,tp,eg,ep,ev,re,r,rp,chk) function c47510269.descost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetCustomActivityCount(47510269,tp,ACTIVITY_SPSUMMON)==0 end if chk==0 then return Duel.GetCustomActivityCount(47510269,tp,ACTIVITY_SPSUMMON)==0 end
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_OATH) e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_OATH)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON) e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetReset(RESET_PHASE+PHASE_END) e1:SetReset(RESET_PHASE+PHASE_END)
e1:SetTargetRange(1,0) e1:SetTargetRange(1,0)
e1:SetTarget(c47510269.splimit) e1:SetTarget(c47510269.splimit)
Duel.RegisterEffect(e1,tp) Duel.RegisterEffect(e1,tp)
end end
function c47510269.splimit2(e,c,sump,sumtype,sumpos,targetp,se) function c47510269.splimit2(e,c,sump,sumtype,sumpos,targetp,se)
return not c:IsType(TYPE_PENDULUM) return not c:IsType(TYPE_PENDULUM)
end end
function c47510269.desfilter(c) function c47510269.desfilter(c)
return c:IsFaceup() and c:IsType(TYPE_PENDULUM) return c:IsFaceup() and c:IsType(TYPE_PENDULUM)
end end
function c47510269.tpfilter(c) function c47510269.tpfilter(c)
return c:IsFaceup() and c:IsType(TYPE_PENDULUM) and c:IsAbleToHand() return c:IsFaceup() and c:IsType(TYPE_PENDULUM) and c:IsAbleToHand()
end end
function c47510269.destg(e,tp,eg,ep,ev,re,r,rp,chk) function c47510269.destg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return Duel.IsExistingTarget(c47510269.desfilter,tp,LOCATION_ONFIELD,0,1,c) and Duel.IsExistingMatchingCard(c47510269.tpfilter,tp,LOCATION_EXTRA,0,1,nil) end if chk==0 then return Duel.IsExistingTarget(c47510269.desfilter,tp,LOCATION_ONFIELD,0,1,c) and Duel.IsExistingMatchingCard(c47510269.tpfilter,tp,LOCATION_EXTRA,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,Card.IsType,tp,LOCATION_ONFIELD,0,1,1,c,TYPE_PENDULUM) local g=Duel.SelectTarget(tp,Card.IsType,tp,LOCATION_ONFIELD,0,1,1,c,TYPE_PENDULUM)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_EXTRA) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_EXTRA)
end end
function c47510269.desop(e,tp,eg,ep,ev,re,r,rp) function c47510269.desop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
local c=e:GetHandler() local c=e:GetHandler()
if tc:IsRelateToEffect(e) and Duel.Destroy(tc,REASON_EFFECT)~=0 then if tc:IsRelateToEffect(e) and Duel.Destroy(tc,REASON_EFFECT)~=0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c47510269.tpfilter,tp,LOCATION_EXTRA,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47510269.tpfilter,tp,LOCATION_EXTRA,0,1,1,nil)
Duel.SendtoHand(g,tp,REASON_EFFECT) Duel.SendtoHand(g,tp,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g) Duel.ConfirmCards(1-tp,g)
Duel.BreakEffect() Duel.BreakEffect()
local g1=Duel.GetMatchingGroup(c47510269.desfilter,tp,LOCATION_PZONE,0,nil) local g1=Duel.GetMatchingGroup(c47510269.desfilter,tp,LOCATION_PZONE,0,nil)
local tc1=g1:GetFirst() local tc1=g1:GetFirst()
while tc1 do while tc1 do
local e2=Effect.CreateEffect(tc1) local e2=Effect.CreateEffect(tc1)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetRange(LOCATION_SZONE) e2:SetRange(LOCATION_SZONE)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_CANNOT_DISABLE) e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_CANNOT_DISABLE)
e2:SetCode(EFFECT_LINK_SPELL_KOISHI) e2:SetCode(EFFECT_LINK_SPELL_KOISHI)
e2:SetValue(LINK_MARKER_TOP+LINK_MARKER_TOP_LEFT+LINK_MARKER_TOP_RIGHT) e2:SetValue(LINK_MARKER_TOP+LINK_MARKER_TOP_LEFT+LINK_MARKER_TOP_RIGHT)
e2:SetReset(RESET_EVENT+RESETS_STANDARD) e2:SetReset(RESET_EVENT+RESETS_STANDARD)
tc1:RegisterEffect(e2) tc1:RegisterEffect(e2)
tc1=g1:GetNext() tc1=g1:GetNext()
end end
end end
end end
\ No newline at end of file
...@@ -144,11 +144,11 @@ end ...@@ -144,11 +144,11 @@ end
function c47510280.penop(e,tp,eg,ep,ev,re,r,rp) function c47510280.penop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetFieldGroup(tp,LOCATION_ONFIELD,0) local g=Duel.GetFieldGroup(tp,LOCATION_ONFIELD,0)
if Duel.Destroy(g,REASON_EFFECT)~=0 and e:GetHandler():IsRelateToEffect(e) then if Duel.Destroy(g,REASON_EFFECT)~=0 and e:GetHandler():IsRelateToEffect(e) then
if Duel.MoveToField(e:GetHandler(),tp,tp,LOCATION_SZONE,POS_FACEUP,true)~=0 then if Duel.MoveToField(e:GetHandler(),tp,tp,LOCATION_PZONE,POS_FACEUP,true)~=0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD)
local g=Duel.SelectMatchingCard(tp,c47510280.pcfilter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47510280.pcfilter,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.MoveToField(g:GetFirst(),tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(g:GetFirst(),tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
end end
......
--魔法少女 美杜莎 --魔法少女 美杜莎
function c47510402.initial_effect(c) function c47510402.initial_effect(c)
aux.EnablePendulumAttribute(c) aux.EnablePendulumAttribute(c)
c:EnableCounterPermit(0x1) c:EnableCounterPermit(0x1)
--P SET --P SET
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(47510402,0)) e1:SetDescription(aux.Stringid(47510402,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_IGNITION) e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_PZONE) e1:SetRange(LOCATION_PZONE)
e1:SetCountLimit(1,47510402) e1:SetCountLimit(1,47510402)
e1:SetCondition(c47510402.pencon) e1:SetCondition(c47510402.pencon)
e1:SetTarget(c47510402.pentg) e1:SetTarget(c47510402.pentg)
e1:SetOperation(c47510402.penop) e1:SetOperation(c47510402.penop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--search --search
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH) e2:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e2:SetDescription(aux.Stringid(47510402,1)) e2:SetDescription(aux.Stringid(47510402,1))
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_SPSUMMON_SUCCESS) e2:SetCode(EVENT_SPSUMMON_SUCCESS)
e2:SetProperty(EFFECT_FLAG_DELAY) e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetCountLimit(1,47510403) e2:SetCountLimit(1,47510403)
e2:SetTarget(c47510402.thtg) e2:SetTarget(c47510402.thtg)
e2:SetOperation(c47510402.thop) e2:SetOperation(c47510402.thop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--add counter --add counter
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD) e3:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e3:SetCode(EVENT_CHAINING) e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetOperation(aux.chainreg) e3:SetOperation(aux.chainreg)
c:RegisterEffect(e3) c:RegisterEffect(e3)
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e4:SetCode(EVENT_CHAIN_SOLVED) e4:SetCode(EVENT_CHAIN_SOLVED)
e4:SetRange(LOCATION_MZONE) e4:SetRange(LOCATION_MZONE)
e4:SetOperation(c47510402.acop) e4:SetOperation(c47510402.acop)
c:RegisterEffect(e4) c:RegisterEffect(e4)
--remove --remove
local e5=Effect.CreateEffect(c) local e5=Effect.CreateEffect(c)
e5:SetDescription(aux.Stringid(47510402,1)) e5:SetDescription(aux.Stringid(47510402,1))
e5:SetCategory(CATEGORY_ATKCHANGE+CATEGORY_REMOVE) e5:SetCategory(CATEGORY_ATKCHANGE+CATEGORY_REMOVE)
e5:SetType(EFFECT_TYPE_QUICK_O) e5:SetType(EFFECT_TYPE_QUICK_O)
e5:SetProperty(EFFECT_FLAG_CARD_TARGET) e5:SetProperty(EFFECT_FLAG_CARD_TARGET)
e5:SetCode(EVENT_FREE_CHAIN) e5:SetCode(EVENT_FREE_CHAIN)
e5:SetRange(LOCATION_MZONE) e5:SetRange(LOCATION_MZONE)
e5:SetCountLimit(1,47510404) e5:SetCountLimit(1,47510404)
e5:SetCost(c47510402.skcost) e5:SetCost(c47510402.skcost)
e5:SetTarget(c47510402.sktg) e5:SetTarget(c47510402.sktg)
e5:SetOperation(c47510402.skop) e5:SetOperation(c47510402.skop)
c:RegisterEffect(e5) c:RegisterEffect(e5)
end end
function c47510402.pencon(e,tp,eg,ep,ev,re,r,rp) function c47510402.pencon(e,tp,eg,ep,ev,re,r,rp)
return not Duel.IsExistingMatchingCard(nil,tp,LOCATION_PZONE,0,1,e:GetHandler()) return not Duel.IsExistingMatchingCard(nil,tp,LOCATION_PZONE,0,1,e:GetHandler())
end end
function c47510402.penfilter(c) function c47510402.penfilter(c)
return c:IsCanAddCounter(0x1,1,false,LOCATION_ONFIELD) and c:IsType(TYPE_PENDULUM) and not c:IsForbidden() and (c:IsFaceup() or not c:IsLocation(LOCATION_EXTRA)) return c:IsCanAddCounter(0x1,1,false,LOCATION_ONFIELD) and c:IsType(TYPE_PENDULUM) and not c:IsForbidden() and (c:IsFaceup() or not c:IsLocation(LOCATION_EXTRA))
end end
function c47510402.pentg(e,tp,eg,ep,ev,re,r,rp,chk) function c47510402.pentg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c47510402.penfilter,tp,LOCATION_HAND+LOCATION_DECK+LOCATION_EXTRA,0,1,nil) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end if chk==0 then return Duel.IsExistingMatchingCard(c47510402.penfilter,tp,LOCATION_HAND+LOCATION_DECK+LOCATION_EXTRA,0,1,nil) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
end end
function c47510402.penop(e,tp,eg,ep,ev,re,r,rp) function c47510402.penop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD)
local g=Duel.SelectMatchingCard(tp,c47510402.penfilter,tp,LOCATION_DECK+LOCATION_HAND+LOCATION_EXTRA,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47510402.penfilter,tp,LOCATION_DECK+LOCATION_HAND+LOCATION_EXTRA,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc and Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) and c:IsRelateToEffect(e) then if tc and Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true) and c:IsRelateToEffect(e) then
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
tc:AddCounter(0x1,3) tc:AddCounter(0x1,3)
end end
end end
function c47510402.thfilter(c) function c47510402.thfilter(c)
return c:IsCanAddCounter(0x1,1,false,LOCATION_FZONE) and c:IsType(TYPE_FIELD) and not c:IsForbidden() return c:IsCanAddCounter(0x1,1,false,LOCATION_FZONE) and c:IsType(TYPE_FIELD) and not c:IsForbidden()
end end
function c47510402.thtg(e,tp,eg,ep,ev,re,r,rp,chk) function c47510402.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c47510402.thfilter,tp,LOCATION_DECK,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(c47510402.thfilter,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end end
function c47510402.thop(e,tp,eg,ep,ev,re,r,rp) function c47510402.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c47510402.thfilter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47510402.thfilter,tp,LOCATION_DECK,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
function c47510402.skcost(e,tp,eg,ep,ev,re,r,rp,chk) function c47510402.skcost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return Duel.IsCanRemoveCounter(tp,1,0,0x1,4,REASON_COST) end if chk==0 then return Duel.IsCanRemoveCounter(tp,1,0,0x1,4,REASON_COST) end
Duel.RemoveCounter(tp,1,0,0x1,4,REASON_COST) Duel.RemoveCounter(tp,1,0,0x1,4,REASON_COST)
end end
function c47510402.skfilter(c) function c47510402.skfilter(c)
return c:IsType(TYPE_MONSTER) return c:IsType(TYPE_MONSTER)
end end
function c47510402.sktg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c47510402.sktg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and c47510402.rmfilter(chkc) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and c47510402.rmfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c47510402.rmfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,e:GetHandler()) end if chk==0 then return Duel.IsExistingTarget(c47510402.rmfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,e:GetHandler()) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g=Duel.SelectTarget(tp,c47510402.rmfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,e:GetHandler()) local g=Duel.SelectTarget(tp,c47510402.rmfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,e:GetHandler())
end end
function c47510402.skop(e,tp,eg,ep,ev,re,r,rp) function c47510402.skop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc:IsFaceup() and tc:IsRelateToEffect(e) then if tc:IsFaceup() and tc:IsRelateToEffect(e) then
Duel.NegateRelatedChain(tc,RESET_TURN_SET) Duel.NegateRelatedChain(tc,RESET_TURN_SET)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_IMMUNE_EFFECT) e1:SetCode(EFFECT_IMMUNE_EFFECT)
e1:SetValue(c47510402.efilter) e1:SetValue(c47510402.efilter)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1) tc:RegisterEffect(e1)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_DISABLE) e2:SetCode(EFFECT_DISABLE)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e2) tc:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE) e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetCode(EFFECT_DISABLE_EFFECT) e3:SetCode(EFFECT_DISABLE_EFFECT)
e3:SetValue(RESET_TURN_SET) e3:SetValue(RESET_TURN_SET)
e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e3) tc:RegisterEffect(e3)
local e4=e3:Clone() local e4=e3:Clone()
e4:SetCode(EFFECT_CANNOT_TRIGGER) e4:SetCode(EFFECT_CANNOT_TRIGGER)
tc:RegisterEffect(e4) tc:RegisterEffect(e4)
local e5=e3:Clone() local e5=e3:Clone()
e5:SetCode(EFFECT_INDESTRUCTABLE_BATTLE) e5:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e5:SetValue(1) e5:SetValue(1)
tc:RegisterEffect(e5) tc:RegisterEffect(e5)
local e6=e5:Clone() local e6=e5:Clone()
e6:SetCode(EFFECT_CANNOT_ATTACK) e6:SetCode(EFFECT_CANNOT_ATTACK)
tc:RegisterEffect(e6) tc:RegisterEffect(e6)
end end
end end
function c47510402.efilter(e,te) function c47510402.efilter(e,te)
return te:GetOwner()~=e:GetOwner() return te:GetOwner()~=e:GetOwner()
end end
function c47510402.acfilter(c) function c47510402.acfilter(c)
return c:IsFaceup() and c:IsCanAddCounter(0x1,1) return c:IsFaceup() and c:IsCanAddCounter(0x1,1)
end end
function c47510402.acop(e,tp,eg,ep,ev,re,r,rp) function c47510402.acop(e,tp,eg,ep,ev,re,r,rp)
if re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:IsActiveType(TYPE_SPELL) and e:GetHandler():GetFlagEffect(1)>0 then if re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:IsActiveType(TYPE_SPELL) and e:GetHandler():GetFlagEffect(1)>0 then
local g=Duel.GetMatchingGroup(c47510402.acfilter,tp,LOCATION_ONFIELD,0,nil) local g=Duel.GetMatchingGroup(c47510402.acfilter,tp,LOCATION_ONFIELD,0,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
while tc do while tc do
tc:AddCounter(0x1,1) tc:AddCounter(0x1,1)
tc=g:GetNext() tc=g:GetNext()
end end
end end
end end
\ No newline at end of file
...@@ -125,6 +125,6 @@ function c47511000.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -125,6 +125,6 @@ function c47511000.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
--守护的战女神 雅典娜 --守护的战女神 雅典娜
function c47514896.initial_effect(c) function c47514896.initial_effect(c)
aux.AddXyzProcedureLevelFree(c,c47514896.mfilter,nil,2,2) aux.AddXyzProcedureLevelFree(c,c47514896.mfilter,nil,2,2)
c:EnableReviveLimit() c:EnableReviveLimit()
--pendulum summon --pendulum summon
aux.EnablePendulumAttribute(c,false) aux.EnablePendulumAttribute(c,false)
--splimit --splimit
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_FIELD)
e1:SetRange(LOCATION_PZONE) e1:SetRange(LOCATION_PZONE)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON) e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE) e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE)
e1:SetTargetRange(1,0) e1:SetTargetRange(1,0)
e1:SetTarget(c47514896.psplimit) e1:SetTarget(c47514896.psplimit)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--pendulum set --pendulum set
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(47514896,0)) e2:SetDescription(aux.Stringid(47514896,0))
e2:SetCategory(CATEGORY_DESTROY) e2:SetCategory(CATEGORY_DESTROY)
e2:SetType(EFFECT_TYPE_IGNITION) e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_PZONE) e2:SetRange(LOCATION_PZONE)
e2:SetCountLimit(1,47514896) e2:SetCountLimit(1,47514896)
e2:SetCondition(c47514896.pencon) e2:SetCondition(c47514896.pencon)
e2:SetTarget(c47514896.pentg) e2:SetTarget(c47514896.pentg)
e2:SetOperation(c47514896.penop) e2:SetOperation(c47514896.penop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--serch --serch
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(47514896,1)) e3:SetDescription(aux.Stringid(47514896,1))
e3:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH) e3:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e3:SetCode(EVENT_SPSUMMON_SUCCESS) e3:SetCode(EVENT_SPSUMMON_SUCCESS)
e3:SetProperty(EFFECT_FLAG_DELAY) e3:SetProperty(EFFECT_FLAG_DELAY)
e3:SetCountLimit(1,47514897) e3:SetCountLimit(1,47514897)
e3:SetCondition(c47514896.thcon) e3:SetCondition(c47514896.thcon)
e3:SetTarget(c47514896.thtg) e3:SetTarget(c47514896.thtg)
e3:SetOperation(c47514896.thop) e3:SetOperation(c47514896.thop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
--act limit --act limit
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e4:SetCode(EVENT_CHAINING) e4:SetCode(EVENT_CHAINING)
e4:SetRange(LOCATION_MZONE) e4:SetRange(LOCATION_MZONE)
e4:SetOperation(c47514896.chainop) e4:SetOperation(c47514896.chainop)
c:RegisterEffect(e4) c:RegisterEffect(e4)
--apply effect --apply effect
local e5=Effect.CreateEffect(c) local e5=Effect.CreateEffect(c)
e5:SetDescription(aux.Stringid(47514896,2)) e5:SetDescription(aux.Stringid(47514896,2))
e5:SetType(EFFECT_TYPE_QUICK_O) e5:SetType(EFFECT_TYPE_QUICK_O)
e5:SetRange(LOCATION_MZONE) e5:SetRange(LOCATION_MZONE)
e5:SetCode(EVENT_FREE_CHAIN) e5:SetCode(EVENT_FREE_CHAIN)
e5:SetCost(c47514896.effcost) e5:SetCost(c47514896.effcost)
e5:SetTarget(c47514896.efftg) e5:SetTarget(c47514896.efftg)
e5:SetOperation(c47514896.effop) e5:SetOperation(c47514896.effop)
c:RegisterEffect(e5) c:RegisterEffect(e5)
--spsummon bgm --spsummon bgm
local e8=Effect.CreateEffect(c) local e8=Effect.CreateEffect(c)
e8:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS) e8:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e8:SetCode(EVENT_SPSUMMON_SUCCESS) e8:SetCode(EVENT_SPSUMMON_SUCCESS)
e8:SetOperation(c47514896.sumsuc) e8:SetOperation(c47514896.sumsuc)
c:RegisterEffect(e8) c:RegisterEffect(e8)
end end
c47514896.pendulum_level=8 c47514896.pendulum_level=8
function c47514896.mfilter(c) function c47514896.mfilter(c)
return c:IsSetCard(0x5da) return c:IsSetCard(0x5da)
end end
function c47514896.pefilter(c) function c47514896.pefilter(c)
return c:IsRace(RACE_FAIRY) or c:IsSetCard(0x5da) or c:IsAttribute(ATTRIBUTE_FIRE) return c:IsRace(RACE_FAIRY) or c:IsSetCard(0x5da) or c:IsAttribute(ATTRIBUTE_FIRE)
end end
function c47514896.psplimit(e,c,tp,sumtp,sumpos) function c47514896.psplimit(e,c,tp,sumtp,sumpos)
return not c47514896.pefilter(c) and bit.band(sumtp,SUMMON_TYPE_PENDULUM)==SUMMON_TYPE_PENDULUM return not c47514896.pefilter(c) and bit.band(sumtp,SUMMON_TYPE_PENDULUM)==SUMMON_TYPE_PENDULUM
end end
function c47514896.cfilter(c) function c47514896.cfilter(c)
return c:IsType(TYPE_PENDULUM) return c:IsType(TYPE_PENDULUM)
end end
function c47514896.pencon(e,tp,eg,ep,ev,re,r,rp) function c47514896.pencon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(c47514896.cfilter,tp,LOCATION_PZONE,0,1,e:GetHandler()) return Duel.IsExistingMatchingCard(c47514896.cfilter,tp,LOCATION_PZONE,0,1,e:GetHandler())
end end
function c47514896.penfilter(c) function c47514896.penfilter(c)
return c:IsType(TYPE_PENDULUM) and not c:IsForbidden() return c:IsType(TYPE_PENDULUM) and not c:IsForbidden()
end end
function c47514896.pentg(e,tp,eg,ep,ev,re,r,rp,chk) function c47514896.pentg(e,tp,eg,ep,ev,re,r,rp,chk)
local sc=Duel.GetFirstMatchingCard(nil,tp,LOCATION_PZONE,0,e:GetHandler()) local sc=Duel.GetFirstMatchingCard(nil,tp,LOCATION_PZONE,0,e:GetHandler())
if chk==0 then return e:GetHandler():IsDestructable() if chk==0 then return e:GetHandler():IsDestructable()
and Duel.IsExistingMatchingCard(c47514896.penfilter,tp,LOCATION_EXTRA,0,1,nil) end and Duel.IsExistingMatchingCard(c47514896.penfilter,tp,LOCATION_EXTRA,0,1,nil) end
Duel.SetTargetCard(sc) Duel.SetTargetCard(sc)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,sc,1,0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,sc,1,0,0)
end end
function c47514896.penop(e,tp,eg,ep,ev,re,r,rp) function c47514896.penop(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end if not e:GetHandler():IsRelateToEffect(e) then return end
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and Duel.Destroy(tc,REASON_EFFECT)~=0 then if tc:IsRelateToEffect(e) and Duel.Destroy(tc,REASON_EFFECT)~=0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD)
local g=Duel.SelectMatchingCard(tp,c47514896.penfilter,tp,LOCATION_EXTRA,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47514896.penfilter,tp,LOCATION_EXTRA,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
end end
function c47514896.thcon(e,tp,eg,ep,ev,re,r,rp) function c47514896.thcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_XYZ) return e:GetHandler():IsSummonType(SUMMON_TYPE_XYZ)
end end
function c47514896.thfilter(c) function c47514896.thfilter(c)
return (c:IsSetCard(0x5da) or c:IsSetCard(0x5de) or c:IsSetCard(0x5d0)) and c:IsType(TYPE_PENDULUM) and c:IsAbleToHand() and c:IsFaceup() return (c:IsSetCard(0x5da) or c:IsSetCard(0x5de) or c:IsSetCard(0x5d0)) and c:IsType(TYPE_PENDULUM) and c:IsAbleToHand() and c:IsFaceup()
end end
function c47514896.thtg(e,tp,eg,ep,ev,re,r,rp,chk) function c47514896.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c47514896.thfilter,tp,LOCATION_EXTRA,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(c47514896.thfilter,tp,LOCATION_EXTRA,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_EXTRA) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_EXTRA)
end end
function c47514896.thop(e,tp,eg,ep,ev,re,r,rp) function c47514896.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c47514896.thfilter,tp,LOCATION_EXTRA,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47514896.thfilter,tp,LOCATION_EXTRA,0,1,1,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT) Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g) Duel.ConfirmCards(1-tp,g)
end end
end end
function c47514896.chainop(e,tp,eg,ep,ev,re,r,rp) function c47514896.chainop(e,tp,eg,ep,ev,re,r,rp)
if re:GetHandler():IsType(TYPE_PENDULUM) and re:IsActiveType(TYPE_SPELL) and ep==tp then if re:GetHandler():IsType(TYPE_PENDULUM) and re:IsActiveType(TYPE_SPELL) and ep==tp then
Duel.SetChainLimit(c47514896.chainlm) Duel.SetChainLimit(c47514896.chainlm)
end end
end end
function c47514896.chainlm(e,rp,tp) function c47514896.chainlm(e,rp,tp)
return tp==rp return tp==rp
end end
function c47514896.effcost(e,tp,eg,ep,ev,re,r,rp,chk) function c47514896.effcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST) e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
end end
function c47514896.efffilter(c,e,tp,eg,ep,ev,re,r,rp) function c47514896.efffilter(c,e,tp,eg,ep,ev,re,r,rp)
local m=_G["c"..c:GetCode()] local m=_G["c"..c:GetCode()]
local te=m.ss_effect local te=m.ss_effect
if not te then return false end if not te then return false end
local tg=te:GetTarget() local tg=te:GetTarget()
return c:IsSetCard(0x5da) and c:IsType(TYPE_PENDULUM) and (not tg or tg and tg(e,tp,eg,ep,ev,re,r,rp,0)) return c:IsSetCard(0x5da) and c:IsType(TYPE_PENDULUM) and (not tg or tg and tg(e,tp,eg,ep,ev,re,r,rp,0))
end end
function c47514896.efftg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c47514896.efftg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE+LOCATION_EXTRA+LOCATION_REMOVED) and chkc:IsControler(tp) and c47514896.efffilter(chkc,e,tp,eg,ep,ev,re,r,rp) end if chkc then return chkc:IsLocation(LOCATION_GRAVE+LOCATION_EXTRA+LOCATION_REMOVED) and chkc:IsControler(tp) and c47514896.efffilter(chkc,e,tp,eg,ep,ev,re,r,rp) end
if chk==0 then return Duel.IsExistingTarget(c47514896.efffilter,tp,LOCATION_GRAVE+LOCATION_EXTRA+LOCATION_REMOVED,0,1,nil,e,tp,eg,ep,ev,re,r,rp) end if chk==0 then return Duel.IsExistingTarget(c47514896.efffilter,tp,LOCATION_GRAVE+LOCATION_EXTRA+LOCATION_REMOVED,0,1,nil,e,tp,eg,ep,ev,re,r,rp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
local g=Duel.SelectTarget(tp,c47514896.efffilter,tp,LOCATION_GRAVE+LOCATION_EXTRA+LOCATION_REMOVED,0,1,1,nil,e,tp,eg,ep,ev,re,r,rp) local g=Duel.SelectTarget(tp,c47514896.efffilter,tp,LOCATION_GRAVE+LOCATION_EXTRA+LOCATION_REMOVED,0,1,1,nil,e,tp,eg,ep,ev,re,r,rp)
local m=_G["c"..g:GetFirst():GetCode()] local m=_G["c"..g:GetFirst():GetCode()]
local te=m.ss_effect local te=m.ss_effect
local tg=te:GetTarget() local tg=te:GetTarget()
if tg then tg(e,tp,eg,ep,ev,re,r,rp,1) end if tg then tg(e,tp,eg,ep,ev,re,r,rp,1) end
end end
function c47514896.effop(e,tp,eg,ep,ev,re,r,rp,chk) function c47514896.effop(e,tp,eg,ep,ev,re,r,rp,chk)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then if tc:IsRelateToEffect(e) then
Duel.ConfirmCards(1-tp,tc) Duel.ConfirmCards(1-tp,tc)
local m=_G["c"..tc:GetCode()] local m=_G["c"..tc:GetCode()]
local te=m.ss_effect local te=m.ss_effect
if not te then return end if not te then return end
local op=te:GetOperation() local op=te:GetOperation()
if op then op(e,tp,eg,ep,ev,re,r,rp) end if op then op(e,tp,eg,ep,ev,re,r,rp) end
Duel.Hint(HINT_SOUND,0,aux.Stringid(47514896,4)) Duel.Hint(HINT_SOUND,0,aux.Stringid(47514896,4))
end end
end end
function c47514896.sumsuc(e,tp,eg,ep,ev,re,r,rp) function c47514896.sumsuc(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SOUND,0,aux.Stringid(47514896,3)) Duel.Hint(HINT_SOUND,0,aux.Stringid(47514896,3))
end end
\ No newline at end of file
...@@ -59,7 +59,7 @@ function c47514966.pcop(e,tp,eg,ep,ev,re,r,rp) ...@@ -59,7 +59,7 @@ function c47514966.pcop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD)
local g=Duel.SelectMatchingCard(tp,c47514966.pcfilter,tp,LOCATION_EXTRA,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47514966.pcfilter,tp,LOCATION_EXTRA,0,1,1,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.MoveToField(g:GetFirst(),tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(g:GetFirst(),tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
function c47514966.chcon(e,tp,eg,ep,ev,re,r,rp) function c47514966.chcon(e,tp,eg,ep,ev,re,r,rp)
...@@ -104,6 +104,6 @@ end ...@@ -104,6 +104,6 @@ end
function c47514966.penop(e,tp,eg,ep,ev,re,r,rp) function c47514966.penop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetFieldGroup(tp,LOCATION_PZONE,LOCATION_PZONE) local g=Duel.GetFieldGroup(tp,LOCATION_PZONE,LOCATION_PZONE)
if Duel.SendtoDeck(g,REASON_EFFECT)~=0 and e:GetHandler():IsRelateToEffect(e) then if Duel.SendtoDeck(g,REASON_EFFECT)~=0 and e:GetHandler():IsRelateToEffect(e) then
Duel.MoveToField(e:GetHandler(),tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(e:GetHandler(),tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
...@@ -76,7 +76,7 @@ function c47517001.desop(e,tp,eg,ep,ev,re,r,rp) ...@@ -76,7 +76,7 @@ function c47517001.desop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,c47517001.tffilter,tp,LOCATION_HAND,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47517001.tffilter,tp,LOCATION_HAND,0,1,1,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
local tc1=g:GetFirst() local tc1=g:GetFirst()
if tc1 and Duel.MoveToField(tc1,tp,tp,LOCATION_SZONE,POS_FACEUP,true) then if tc1 and Duel.MoveToField(tc1,tp,tp,LOCATION_PZONE,POS_FACEUP,true) then
local e4=Effect.CreateEffect(tc1) local e4=Effect.CreateEffect(tc1)
e4:SetType(EFFECT_TYPE_SINGLE) e4:SetType(EFFECT_TYPE_SINGLE)
e4:SetRange(LOCATION_SZONE) e4:SetRange(LOCATION_SZONE)
......
--西南西的守护神 安琪拉 --西南西的守护神 安琪拉
function c47520003.initial_effect(c) function c47520003.initial_effect(c)
--synchro summon --synchro summon
aux.AddSynchroProcedure(c,nil,aux.NonTuner(nil),1) aux.AddSynchroProcedure(c,nil,aux.NonTuner(nil),1)
c:EnableReviveLimit() c:EnableReviveLimit()
--check --check
local e0=Effect.CreateEffect(c) local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE) e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetCode(EFFECT_MATERIAL_CHECK) e0:SetCode(EFFECT_MATERIAL_CHECK)
e0:SetValue(c47520003.valcheck) e0:SetValue(c47520003.valcheck)
c:RegisterEffect(e0) c:RegisterEffect(e0)
--shinramanshyou --shinramanshyou
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(47520003,0)) e1:SetDescription(aux.Stringid(47520003,0))
e1:SetCategory(CATEGORY_ATKCHANGE) e1:SetCategory(CATEGORY_ATKCHANGE)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_SPSUMMON_SUCCESS) e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetLabelObject(e0) e1:SetLabelObject(e0)
e1:SetCondition(c47520003.lpcon) e1:SetCondition(c47520003.lpcon)
e1:SetTarget(c47520003.lptg) e1:SetTarget(c47520003.lptg)
e1:SetOperation(c47520003.lpop) e1:SetOperation(c47520003.lpop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--cannot target --cannot target
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD) e2:SetType(EFFECT_TYPE_FIELD)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE) e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCode(EFFECT_CANNOT_BE_EFFECT_TARGET) e2:SetCode(EFFECT_CANNOT_BE_EFFECT_TARGET)
e2:SetValue(aux.tgoval) e2:SetValue(aux.tgoval)
e2:SetLabelObject(e0) e2:SetLabelObject(e0)
e2:SetTargetRange(LOCATION_MZONE,0) e2:SetTargetRange(LOCATION_MZONE,0)
e2:SetCondition(c47520003.buffcon) e2:SetCondition(c47520003.buffcon)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--indes --indes
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD) e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_INDESTRUCTABLE_EFFECT) e3:SetCode(EFFECT_INDESTRUCTABLE_EFFECT)
e3:SetProperty(EFFECT_FLAG_SINGLE_RANGE) e3:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetValue(1) e3:SetValue(1)
e3:SetLabelObject(e0) e3:SetLabelObject(e0)
e3:SetTargetRange(LOCATION_MZONE,0) e3:SetTargetRange(LOCATION_MZONE,0)
e3:SetCondition(c47520003.buffcon) e3:SetCondition(c47520003.buffcon)
c:RegisterEffect(e3) c:RegisterEffect(e3)
local e6=e3:Clone() local e6=e3:Clone()
e6:SetCode(EFFECT_INDESTRUCTABLE_BATTLE) e6:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
c:RegisterEffect(e6) c:RegisterEffect(e6)
local e7=e3:Clone() local e7=e3:Clone()
e7:SetCode(EFFECT_UPDATE_ATTACK) e7:SetCode(EFFECT_UPDATE_ATTACK)
e7:SetValue(500) e7:SetValue(500)
c:RegisterEffect(e7) c:RegisterEffect(e7)
local e8=e7:Clone() local e8=e7:Clone()
e8:SetCode(EFFECT_UPDATE_DEFENSE) e8:SetCode(EFFECT_UPDATE_DEFENSE)
c:RegisterEffect(e8) c:RegisterEffect(e8)
--inactivatable --inactivatable
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_FIELD) e4:SetType(EFFECT_TYPE_FIELD)
e4:SetCode(EFFECT_CANNOT_INACTIVATE) e4:SetCode(EFFECT_CANNOT_INACTIVATE)
e4:SetRange(LOCATION_MZONE) e4:SetRange(LOCATION_MZONE)
e4:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE) e4:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE)
e4:SetLabelObject(e0) e4:SetLabelObject(e0)
e4:SetTargetRange(LOCATION_MZONE,0) e4:SetTargetRange(LOCATION_MZONE,0)
e4:SetValue(c47520003.effectfilter) e4:SetValue(c47520003.effectfilter)
c:RegisterEffect(e4) c:RegisterEffect(e4)
local e5=e4:Clone() local e5=e4:Clone()
e5:SetCode(EFFECT_CANNOT_DISEFFECT) e5:SetCode(EFFECT_CANNOT_DISEFFECT)
c:RegisterEffect(e5) c:RegisterEffect(e5)
--pendulum --pendulum
local e9=Effect.CreateEffect(c) local e9=Effect.CreateEffect(c)
e9:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e9:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e9:SetCode(EVENT_LEAVE_FIELD) e9:SetCode(EVENT_LEAVE_FIELD)
e9:SetProperty(EFFECT_FLAG_DELAY) e9:SetProperty(EFFECT_FLAG_DELAY)
e9:SetCondition(c47520003.pencon) e9:SetCondition(c47520003.pencon)
e9:SetTarget(c47520003.pentg) e9:SetTarget(c47520003.pentg)
e9:SetOperation(c47520003.penop) e9:SetOperation(c47520003.penop)
c:RegisterEffect(e9) c:RegisterEffect(e9)
--search --search
local e10=Effect.CreateEffect(c) local e10=Effect.CreateEffect(c)
e10:SetDescription(aux.Stringid(47520003,1)) e10:SetDescription(aux.Stringid(47520003,1))
e10:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH) e10:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e10:SetType(EFFECT_TYPE_IGNITION) e10:SetType(EFFECT_TYPE_IGNITION)
e10:SetCountLimit(1,47520003) e10:SetCountLimit(1,47520003)
e10:SetRange(LOCATION_MZONE) e10:SetRange(LOCATION_MZONE)
e10:SetCost(c47520003.cost) e10:SetCost(c47520003.cost)
e10:SetTarget(c47520003.target) e10:SetTarget(c47520003.target)
e10:SetOperation(c47520003.operation) e10:SetOperation(c47520003.operation)
c:RegisterEffect(e10) c:RegisterEffect(e10)
end end
function c47520003.effectfilter(e,ct) function c47520003.effectfilter(e,ct)
local p=e:GetHandler():GetControler() local p=e:GetHandler():GetControler()
local te,tp,loc=Duel.GetChainInfo(ct,CHAININFO_TRIGGERING_EFFECT,CHAININFO_TRIGGERING_PLAYER,CHAININFO_TRIGGERING_LOCATION) local te,tp,loc=Duel.GetChainInfo(ct,CHAININFO_TRIGGERING_EFFECT,CHAININFO_TRIGGERING_PLAYER,CHAININFO_TRIGGERING_LOCATION)
return p==tp and te:GetHandler():IsType(TYPE_MONSTER) return p==tp and te:GetHandler():IsType(TYPE_MONSTER)
end end
function c47520003.mfilter(c) function c47520003.mfilter(c)
return c:IsType(TYPE_PENDULUM) and c:IsSummonType(SUMMON_TYPE_PENDULUM) return c:IsType(TYPE_PENDULUM) and c:IsSummonType(SUMMON_TYPE_PENDULUM)
end end
function c47520003.valcheck(e,c) function c47520003.valcheck(e,c)
local g=c:GetMaterial() local g=c:GetMaterial()
if g:IsExists(Card.IsRace,1,nil,RACE_BEASTWARRIOR) then if g:IsExists(Card.IsRace,1,nil,RACE_BEASTWARRIOR) then
e:GetLabelObject():SetLabel(1) e:GetLabelObject():SetLabel(1)
else else
e:GetLabelObject():SetLabel(0) e:GetLabelObject():SetLabel(0)
end end
end end
function c47520003.lpcon(e,tp,eg,ep,ev,re,r,rp) function c47520003.lpcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) return e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO)
end end
function c47520003.lptg(e,tp,eg,ep,ev,re,r,rp,chk) function c47520003.lptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
Duel.SetTargetPlayer(tp) Duel.SetTargetPlayer(tp)
Duel.SetTargetParam(2000) Duel.SetTargetParam(2000)
Duel.SetOperationInfo(0,CATEGORY_RECOVER,nil,0,tp,2000) Duel.SetOperationInfo(0,CATEGORY_RECOVER,nil,0,tp,2000)
end end
function c47520003.lpop(e,tp,eg,ep,ev,re,r,rp) function c47520003.lpop(e,tp,eg,ep,ev,re,r,rp)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM) local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
if Duel.Recover(p,d,REASON_EFFECT) and e:GetLabel()==1 then Duel.Draw(tp,1,REASON_EFFECT) end if Duel.Recover(p,d,REASON_EFFECT) and e:GetLabel()==1 then Duel.Draw(tp,1,REASON_EFFECT) end
local g=Duel.GetMatchingGroup(Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,nil) local g=Duel.GetMatchingGroup(Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
local c=e:GetHandler() local c=e:GetHandler()
while tc do while tc do
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_DISABLE) e1:SetCode(EFFECT_DISABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1) tc:RegisterEffect(e1)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_DISABLE_EFFECT) e2:SetCode(EFFECT_DISABLE_EFFECT)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e2) tc:RegisterEffect(e2)
tc=g:GetNext() tc=g:GetNext()
end end
end end
function c47520003.buffcon(e,tp,eg,ep,ev,re,r,rp) function c47520003.buffcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) and e:GetLabel()==1 return e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO) and e:GetLabel()==1
end end
function c47520003.pencon(e,tp,eg,ep,ev,re,r,rp) function c47520003.pencon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
return c:IsPreviousLocation(LOCATION_MZONE) and c:IsFaceup() return c:IsPreviousLocation(LOCATION_MZONE) and c:IsFaceup()
end end
function c47520003.pentg(e,tp,eg,ep,ev,re,r,rp,chk) function c47520003.pentg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckLocation(tp,LOCATION_PZONE,0) or Duel.CheckLocation(tp,LOCATION_PZONE,1) end if chk==0 then return Duel.CheckLocation(tp,LOCATION_PZONE,0) or Duel.CheckLocation(tp,LOCATION_PZONE,1) end
end end
function c47520003.penop(e,tp,eg,ep,ev,re,r,rp) function c47520003.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
function c47520003.cost(e,tp,eg,ep,ev,re,r,rp,chk) function c47520003.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckRemoveOverlayCard(tp,1,1,1,REASON_COST) end if chk==0 then return Duel.CheckRemoveOverlayCard(tp,1,1,1,REASON_COST) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DEATTACHFROM) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DEATTACHFROM)
local sg=Duel.SelectMatchingCard(tp,Card.CheckRemoveOverlayCard,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil,tp,1,REASON_COST) local sg=Duel.SelectMatchingCard(tp,Card.CheckRemoveOverlayCard,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil,tp,1,REASON_COST)
if sg:GetCount()==0 then return end if sg:GetCount()==0 then return end
Duel.HintSelection(sg) Duel.HintSelection(sg)
sg:GetFirst():RemoveOverlayCard(tp,1,1,REASON_COST) sg:GetFirst():RemoveOverlayCard(tp,1,1,REASON_COST)
end end
function c47520003.filter(c) function c47520003.filter(c)
return c:IsRace(RACE_BEASTWARRIOR) and c:IsSummonableCard() and c:IsAbleToHand() return c:IsRace(RACE_BEASTWARRIOR) and c:IsSummonableCard() and c:IsAbleToHand()
end end
function c47520003.target(e,tp,eg,ep,ev,re,r,rp,chk) function c47520003.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c47520003.filter,tp,LOCATION_DECK,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(c47520003.filter,tp,LOCATION_DECK,0,1,nil) end
Duel.Hint(HINT_OPSELECTED,1-tp,e:GetDescription()) Duel.Hint(HINT_OPSELECTED,1-tp,e:GetDescription())
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end end
function c47520003.operation(e,tp,eg,ep,ev,re,r,rp) function c47520003.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c47520003.filter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47520003.filter,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT) Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g) Duel.ConfirmCards(1-tp,g)
end end
end end
\ No newline at end of file
...@@ -149,6 +149,6 @@ function c47520015.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -149,6 +149,6 @@ function c47520015.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
...@@ -2,96 +2,96 @@ ...@@ -2,96 +2,96 @@
local m=47530002 local m=47530002
local cm=_G["c"..m] local cm=_G["c"..m]
function c47530002.initial_effect(c) function c47530002.initial_effect(c)
c:SetSPSummonOnce(47530002) c:SetSPSummonOnce(47530002)
--link summon --link summon
aux.AddLinkProcedure(c,c47530002.lfilter,2,2) aux.AddLinkProcedure(c,c47530002.lfilter,2,2)
c:EnableReviveLimit() c:EnableReviveLimit()
--recover --recover
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(47530002,1)) e1:SetDescription(aux.Stringid(47530002,1))
e1:SetCategory(CATEGORY_RECOVER) e1:SetCategory(CATEGORY_RECOVER)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP) e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_SPSUMMON_SUCCESS) e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetCondition(c47530002.reccon) e1:SetCondition(c47530002.reccon)
e1:SetTarget(c47530002.rectg) e1:SetTarget(c47530002.rectg)
e1:SetOperation(c47530002.recop) e1:SetOperation(c47530002.recop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--special summon --special summon
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(47530002,0)) e2:SetDescription(aux.Stringid(47530002,0))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON) e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_IGNITION) e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET) e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1,47530002) e2:SetCountLimit(1,47530002)
e2:SetTarget(c47530002.sptg) e2:SetTarget(c47530002.sptg)
e2:SetOperation(c47530002.spop) e2:SetOperation(c47530002.spop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c47530002.lfilter(c) function c47530002.lfilter(c)
return c:IsLevel(10) and c:IsRace(RACE_MACHINE) return c:IsLevel(10) and c:IsRace(RACE_MACHINE)
end end
function c47530002.filter(c) function c47530002.filter(c)
return c:IsFaceup() return c:IsFaceup()
end end
function c47530002.reccon(e,tp,eg,ep,ev,re,r,rp) function c47530002.reccon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_LINK) return e:GetHandler():IsSummonType(SUMMON_TYPE_LINK)
end end
function c47530002.rectg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c47530002.rectg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c47530002.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and c47530002.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c47530002.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end if chk==0 then return Duel.IsExistingTarget(c47530002.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g=Duel.SelectTarget(tp,c47530002.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil) local g=Duel.SelectTarget(tp,c47530002.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_RECOVER,nil,0,tp,g:GetFirst():GetAttack()) Duel.SetOperationInfo(0,CATEGORY_RECOVER,nil,0,tp,g:GetFirst():GetAttack())
end end
function c47530002.penfilter(c) function c47530002.penfilter(c)
return c:IsFaceup() and c:IsRace(RACE_MACHINE) return c:IsFaceup() and c:IsRace(RACE_MACHINE)
end end
function c47530002.recop(e,tp,eg,ep,ev,re,r,rp) function c47530002.recop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and tc:IsFaceup() then if tc:IsRelateToEffect(e) and tc:IsFaceup() then
if Duel.Recover(tp,tc:GetAttack(),REASON_EFFECT) and Duel.SelectYesNo(tp,aux.Stringid(47530002,0)) then if Duel.Recover(tp,tc:GetAttack(),REASON_EFFECT) and Duel.SelectYesNo(tp,aux.Stringid(47530002,0)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD)
local g=Duel.SelectMatchingCard(tp,c47530002.penfilter,tp,LOCATION_EXTRA,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47530002.penfilter,tp,LOCATION_EXTRA,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
end end
end end
function c47530002.lkfilter(c) function c47530002.lkfilter(c)
return c:IsFaceup() and c:IsType(TYPE_LINK) return c:IsFaceup() and c:IsType(TYPE_LINK)
end end
function c47530002.spfilter(c,e,tp,zone) function c47530002.spfilter(c,e,tp,zone)
return (c:IsLocation(LOCATION_GRAVE) or c:IsFaceup()) and c:IsRace(RACE_MACHINE) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP,tp,zone) return (c:IsLocation(LOCATION_GRAVE) or c:IsFaceup()) and c:IsRace(RACE_MACHINE) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP,tp,zone)
end end
function c47530002.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c47530002.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local zone=aux.GetMultiLinkedZone(tp) local zone=aux.GetMultiLinkedZone(tp)
if chkc then return chkc:IsLocation(LOCATION_GRAVE+LOCATION_REMOVED) and chkc:IsControler(tp) and c47530002.spfilter(chkc,e,tp,zone) end if chkc then return chkc:IsLocation(LOCATION_GRAVE+LOCATION_REMOVED) and chkc:IsControler(tp) and c47530002.spfilter(chkc,e,tp,zone) end
if chk==0 then return zone~=0 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return zone~=0 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingTarget(c47530002.spfilter,tp,LOCATION_GRAVE+LOCATION_REMOVED,0,1,nil,e,tp,zone) end and Duel.IsExistingTarget(c47530002.spfilter,tp,LOCATION_GRAVE+LOCATION_REMOVED,0,1,nil,e,tp,zone) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectTarget(tp,c47530002.spfilter,tp,LOCATION_GRAVE+LOCATION_REMOVED,0,1,1,nil,e,tp,zone) local g=Duel.SelectTarget(tp,c47530002.spfilter,tp,LOCATION_GRAVE+LOCATION_REMOVED,0,1,1,nil,e,tp,zone)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0)
end end
function c47530002.spop(e,tp,eg,ep,ev,re,r,rp) function c47530002.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local zone=aux.GetMultiLinkedZone(tp) local zone=aux.GetMultiLinkedZone(tp)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if zone~=0 and tc:IsRelateToEffect(e) then if zone~=0 and tc:IsRelateToEffect(e) then
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP,zone) Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP,zone)
end end
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD) e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON) e2:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e2:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE) e2:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE)
e2:SetTargetRange(1,0) e2:SetTargetRange(1,0)
e2:SetTarget(c47530002.splimit) e2:SetTarget(c47530002.splimit)
e2:SetReset(RESET_PHASE+PHASE_END) e2:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e2,tp) Duel.RegisterEffect(e2,tp)
end end
function c47530002.splimit(e,c) function c47530002.splimit(e,c)
return not c:IsRace(RACE_MACHINE) return not c:IsRace(RACE_MACHINE)
end end
\ No newline at end of file
...@@ -2,95 +2,95 @@ ...@@ -2,95 +2,95 @@
local m=47530003 local m=47530003
local cm=_G["c"..m] local cm=_G["c"..m]
function c47530003.initial_effect(c) function c47530003.initial_effect(c)
c:SetSPSummonOnce(47530003) c:SetSPSummonOnce(47530003)
--link summon --link summon
aux.AddLinkProcedure(c,c47530003.lfilter,2,2) aux.AddLinkProcedure(c,c47530003.lfilter,2,2)
c:EnableReviveLimit() c:EnableReviveLimit()
--recover --recover
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(47530003,1)) e1:SetDescription(aux.Stringid(47530003,1))
e1:SetCategory(CATEGORY_RECOVER) e1:SetCategory(CATEGORY_RECOVER)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP) e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_SPSUMMON_SUCCESS) e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetCondition(c47530003.reccon) e1:SetCondition(c47530003.reccon)
e1:SetTarget(c47530003.rectg) e1:SetTarget(c47530003.rectg)
e1:SetOperation(c47530003.recop) e1:SetOperation(c47530003.recop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--special summon --special summon
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(47530003,0)) e2:SetDescription(aux.Stringid(47530003,0))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON) e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_IGNITION) e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET) e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1,47530003) e2:SetCountLimit(1,47530003)
e2:SetTarget(c47530003.sptg) e2:SetTarget(c47530003.sptg)
e2:SetOperation(c47530003.spop) e2:SetOperation(c47530003.spop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c47530003.lfilter(c) function c47530003.lfilter(c)
return c:IsLevel(10) and c:IsRace(RACE_MACHINE) return c:IsLevel(10) and c:IsRace(RACE_MACHINE)
end end
function c47530003.filter(c) function c47530003.filter(c)
return c:IsFaceup() return c:IsFaceup()
end end
function c47530003.reccon(e,tp,eg,ep,ev,re,r,rp) function c47530003.reccon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_LINK) return e:GetHandler():IsSummonType(SUMMON_TYPE_LINK)
end end
function c47530003.rectg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c47530003.rectg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c47530003.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and c47530003.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c47530003.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end if chk==0 then return Duel.IsExistingTarget(c47530003.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g=Duel.SelectTarget(tp,c47530003.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil) local g=Duel.SelectTarget(tp,c47530003.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_RECOVER,nil,0,tp,g:GetFirst():GetAttack()) Duel.SetOperationInfo(0,CATEGORY_RECOVER,nil,0,tp,g:GetFirst():GetAttack())
end end
function c47530003.penfilter(c) function c47530003.penfilter(c)
return c:IsFaceup() and c:IsRace(RACE_MACHINE) return c:IsFaceup() and c:IsRace(RACE_MACHINE)
end end
function c47530003.recop(e,tp,eg,ep,ev,re,r,rp) function c47530003.recop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and tc:IsFaceup() then if tc:IsRelateToEffect(e) and tc:IsFaceup() then
if Duel.Recover(tp,tc:GetAttack(),REASON_EFFECT) and Duel.SelectYesNo(tp,aux.Stringid(47530003,0)) then if Duel.Recover(tp,tc:GetAttack(),REASON_EFFECT) and Duel.SelectYesNo(tp,aux.Stringid(47530003,0)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD)
local g=Duel.SelectMatchingCard(tp,c47530003.penfilter,tp,LOCATION_EXTRA,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47530003.penfilter,tp,LOCATION_EXTRA,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
end end
end end
function c47530003.lkfilter(c) function c47530003.lkfilter(c)
return c:IsFaceup() and c:IsType(TYPE_LINK) return c:IsFaceup() and c:IsType(TYPE_LINK)
end end
function c47530003.spfilter(c,e,tp,zone) function c47530003.spfilter(c,e,tp,zone)
return c:IsRace(RACE_MACHINE) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP,tp,zone) return c:IsRace(RACE_MACHINE) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP,tp,zone)
end end
function c47530003.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function c47530003.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
local zone=aux.GetMultiLinkedZone(tp) local zone=aux.GetMultiLinkedZone(tp)
if chk==0 then return zone~=0 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return zone~=0 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(c47530003.spfilter,tp,LOCATION_HAND+LOCATION_DECK,0,1,nil,e,tp,zone) end and Duel.IsExistingMatchingCard(c47530003.spfilter,tp,LOCATION_HAND+LOCATION_DECK,0,1,nil,e,tp,zone) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND+LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND+LOCATION_DECK)
end end
function c47530003.spop(e,tp,eg,ep,ev,re,r,rp) function c47530003.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local zone=aux.GetMultiLinkedZone(tp) local zone=aux.GetMultiLinkedZone(tp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 or zone==0 then return end if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 or zone==0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c47530003.spfilter,tp,LOCATION_HAND+LOCATION_DECK,0,1,1,nil,e,tp,zone) local g=Duel.SelectMatchingCard(tp,c47530003.spfilter,tp,LOCATION_HAND+LOCATION_DECK,0,1,1,nil,e,tp,zone)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP,zone) Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP,zone)
end end
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD) e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON) e2:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e2:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE) e2:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE)
e2:SetTargetRange(1,0) e2:SetTargetRange(1,0)
e2:SetTarget(c47530003.splimit) e2:SetTarget(c47530003.splimit)
e2:SetReset(RESET_PHASE+PHASE_END) e2:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e2,tp) Duel.RegisterEffect(e2,tp)
end end
function c47530003.splimit(e,c) function c47530003.splimit(e,c)
return not c:IsRace(RACE_MACHINE) return not c:IsRace(RACE_MACHINE)
end end
\ No newline at end of file
...@@ -2,180 +2,180 @@ ...@@ -2,180 +2,180 @@
local m=47530023 local m=47530023
local cm=_G["c"..m] local cm=_G["c"..m]
function c47530023.initial_effect(c) function c47530023.initial_effect(c)
--fusion material --fusion material
c:EnableReviveLimit() c:EnableReviveLimit()
aux.AddFusionProcCodeFun(c,c47530023.fusfilter1,c47530023.fusfilter2,1,true,true) aux.AddFusionProcCodeFun(c,c47530023.fusfilter1,c47530023.fusfilter2,1,true,true)
aux.EnablePendulumAttribute(c,false) aux.EnablePendulumAttribute(c,false)
--splimit --splimit
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD) e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON) e2:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e2:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE) e2:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE)
e2:SetRange(LOCATION_PZONE) e2:SetRange(LOCATION_PZONE)
e2:SetTargetRange(1,0) e2:SetTargetRange(1,0)
e2:SetTarget(c47530023.splimit) e2:SetTarget(c47530023.splimit)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--special summon rule --special summon rule
local e0=Effect.CreateEffect(c) local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_FIELD) e0:SetType(EFFECT_TYPE_FIELD)
e0:SetCode(EFFECT_SPSUMMON_PROC) e0:SetCode(EFFECT_SPSUMMON_PROC)
e0:SetProperty(EFFECT_FLAG_UNCOPYABLE) e0:SetProperty(EFFECT_FLAG_UNCOPYABLE)
e0:SetRange(LOCATION_EXTRA) e0:SetRange(LOCATION_EXTRA)
e0:SetValue(SUMMON_TYPE_FUSION) e0:SetValue(SUMMON_TYPE_FUSION)
e0:SetCondition(c47530023.sprcon) e0:SetCondition(c47530023.sprcon)
e0:SetOperation(c47530023.sprop) e0:SetOperation(c47530023.sprop)
c:RegisterEffect(e0) c:RegisterEffect(e0)
--Activate --Activate
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_QUICK_O) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetRange(LOCATION_PZONE) e1:SetRange(LOCATION_PZONE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,47530023) e1:SetCountLimit(1,47530023)
e1:SetCost(c47530023.discost) e1:SetCost(c47530023.discost)
e1:SetOperation(c47530023.disop) e1:SetOperation(c47530023.disop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--kaihi --kaihi
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(47530023,0)) e3:SetDescription(aux.Stringid(47530023,0))
e3:SetCategory(CATEGORY_NEGATE+CATEGORY_DESTROY) e3:SetCategory(CATEGORY_NEGATE+CATEGORY_DESTROY)
e3:SetType(EFFECT_TYPE_QUICK_O) e3:SetType(EFFECT_TYPE_QUICK_O)
e3:SetCode(EVENT_CHAINING) e3:SetCode(EVENT_CHAINING)
e3:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL) e3:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCondition(c47530023.discon2) e3:SetCondition(c47530023.discon2)
e3:SetTarget(c47530023.distg2) e3:SetTarget(c47530023.distg2)
e3:SetOperation(c47530023.disop2) e3:SetOperation(c47530023.disop2)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c47530023.splimit(e,c) function c47530023.splimit(e,c)
return not c:IsRace(RACE_MACHINE) return not c:IsRace(RACE_MACHINE)
end end
function c47530023.lztg(e,tp,eg,ep,ev,re,r,rp,chk) function c47530023.lztg(e,tp,eg,ep,ev,re,r,rp,chk)
local dis=Duel.SelectDisableField(tp,ct,0,LOCATION_MZONE,0) local dis=Duel.SelectDisableField(tp,ct,0,LOCATION_MZONE,0)
e:SetLabel(dis) e:SetLabel(dis)
end end
function c47530023.lzop(e,tp,eg,ep,ev,re,r,rp) function c47530023.lzop(e,tp,eg,ep,ev,re,r,rp)
local seq=e:GetLabel() local seq=e:GetLabel()
local dg=Group.CreateGroup() local dg=Group.CreateGroup()
if seq<5 then dg=Duel.GetMatchingGroup(c5087128.desfilter2,tp,0,LOCATION_MZONE,nil,seq,nil) end if seq<5 then dg=Duel.GetMatchingGroup(c5087128.desfilter2,tp,0,LOCATION_MZONE,nil,seq,nil) end
if dg:GetCount()>0 then if dg:GetCount()>0 then
Duel.SendtoGrave(dg,REASON_RULE) Duel.SendtoGrave(dg,REASON_RULE)
end end
end end
function c47530023.fusfilter1(c) function c47530023.fusfilter1(c)
return c:IsRace(RACE_MACHINE) and c:IsAttribute(ATTRIBUTE_DARK) return c:IsRace(RACE_MACHINE) and c:IsAttribute(ATTRIBUTE_DARK)
end end
function c47530023.fusfilter2(c) function c47530023.fusfilter2(c)
return c:IsRace(RACE_MACHINE) and c:IsAttribute(ATTRIBUTE_FIRE) return c:IsRace(RACE_MACHINE) and c:IsAttribute(ATTRIBUTE_FIRE)
end end
function c47530023.cfilter(c) function c47530023.cfilter(c)
return (c47530023.fusfilter1 or c47530023.fusfilter2) return (c47530023.fusfilter1 or c47530023.fusfilter2)
and c:IsCanBeFusionMaterial() and c:IsReleasable() and c:IsCanBeFusionMaterial() and c:IsReleasable()
end end
function c47530023.spfilter1(c,tp,g) function c47530023.spfilter1(c,tp,g)
return g:IsExists(c47530023.spfilter2,1,c,tp,c) return g:IsExists(c47530023.spfilter2,1,c,tp,c)
end end
function c47530023.spfilter2(c,tp,mc) function c47530023.spfilter2(c,tp,mc)
return c:IsRace(RACE_MACHINE) and c:IsAttribute(ATTRIBUTE_DARK) and mc:IsRace(RACE_MACHINE) and mc:IsAttribute(ATTRIBUTE_FIRE) return c:IsRace(RACE_MACHINE) and c:IsAttribute(ATTRIBUTE_DARK) and mc:IsRace(RACE_MACHINE) and mc:IsAttribute(ATTRIBUTE_FIRE)
or c:IsRace(RACE_MACHINE) and c:IsAttribute(ATTRIBUTE_FIRE) and mc:IsRace(RACE_MACHINE) and mc:IsAttribute(ATTRIBUTE_DARK) or c:IsRace(RACE_MACHINE) and c:IsAttribute(ATTRIBUTE_FIRE) and mc:IsRace(RACE_MACHINE) and mc:IsAttribute(ATTRIBUTE_DARK)
and Duel.GetLocationCountFromEx(tp,tp,Group.FromCards(c,mc))>0 and Duel.GetLocationCountFromEx(tp,tp,Group.FromCards(c,mc))>0
end end
function c47530023.sprcon(e,c) function c47530023.sprcon(e,c)
if c==nil then return true end if c==nil then return true end
local tp=c:GetControler() local tp=c:GetControler()
local g=Duel.GetMatchingGroup(c47530023.cfilter,tp,LOCATION_ONFIELD,0,nil) local g=Duel.GetMatchingGroup(c47530023.cfilter,tp,LOCATION_ONFIELD,0,nil)
return g:IsExists(c47530023.spfilter1,1,nil,tp,g) return g:IsExists(c47530023.spfilter1,1,nil,tp,g)
end end
function c47530023.sprop(e,tp,eg,ep,ev,re,r,rp,c) function c47530023.sprop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Duel.GetMatchingGroup(c47530023.cfilter,tp,LOCATION_ONFIELD,0,nil) local g=Duel.GetMatchingGroup(c47530023.cfilter,tp,LOCATION_ONFIELD,0,nil)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g1=g:FilterSelect(tp,c47530023.spfilter1,1,1,nil,tp,g) local g1=g:FilterSelect(tp,c47530023.spfilter1,1,1,nil,tp,g)
local mc=g1:GetFirst() local mc=g1:GetFirst()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g2=g:FilterSelect(tp,c47530023.spfilter2,1,1,mc,tp,mc) local g2=g:FilterSelect(tp,c47530023.spfilter2,1,1,mc,tp,mc)
g1:Merge(g2) g1:Merge(g2)
local cg=g1:Filter(Card.IsFacedown,nil) local cg=g1:Filter(Card.IsFacedown,nil)
if cg:GetCount()>0 then if cg:GetCount()>0 then
Duel.ConfirmCards(1-tp,cg) Duel.ConfirmCards(1-tp,cg)
end end
Duel.Release(g1,REASON_COST+REASON_MATERIAL+REASON_FUSION) Duel.Release(g1,REASON_COST+REASON_MATERIAL+REASON_FUSION)
end end
function c47530023.discost(e,tp,eg,ep,ev,re,r,rp,chk) function c47530023.discost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetMZoneCount(1-tp)>0 end if chk==0 then return Duel.GetMZoneCount(1-tp)>0 end
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(47530023,0)) Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(47530023,0))
local s=Duel.SelectDisableField(tp,1,0,LOCATION_MZONE,0)/0x10000 local s=Duel.SelectDisableField(tp,1,0,LOCATION_MZONE,0)/0x10000
nseq=math.log(s,2) nseq=math.log(s,2)
e:SetLabel(nseq) e:SetLabel(nseq)
end end
function c47530023.disop(e,tp,eg,ep,ev,re,r,rp) function c47530023.disop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local nseq=e:GetLabel() local nseq=e:GetLabel()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCategory(CATEGORY_DISABLE) e1:SetCategory(CATEGORY_DISABLE)
e1:SetCode(EVENT_SPSUMMON_SUCCESS) e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetCondition(c47530023.con) e1:SetCondition(c47530023.con)
e1:SetTarget(c47530023.tg) e1:SetTarget(c47530023.tg)
e1:SetOperation(c47530023.op) e1:SetOperation(c47530023.op)
e1:SetLabel(nseq) e1:SetLabel(nseq)
e1:SetReset(RESET_PHASE+PHASE_END) e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp) Duel.RegisterEffect(e1,tp)
end end
end end
function c47530023.dfilter(c,nseq) function c47530023.dfilter(c,nseq)
return c:GetSequence()==nseq return c:GetSequence()==nseq
end end
function c47530023.con(e,tp,eg,ep,ev,re,r,rp) function c47530023.con(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(c47530023.dfilter,1,nil,e:GetLabel()) return eg:IsExists(c47530023.dfilter,1,nil,e:GetLabel())
end end
function c47530023.tg(e,tp,eg,ep,ev,re,r,rp,chk) function c47530023.tg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
Duel.SetTargetCard(eg) Duel.SetTargetCard(eg)
local g=eg:Filter(c47530023.dfilter,nil,e:GetLabel()) local g=eg:Filter(c47530023.dfilter,nil,e:GetLabel())
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,g,g:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,g,g:GetCount(),0,0)
end end
function c47530023.op(e,tp,eg,ep,ev,re,r,rp) function c47530023.op(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local g=eg:Filter(c47530023.dfilter,nil,e:GetLabel()):Filter(Card.IsRelateToEffect,nil,e) local g=eg:Filter(c47530023.dfilter,nil,e:GetLabel()):Filter(Card.IsRelateToEffect,nil,e)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_DISABLE) e1:SetCode(EFFECT_DISABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1) tc:RegisterEffect(e1)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_DISABLE_EFFECT) e2:SetCode(EFFECT_DISABLE_EFFECT)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e2) tc:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE) e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetCode(EFFECT_CANNOT_TRIGGER) e3:SetCode(EFFECT_CANNOT_TRIGGER)
e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e3) tc:RegisterEffect(e3)
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_SINGLE) e4:SetType(EFFECT_TYPE_SINGLE)
e4:SetCode(EFFECT_CANNOT_ATTACK_ANNOUNCE) e4:SetCode(EFFECT_CANNOT_ATTACK_ANNOUNCE)
e4:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e4:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e4) tc:RegisterEffect(e4)
tc=g:GetNext() tc=g:GetNext()
end end
end end
function c47530023.discon2(e,tp,eg,ep,ev,re,r,rp) function c47530023.discon2(e,tp,eg,ep,ev,re,r,rp)
return not e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED) and Duel.IsChainNegatable(ev) return not e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED) and Duel.IsChainNegatable(ev)
end end
function c47530023.distg2(e,tp,eg,ep,ev,re,r,rp,chk) function c47530023.distg2(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
Duel.SetOperationInfo(0,CATEGORY_NEGATE,eg,1,0,0) Duel.SetOperationInfo(0,CATEGORY_NEGATE,eg,1,0,0)
if re:GetHandler():IsDestructable() and re:GetHandler():IsRelateToEffect(re) then if re:GetHandler():IsDestructable() and re:GetHandler():IsRelateToEffect(re) then
Duel.SetOperationInfo(0,CATEGORY_DESTROY,eg,1,0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,eg,1,0,0)
end end
end end
function c47530023.disop2(e,tp,eg,ep,ev,re,r,rp) function c47530023.disop2(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true)~=0 then if Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)~=0 then
Duel.NegateActivation(ev) Duel.NegateActivation(ev)
end end
end end
\ No newline at end of file
...@@ -72,7 +72,7 @@ function c47530035.teop(e,tp,eg,ep,ev,re,r,rp) ...@@ -72,7 +72,7 @@ function c47530035.teop(e,tp,eg,ep,ev,re,r,rp)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.SendtoExtraP(c,tp,REASON_EFFECT) Duel.SendtoExtraP(c,tp,REASON_EFFECT)
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
function c47530035.xyzcon(e,tp,eg,ep,ev,re,r,rp) function c47530035.xyzcon(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -85,7 +85,7 @@ function c47550001.fop1(e,tp,eg,ep,ev,re,r,rp) ...@@ -85,7 +85,7 @@ function c47550001.fop1(e,tp,eg,ep,ev,re,r,rp)
if Duel.NegateAttack() and Duel.SpecialSummon(e:GetHandler(),0,tp,tp,false,false,POS_FACEUP)~=0 then if Duel.NegateAttack() and Duel.SpecialSummon(e:GetHandler(),0,tp,tp,false,false,POS_FACEUP)~=0 then
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then if tc:IsRelateToEffect(e) then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
c:RegisterFlagEffect(47550001,RESET_EVENT+RESETS_STANDARD,0,1) c:RegisterFlagEffect(47550001,RESET_EVENT+RESETS_STANDARD,0,1)
end end
end end
...@@ -110,7 +110,7 @@ function c47550001.fop2(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -110,7 +110,7 @@ function c47550001.fop2(e,tp,eg,ep,ev,re,r,rp,chk)
if Duel.NegateEffect(ev) and Duel.SpecialSummon(e:GetHandler(),0,tp,tp,false,false,POS_FACEUP)~=0 then if Duel.NegateEffect(ev) and Duel.SpecialSummon(e:GetHandler(),0,tp,tp,false,false,POS_FACEUP)~=0 then
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then if tc:IsRelateToEffect(e) then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
c:RegisterFlagEffect(47550001,RESET_EVENT+RESETS_STANDARD,0,1) c:RegisterFlagEffect(47550001,RESET_EVENT+RESETS_STANDARD,0,1)
end end
end end
......
...@@ -118,7 +118,7 @@ function c47550007.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -118,7 +118,7 @@ function c47550007.penop(e,tp,eg,ep,ev,re,r,rp)
local tc=g:GetFirst() local tc=g:GetFirst()
local c=e:GetHandler() local c=e:GetHandler()
if tc and Duel.Destroy(c,REASON_EFFECT)~=0 then if tc and Duel.Destroy(c,REASON_EFFECT)~=0 then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_LEAVE_FIELD_REDIRECT) e1:SetCode(EFFECT_LEAVE_FIELD_REDIRECT)
......
...@@ -110,7 +110,7 @@ function c47550008.tfop(e,tp,eg,ep,ev,re,r,rp) ...@@ -110,7 +110,7 @@ function c47550008.tfop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,c47550008.tffilter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47550008.tffilter,tp,LOCATION_DECK,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetCode(EFFECT_CHANGE_TYPE) e1:SetCode(EFFECT_CHANGE_TYPE)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
......
--孤独的龙姬 古蕾亚 --孤独的龙姬 古蕾亚
function c47550017.initial_effect(c) function c47550017.initial_effect(c)
--pendulum summon --pendulum summon
aux.EnablePendulumAttribute(c) aux.EnablePendulumAttribute(c)
--xyz summon --xyz summon
c:EnableReviveLimit() c:EnableReviveLimit()
aux.AddXyzProcedure(c,c47550017.mfilter,7,2,c47550017.ovfilter,aux.Stringid(47550017,0),3,c47550017.xyzop) aux.AddXyzProcedure(c,c47550017.mfilter,7,2,c47550017.ovfilter,aux.Stringid(47550017,0),3,c47550017.xyzop)
--destroy --destroy
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(47550017,0)) e3:SetDescription(aux.Stringid(47550017,0))
e3:SetCategory(CATEGORY_SPECIAL_SUMMON) e3:SetCategory(CATEGORY_SPECIAL_SUMMON)
e3:SetType(EFFECT_TYPE_IGNITION) e3:SetType(EFFECT_TYPE_IGNITION)
e3:SetProperty(EFFECT_FLAG_CARD_TARGET) e3:SetProperty(EFFECT_FLAG_CARD_TARGET)
e3:SetRange(LOCATION_PZONE) e3:SetRange(LOCATION_PZONE)
e3:SetCountLimit(1,47550017) e3:SetCountLimit(1,47550017)
e3:SetTarget(c47550017.sptg) e3:SetTarget(c47550017.sptg)
e3:SetOperation(c47550017.spop) e3:SetOperation(c47550017.spop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
--counter --counter
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(47550017,1)) e1:SetDescription(aux.Stringid(47550017,1))
e1:SetCategory(CATEGORY_COUNTER) e1:SetCategory(CATEGORY_COUNTER)
e1:SetType(EFFECT_TYPE_QUICK_O) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1) e1:SetCountLimit(1)
e1:SetCost(c47550017.ctcost) e1:SetCost(c47550017.ctcost)
e1:SetTarget(c47550017.cttg) e1:SetTarget(c47550017.cttg)
e1:SetOperation(c47550017.ctop) e1:SetOperation(c47550017.ctop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--atk --atk
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE) e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCode(EFFECT_SET_ATTACK_FINAL) e2:SetCode(EFFECT_SET_ATTACK_FINAL)
e2:SetCondition(c47550017.atkcon) e2:SetCondition(c47550017.atkcon)
e2:SetValue(4500) e2:SetValue(4500)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--disable --disable
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(47550017,2)) e3:SetDescription(aux.Stringid(47550017,2))
e3:SetCategory(CATEGORY_DISABLE+CATEGORY_DAMAGE) e3:SetCategory(CATEGORY_DISABLE+CATEGORY_DAMAGE)
e3:SetType(EFFECT_TYPE_QUICK_O) e3:SetType(EFFECT_TYPE_QUICK_O)
e3:SetCode(EVENT_FREE_CHAIN) e3:SetCode(EVENT_FREE_CHAIN)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1) e3:SetCountLimit(1)
e3:SetTarget(c47550017.distg) e3:SetTarget(c47550017.distg)
e3:SetOperation(c47550017.disop) e3:SetOperation(c47550017.disop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
--pendulum --pendulum
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(47550017,3)) e4:SetDescription(aux.Stringid(47550017,3))
e4:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e4:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e4:SetCode(EVENT_LEAVE_FIELD) e4:SetCode(EVENT_LEAVE_FIELD)
e4:SetProperty(EFFECT_FLAG_DELAY) e4:SetProperty(EFFECT_FLAG_DELAY)
e4:SetCountLimit(1,47550017) e4:SetCountLimit(1,47550017)
e4:SetCondition(c47550017.pencon) e4:SetCondition(c47550017.pencon)
e4:SetTarget(c47550017.pentg) e4:SetTarget(c47550017.pentg)
e4:SetOperation(c47550017.penop) e4:SetOperation(c47550017.penop)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function c47550017.mfilter(c,xyzc) function c47550017.mfilter(c,xyzc)
return c:IsType(TYPE_PENDULUM) or c:IsRace(RACE_SPELLCASTER) return c:IsType(TYPE_PENDULUM) or c:IsRace(RACE_SPELLCASTER)
end end
function c47550017.ovfilter(c) function c47550017.ovfilter(c)
return c:IsFaceup() and c:IsCode(47550015) return c:IsFaceup() and c:IsCode(47550015)
end end
function c47550017.xyzop(e,tp,chk) function c47550017.xyzop(e,tp,chk)
if chk==0 then return Duel.GetFlagEffect(tp,47550017)==0 end if chk==0 then return Duel.GetFlagEffect(tp,47550017)==0 end
Duel.RegisterFlagEffect(tp,47550017,RESET_PHASE+PHASE_END,0,1) Duel.RegisterFlagEffect(tp,47550017,RESET_PHASE+PHASE_END,0,1)
end end
function c47550017.ctcost(e,tp,eg,ep,ev,re,r,rp,chk) function c47550017.ctcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST) e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
end end
function c47550017.cttg(e,tp,eg,ep,ev,re,r,rp,chk) function c47550017.cttg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsFaceup,tp,0,LOCATION_MZONE,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(Card.IsFaceup,tp,0,LOCATION_MZONE,1,nil) end
end end
function c47550017.ctop(e,tp,eg,ep,ev,re,r,rp) function c47550017.ctop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(Card.IsFaceup,tp,0,LOCATION_MZONE,nil) local g=Duel.GetMatchingGroup(Card.IsFaceup,tp,0,LOCATION_MZONE,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
while tc do while tc do
tc:AddCounter(0x15d9,1) tc:AddCounter(0x15d9,1)
tc=g:GetNext() tc=g:GetNext()
end end
end end
function c47550017.atkcon(e) function c47550017.atkcon(e)
local c=e:GetHandler() local c=e:GetHandler()
local ph=Duel.GetCurrentPhase() local ph=Duel.GetCurrentPhase()
local bc=c:GetBattleTarget() local bc=c:GetBattleTarget()
return (ph==PHASE_DAMAGE or ph==PHASE_DAMAGE_CAL) and bc:GetCounter(0x15d9)>0 return (ph==PHASE_DAMAGE or ph==PHASE_DAMAGE_CAL) and bc:GetCounter(0x15d9)>0
end end
function c47550017.disfilter(c) function c47550017.disfilter(c)
return c:IsType(TYPE_MONSTER) and c:GetCounter(0x15d9)>0 return c:IsType(TYPE_MONSTER) and c:GetCounter(0x15d9)>0
end end
function c47550017.distg(e,tp,eg,ep,ev,re,r,rp,chk) function c47550017.distg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c47550017.disfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(c47550017.disfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.SetTargetPlayer(1-tp) Duel.SetTargetPlayer(1-tp)
Duel.SetTargetParam(1000) Duel.SetTargetParam(1000)
Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,1-tp,1000) Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,1-tp,1000)
end end
function c47550017.disop(e,tp,eg,ep,ev,re,r,rp) function c47550017.disop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g=Duel.SelectMatchingCard(tp,c47550017.disfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47550017.disfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
if ((tc:IsFaceup() and not tc:IsDisabled()) or tc:IsType(TYPE_TRAPMONSTER)) and Duel.Damage(1-tp,1000,REASON_EFFECT) then if ((tc:IsFaceup() and not tc:IsDisabled()) or tc:IsType(TYPE_TRAPMONSTER)) and Duel.Damage(1-tp,1000,REASON_EFFECT) then
Duel.NegateRelatedChain(tc,RESET_TURN_SET) Duel.NegateRelatedChain(tc,RESET_TURN_SET)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetCode(EFFECT_DISABLE) e1:SetCode(EFFECT_DISABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1) tc:RegisterEffect(e1)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetCode(EFFECT_DISABLE_EFFECT) e2:SetCode(EFFECT_DISABLE_EFFECT)
e2:SetValue(RESET_TURN_SET) e2:SetValue(RESET_TURN_SET)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e2) tc:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE) e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e3:SetCode(EFFECT_IMMUNE_EFFECT) e3:SetCode(EFFECT_IMMUNE_EFFECT)
e3:SetValue(c47550017.efilter) e3:SetValue(c47550017.efilter)
e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e3) tc:RegisterEffect(e3)
if tc:IsType(TYPE_TRAPMONSTER) then if tc:IsType(TYPE_TRAPMONSTER) then
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE) e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e3:SetCode(EFFECT_DISABLE_TRAPMONSTER) e3:SetCode(EFFECT_DISABLE_TRAPMONSTER)
e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e3) tc:RegisterEffect(e3)
end end
end end
end end
function c47550017.efilter(e,re) function c47550017.efilter(e,re)
return e:GetOwnerPlayer()~=re:GetOwnerPlayer() return e:GetOwnerPlayer()~=re:GetOwnerPlayer()
end end
function c47550017.pencon(e,tp,eg,ep,ev,re,r,rp) function c47550017.pencon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
return c:IsSummonType(SUMMON_TYPE_XYZ) and c:IsFaceup() return c:IsSummonType(SUMMON_TYPE_XYZ) and c:IsFaceup()
end end
function c47550017.pspfilter(c,e,tp) function c47550017.pspfilter(c,e,tp)
return c:IsCanBeSpecialSummoned(e,0,tp,false,false) and c:IsType(TYPE_PENDULUM) and c:IsCanAddCounter(0x1,1,false,LOCATION_ONFIELD) return c:IsCanBeSpecialSummoned(e,0,tp,false,false) and c:IsType(TYPE_PENDULUM) and c:IsCanAddCounter(0x1,1,false,LOCATION_ONFIELD)
end end
function c47550017.pentg(e,tp,eg,ep,ev,re,r,rp,chk) function c47550017.pentg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingTarget(c47550017.pspfilter,tp,LOCATION_PZONE,0,1,nil,e,tp) end if chk==0 then return Duel.IsExistingTarget(c47550017.pspfilter,tp,LOCATION_PZONE,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0)
end end
function c47550017.penop(e,tp,eg,ep,ev,re,r,rp) function c47550017.penop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetMZoneCount(tp)<=0 then return end if Duel.GetMZoneCount(tp)<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local c=e:GetHandler() local c=e:GetHandler()
local g=Duel.SelectMatchingCard(tp,c47550017.pspfilter,tp,LOCATION_SZONE,0,1,1,nil,e,tp) local g=Duel.SelectMatchingCard(tp,c47550017.pspfilter,tp,LOCATION_SZONE,0,1,1,nil,e,tp)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc and Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)~=0 then if tc and Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)~=0 then
tc:AddCounter(0x1,3) tc:AddCounter(0x1,3)
Duel.BreakEffect() Duel.BreakEffect()
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
function c47550017.spfilter(c) function c47550017.spfilter(c)
return c:IsFaceup() and c:IsRace(RACE_SPELLCASTER) and c:IsType(TYPE_PENDULUM) return c:IsFaceup() and c:IsRace(RACE_SPELLCASTER) and c:IsType(TYPE_PENDULUM)
end end
function c47550017.odfilter(c) function c47550017.odfilter(c)
return c:IsAbleToChangeControler() and not c:IsType(TYPE_TOKEN) return c:IsAbleToChangeControler() and not c:IsType(TYPE_TOKEN)
end end
function c47550017.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c47550017.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return false end if chkc then return false end
if chk==0 then return Duel.IsExistingTarget(c47550017.spfilter,tp,LOCATION_ONFIELD,0,1,nil) and Duel.IsExistingTarget(c47550017.odfilter,tp,0,LOCATION_ONFIELD,1,nil) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end if chk==0 then return Duel.IsExistingTarget(c47550017.spfilter,tp,LOCATION_ONFIELD,0,1,nil) and Duel.IsExistingTarget(c47550017.odfilter,tp,0,LOCATION_ONFIELD,1,nil) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g1=Duel.SelectTarget(tp,c47550017.spfilter,tp,LOCATION_ONFIELD,0,1,1,nil) local g1=Duel.SelectTarget(tp,c47550017.spfilter,tp,LOCATION_ONFIELD,0,1,1,nil)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g2=Duel.SelectTarget(tp,c47550017.odfilter,tp,0,LOCATION_ONFIELD,1,1,nil) local g2=Duel.SelectTarget(tp,c47550017.odfilter,tp,0,LOCATION_ONFIELD,1,1,nil)
g1:Merge(g2) g1:Merge(g2)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
end end
function c47550017.spop(e,tp,eg,ep,ev,re,r,rp) function c47550017.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS):Filter(Card.IsRelateToEffect,nil,e) local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS):Filter(Card.IsRelateToEffect,nil,e)
local tc=g:GetFirst() local tc=g:GetFirst()
if c:IsRelateToEffect(e) and Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)~=0 then if c:IsRelateToEffect(e) and Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)~=0 then
while tc do while tc do
local og=tc:GetOverlayGroup() local og=tc:GetOverlayGroup()
if og:GetCount()>0 then if og:GetCount()>0 then
Duel.SendtoGrave(og,REASON_RULE) Duel.SendtoGrave(og,REASON_RULE)
end end
Duel.Overlay(c,Group.FromCards(tc)) Duel.Overlay(c,Group.FromCards(tc))
tc=g:GetNext() tc=g:GetNext()
end end
end end
end end
\ No newline at end of file
...@@ -95,7 +95,7 @@ function c47551109.tpenop(e,tp,eg,ep,ev,re,r,rp) ...@@ -95,7 +95,7 @@ function c47551109.tpenop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,c47551109.tpenfilter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47551109.tpenfilter,tp,LOCATION_DECK,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
end end
...@@ -111,7 +111,7 @@ end ...@@ -111,7 +111,7 @@ end
function c47551109.penop(e,tp,eg,ep,ev,re,r,rp) function c47551109.penop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetFieldGroup(tp,LOCATION_PZONE,0) local g=Duel.GetFieldGroup(tp,LOCATION_PZONE,0)
if Duel.Destroy(g,REASON_EFFECT)~=0 and e:GetHandler():IsRelateToEffect(e) then if Duel.Destroy(g,REASON_EFFECT)~=0 and e:GetHandler():IsRelateToEffect(e) then
Duel.MoveToField(e:GetHandler(),tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(e:GetHandler(),tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
function c47551109.cost(e,tp,eg,ep,ev,re,r,rp,chk) function c47551109.cost(e,tp,eg,ep,ev,re,r,rp,chk)
......
--露☆娜☆酱 --露☆娜☆酱
function c47552431.initial_effect(c) function c47552431.initial_effect(c)
aux.EnablePendulumAttribute(c) aux.EnablePendulumAttribute(c)
c:EnableCounterPermit(0x1,LOCATION_PZONE+LOCATION_MZONE) c:EnableCounterPermit(0x1,LOCATION_PZONE+LOCATION_MZONE)
--pendulum set --pendulum set
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_DESTROY) e1:SetCategory(CATEGORY_DESTROY)
e1:SetType(EFFECT_TYPE_IGNITION) e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_PZONE) e1:SetRange(LOCATION_PZONE)
e1:SetCountLimit(1,47552431) e1:SetCountLimit(1,47552431)
e1:SetCondition(c47552431.pencon) e1:SetCondition(c47552431.pencon)
e1:SetTarget(c47552431.pentg) e1:SetTarget(c47552431.pentg)
e1:SetOperation(c47552431.penop) e1:SetOperation(c47552431.penop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--add counter --add counter
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD) e2:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetCode(EVENT_CHAINING) e2:SetCode(EVENT_CHAINING)
e2:SetRange(LOCATION_PZONE+LOCATION_MZONE) e2:SetRange(LOCATION_PZONE+LOCATION_MZONE)
e2:SetOperation(aux.chainreg) e2:SetOperation(aux.chainreg)
c:RegisterEffect(e2) c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD) e3:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e3:SetCode(EVENT_CHAIN_SOLVED) e3:SetCode(EVENT_CHAIN_SOLVED)
e3:SetRange(LOCATION_PZONE+LOCATION_MZONE) e3:SetRange(LOCATION_PZONE+LOCATION_MZONE)
e3:SetOperation(c47552431.acop) e3:SetOperation(c47552431.acop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
--serch --serch
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH) e4:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e4:SetType(EFFECT_TYPE_IGNITION) e4:SetType(EFFECT_TYPE_IGNITION)
e4:SetProperty(EFFECT_FLAG_DELAY) e4:SetProperty(EFFECT_FLAG_DELAY)
e4:SetRange(LOCATION_MZONE) e4:SetRange(LOCATION_MZONE)
e4:SetCountLimit(1,47552432) e4:SetCountLimit(1,47552432)
e4:SetCost(c47552431.tgcost) e4:SetCost(c47552431.tgcost)
e4:SetTarget(c47552431.tgtg) e4:SetTarget(c47552431.tgtg)
e4:SetOperation(c47552431.tgop) e4:SetOperation(c47552431.tgop)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function c47552431.pencon(e,tp,eg,ep,ev,re,r,rp) function c47552431.pencon(e,tp,eg,ep,ev,re,r,rp)
return not Duel.IsExistingMatchingCard(nil,tp,LOCATION_PZONE,0,1,e:GetHandler()) return not Duel.IsExistingMatchingCard(nil,tp,LOCATION_PZONE,0,1,e:GetHandler())
end end
function c47552431.penfilter(c) function c47552431.penfilter(c)
return c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_SPELLCASTER) and c:IsLevel(8) and c:IsType(TYPE_PENDULUM) and not c:IsForbidden() return c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_SPELLCASTER) and c:IsLevel(8) and c:IsType(TYPE_PENDULUM) and not c:IsForbidden()
end end
function c47552431.pentg(e,tp,eg,ep,ev,re,r,rp,chk) function c47552431.pentg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsDestructable() if chk==0 then return e:GetHandler():IsDestructable()
and Duel.IsExistingMatchingCard(c47552431.penfilter,tp,LOCATION_DECK,0,1,nil) end and Duel.IsExistingMatchingCard(c47552431.penfilter,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_DESTROY,e:GetHandler(),1,0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,e:GetHandler(),1,0,0)
end end
function c47552431.penop(e,tp,eg,ep,ev,re,r,rp) function c47552431.penop(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end if not e:GetHandler():IsRelateToEffect(e) then return end
if Duel.Destroy(e:GetHandler(),REASON_EFFECT)~=0 then if Duel.Destroy(e:GetHandler(),REASON_EFFECT)~=0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD)
local g=Duel.SelectMatchingCard(tp,c47552431.penfilter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47552431.penfilter,tp,LOCATION_DECK,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
end end
function c47552431.acop(e,tp,eg,ep,ev,re,r,rp) function c47552431.acop(e,tp,eg,ep,ev,re,r,rp)
if re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:IsActiveType(TYPE_SPELL) and e:GetHandler():GetFlagEffect(1)>0 then if re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:IsActiveType(TYPE_SPELL) and e:GetHandler():GetFlagEffect(1)>0 then
e:GetHandler():AddCounter(0x1,2) e:GetHandler():AddCounter(0x1,2)
end end
end end
function c47552431.tgcost(e,tp,eg,ep,ev,re,r,rp,chk) function c47552431.tgcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsCanRemoveCounter(tp,1,0,0x1,4,REASON_COST) end if chk==0 then return Duel.IsCanRemoveCounter(tp,1,0,0x1,4,REASON_COST) end
Duel.RemoveCounter(tp,1,0,0x1,4,REASON_COST) Duel.RemoveCounter(tp,1,0,0x1,4,REASON_COST)
end end
function c47552431.tgfilter(c) function c47552431.tgfilter(c)
return c:IsRace(RACE_SPELLCASTER) and c:IsAttribute(ATTRIBUTE_DARK) and c:IsAbleToGrave() return c:IsRace(RACE_SPELLCASTER) and c:IsAttribute(ATTRIBUTE_DARK) and c:IsAbleToGrave()
end end
function c47552431.tgtg(e,tp,eg,ep,ev,re,r,rp,chk) function c47552431.tgtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c47552431.filter,tp,LOCATION_DECK,0,1,nil,tp) end if chk==0 then return Duel.IsExistingMatchingCard(c47552431.filter,tp,LOCATION_DECK,0,1,nil,tp) end
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,tp,LOCATION_DECK)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_DESTROY,nil,1,tp,LOCATION_DECK)
end end
function c47552431.tgop(e,tp,eg,ep,ev,re,r,rp) function c47552431.tgop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,c47552431.tgfilter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47552431.tgfilter,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.Destroy(g,REASON_EFFECT,LOCATION_GRAVE) Duel.Destroy(g,REASON_EFFECT,LOCATION_GRAVE)
end end
end end
\ No newline at end of file
--世界树·马格纳 --世界树·马格纳
local m=47570200 function c47570200.initial_effect(c)
local cm=_G["c"..m] --synchro summon
function cm.initial_effect(c) aux.AddSynchroProcedure(c,c47570200.synfilter,aux.NonTuner(c47570200.synfilter1),1)
c:EnableReviveLimit()
--splimit
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetRange(LOCATION_PZONE)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE)
e1:SetTargetRange(1,0)
e1:SetTarget(c47570200.psplimit)
c:RegisterEffect(e1)
--inactivatable
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_CANNOT_INACTIVATE)
e2:SetRange(LOCATION_PZONE)
e2:SetValue(c47570200.effectfilter)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_CANNOT_DISEFFECT)
e3:SetRange(LOCATION_PZONE)
e3:SetValue(c47570200.effectfilter)
c:RegisterEffect(e3)
--special summon
local e4=Effect.CreateEffect(c)
e4:SetCategory(CATEGORY_SPECIAL_SUMMON)
e4:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e4:SetCode(EVENT_SPSUMMON_SUCCESS)
e4:SetProperty(EFFECT_FLAG_DELAY)
e4:SetCondition(c47570200.spcon)
e4:SetOperation(c47570200.spop)
c:RegisterEffect(e4)
--special summon2
local e5=Effect.CreateEffect(c)
e5:SetDescription(aux.Stringid(47570200,0))
e5:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e5:SetCode(EVENT_TO_DECK)
e5:SetRange(LOCATION_MZONE)
e5:SetCountLimit(1)
e5:SetCondition(c47570200.spcon)
e5:SetTarget(c47570200.sptg2)
e5:SetOperation(c47570200.spop2)
c:RegisterEffect(e5)
local e6=e5:Clone()
e6:SetCode(EVENT_TO_GRAVE)
e6:SetCondition(c47570200.spcon2)
c:RegisterEffect(e6)
--cannot effect
local e7=Effect.CreateEffect(c)
e7:SetDescription(aux.Stringid(47570200,1))
e7:SetType(EFFECT_TYPE_QUICK_O)
e7:SetCode(EVENT_FREE_CHAIN)
e7:SetHintTiming(0,TIMING_DRAW_PHASE)
e7:SetRange(LOCATION_MZONE)
e7:SetCost(c47570200.efcost)
e7:SetOperation(c47570200.efop)
c:RegisterEffect(e7)
end end
function c47570200.synfilter(c)
return c:IsRace(RACE_PLANT)
end
function c47570200.synfilter1(c)
return c:IsRace(RACE_PLANT) or c:IsType(TYPE_PENDULUM)
end
function c47570200.pefilter(c)
return c:IsRace(RACE_PLANT) or c:IsSetCard(0x5da) or c:IsAttribute(ATTRIBUTE_EARTH)
end
function c47570200.psplimit(e,c,tp,sumtp,sumpos)
return not c47570200.pefilter(c) and bit.band(sumtp,SUMMON_TYPE_PENDULUM)==SUMMON_TYPE_PENDULUM
end
function c47570200.effectfilter(e,ct)
local p=e:GetHandler():GetControler()
local te,tp,loc=Duel.GetChainInfo(ct,CHAININFO_TRIGGERING_EFFECT,CHAININFO_TRIGGERING_PLAYER,CHAININFO_TRIGGERING_LOCATION)
return p==tp and te:GetHandler():IsRace(RACE_PLANT) and bit.band(loc,LOCATION_ONFIELD)~=0
end
function c47570200.spcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO)
end
function c47570200.filter(c,e,tp)
return c:IsRace(RACE_PLANT) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP)
end
function c47570200.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,c47570200.filter,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
function c47570200.tefilter(c,tp)
return c:IsFaceup() and c:IsControler(tp) and c:IsLocation(LOCATION_EXTRA) and c:IsRace(RACE_PLANT)
and c:IsPreviousLocation(LOCATION_ONFIELD)
end
function c47570200.spcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(c47570200.tefilter,1,nil,tp)
end
function c47570200.tgfilter(c,tp)
return c:IsFaceup() and c:IsControler(tp) and c:IsLocation(LOCATION_GRAVE) and c:IsRace(RACE_PLANT)
and c:IsPreviousLocation(LOCATION_ONFIELD)
end
function c47570200.spcon2(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(c47570200.tgfilter,1,nil,tp)
end
function c47570200.filter2(c,e,tp)
return c:IsAttribute(ATTRIBUTE_EARTH) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c47570200.sptg2(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(c47570200.filter2,tp,LOCATION_HAND,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND)
end
function c47570200.spop2(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) then return end
if Duel.GetLocationCount(tp,LOCATION_MZONE)>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c47570200.filter2,tp,LOCATION_DECK,0,1,1,nil,e,tp)
local tc=g:GetFirst()
if tc and Duel.SpecialSummonStep(tc,0,tp,tp,false,false,POS_FACEUP) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CHANGE_LEVEL)
e1:SetValue(8)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCod(EFFECT_ADD_TYPE)
e2:SetValue(TYPE_TUNER)
tc:RegisterEffect(e2)
end
Duel.SpecialSummonComplete()
end
end
function c47570200.efcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsReleasable() end
Duel.Release(e:GetHandler(),REASON_COST)
end
function c47570200.efop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetTargetRange(1,1)
e1:SetValue(c47570200.aclimit)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
end
function c47570200.aclimit(e,re,tp)
local c=re:GetHandler()
return re:IsActiveType(TYPE_MONSTER) and not c:IsRace(RACE_PLANT)
end
\ No newline at end of file
...@@ -96,7 +96,7 @@ function c47570500.tfop(e,tp,eg,ep,ev,re,r,rp) ...@@ -96,7 +96,7 @@ function c47570500.tfop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local sg=g1:Select(tp,1,2,nil) local sg=g1:Select(tp,1,2,nil)
for tc in aux.Next(sg) do for tc in aux.Next(sg) do
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
tc:RegisterFlagEffect(47570500,RESET_EVENT+0x7e0000+RESET_PHASE+PHASE_END,0,1) tc:RegisterFlagEffect(47570500,RESET_EVENT+0x7e0000+RESET_PHASE+PHASE_END,0,1)
end end
end end
...@@ -116,7 +116,7 @@ function c47570500.tpop(e,tp,eg,ep,ev,re,r,rp) ...@@ -116,7 +116,7 @@ function c47570500.tpop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
function c47570500.rtgfilter(c) function c47570500.rtgfilter(c)
......
--堕天司的奇袭 --堕天司的奇袭
function c47577904.initial_effect(c) function c47577904.initial_effect(c)
--Activate --Activate
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_DESTROY+CATEGORY_TOGRAVE) e1:SetCategory(CATEGORY_DESTROY+CATEGORY_TOGRAVE)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,47577904+EFFECT_COUNT_CODE_OATH) e1:SetCountLimit(1,47577904+EFFECT_COUNT_CODE_OATH)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET) e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetTarget(c47577904.target) e1:SetTarget(c47577904.target)
e1:SetOperation(c47577904.activate) e1:SetOperation(c47577904.activate)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--material --material
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(47577904,0)) e2:SetDescription(aux.Stringid(47577904,0))
e2:SetType(EFFECT_TYPE_IGNITION) e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_GRAVE) e2:SetRange(LOCATION_GRAVE)
e2:SetCountLimit(1,47577905) e2:SetCountLimit(1,47577905)
e2:SetCost(aux.bfgcost) e2:SetCost(aux.bfgcost)
e2:SetTarget(c47577904.ptg) e2:SetTarget(c47577904.ptg)
e2:SetOperation(c47577904.pop) e2:SetOperation(c47577904.pop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c47577904.inmfilter(c) function c47577904.inmfilter(c)
return c:IsSetCard(0x95de) and c:IsType(TYPE_PENDULUM) and c:IsFaceup() return c:IsSetCard(0x95de) and c:IsType(TYPE_PENDULUM) and c:IsFaceup()
end end
function c47577904.target(e,tp,eg,ep,ev,re,r,rp,chk) function c47577904.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c47577904.inmfilter,tp,LOCATION_MZONE+LOCATION_EXTRA+LOCATION_GRAVE,0,1,nil) and (Duel.CheckLocation(tp,LOCATION_PZONE,0) or Duel.CheckLocation(tp,LOCATION_PZONE,1)) end if chk==0 then return Duel.IsExistingMatchingCard(c47577904.inmfilter,tp,LOCATION_MZONE+LOCATION_EXTRA+LOCATION_GRAVE,0,1,nil) and (Duel.CheckLocation(tp,LOCATION_PZONE,0) or Duel.CheckLocation(tp,LOCATION_PZONE,1)) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g=Duel.SelectTarget(tp,c47577904.inmfilter,tp,LOCATION_MZONE+LOCATION_EXTRA+LOCATION_GRAVE,0,1,1,nil) local g=Duel.SelectTarget(tp,c47577904.inmfilter,tp,LOCATION_MZONE+LOCATION_EXTRA+LOCATION_GRAVE,0,1,1,nil)
end end
function c47577904.activate(e,tp,eg,ep,ev,re,r,rp) function c47577904.activate(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc and Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true)~=0 then if tc and Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)~=0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,Card.IsAbleToGrave,tp,0,LOCATION_MZONE,1,1,nil) local g=Duel.SelectMatchingCard(tp,Card.IsAbleToGrave,tp,0,LOCATION_MZONE,1,1,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.HintSelection(g) Duel.HintSelection(g)
Duel.SendtoGrave(g,REASON_EFFECT) Duel.SendtoGrave(g,REASON_EFFECT)
end end
end end
end end
function c47577904.penfilter(c) function c47577904.penfilter(c)
return c:IsType(TYPE_PENDULUM) and not c:IsForbidden() and c:IsFaceup() and c:IsAttribute(ATTRIBUTE_DARK) return c:IsType(TYPE_PENDULUM) and not c:IsForbidden() and c:IsFaceup() and c:IsAttribute(ATTRIBUTE_DARK)
end end
function c47577904.ptg(e,tp,eg,ep,ev,re,r,rp,chk) function c47577904.ptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c47577904.penfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp,ev) end if chk==0 then return Duel.IsExistingMatchingCard(c47577904.penfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp,ev) end
end end
function c47577904.pop(e,tp,eg,ep,ev,re,r,rp) function c47577904.pop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD)
local g=Duel.SelectMatchingCard(tp,c47577904.penfilter,tp,LOCATION_GRAVE,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47577904.penfilter,tp,LOCATION_GRAVE,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
--刑死的堕天司 沙利叶 --刑死的堕天司 沙利叶
function c47577910.initial_effect(c) function c47577910.initial_effect(c)
--pendulum summon --pendulum summon
aux.EnablePendulumAttribute(c) aux.EnablePendulumAttribute(c)
--splimit --splimit
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_FIELD)
e1:SetRange(LOCATION_PZONE) e1:SetRange(LOCATION_PZONE)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON) e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE) e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CANNOT_NEGATE)
e1:SetTargetRange(1,0) e1:SetTargetRange(1,0)
e1:SetTarget(c47577910.psplimit) e1:SetTarget(c47577910.psplimit)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--draw --draw
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_DRAW) e2:SetCategory(CATEGORY_DRAW)
e2:SetType(EFFECT_TYPE_IGNITION) e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_PZONE) e2:SetRange(LOCATION_PZONE)
e2:SetCountLimit(1,47577910) e2:SetCountLimit(1,47577910)
e2:SetTarget(c47577910.drtg) e2:SetTarget(c47577910.drtg)
e2:SetOperation(c47577910.drop) e2:SetOperation(c47577910.drop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--summon with 1 tribute --summon with 1 tribute
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(47577910,0)) e3:SetDescription(aux.Stringid(47577910,0))
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE) e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e3:SetType(EFFECT_TYPE_SINGLE) e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetCode(EFFECT_SUMMON_PROC) e3:SetCode(EFFECT_SUMMON_PROC)
e3:SetCondition(c47577910.otcon) e3:SetCondition(c47577910.otcon)
e3:SetOperation(c47577910.otop) e3:SetOperation(c47577910.otop)
e3:SetValue(SUMMON_TYPE_ADVANCE) e3:SetValue(SUMMON_TYPE_ADVANCE)
c:RegisterEffect(e3) c:RegisterEffect(e3)
local e4=e3:Clone() local e4=e3:Clone()
e4:SetCode(EFFECT_SET_PROC) e4:SetCode(EFFECT_SET_PROC)
c:RegisterEffect(e4) c:RegisterEffect(e4)
-- --
local e5=Effect.CreateEffect(c) local e5=Effect.CreateEffect(c)
e5:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH) e5:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e5:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_SINGLE) e5:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_SINGLE)
e5:SetProperty(EFFECT_FLAG_DELAY) e5:SetProperty(EFFECT_FLAG_DELAY)
e5:SetCode(EVENT_SUMMON_SUCCESS) e5:SetCode(EVENT_SUMMON_SUCCESS)
e5:SetOperation(c47577910.thop) e5:SetOperation(c47577910.thop)
c:RegisterEffect(e5) c:RegisterEffect(e5)
--copy effect --copy effect
local e7=Effect.CreateEffect(c) local e7=Effect.CreateEffect(c)
e7:SetDescription(aux.Stringid(47577910,1)) e7:SetDescription(aux.Stringid(47577910,1))
e7:SetCategory(CATEGORY_TODECK) e7:SetCategory(CATEGORY_TODECK)
e7:SetType(EFFECT_TYPE_QUICK_O) e7:SetType(EFFECT_TYPE_QUICK_O)
e7:SetRange(LOCATION_MZONE) e7:SetRange(LOCATION_MZONE)
e7:SetCode(EVENT_FREE_CHAIN) e7:SetCode(EVENT_FREE_CHAIN)
e7:SetProperty(EFFECT_FLAG_CARD_TARGET) e7:SetProperty(EFFECT_FLAG_CARD_TARGET)
e7:SetCountLimit(1,47577911) e7:SetCountLimit(1,47577911)
e7:SetTarget(c47577910.cptg) e7:SetTarget(c47577910.cptg)
e7:SetOperation(c47577910.cpop) e7:SetOperation(c47577910.cpop)
c:RegisterEffect(e7) c:RegisterEffect(e7)
end end
function c47577910.psplimit(e,c,tp,sumtp,sumpos) function c47577910.psplimit(e,c,tp,sumtp,sumpos)
return not c:IsRace(RACE_FAIRY) and bit.band(sumtp,SUMMON_TYPE_PENDULUM)==SUMMON_TYPE_PENDULUM return not c:IsRace(RACE_FAIRY) and bit.band(sumtp,SUMMON_TYPE_PENDULUM)==SUMMON_TYPE_PENDULUM
end end
function c47577910.drfilter(c) function c47577910.drfilter(c)
return c:IsLocation(LOCATION_HAND) and c:IsAbleToGraveAsCost() and c:IsRace(RACE_FAIRY) return c:IsLocation(LOCATION_HAND) and c:IsAbleToGraveAsCost() and c:IsRace(RACE_FAIRY)
end end
function c47577910.drtg(e,tp,eg,ep,ev,re,r,rp,chk) function c47577910.drtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsPlayerCanDraw(tp,2) end if chk==0 then return Duel.IsPlayerCanDraw(tp,2) end
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,2) Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,2)
end end
function c47577910.drop(e,tp,eg,ep,ev,re,r,rp) function c47577910.drop(e,tp,eg,ep,ev,re,r,rp)
local ft=Duel.GetFieldGroupCount(tp,LOCATION_DECK,0) local ft=Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)
local g=Duel.GetMatchingGroup(c47577910.drfilter,tp,LOCATION_HAND,0,nil) local g=Duel.GetMatchingGroup(c47577910.drfilter,tp,LOCATION_HAND,0,nil)
local ct=math.min(ft-1,g:GetCount()) local ct=math.min(ft-1,g:GetCount())
local sg=g:Select(tp,1,ct,nil) local sg=g:Select(tp,1,ct,nil)
local d=sg:GetCount()+1 local d=sg:GetCount()+1
if Duel.SendtoGrave(sg,REASON_EFFECT)~=0 then if Duel.SendtoGrave(sg,REASON_EFFECT)~=0 then
Duel.Draw(tp,d,REASON_EFFECT) Duel.Draw(tp,d,REASON_EFFECT)
end end
end end
function c47577910.otfilter(c) function c47577910.otfilter(c)
return c:IsType(TYPE_PENDULUM) return c:IsType(TYPE_PENDULUM)
end end
function c47577910.otcon(e,c,minc) function c47577910.otcon(e,c,minc)
if c==nil then return true end if c==nil then return true end
local tp=c:GetControler() local tp=c:GetControler()
return c:GetLevel()>4 and minc<=1 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingMatchingCard(c47577910.otfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,c,tp) return c:GetLevel()>4 and minc<=1 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingMatchingCard(c47577910.otfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,c,tp)
end end
function c47577910.otop(e,tp,eg,ep,ev,re,r,rp,c) function c47577910.otop(e,tp,eg,ep,ev,re,r,rp,c)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local sg=Duel.SelectMatchingCard(tp,c47577910.otfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,c,tp) local sg=Duel.SelectMatchingCard(tp,c47577910.otfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,c,tp)
c:SetMaterial(sg) c:SetMaterial(sg)
Duel.Release(sg,REASON_SUMMON+REASON_MATERIAL) Duel.Release(sg,REASON_SUMMON+REASON_MATERIAL)
end end
function c47577910.thfilter(c,e,tp,zone) function c47577910.thfilter(c,e,tp,zone)
return c:IsType(TYPE_PENDULUM) and c:IsSetCard(0x95de) return c:IsType(TYPE_PENDULUM) and c:IsSetCard(0x95de)
end end
function c47577910.thop(e,tp,eg,ep,ev,re,r,rp) function c47577910.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SELF) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SELF)
local g=Duel.SelectMatchingCard(tp,c47577910.thfilter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47577910.thfilter,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
end end
function c47577910.cpfilter(c) function c47577910.cpfilter(c)
return c:IsSetCard(0x95de) and c:IsType(TYPE_SPELL) and c:IsAbleToDeck() and c:CheckActivateEffect(false,true,false)~=nil return c:IsSetCard(0x95de) and c:IsType(TYPE_SPELL) and c:IsAbleToDeck() and c:CheckActivateEffect(false,true,false)~=nil
end end
function c47577910.cptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c47577910.cptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then if chkc then
local te=e:GetLabelObject() local te=e:GetLabelObject()
local tg=te:GetTarget() local tg=te:GetTarget()
return tg and tg(e,tp,eg,ep,ev,re,r,rp,0,chkc) return tg and tg(e,tp,eg,ep,ev,re,r,rp,0,chkc)
end end
if chk==0 then return Duel.IsExistingTarget(c47577910.cpfilter,tp,LOCATION_GRAVE,0,1,nil) end if chk==0 then return Duel.IsExistingTarget(c47577910.cpfilter,tp,LOCATION_GRAVE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g=Duel.SelectTarget(tp,c47577910.cpfilter,tp,LOCATION_GRAVE,0,1,1,nil) local g=Duel.SelectTarget(tp,c47577910.cpfilter,tp,LOCATION_GRAVE,0,1,1,nil)
local te,ceg,cep,cev,cre,cr,crp=g:GetFirst():CheckActivateEffect(false,true,true) local te,ceg,cep,cev,cre,cr,crp=g:GetFirst():CheckActivateEffect(false,true,true)
Duel.ClearTargetCard() Duel.ClearTargetCard()
g:GetFirst():CreateEffectRelation(e) g:GetFirst():CreateEffectRelation(e)
local tg=te:GetTarget() local tg=te:GetTarget()
if tg then tg(e,tp,ceg,cep,cev,cre,cr,crp,1) end if tg then tg(e,tp,ceg,cep,cev,cre,cr,crp,1) end
te:SetLabelObject(e:GetLabelObject()) te:SetLabelObject(e:GetLabelObject())
e:SetLabelObject(te) e:SetLabelObject(te)
Duel.SetOperationInfo(0,CATEGORY_TODECK,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_TODECK,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,nil,0,0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,nil,0,0,0)
end end
function c47577910.cpop(e,tp,eg,ep,ev,re,r,rp) function c47577910.cpop(e,tp,eg,ep,ev,re,r,rp)
local te=e:GetLabelObject() local te=e:GetLabelObject()
if not te then return end if not te then return end
if not te:GetHandler():IsRelateToEffect(e) then return end if not te:GetHandler():IsRelateToEffect(e) then return end
e:SetLabelObject(te:GetLabelObject()) e:SetLabelObject(te:GetLabelObject())
local op=te:GetOperation() local op=te:GetOperation()
if op then op(e,tp,eg,ep,ev,re,r,rp) end if op then op(e,tp,eg,ep,ev,re,r,rp) end
Duel.BreakEffect() Duel.BreakEffect()
Duel.SendtoDeck(te:GetHandler(),nil,2,REASON_EFFECT) Duel.SendtoDeck(te:GetHandler(),nil,2,REASON_EFFECT)
end end
\ No newline at end of file
--堕天司的尖兵 守望者 --堕天司的尖兵 守望者
function c47577918.initial_effect(c) function c47577918.initial_effect(c)
--pendulum summon --pendulum summon
aux.EnablePendulumAttribute(c) aux.EnablePendulumAttribute(c)
--pendulum set --pendulum set
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_DESTROY) e1:SetCategory(CATEGORY_DESTROY)
e1:SetType(EFFECT_TYPE_IGNITION) e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_PZONE) e1:SetRange(LOCATION_PZONE)
e1:SetCountLimit(1,47577918+EFFECT_COUNT_CODE_OATH) e1:SetCountLimit(1,47577918+EFFECT_COUNT_CODE_OATH)
e1:SetCondition(c47577918.pencon) e1:SetCondition(c47577918.pencon)
e1:SetTarget(c47577918.pentg) e1:SetTarget(c47577918.pentg)
e1:SetOperation(c47577918.penop) e1:SetOperation(c47577918.penop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--to hand --to hand
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_SPECIAL_SUMMON) e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_IGNITION) e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET) e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetCountLimit(1,47577919+EFFECT_COUNT_CODE_OATH) e2:SetCountLimit(1,47577919+EFFECT_COUNT_CODE_OATH)
e2:SetTarget(c47577918.sptg) e2:SetTarget(c47577918.sptg)
e2:SetOperation(c47577918.spop) e2:SetOperation(c47577918.spop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c47577918.cfilter(c) function c47577918.cfilter(c)
return c:IsType(TYPE_PENDULUM) return c:IsType(TYPE_PENDULUM)
end end
function c47577918.pencon(e,tp,eg,ep,ev,re,r,rp) function c47577918.pencon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(c47577918.cfilter,tp,LOCATION_PZONE,0,1,e:GetHandler()) return Duel.IsExistingMatchingCard(c47577918.cfilter,tp,LOCATION_PZONE,0,1,e:GetHandler())
end end
function c47577918.penfilter(c) function c47577918.penfilter(c)
return c:IsSetCard(0x95de) and c:IsType(TYPE_PENDULUM) and not c:IsForbidden() return c:IsSetCard(0x95de) and c:IsType(TYPE_PENDULUM) and not c:IsForbidden()
end end
function c47577918.pentg(e,tp,eg,ep,ev,re,r,rp,chk) function c47577918.pentg(e,tp,eg,ep,ev,re,r,rp,chk)
local sc=Duel.GetFirstMatchingCard(nil,tp,LOCATION_PZONE,0,e:GetHandler()) local sc=Duel.GetFirstMatchingCard(nil,tp,LOCATION_PZONE,0,e:GetHandler())
if chk==0 then return e:GetHandler():IsDestructable() if chk==0 then return e:GetHandler():IsDestructable()
and Duel.IsExistingMatchingCard(c47577918.penfilter,tp,LOCATION_DECK,0,1,nil) end and Duel.IsExistingMatchingCard(c47577918.penfilter,tp,LOCATION_DECK,0,1,nil) end
Duel.SetTargetCard(sc) Duel.SetTargetCard(sc)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,sc,1,0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,sc,1,0,0)
end end
function c47577918.penop(e,tp,eg,ep,ev,re,r,rp) function c47577918.penop(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end if not e:GetHandler():IsRelateToEffect(e) then return end
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and Duel.Destroy(tc,REASON_EFFECT)~=0 then if tc:IsRelateToEffect(e) and Duel.Destroy(tc,REASON_EFFECT)~=0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD)
local g=Duel.SelectMatchingCard(tp,c47577918.penfilter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47577918.penfilter,tp,LOCATION_DECK,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
end end
function c47577918.spfilter(c,e,tp) function c47577918.spfilter(c,e,tp)
return (c:IsSetCard(0x5de) or c:IsSetCard(0x5da)) and c:IsType(TYPE_MONSTER) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return (c:IsSetCard(0x5de) or c:IsSetCard(0x5da)) and c:IsType(TYPE_MONSTER) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c47577918.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c47577918.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(c47577918.spfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end and Duel.IsExistingMatchingCard(c47577918.spfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_GRAVE) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_GRAVE)
end end
function c47577918.spop(e,tp,eg,ep,ev,re,r,rp) function c47577918.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(c47577918.spfilter),tp,LOCATION_GRAVE,0,1,1,nil,e,tp) local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(c47577918.spfilter),tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
local tc=g:GetFirst() local tc=g:GetFirst()
local lv=tc:GetLevel() local lv=tc:GetLevel()
if tc then if tc then
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CHANGE_LEVEL) e1:SetCode(EFFECT_CHANGE_LEVEL)
e1:SetValue(lv) e1:SetValue(lv)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE) e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
end end
\ No newline at end of file
...@@ -100,7 +100,7 @@ function c47578905.pcop(e,tp,eg,ep,ev,re,r,rp) ...@@ -100,7 +100,7 @@ function c47578905.pcop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD)
local g=Duel.SelectMatchingCard(tp,c47578905.pcfilter,tp,LOCATION_GRAVE+LOCATION_EXTRA,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47578905.pcfilter,tp,LOCATION_GRAVE+LOCATION_EXTRA,0,1,1,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.MoveToField(g:GetFirst(),tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(g:GetFirst(),tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
function c47578905.thcon(e,tp,eg,ep,ev,re,r,rp) function c47578905.thcon(e,tp,eg,ep,ev,re,r,rp)
...@@ -145,6 +145,6 @@ function c47578905.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -145,6 +145,6 @@ function c47578905.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
...@@ -167,6 +167,6 @@ function c47578907.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -167,6 +167,6 @@ function c47578907.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
...@@ -111,7 +111,7 @@ function c47578913.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -111,7 +111,7 @@ function c47578913.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
function c47578913.ddamcon(e,tp,eg,ep,ev,re,r,rp) function c47578913.ddamcon(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -103,6 +103,6 @@ function c47578919.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -103,6 +103,6 @@ function c47578919.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
...@@ -112,7 +112,7 @@ end ...@@ -112,7 +112,7 @@ end
function c47579908.penop(e,tp,eg,ep,ev,re,r,rp) function c47579908.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) and Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) then if c:IsRelateToEffect(e) and Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true) then
if Duel.GetLocationCountFromEx(tp,tp,nil,TYPE_LINK)<=0 then return end if Duel.GetLocationCountFromEx(tp,tp,nil,TYPE_LINK)<=0 then return end
local tg=Duel.GetFirstMatchingCard(c47579908.filter,tp,LOCATION_EXTRA,0,nil,e,tp) local tg=Duel.GetFirstMatchingCard(c47579908.filter,tp,LOCATION_EXTRA,0,nil,e,tp)
if tg then if tg then
......
...@@ -117,6 +117,6 @@ function c47590005.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -117,6 +117,6 @@ function c47590005.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
...@@ -128,6 +128,6 @@ function c47590006.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -128,6 +128,6 @@ function c47590006.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
...@@ -181,7 +181,7 @@ end ...@@ -181,7 +181,7 @@ end
function c47590008.penop(e,tp,eg,ep,ev,re,r,rp) function c47590008.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) and Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) then if c:IsRelateToEffect(e) and Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true) then
if Duel.GetLocationCountFromEx(tp,tp,nil,TYPE_SYNCHRO)<=0 then return end if Duel.GetLocationCountFromEx(tp,tp,nil,TYPE_SYNCHRO)<=0 then return end
local tg=Duel.GetFirstMatchingCard(c47590008.filter,tp,LOCATION_EXTRA,0,nil,e,tp) local tg=Duel.GetFirstMatchingCard(c47590008.filter,tp,LOCATION_EXTRA,0,nil,e,tp)
if tg then if tg then
......
...@@ -132,6 +132,6 @@ function c47590009.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -132,6 +132,6 @@ function c47590009.penop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end if not Duel.CheckLocation(tp,LOCATION_PZONE,0) and not Duel.CheckLocation(tp,LOCATION_PZONE,1) then return false end
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
...@@ -55,6 +55,6 @@ function c47598771.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -55,6 +55,6 @@ function c47598771.penop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,c47598771.penfilter,tp,LOCATION_GRAVE+LOCATION_EXTRA,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47598771.penfilter,tp,LOCATION_GRAVE+LOCATION_EXTRA,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
...@@ -89,7 +89,7 @@ function c47598772.tfop(e,tp,eg,ep,ev,re,r,rp) ...@@ -89,7 +89,7 @@ function c47598772.tfop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,c47598772.ppfilter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c47598772.ppfilter,tp,LOCATION_DECK,0,1,1,nil)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
function c47598772.actop(e,tp,eg,ep,ev,re,r,rp) function c47598772.actop(e,tp,eg,ep,ev,re,r,rp)
...@@ -134,6 +134,6 @@ function c47598772.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -134,6 +134,6 @@ function c47598772.penop(e,tp,eg,ep,ev,re,r,rp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT) Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.BreakEffect() Duel.BreakEffect()
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
...@@ -96,7 +96,7 @@ end ...@@ -96,7 +96,7 @@ end
function c47598773.penop(e,tp,eg,ep,ev,re,r,rp) function c47598773.penop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetFieldGroup(tp,LOCATION_PZONE,0) local g=Duel.GetFieldGroup(tp,LOCATION_PZONE,0)
if Duel.Destroy(g,REASON_EFFECT)~=0 and e:GetHandler():IsRelateToEffect(e) then if Duel.Destroy(g,REASON_EFFECT)~=0 and e:GetHandler():IsRelateToEffect(e) then
Duel.MoveToField(e:GetHandler(),tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(e:GetHandler(),tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
function c47598773.cost(e,tp,eg,ep,ev,re,r,rp,chk) function c47598773.cost(e,tp,eg,ep,ev,re,r,rp,chk)
......
...@@ -148,6 +148,6 @@ function c47598774.penop(e,tp,eg,ep,ev,re,r,rp) ...@@ -148,6 +148,6 @@ function c47598774.penop(e,tp,eg,ep,ev,re,r,rp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
Duel.BreakEffect() Duel.BreakEffect()
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
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