Commit 6402fb48 authored by VanillaSalt's avatar VanillaSalt

fix script

parent 95c88fd8
...@@ -952,7 +952,24 @@ bool ClientField::CheckSelectSum() { ...@@ -952,7 +952,24 @@ bool ClientField::CheckSelectSum() {
for(sit = selable.begin(); sit != selable.end(); ++sit) { for(sit = selable.begin(); sit != selable.end(); ++sit) {
op1 = (*sit)->opParam & 0xffff; op1 = (*sit)->opParam & 0xffff;
op2 = (*sit)->opParam >> 16; op2 = (*sit)->opParam >> 16;
m = (op2 > 0 && op1 > op2) ? op2 : op1; m = op1;
sums = sumc;
sums += m;
ms = mm;
if (ms == -1 || m < ms)
ms = m;
if (sums >= select_sumval) {
if (sums - ms < select_sumval)
selectsum_cards.insert(*sit);
} else {
std::set<ClientCard*> left(selable);
left.erase(*sit);
if (check_min(left, left.begin(), select_sumval - sums, select_sumval - sums + ms - 1))
selectsum_cards.insert(*sit);
}
if (op2 == 0)
continue;
m = op2;
sums = sumc; sums = sumc;
sums += m; sums += m;
ms = mm; ms = mm;
...@@ -961,8 +978,6 @@ bool ClientField::CheckSelectSum() { ...@@ -961,8 +978,6 @@ bool ClientField::CheckSelectSum() {
if (sums >= select_sumval) { if (sums >= select_sumval) {
if (sums - ms < select_sumval) if (sums - ms < select_sumval)
selectsum_cards.insert(*sit); selectsum_cards.insert(*sit);
else
continue;
} else { } else {
std::set<ClientCard*> left(selable); std::set<ClientCard*> left(selable);
left.erase(*sit); left.erase(*sit);
......
...@@ -103,7 +103,7 @@ end ...@@ -103,7 +103,7 @@ end
function c10000010.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c10000010.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsDestructable() end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsDestructable() end
if chk==0 then return Duel.IsExistingTarget(Card.IsDestructable,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end if chk==0 then return Duel.IsExistingTarget(Card.IsDestructable,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,Card.IsDestructable,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil) local g=Duel.SelectTarget(tp,Card.IsDestructable,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,g:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,g:GetCount(),0,0)
end end
......
...@@ -103,7 +103,7 @@ end ...@@ -103,7 +103,7 @@ end
function c10000011.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c10000011.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsDestructable() end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsDestructable() end
if chk==0 then return Duel.IsExistingTarget(Card.IsDestructable,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end if chk==0 then return Duel.IsExistingTarget(Card.IsDestructable,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,Card.IsDestructable,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil) local g=Duel.SelectTarget(tp,Card.IsDestructable,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,g:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,g:GetCount(),0,0)
end end
......
...@@ -32,7 +32,7 @@ function c11047543.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -32,7 +32,7 @@ function c11047543.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g2=Duel.SelectTarget(tp,c11047543.filter2,tp,LOCATION_REMOVED,0,1,1,nil,e,tp,g1:GetFirst():GetLevel()) local g2=Duel.SelectTarget(tp,c11047543.filter2,tp,LOCATION_REMOVED,0,1,1,nil,e,tp,g1:GetFirst():GetLevel())
g1:Merge(g2) g1:Merge(g2)
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,g1,1,0,0) Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,g1,2,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA)
end end
function c11047543.operation(e,tp,eg,ep,ev,re,r,rp) function c11047543.operation(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -78,7 +78,7 @@ function c11502550.spop(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -78,7 +78,7 @@ function c11502550.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Group.CreateGroup() local g=Group.CreateGroup()
local tc=nil local tc=nil
for i=1,2 do for i=1,2 do
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
if ft<=0 then if ft<=0 then
tc=g1:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst() tc=g1:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst()
else else
......
...@@ -27,7 +27,7 @@ function c12470447.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -27,7 +27,7 @@ function c12470447.activate(e,tp,eg,ep,ev,re,r,rp)
end 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_ST_AVAILABLE) e1:SetProperty(EFFECT_FLAG_SET_AVAILABLE)
e1:SetCode(EFFECT_CANNOT_CHANGE_POSITION) e1:SetCode(EFFECT_CANNOT_CHANGE_POSITION)
e1:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE) e1:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE)
e1:SetReset(RESET_PHASE+PHASE_END) e1:SetReset(RESET_PHASE+PHASE_END)
......
...@@ -11,9 +11,6 @@ function c13438207.initial_effect(c) ...@@ -11,9 +11,6 @@ function c13438207.initial_effect(c)
e1:SetOperation(c13438207.activate) e1:SetOperation(c13438207.activate)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c13438207.filter(c,p)
return c:GetControler()==p and c:IsOnField()
end
function c13438207.condition(e,tp,eg,ep,ev,re,r,rp) function c13438207.condition(e,tp,eg,ep,ev,re,r,rp)
local tc=eg:GetFirst() local tc=eg:GetFirst()
local bc=tc:GetBattleTarget() local bc=tc:GetBattleTarget()
......
...@@ -9,10 +9,7 @@ function c13532663.initial_effect(c) ...@@ -9,10 +9,7 @@ function c13532663.initial_effect(c)
e1:SetOperation(c13532663.operation) e1:SetOperation(c13532663.operation)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c13532663.filter(c) function c13532663.target(e,tp,eg,ep,ev,re,r,rp,chk)
return c:IsType(TYPE_SPELL) and c:IsAbleToHand()
end
function c13532663.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return true end if chk==0 then return true end
Duel.SetOperationInfo(0,CATEGORY_CONTROL,nil,0,0,0) Duel.SetOperationInfo(0,CATEGORY_CONTROL,nil,0,0,0)
end end
......
...@@ -36,9 +36,6 @@ function c13959634.spcon(e,c) ...@@ -36,9 +36,6 @@ function c13959634.spcon(e,c)
return Duel.GetLocationCount(c:GetControler(),LOCATION_MZONE)>0 and return Duel.GetLocationCount(c:GetControler(),LOCATION_MZONE)>0 and
Duel.GetMatchingGroupCount(Card.IsAttribute,c:GetControler(),LOCATION_GRAVE,0,nil,ATTRIBUTE_WATER)==5 Duel.GetMatchingGroupCount(Card.IsAttribute,c:GetControler(),LOCATION_GRAVE,0,nil,ATTRIBUTE_WATER)==5
end end
function c13959634.filter(c,e,tp)
return c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c13959634.hdtg(e,tp,eg,ep,ev,re,r,rp,chk) function c13959634.hdtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetFlagEffect(tp,13959634)==0 end if chk==0 then return Duel.GetFlagEffect(tp,13959634)==0 end
Duel.SetOperationInfo(0,CATEGORY_HANDES,nil,0,1-tp,2) Duel.SetOperationInfo(0,CATEGORY_HANDES,nil,0,1-tp,2)
......
...@@ -17,7 +17,7 @@ function c1571945.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -17,7 +17,7 @@ function c1571945.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c1571945.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and c1571945.filter(chkc) end
if chk==0 then return true end if chk==0 then return true end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,c1571945.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil,tp) local g=Duel.SelectTarget(tp,c1571945.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,g:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,g:GetCount(),0,0)
end end
function c1571945.operation(e,tp,eg,ep,ev,re,r,rp) function c1571945.operation(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -16,7 +16,7 @@ end ...@@ -16,7 +16,7 @@ end
function c15866454.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c15866454.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsOnField() and chkc:IsControler(1-tp) and c15866454.filter(chkc) end if chkc then return chkc:IsOnField() and chkc:IsControler(1-tp) and c15866454.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c15866454.filter,tp,0,LOCATION_ONFIELD,1,nil) end if chk==0 then return Duel.IsExistingTarget(c15866454.filter,tp,0,LOCATION_ONFIELD,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RTOHAND)
local g=Duel.SelectTarget(tp,c15866454.filter,tp,0,LOCATION_ONFIELD,1,1,nil) local g=Duel.SelectTarget(tp,c15866454.filter,tp,0,LOCATION_ONFIELD,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0)
end end
......
...@@ -86,7 +86,7 @@ function c17032740.spop(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -86,7 +86,7 @@ function c17032740.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Group.CreateGroup() local g=Group.CreateGroup()
local tc=nil local tc=nil
for i=1,3 do for i=1,3 do
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
if ft<=0 then if ft<=0 then
tc=g1:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst() tc=g1:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst()
else else
...@@ -126,9 +126,6 @@ function c17032740.cointg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -126,9 +126,6 @@ function c17032740.cointg(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_COIN,nil,0,tp,3) Duel.SetOperationInfo(0,CATEGORY_COIN,nil,0,tp,3)
end end
function c17032740.desfilter(c)
return c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsDestructable()
end
function c17032740.coinop(e,tp,eg,ep,ev,re,r,rp) function c17032740.coinop(e,tp,eg,ep,ev,re,r,rp)
local c1,c2,c3=Duel.TossCoin(tp,3) local c1,c2,c3=Duel.TossCoin(tp,3)
if c1+c2+c3==3 then if c1+c2+c3==3 then
......
...@@ -24,11 +24,11 @@ end ...@@ -24,11 +24,11 @@ end
function c176392.descon(e,tp,eg,ep,ev,re,r,rp) function c176392.descon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetCurrentPhase()==PHASE_END return Duel.GetCurrentPhase()==PHASE_END
end end
function c176392.rfilter(c,rc) function c176392.rfilter(c)
return c~=rc and c:IsFaceup() and c:IsLocation(LOCATION_MZONE) and c:IsSetCard(0x1d) return c:IsFaceup() and c:IsLocation(LOCATION_MZONE) and c:IsSetCard(0x1d)
end end
function c176392.destg(e,tp,eg,ep,ev,re,r,rp,chk) function c176392.destg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return eg:IsExists(c176392.rfilter,1,nil,e:GetHandler()) end if chk==0 then return eg:IsExists(c176392.rfilter,1,e:GetHandler()) end
if Duel.SelectYesNo(tp,aux.Stringid(176392,0)) then if Duel.SelectYesNo(tp,aux.Stringid(176392,0)) then
Duel.Destroy(e:GetHandler(),REASON_EFFECT+REASON_REPLACE) Duel.Destroy(e:GetHandler(),REASON_EFFECT+REASON_REPLACE)
return true return true
......
...@@ -15,9 +15,6 @@ function c1804528.descon(e,tp,eg,ep,ev,re,r,rp) ...@@ -15,9 +15,6 @@ function c1804528.descon(e,tp,eg,ep,ev,re,r,rp)
and e:GetHandler():IsPreviousLocation(LOCATION_ONFIELD) and e:GetHandler():IsPreviousLocation(LOCATION_ONFIELD)
and e:GetHandler():IsPreviousPosition(POS_FACEDOWN) and e:GetHandler():IsPreviousPosition(POS_FACEDOWN)
end end
function c1804528.desfilter(c)
return c:IsFaceup() and c:IsDestructable()
end
function c1804528.desop(e,tp,eg,ep,ev,re,r,rp) function c1804528.desop(e,tp,eg,ep,ev,re,r,rp)
local g1=Duel.GetFieldGroup(tp,0,LOCATION_HAND) local g1=Duel.GetFieldGroup(tp,0,LOCATION_HAND)
local g2=Duel.GetMatchingGroup(Card.IsDestructable,tp,0,LOCATION_MZONE,nil) local g2=Duel.GetMatchingGroup(Card.IsDestructable,tp,0,LOCATION_MZONE,nil)
......
...@@ -71,7 +71,7 @@ end ...@@ -71,7 +71,7 @@ end
function c18096222.datg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c18096222.datg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c18096222.dafilter(chkc) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and c18096222.dafilter(chkc) end
if chk==0 then return true end if chk==0 then return true end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
Duel.SelectTarget(tp,c18096222.dafilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil) Duel.SelectTarget(tp,c18096222.dafilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
end end
function c18096222.daop(e,tp,eg,ep,ev,re,r,rp) function c18096222.daop(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -23,7 +23,7 @@ function c20638610.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -23,7 +23,7 @@ function c20638610.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
and Duel.IsExistingTarget(c20638610.rmfilter,tp,LOCATION_MZONE,0,1,nil) and Duel.IsExistingTarget(c20638610.rmfilter,tp,LOCATION_MZONE,0,1,nil)
and Duel.IsExistingMatchingCard(c20638610.spfilter,tp,LOCATION_GRAVE+LOCATION_HAND,0,1,nil,e,tp) end and Duel.IsExistingMatchingCard(c20638610.spfilter,tp,LOCATION_GRAVE+LOCATION_HAND,0,1,nil,e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local g=Duel.SelectTarget(tp,c20638610.rmfilter,tp,LOCATION_MZONE,0,1,1,nil,e,tp) local g=Duel.SelectTarget(tp,c20638610.rmfilter,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_REMOVE,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_REMOVE,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_GRAVE+LOCATION_HAND) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_GRAVE+LOCATION_HAND)
end end
......
...@@ -19,7 +19,7 @@ end ...@@ -19,7 +19,7 @@ end
function c20721759.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c20721759.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) end if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) end
if chk==0 then return Duel.IsExistingTarget(nil,tp,0,LOCATION_MZONE,1,nil) end if chk==0 then return Duel.IsExistingTarget(nil,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectTarget(tp,nil,tp,0,LOCATION_MZONE,1,1,nil) local g=Duel.SelectTarget(tp,nil,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,1-tp,g:GetFirst():GetBaseAttack()) Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,1-tp,g:GetFirst():GetBaseAttack())
......
...@@ -32,6 +32,7 @@ function c21143940.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -32,6 +32,7 @@ function c21143940.activate(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg=Duel.SelectMatchingCard(tp,c21143940.tfilter,tp,LOCATION_EXTRA,0,1,1,nil,tc:GetAttribute(),e,tp) local sg=Duel.SelectMatchingCard(tp,c21143940.tfilter,tp,LOCATION_EXTRA,0,1,1,nil,tc:GetAttribute(),e,tp)
if sg:GetCount()>0 then if sg:GetCount()>0 then
Duel.BreakEffect()
Duel.SpecialSummon(sg,0,tp,tp,true,false,POS_FACEUP) Duel.SpecialSummon(sg,0,tp,tp,true,false,POS_FACEUP)
sg:GetFirst():CompleteProcedure() sg:GetFirst():CompleteProcedure()
end end
......
...@@ -57,7 +57,7 @@ end ...@@ -57,7 +57,7 @@ end
function c22147147.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c22147147.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsOnField() and c22147147.desfilter(chkc) end if chkc then return chkc:IsOnField() and c22147147.desfilter(chkc) end
if chk==0 then return true end if chk==0 then return true end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,c22147147.desfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,nil) local g=Duel.SelectTarget(tp,c22147147.desfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,g:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,g:GetCount(),0,0)
end end
......
...@@ -21,7 +21,7 @@ function c23401839.tg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -21,7 +21,7 @@ function c23401839.tg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end end
function c23401839.op(e,tp,eg,ep,ev,re,r,rp) function c23401839.op(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,c23401839.filter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c23401839.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)
......
...@@ -33,7 +33,7 @@ end ...@@ -33,7 +33,7 @@ end
function c25231813.eqlimit(e,c) function c25231813.eqlimit(e,c)
return c:IsLevelAbove(8) and c:IsRace(RACE_DRAGON) and c:IsType(TYPE_SYNCHRO) return c:IsLevelAbove(8) and c:IsRace(RACE_DRAGON) and c:IsType(TYPE_SYNCHRO)
end end
function c25231813.filter(c,tp) function c25231813.filter(c)
return c:IsFaceup() and c:IsLevelAbove(8) and c:IsRace(RACE_DRAGON) and c:IsType(TYPE_SYNCHRO) return c:IsFaceup() and c:IsLevelAbove(8) and c:IsRace(RACE_DRAGON) and c:IsType(TYPE_SYNCHRO)
end end
function c25231813.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c25231813.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
......
...@@ -14,12 +14,12 @@ function c27004302.filter(c) ...@@ -14,12 +14,12 @@ function c27004302.filter(c)
return c:IsSetCard(0x1047) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand() return c:IsSetCard(0x1047) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand()
end end
function c27004302.target(e,tp,eg,ep,ev,re,r,rp,chk) function c27004302.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c27004302.filter,tp,LOCATION_DECK,0,1,nil,e,tp) end if chk==0 then return Duel.IsExistingMatchingCard(c27004302.filter,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,0,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,0,LOCATION_DECK)
end end
function c27004302.operation(e,tp,eg,ep,ev,re,r,rp) function c27004302.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,c27004302.filter,tp,LOCATION_DECK,0,1,1,nil,e,tp) local g=Duel.SelectMatchingCard(tp,c27004302.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)
......
...@@ -11,7 +11,7 @@ function c27178262.initial_effect(c) ...@@ -11,7 +11,7 @@ function c27178262.initial_effect(c)
e1:SetOperation(c27178262.activate) e1:SetOperation(c27178262.activate)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c27178262.costfilter(c,e,tp) function c27178262.costfilter(c)
return c:IsFaceup() and c:IsSetCard(0x3d) and c:IsAbleToGraveAsCost() return c:IsFaceup() and c:IsSetCard(0x3d) and c:IsAbleToGraveAsCost()
end end
function c27178262.cost(e,tp,eg,ep,ev,re,r,rp,chk) function c27178262.cost(e,tp,eg,ep,ev,re,r,rp,chk)
...@@ -24,11 +24,11 @@ function c27178262.filter(c,e,tp) ...@@ -24,11 +24,11 @@ function c27178262.filter(c,e,tp)
return c:IsSetCard(0x3d) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsSetCard(0x3d) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c27178262.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c27178262.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c27178262.filter(chkc,e,tp) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and c27178262.filter(chkc,e,tp) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>-1 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>-1
and Duel.IsExistingTarget(c27178262.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end and Duel.IsExistingTarget(c27178262.filter,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,nil,e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectTarget(tp,c27178262.filter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp) local g=Duel.SelectTarget(tp,c27178262.filter,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,1,nil,e,tp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0)
end end
function c27178262.activate(e,tp,eg,ep,ev,re,r,rp) function c27178262.activate(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -23,7 +23,7 @@ end ...@@ -23,7 +23,7 @@ end
function c28429121.mfilter1(c,e) function c28429121.mfilter1(c,e)
return c:IsFaceup() and c:GetLevel()>0 and not c:IsImmuneToEffect(e) and c:IsReleasable() return c:IsFaceup() and c:GetLevel()>0 and not c:IsImmuneToEffect(e) and c:IsReleasable()
end end
function c28429121.mfilter2(c,e) function c28429121.mfilter2(c)
return c:IsHasEffect(EFFECT_EXTRA_RITUAL_MATERIAL) and c:IsAbleToRemove() return c:IsHasEffect(EFFECT_EXTRA_RITUAL_MATERIAL) and c:IsAbleToRemove()
end end
function c28429121.get_material(e,tp) function c28429121.get_material(e,tp)
......
...@@ -9,7 +9,7 @@ function c28643791.initial_effect(c) ...@@ -9,7 +9,7 @@ function c28643791.initial_effect(c)
e1:SetOperation(c28643791.operation) e1:SetOperation(c28643791.operation)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c28643791.filter(c,tp) function c28643791.filter(c)
return c:IsFaceup() and c:IsSetCard(0x4b) return c:IsFaceup() and c:IsSetCard(0x4b)
end end
function c28643791.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c28643791.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
......
...@@ -81,7 +81,7 @@ function c28677304.spop(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -81,7 +81,7 @@ function c28677304.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Group.CreateGroup() local g=Group.CreateGroup()
local tc=nil local tc=nil
for i=1,2 do for i=1,2 do
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
if ft<=0 then if ft<=0 then
tc=g1:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst() tc=g1:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst()
else else
......
...@@ -15,11 +15,11 @@ function c30461781.filter(c) ...@@ -15,11 +15,11 @@ function c30461781.filter(c)
end end
function c30461781.target(e,tp,eg,ep,ev,re,r,rp,chk) function c30461781.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsPlayerCanDraw(tp,1) end if chk==0 then return Duel.IsPlayerCanDraw(tp,1) end
local d = 1 local d=1
if Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>1 if Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>1
and Duel.IsExistingMatchingCard(c30461781.filter,tp,0,LOCATION_MZONE,1,nil,TYPE_SPIRIT) and Duel.IsExistingMatchingCard(c30461781.filter,tp,0,LOCATION_MZONE,1,nil)
and Duel.SelectOption(tp,aux.Stringid(30461781,0),aux.Stringid(30461781,1)) == 1 then and Duel.SelectOption(tp,aux.Stringid(30461781,0),aux.Stringid(30461781,1))==1 then
d = 2 d=2
end end
Duel.SetTargetPlayer(tp) Duel.SetTargetPlayer(tp)
Duel.SetTargetParam(d) Duel.SetTargetParam(d)
......
...@@ -30,13 +30,13 @@ function c31975743.cost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -30,13 +30,13 @@ function c31975743.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c31975743.cfilter,tp,LOCATION_HAND,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(c31975743.cfilter,tp,LOCATION_HAND,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,c31975743.cfilter,tp,LOCATION_HAND,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c31975743.cfilter,tp,LOCATION_HAND,0,1,1,nil)
Duel.Remove(g,POS_FACEUP,REASON_COST) Duel.SendtoGrave(g,REASON_COST)
end end
function c31975743.filter(c) function c31975743.filter(c)
return c:IsPosition(POS_FACEUP_DEFENCE) and c:IsControlerCanBeChanged() return c:IsPosition(POS_FACEUP_DEFENCE) and c:IsControlerCanBeChanged()
end end
function c31975743.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c31975743.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and c31975743.filter(chkc,e,tp) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and c31975743.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c31975743.filter,tp,0,LOCATION_MZONE,1,nil) end if chk==0 then return Duel.IsExistingTarget(c31975743.filter,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONTROL) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONTROL)
local g=Duel.SelectTarget(tp,c31975743.filter,tp,0,LOCATION_MZONE,1,1,nil) local g=Duel.SelectTarget(tp,c31975743.filter,tp,0,LOCATION_MZONE,1,1,nil)
......
...@@ -14,7 +14,7 @@ function c32298781.filter(c) ...@@ -14,7 +14,7 @@ function c32298781.filter(c)
return c:IsFaceup() and bit.band(tpe,TYPE_NORMAL)~=0 and bit.band(tpe,TYPE_TOKEN)==0 and c:GetLevel()==1 return c:IsFaceup() and bit.band(tpe,TYPE_NORMAL)~=0 and bit.band(tpe,TYPE_TOKEN)==0 and c:GetLevel()==1
end end
function c32298781.target(e,tp,eg,ep,ev,re,r,rp,chk) function c32298781.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c32298781.filter,tp,LOCATION_MZONE,0,1,nil,tp) end if chk==0 then return Duel.IsExistingMatchingCard(c32298781.filter,tp,LOCATION_MZONE,0,1,nil) end
end end
function c32298781.activate(e,tp,eg,ep,ev,re,r,rp) function c32298781.activate(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(c32298781.filter,tp,LOCATION_MZONE,0,nil) local g=Duel.GetMatchingGroup(c32298781.filter,tp,LOCATION_MZONE,0,nil)
......
...@@ -23,7 +23,7 @@ function c32854013.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -23,7 +23,7 @@ function c32854013.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
e:SetLabelObject(g1:GetFirst()) e:SetLabelObject(g1:GetFirst())
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local g2=Duel.SelectTarget(tp,Card.IsAbleToDeck,tp,0,LOCATION_MZONE,1,1,nil) local g2=Duel.SelectTarget(tp,Card.IsAbleToDeck,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TODECK,g1,1,0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,g1,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_TODECK,g2,1,0,0) Duel.SetOperationInfo(0,CATEGORY_TODECK,g2,1,0,0)
end end
function c32854013.activate(e) function c32854013.activate(e)
......
...@@ -23,9 +23,6 @@ function c34796454.regop(e,tp,eg,ep,ev,re,r,rp) ...@@ -23,9 +23,6 @@ function c34796454.regop(e,tp,eg,ep,ev,re,r,rp)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
end end
function c34796454.filter(c)
return c:IsSetCard(0x100d) and c:IsAbleToHand()
end
function c34796454.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function c34796454.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end
......
...@@ -15,8 +15,8 @@ function c35027493.costfilter(c) ...@@ -15,8 +15,8 @@ function c35027493.costfilter(c)
return c:IsAttribute(ATTRIBUTE_DARK) and c:IsAttackAbove(2000) return c:IsAttribute(ATTRIBUTE_DARK) and c:IsAttackAbove(2000)
end end
function c35027493.cost(e,tp,eg,ep,ev,re,r,rp,chk) function c35027493.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckReleaseGroup(tp,c35027493.costfilter,1,nil,ATTRIBUTE_DARK) end if chk==0 then return Duel.CheckReleaseGroup(tp,c35027493.costfilter,1,nil) end
local g=Duel.SelectReleaseGroup(tp,c35027493.costfilter,1,1,nil,ATTRIBUTE_DARK) local g=Duel.SelectReleaseGroup(tp,c35027493.costfilter,1,1,nil)
Duel.Release(g,REASON_COST) Duel.Release(g,REASON_COST)
end end
function c35027493.tgfilter(c) function c35027493.tgfilter(c)
......
...@@ -21,7 +21,7 @@ end ...@@ -21,7 +21,7 @@ end
function c35429292.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c35429292.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c35429292.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c35429292.filter(chkc) end
if chk==0 then return true end if chk==0 then return true end
Duel.Hint(HINT_SELECTMSG,1-tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,1-tp,HINTMSG_TODECK)
local g=Duel.SelectTarget(1-tp,c35429292.filter,tp,LOCATION_GRAVE,0,1,1,nil) local g=Duel.SelectTarget(1-tp,c35429292.filter,tp,LOCATION_GRAVE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TODECK,g,g:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_TODECK,g,g:GetCount(),0,0)
end end
......
...@@ -15,7 +15,7 @@ function c36643046.filter(c,e,tp) ...@@ -15,7 +15,7 @@ function c36643046.filter(c,e,tp)
return c:IsSetCard(0x17) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsSetCard(0x17) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c36643046.sumtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c36643046.sumtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:GetLocation()==LOCATION_GRAVE and c36643046.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c36643046.filter(chkc,e,tp) end
if chk==0 then return Duel.IsExistingTarget(c36643046.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp) if chk==0 then return Duel.IsExistingTarget(c36643046.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp)
and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 end and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
......
...@@ -18,7 +18,7 @@ function c38492752.filter(c,e,tp) ...@@ -18,7 +18,7 @@ function c38492752.filter(c,e,tp)
return c:IsSetCard(0x39) and c:IsFaceup() and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsSetCard(0x39) and c:IsFaceup() and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c38492752.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c38492752.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_REMOVED) and chkc:IsControler(tp) and c38492752.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_REMOVED) and chkc:IsControler(tp) and c38492752.filter(chkc,e,tp) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingTarget(c38492752.filter,tp,LOCATION_REMOVED,0,1,nil,e,tp) end and Duel.IsExistingTarget(c38492752.filter,tp,LOCATION_REMOVED,0,1,nil,e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
......
...@@ -24,7 +24,7 @@ function c39695323.filter(c,e,tp) ...@@ -24,7 +24,7 @@ function c39695323.filter(c,e,tp)
return c:IsSetCard(0x59) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsSetCard(0x59) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c39695323.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c39695323.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c39695323.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c39695323.filter(chkc,e,tp) end
if chk==0 then return Duel.IsExistingTarget(c39695323.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp) if chk==0 then return Duel.IsExistingTarget(c39695323.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp)
and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 end and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
......
...@@ -23,7 +23,7 @@ function c40253382.filter(c,e,tp) ...@@ -23,7 +23,7 @@ function c40253382.filter(c,e,tp)
return c:IsSetCard(0x27) and c:IsType(TYPE_SYNCHRO) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsSetCard(0x27) and c:IsType(TYPE_SYNCHRO) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c40253382.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c40253382.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c40253382.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c40253382.filter(chkc,e,tp) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingTarget(c40253382.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end and Duel.IsExistingTarget(c40253382.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
......
...@@ -29,7 +29,7 @@ end ...@@ -29,7 +29,7 @@ end
function c42280216.shcon(e,tp,eg,ep,ev,re,r,rp) function c42280216.shcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsPreviousLocation(LOCATION_ONFIELD) and e:GetHandler():IsReason(REASON_DESTROY) return e:GetHandler():IsPreviousLocation(LOCATION_ONFIELD) and e:GetHandler():IsReason(REASON_DESTROY)
end end
function c42280216.filter(c,e,tp) function c42280216.filter(c)
local code=c:GetCode() local code=c:GetCode()
return (code==78275321 or code==78552773) and c:IsAbleToHand() return (code==78275321 or code==78552773) and c:IsAbleToHand()
end end
......
...@@ -15,7 +15,7 @@ function c43641473.tcfilter(tc,ec) ...@@ -15,7 +15,7 @@ function c43641473.tcfilter(tc,ec)
return tc:IsFaceup() and ec:CheckEquipTarget(tc) return tc:IsFaceup() and ec:CheckEquipTarget(tc)
end end
function c43641473.ecfilter(c) function c43641473.ecfilter(c)
return c:IsType(TYPE_EQUIP) and c:GetEquipTarget()~=nil and Duel.IsExistingTarget(c43641473.tcfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,c:GetEquipTarget(),c) return c:IsType(TYPE_EQUIP) and c:GetEquipTarget()~=nil and Duel.IsExistingTarget(c43641473.tcfilter,0,LOCATION_MZONE,LOCATION_MZONE,1,c:GetEquipTarget(),c)
end end
function c43641473.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c43641473.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_SZONE) and c43641473.ecfilter(chkc) end if chkc then return chkc:IsLocation(LOCATION_SZONE) and c43641473.ecfilter(chkc) end
......
...@@ -14,7 +14,7 @@ function c44072894.filter(c,e) ...@@ -14,7 +14,7 @@ function c44072894.filter(c,e)
return c:IsReason(REASON_FUSION) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand() and c:IsCanBeEffectTarget(e) return c:IsReason(REASON_FUSION) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand() and c:IsCanBeEffectTarget(e)
end end
function c44072894.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c44072894.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c44072894.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c44072894.filter(chkc,e) end
if chk==0 then return true end if chk==0 then return true end
local g=Duel.GetMatchingGroup(c44072894.filter,tp,LOCATION_GRAVE,0,nil,e) local g=Duel.GetMatchingGroup(c44072894.filter,tp,LOCATION_GRAVE,0,nil,e)
if g:GetCount()>=2 then if g:GetCount()>=2 then
......
...@@ -15,7 +15,7 @@ function c44341034.filter(c,e,tp) ...@@ -15,7 +15,7 @@ function c44341034.filter(c,e,tp)
return c:GetLevel()==3 and c:IsType(TYPE_TUNER) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:GetLevel()==3 and c:IsType(TYPE_TUNER) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c44341034.sumtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c44341034.sumtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:GetLocation()==LOCATION_GRAVE and c44341034.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c44341034.filter(chkc,e,tp) end
if chk==0 then return Duel.IsExistingTarget(c44341034.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp) if chk==0 then return Duel.IsExistingTarget(c44341034.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp)
and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 end and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
......
...@@ -79,9 +79,9 @@ function c44505297.tgtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -79,9 +79,9 @@ function c44505297.tgtg(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(Card.IsFaceup,tp,LOCATION_ONFIELD,0,1,nil) if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,LOCATION_ONFIELD,0,1,nil)
and Duel.IsExistingTarget(Card.IsFaceup,tp,0,LOCATION_ONFIELD,1,nil) end and Duel.IsExistingTarget(Card.IsFaceup,tp,0,LOCATION_ONFIELD,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g1=Duel.SelectTarget(tp,Card.IsFaceup,tp,LOCATION_ONFIELD,0,1,1,nil) local g1=Duel.SelectTarget(tp,Card.IsFaceup,tp,LOCATION_ONFIELD,0,1,1,nil)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g2=Duel.SelectTarget(tp,Card.IsFaceup,tp,0,LOCATION_ONFIELD,1,1,nil) local g2=Duel.SelectTarget(tp,Card.IsFaceup,tp,0,LOCATION_ONFIELD,1,1,nil)
g1:Merge(g2) g1:Merge(g2)
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,g1,2,0,0) Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,g1,2,0,0)
......
...@@ -15,7 +15,7 @@ function c45045866.initial_effect(c) ...@@ -15,7 +15,7 @@ function c45045866.initial_effect(c)
e2:SetOperation(c45045866.operation) e2:SetOperation(c45045866.operation)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c45045866.filter(c,e,tp) function c45045866.filter(c)
local code=c:GetCode() local code=c:GetCode()
return (code==81434470 or code==18828179) and c:IsAbleToHand() return (code==81434470 or code==18828179) and c:IsAbleToHand()
end end
......
...@@ -43,7 +43,7 @@ function c45452224.filter(c,e,tp) ...@@ -43,7 +43,7 @@ function c45452224.filter(c,e,tp)
return c:GetLevel()==1 and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:GetLevel()==1 and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c45452224.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c45452224.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:GetLocation()==LOCATION_MZONE and c45452224.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c45452224.filter(chkc,e,tp) end
if chk==0 then return Duel.IsExistingTarget(c45452224.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end if chk==0 then return Duel.IsExistingTarget(c45452224.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectTarget(tp,c45452224.filter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp) local g=Duel.SelectTarget(tp,c45452224.filter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
......
...@@ -10,9 +10,6 @@ function c45898858.initial_effect(c) ...@@ -10,9 +10,6 @@ function c45898858.initial_effect(c)
e1:SetOperation(c45898858.activate) e1:SetOperation(c45898858.activate)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c45898858.costfilter(c)
return c:IsAbleToGraveAsCost() and c:IsType(TYPE_MONSTER)
end
function c45898858.cost(e,tp,eg,ep,ev,re,r,rp,chk) function c45898858.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckReleaseGroup(tp,Card.IsCode,2,nil,22587018) if chk==0 then return Duel.CheckReleaseGroup(tp,Card.IsCode,2,nil,22587018)
and Duel.CheckReleaseGroup(tp,Card.IsCode,1,nil,58071123) end and Duel.CheckReleaseGroup(tp,Card.IsCode,1,nil,58071123) end
......
...@@ -47,9 +47,9 @@ end ...@@ -47,9 +47,9 @@ end
function c4694209.addct2(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c4694209.addct2(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsOnField() and chkc:IsControler(tp) and chkc:IsFaceup() end if chkc then return chkc:IsOnField() and chkc:IsControler(tp) and chkc:IsFaceup() end
if chk==0 then return e:GetHandler():IsCanRemoveCounter(tp,0x21,1,REASON_EFFECT) if chk==0 then return e:GetHandler():IsCanRemoveCounter(tp,0x21,1,REASON_EFFECT)
and Duel.IsExistingTarget(Card.IsFaceup,tp,LOCATION_ONFIELD,0,1,e:GetHandler(),0x21,1) end and Duel.IsExistingTarget(Card.IsFaceup,tp,LOCATION_ONFIELD,0,1,e:GetHandler()) end
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(98162021,1)) Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(98162021,1))
Duel.SelectTarget(tp,Card.IsFaceup,tp,LOCATION_ONFIELD,0,1,1,e:GetHandler(),0x21,1) Duel.SelectTarget(tp,Card.IsFaceup,tp,LOCATION_ONFIELD,0,1,1,e:GetHandler())
end end
function c4694209.addc2(e,tp,eg,ep,ev,re,r,rp) function c4694209.addc2(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -31,7 +31,7 @@ end ...@@ -31,7 +31,7 @@ end
function c47150851.spcon(e,c) function c47150851.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()
return Duel.GetLocationCount(rp,LOCATION_MZONE)>0 return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.GetFieldGroupCount(tp,LOCATION_HAND,0)==1 and Duel.GetFieldGroupCount(tp,LOCATION_HAND,0)==1
and Duel.IsExistingMatchingCard(c47150851.cfilter,e:GetHandlerPlayer(),LOCATION_ONFIELD,0,1,nil) and Duel.IsExistingMatchingCard(c47150851.cfilter,e:GetHandlerPlayer(),LOCATION_ONFIELD,0,1,nil)
end end
...@@ -16,7 +16,7 @@ function c473469.filter(c,tp) ...@@ -16,7 +16,7 @@ function c473469.filter(c,tp)
and bit.band(c:GetReason(),0x41)==0x41 and bit.band(c:GetReason(),0x41)==0x41
end end
function c473469.condition(e,tp,eg,ep,ev,re,r,rp) function c473469.condition(e,tp,eg,ep,ev,re,r,rp)
return rp~=tp and eg:IsExists(c473469.filter,1,nil,tp,rp) return rp~=tp and eg:IsExists(c473469.filter,1,nil,tp)
end end
function c473469.desfilter(c) function c473469.desfilter(c)
return c:IsDestructable() and c:IsType(TYPE_SPELL+TYPE_TRAP) return c:IsDestructable() and c:IsType(TYPE_SPELL+TYPE_TRAP)
......
...@@ -87,9 +87,6 @@ function c48568432.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -87,9 +87,6 @@ function c48568432.spop(e,tp,eg,ep,ev,re,r,rp)
Duel.SpecialSummon(c,0,tp,tp,true,false,POS_FACEUP_ATTACK) Duel.SpecialSummon(c,0,tp,tp,true,false,POS_FACEUP_ATTACK)
end end
end end
function c48568432.sfilter(c)
return c:IsSetCard(0x36) and c:GetCode()~=42940404 and c:IsAbleToHand()
end
function c48568432.spcon2(e,tp,eg,ep,ev,re,r,rp) function c48568432.spcon2(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsStatus(STATUS_UNION) and eg:GetFirst()==e:GetHandler():GetEquipTarget() return e:GetHandler():IsStatus(STATUS_UNION) and eg:GetFirst()==e:GetHandler():GetEquipTarget()
end end
......
...@@ -22,7 +22,7 @@ function c48588176.target(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -22,7 +22,7 @@ function c48588176.target(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end end
function c48588176.operation(e,tp,eg,ep,ev,re,r,rp) function c48588176.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c48588176.filter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c48588176.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)
......
...@@ -14,7 +14,7 @@ function c48659020.filter(c,e,tp) ...@@ -14,7 +14,7 @@ function c48659020.filter(c,e,tp)
return c:IsType(TYPE_NORMAL) and c:IsLevelBelow(3) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsType(TYPE_NORMAL) and c:IsLevelBelow(3) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c48659020.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c48659020.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c48659020.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c48659020.filter(chkc,e,tp) end
if chk==0 then return true end if chk==0 then return true end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectTarget(tp,c48659020.filter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp) local g=Duel.SelectTarget(tp,c48659020.filter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
......
...@@ -81,7 +81,7 @@ function c48996569.spop(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -81,7 +81,7 @@ function c48996569.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Group.CreateGroup() local g=Group.CreateGroup()
local tc=nil local tc=nil
for i=1,2 do for i=1,2 do
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
if ft<=0 then if ft<=0 then
tc=g1:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst() tc=g1:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst()
else else
......
...@@ -9,7 +9,7 @@ function c49251811.initial_effect(c) ...@@ -9,7 +9,7 @@ function c49251811.initial_effect(c)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c49251811.condition(e,tp,eg,ep,ev,re,r,rp) function c49251811.condition(e,tp,eg,ep,ev,re,r,rp)
return re:IsHasTyp(EFFECT_TYPE_ACTIVATE) and re:GetActiveType()==TYPE_CONTINUOUS+TYPE_SPELL return re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:GetActiveType()==TYPE_CONTINUOUS+TYPE_SPELL
end end
function c49251811.activate(e,tp,eg,ep,ev,re,r,rp) function c49251811.activate(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -94,7 +94,7 @@ function c49352945.spop(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -94,7 +94,7 @@ function c49352945.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Group.CreateGroup() local g=Group.CreateGroup()
local tc=nil local tc=nil
for i=1,3 do for i=1,3 do
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
if ft<=0 then if ft<=0 then
tc=g1:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst() tc=g1:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst()
else else
......
...@@ -17,7 +17,7 @@ function c49600724.filter1(c,g) ...@@ -17,7 +17,7 @@ function c49600724.filter1(c,g)
return g:IsExists(Card.IsAttribute,1,c,c:GetAttribute()) return g:IsExists(Card.IsAttribute,1,c,c:GetAttribute())
end end
function c49600724.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c49600724.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and c49600724.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and c49600724.filter(chkc,e) end
if chk==0 then if chk==0 then
local g=Duel.GetMatchingGroup(c49600724.filter,tp,LOCATION_GRAVE,LOCATION_GRAVE,nil,e) local g=Duel.GetMatchingGroup(c49600724.filter,tp,LOCATION_GRAVE,LOCATION_GRAVE,nil,e)
return g:IsExists(c49600724.filter1,1,nil,g) return g:IsExists(c49600724.filter1,1,nil,g)
......
...@@ -36,7 +36,7 @@ function c49681811.initial_effect(c) ...@@ -36,7 +36,7 @@ function c49681811.initial_effect(c)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function c49681811.distg(e,c) function c49681811.distg(e,c)
if c:GetCardTargetCount()==0 then return false end if not c:IsType(TYPE_SPELL) or c:GetCardTargetCount()==0 then return false end
return c:GetCardTarget():IsContains(e:GetHandler()) return c:GetCardTarget():IsContains(e:GetHandler())
end end
function c49681811.disop(e,tp,eg,ep,ev,re,r,rp) function c49681811.disop(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -31,10 +31,10 @@ function c50278554.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -31,10 +31,10 @@ function c50278554.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.IsExistingTarget(Card.IsDestructable,tp,LOCATION_ONFIELD,0,1,nil) if chk==0 then return Duel.IsExistingTarget(Card.IsDestructable,tp,LOCATION_ONFIELD,0,1,nil)
and Duel.IsExistingTarget(Card.IsAbleToHand,tp,0,LOCATION_ONFIELD,2,nil) end and Duel.IsExistingTarget(Card.IsAbleToHand,tp,0,LOCATION_ONFIELD,2,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g1=Duel.SelectTarget(tp,Card.IsDestructable,tp,LOCATION_ONFIELD,0,1,1,nil,e) local g1=Duel.SelectTarget(tp,Card.IsDestructable,tp,LOCATION_ONFIELD,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g1,1,0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,g1,1,0,0)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RTOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RTOHAND)
local g2=Duel.SelectTarget(tp,Card.IsAbleToHand,tp,0,LOCATION_ONFIELD,2,2,nil,e) local g2=Duel.SelectTarget(tp,Card.IsAbleToHand,tp,0,LOCATION_ONFIELD,2,2,nil)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g2,2,0,0) Duel.SetOperationInfo(0,CATEGORY_TOHAND,g2,2,0,0)
end end
function c50278554.desop(e,tp,eg,ep,ev,re,r,rp) function c50278554.desop(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -14,7 +14,7 @@ end ...@@ -14,7 +14,7 @@ end
function c50957346.condition(e,tp,eg,ep,ev,re,r,rp) function c50957346.condition(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsLocation(LOCATION_GRAVE) and e:GetHandler():IsReason(REASON_BATTLE) return e:GetHandler():IsLocation(LOCATION_GRAVE) and e:GetHandler():IsReason(REASON_BATTLE)
end end
function c50957346.filter(c,e,tp) function c50957346.filter(c)
return (c:IsFacedown() or c:IsAttribute(0xff-ATTRIBUTE_EARTH)) and c:IsDestructable() return (c:IsFacedown() or c:IsAttribute(0xff-ATTRIBUTE_EARTH)) and c:IsDestructable()
end end
function c50957346.target(e,tp,eg,ep,ev,re,r,rp,chk) function c50957346.target(e,tp,eg,ep,ev,re,r,rp,chk)
......
...@@ -45,9 +45,6 @@ function c51085303.adop(e,tp,eg,ep,ev,re,r,rp) ...@@ -45,9 +45,6 @@ function c51085303.adop(e,tp,eg,ep,ev,re,r,rp)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
end end
function c51085303.filter(c)
return c:IsFaceup() and c:IsSetCard(0x3008)
end
function c51085303.attg(e,c) function c51085303.attg(e,c)
return c:IsFacedown() or not c:IsCode(51085303) return c:IsFacedown() or not c:IsCode(51085303)
end end
...@@ -59,7 +59,7 @@ function c5126490.spop(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -59,7 +59,7 @@ function c5126490.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Group.CreateGroup() local g=Group.CreateGroup()
local tc=nil local tc=nil
for i=1,2 do for i=1,2 do
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
if ft<=0 then if ft<=0 then
tc=g1:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst() tc=g1:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst()
else else
......
...@@ -84,9 +84,6 @@ function c5128859.spop(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -84,9 +84,6 @@ function c5128859.spop(e,tp,eg,ep,ev,re,r,rp,c)
end end
Duel.SendtoDeck(g,nil,2,REASON_COST) Duel.SendtoDeck(g,nil,2,REASON_COST)
end end
function c5128859.filter(c)
return c:IsFacedown() and c:IsDestructable()
end
function c5128859.destg(e,tp,eg,ep,ev,re,r,rp,chk) function c5128859.destg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetFieldGroupCount(tp,0,LOCATION_HAND)>0 end if chk==0 then return Duel.GetFieldGroupCount(tp,0,LOCATION_HAND)>0 end
Duel.SetOperationInfo(0,CATEGORY_DESTROY,nil,1,1-tp,LOCATION_HAND) Duel.SetOperationInfo(0,CATEGORY_DESTROY,nil,1,1-tp,LOCATION_HAND)
......
...@@ -15,7 +15,7 @@ function c52346240.filter(c,e,tp) ...@@ -15,7 +15,7 @@ function c52346240.filter(c,e,tp)
return c:GetLevel()==1 and c:IsRace(RACE_BEAST) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:GetLevel()==1 and c:IsRace(RACE_BEAST) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c52346240.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c52346240.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c52346240.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c52346240.filter(chkc,e,tp) end
if chk==0 then return Duel.IsExistingTarget(c52346240.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp) if chk==0 then return Duel.IsExistingTarget(c52346240.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp)
and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 end and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
......
...@@ -34,8 +34,8 @@ end ...@@ -34,8 +34,8 @@ end
function c5494820.filter(c) function c5494820.filter(c)
return c:IsFaceup() and c:IsCode(10992251) return c:IsFaceup() and c:IsCode(10992251)
end end
function c5494820.target(e,tp,eg,ep,ev,re,r,rp,chk) function c5494820.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() and chkc:IsCode(10992251) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and c5494820.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c5494820.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end if chk==0 then return Duel.IsExistingTarget(c5494820.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
Duel.SelectTarget(tp,c5494820.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil) Duel.SelectTarget(tp,c5494820.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
......
...@@ -15,8 +15,8 @@ function c54974237.costfilter(c) ...@@ -15,8 +15,8 @@ function c54974237.costfilter(c)
return c:IsAttribute(ATTRIBUTE_DARK) and c:GetAttack()>=2500 return c:IsAttribute(ATTRIBUTE_DARK) and c:GetAttack()>=2500
end end
function c54974237.cost(e,tp,eg,ep,ev,re,r,rp,chk) function c54974237.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckReleaseGroup(tp,c54974237.costfilter,1,nil,ATTRIBUTE_DARK) end if chk==0 then return Duel.CheckReleaseGroup(tp,c54974237.costfilter,1,nil) end
local g=Duel.SelectReleaseGroup(tp,c54974237.costfilter,1,1,nil,ATTRIBUTE_DARK) local g=Duel.SelectReleaseGroup(tp,c54974237.costfilter,1,1,nil)
Duel.Release(g,REASON_COST) Duel.Release(g,REASON_COST)
end end
function c54974237.tgfilter(c,ty) function c54974237.tgfilter(c,ty)
......
...@@ -15,7 +15,7 @@ function c55013285.condition(e,tp,eg,ep,ev,re,r,rp) ...@@ -15,7 +15,7 @@ function c55013285.condition(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsLocation(LOCATION_GRAVE) and e:GetHandler():IsReason(REASON_BATTLE) return e:GetHandler():IsLocation(LOCATION_GRAVE) and e:GetHandler():IsReason(REASON_BATTLE)
end end
function c55013285.filter(c,e,tp) function c55013285.filter(c,e,tp)
return c:IsCode(55013285) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEDOWN_DEFENCE) return c:IsCode(55013285) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c55013285.target(e,tp,eg,ep,ev,re,r,rp,chk) function c55013285.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
......
...@@ -36,11 +36,11 @@ end ...@@ -36,11 +36,11 @@ end
function c55046718.eqlimit(e,c) function c55046718.eqlimit(e,c)
return c:IsSetCard(0x30) return c:IsSetCard(0x30)
end end
function c55046718.filter(c,tp) function c55046718.filter(c)
return c:IsFaceup() and c:IsSetCard(0x30) return c:IsFaceup() and c:IsSetCard(0x30)
end end
function c55046718.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c55046718.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:GetLocation()==LOCATION_MZONE and c55046718.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and c55046718.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c55046718.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end if chk==0 then return Duel.IsExistingTarget(c55046718.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
Duel.SelectTarget(tp,c55046718.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil) Duel.SelectTarget(tp,c55046718.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
......
...@@ -37,11 +37,11 @@ end ...@@ -37,11 +37,11 @@ end
function c55154048.eqlimit(e,c) function c55154048.eqlimit(e,c)
return c:IsSetCard(0x42) or c:IsSetCard(0x4b) return c:IsSetCard(0x42) or c:IsSetCard(0x4b)
end end
function c55154048.filter(c,tp) function c55154048.filter(c)
return c:IsFaceup() and (c:IsSetCard(0x42) or c:IsSetCard(0x4b)) return c:IsFaceup() and (c:IsSetCard(0x42) or c:IsSetCard(0x4b))
end end
function c55154048.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c55154048.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:GetLocation()==LOCATION_MZONE and c55154048.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and c55154048.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c55154048.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end if chk==0 then return Duel.IsExistingTarget(c55154048.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
Duel.SelectTarget(tp,c55154048.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil) Duel.SelectTarget(tp,c55154048.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
......
...@@ -82,7 +82,7 @@ function c55171412.spop(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -82,7 +82,7 @@ function c55171412.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Group.CreateGroup() local g=Group.CreateGroup()
local tc=nil local tc=nil
for i=1,2 do for i=1,2 do
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
if ft<=0 then if ft<=0 then
tc=g1:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst() tc=g1:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst()
else else
...@@ -116,9 +116,6 @@ function c55171412.descost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -116,9 +116,6 @@ function c55171412.descost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsDiscardable,tp,LOCATION_HAND,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(Card.IsDiscardable,tp,LOCATION_HAND,0,1,nil) end
Duel.DiscardHand(tp,Card.IsDiscardable,1,1,REASON_COST+REASON_DISCARD) Duel.DiscardHand(tp,Card.IsDiscardable,1,1,REASON_COST+REASON_DISCARD)
end end
function c55171412.filter(c)
return c:IsFacedown() and c:IsDestructable()
end
function c55171412.destg(e,tp,eg,ep,ev,re,r,rp,chk) function c55171412.destg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetFieldGroupCount(tp,0,LOCATION_HAND)>0 end if chk==0 then return Duel.GetFieldGroupCount(tp,0,LOCATION_HAND)>0 end
Duel.SetOperationInfo(0,CATEGORY_DESTROY,nil,1,1-tp,LOCATION_HAND) Duel.SetOperationInfo(0,CATEGORY_DESTROY,nil,1,1-tp,LOCATION_HAND)
......
...@@ -25,9 +25,6 @@ function c55428811.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -25,9 +25,6 @@ function c55428811.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel.SetOperationInfo(0,CATEGORY_TODECK,g,g:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_TODECK,g,g:GetCount(),0,0)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,dc) Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,dc)
end end
function c55428811.tgfilter(c,e)
return not c:IsRelateToEffect(e)
end
function c55428811.activate(e,tp,eg,ep,ev,re,r,rp) function c55428811.activate(e,tp,eg,ep,ev,re,r,rp)
local tg=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS) local tg=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS)
if not tg or tg:FilterCount(Card.IsRelateToEffect,nil,e)~=5 then return end if not tg or tg:FilterCount(Card.IsRelateToEffect,nil,e)~=5 then return end
......
...@@ -29,7 +29,7 @@ function c5556499.initial_effect(c) ...@@ -29,7 +29,7 @@ function c5556499.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c5556499.spfilter(c,ec) function c5556499.spfilter(c,ec)
return c:IsRace(RACE_MACHINE) and (c~=ec or c:IsAbleToGraveAsCost()) return c:IsRace(RACE_MACHINE) and (c~=ec or c:IsDiscardable())
end end
function c5556499.spcon(e,c) function c5556499.spcon(e,c)
if c==nil then return true end if c==nil then return true end
...@@ -40,7 +40,7 @@ function c5556499.spop(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -40,7 +40,7 @@ function c5556499.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Duel.GetMatchingGroup(c5556499.spfilter,c:GetControler(),LOCATION_HAND,0,nil,c) local g=Duel.GetMatchingGroup(c5556499.spfilter,c:GetControler(),LOCATION_HAND,0,nil,c)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DISCARD) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DISCARD)
local sg=g:SelectWithSumGreater(tp,Card.GetLevel,8) local sg=g:SelectWithSumGreater(tp,Card.GetLevel,8)
Duel.SendtoGrave(sg,REASON_COST) Duel.SendtoGrave(sg,REASON_COST+REASON_DISCARD)
end end
function c5556499.condition(e,tp,eg,ep,ev,re,r,rp) function c5556499.condition(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsLocation(LOCATION_GRAVE) and e:GetHandler():IsReason(REASON_BATTLE) return e:GetHandler():IsLocation(LOCATION_GRAVE) and e:GetHandler():IsReason(REASON_BATTLE)
......
...@@ -38,12 +38,6 @@ function c55737443.spop(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -38,12 +38,6 @@ function c55737443.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Duel.SelectReleaseGroup(tp,Card.IsSetCard,1,1,nil,0x5c) local g=Duel.SelectReleaseGroup(tp,Card.IsSetCard,1,1,nil,0x5c)
Duel.Release(g,REASON_COST) Duel.Release(g,REASON_COST)
end end
function c55737443.filter(c)
return c:IsFaceup() and c:IsType(TYPE_MONSTER)
end
function c55737443.value(e,c)
return Duel.GetMatchingGroupCount(c55737443.filter,c:GetControler(),LOCATION_REMOVED,LOCATION_REMOVED,nil)*200
end
function c55737443.damcon(e,tp,eg,ep,ev,re,r,rp) function c55737443.damcon(e,tp,eg,ep,ev,re,r,rp)
local tc=eg:GetFirst() local tc=eg:GetFirst()
return tc~=e:GetHandler() and tc:IsAttribute(ATTRIBUTE_EARTH) return tc~=e:GetHandler() and tc:IsAttribute(ATTRIBUTE_EARTH)
......
...@@ -37,7 +37,7 @@ end ...@@ -37,7 +37,7 @@ end
function c56387350.spop(e,tp,eg,ep,ev,re,r,rp) function c56387350.spop(e,tp,eg,ep,ev,re,r,rp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE) local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
if ft<=0 then return end if ft<=0 then return end
local tc=Duel.SelectMatchingCard(tp,c56387350.filter,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,ft,nil,e,tp,e:GetHandler(),Duel.GetTurnCount())
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local tc=Duel.SelectMatchingCard(tp,c56387350.filter,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,ft,nil,e,tp,e:GetHandler(),Duel.GetTurnCount())
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
end end
...@@ -17,7 +17,7 @@ function c56605802.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -17,7 +17,7 @@ function c56605802.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c56605802.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and c56605802.filter(chkc) end
if chk==0 then return true end if chk==0 then return true end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local g=Duel.SelectTarget(tp,c56605802.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil,tp) local g=Duel.SelectTarget(tp,c56605802.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TODECK,g,g:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_TODECK,g,g:GetCount(),0,0)
end end
function c56605802.operation(e,tp,eg,ep,ev,re,r,rp) function c56605802.operation(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -14,7 +14,7 @@ function c5703682.filter(c) ...@@ -14,7 +14,7 @@ function c5703682.filter(c)
return c:IsFaceup() and bit.band(tpe,TYPE_NORMAL)~=0 and bit.band(tpe,TYPE_TOKEN)==0 and c:GetLevel()==2 return c:IsFaceup() and bit.band(tpe,TYPE_NORMAL)~=0 and bit.band(tpe,TYPE_TOKEN)==0 and c:GetLevel()==2
end end
function c5703682.target(e,tp,eg,ep,ev,re,r,rp,chk) function c5703682.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c5703682.filter,tp,LOCATION_MZONE,0,1,nil,tp) end if chk==0 then return Duel.IsExistingMatchingCard(c5703682.filter,tp,LOCATION_MZONE,0,1,nil) end
end end
function c5703682.activate(e,tp,eg,ep,ev,re,r,rp) function c5703682.activate(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(c5703682.filter,tp,LOCATION_MZONE,0,nil) local g=Duel.GetMatchingGroup(c5703682.filter,tp,LOCATION_MZONE,0,nil)
......
...@@ -11,14 +11,14 @@ function c57238939.initial_effect(c) ...@@ -11,14 +11,14 @@ function c57238939.initial_effect(c)
e1:SetOperation(c57238939.cosop) e1:SetOperation(c57238939.cosop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c57238939.filter(c,att) function c57238939.filter(c)
return c:IsFaceup() and c:IsType(TYPE_TUNER) return c:IsFaceup() and c:IsType(TYPE_TUNER)
end end
function c57238939.costg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c57238939.costg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and c57238939.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and c57238939.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c57238939.filter,tp,LOCATION_MZONE,0,1,nil) end if chk==0 then return Duel.IsExistingTarget(c57238939.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
Duel.SelectTarget(tp,c57238939.filter,tp,LOCATION_MZONE,0,1,1,nil) Duel.SelectTarget(tp,c57238939.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
end end
function c57238939.cosop(e,tp,eg,ep,ev,re,r,rp) function c57238939.cosop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
......
...@@ -15,8 +15,8 @@ function c57728570.costfilter(c) ...@@ -15,8 +15,8 @@ function c57728570.costfilter(c)
return c:IsAttribute(ATTRIBUTE_DARK) and c:IsAttackBelow(1000) return c:IsAttribute(ATTRIBUTE_DARK) and c:IsAttackBelow(1000)
end end
function c57728570.cost(e,tp,eg,ep,ev,re,r,rp,chk) function c57728570.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckReleaseGroup(tp,c57728570.costfilter,1,nil,ATTRIBUTE_DARK) end if chk==0 then return Duel.CheckReleaseGroup(tp,c57728570.costfilter,1,nil) end
local g=Duel.SelectReleaseGroup(tp,c57728570.costfilter,1,1,nil,ATTRIBUTE_DARK) local g=Duel.SelectReleaseGroup(tp,c57728570.costfilter,1,1,nil)
Duel.Release(g,REASON_COST) Duel.Release(g,REASON_COST)
end end
function c57728570.tgfilter(c) function c57728570.tgfilter(c)
......
...@@ -85,7 +85,7 @@ end ...@@ -85,7 +85,7 @@ end
function c5861892.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c5861892.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and chkc:IsAbleToHand() end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and chkc:IsAbleToHand() end
if chk==0 then return Duel.IsExistingTarget(Card.IsAbleToHand,tp,LOCATION_GRAVE,0,1,nil) end if chk==0 then return Duel.IsExistingTarget(Card.IsAbleToHand,tp,LOCATION_GRAVE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectTarget(tp,Card.IsAbleToHand,tp,LOCATION_GRAVE,0,1,1,nil) local g=Duel.SelectTarget(tp,Card.IsAbleToHand,tp,LOCATION_GRAVE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0)
end end
......
...@@ -17,7 +17,7 @@ end ...@@ -17,7 +17,7 @@ end
function c58628539.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c58628539.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsDestructable() end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsDestructable() end
if chk==0 then return Duel.IsExistingTarget(Card.IsDestructable,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,e:GetHandler()) end if chk==0 then return Duel.IsExistingTarget(Card.IsDestructable,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,e:GetHandler()) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,Card.IsDestructable,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,e:GetHandler()) local g=Duel.SelectTarget(tp,Card.IsDestructable,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,e:GetHandler())
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
end end
......
...@@ -14,7 +14,7 @@ end ...@@ -14,7 +14,7 @@ end
function c59235795.condition(e,tp,eg,ep,ev,re,r,rp) function c59235795.condition(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsLocation(LOCATION_GRAVE) and e:GetHandler():IsReason(REASON_BATTLE) return e:GetHandler():IsLocation(LOCATION_GRAVE) and e:GetHandler():IsReason(REASON_BATTLE)
end end
function c59235795.filter(c,e,tp) function c59235795.filter(c)
return (c:IsFacedown() or c:IsAttribute(0xff-ATTRIBUTE_WIND)) and c:IsDestructable() return (c:IsFacedown() or c:IsAttribute(0xff-ATTRIBUTE_WIND)) and c:IsDestructable()
end end
function c59235795.target(e,tp,eg,ep,ev,re,r,rp,chk) function c59235795.target(e,tp,eg,ep,ev,re,r,rp,chk)
......
...@@ -42,7 +42,7 @@ end ...@@ -42,7 +42,7 @@ end
function c59385322.eqlimit(e,c) function c59385322.eqlimit(e,c)
return c:IsSetCard(0x1d) return c:IsSetCard(0x1d)
end end
function c59385322.filter(c,tp) function c59385322.filter(c)
return c:IsFaceup() and c:IsSetCard(0x1d) return c:IsFaceup() and c:IsSetCard(0x1d)
end end
function c59385322.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c59385322.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
......
...@@ -39,9 +39,6 @@ function c6133894.spop(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -39,9 +39,6 @@ function c6133894.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Duel.SelectReleaseGroup(c:GetControler(),c6133894.rfilter,1,1,nil,66073051) local g=Duel.SelectReleaseGroup(c:GetControler(),c6133894.rfilter,1,1,nil,66073051)
Duel.Release(g,REASON_COST) Duel.Release(g,REASON_COST)
end end
function c6133894.cfilter(c)
return c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsDiscardable() and c:IsAbleToGraveAsCost()
end
function c6133894.hdtg(e,tp,eg,ep,ev,re,r,rp,chk) function c6133894.hdtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
local g=Duel.GetMatchingGroup(Card.IsDestructable,tp,0,LOCATION_MZONE,nil) local g=Duel.GetMatchingGroup(Card.IsDestructable,tp,0,LOCATION_MZONE,nil)
......
...@@ -14,7 +14,7 @@ function c61831093.filter(c,e) ...@@ -14,7 +14,7 @@ function c61831093.filter(c,e)
return c:IsFacedown() and c:IsDestructable() and c:IsCanBeEffectTarget(e) return c:IsFacedown() and c:IsDestructable() and c:IsCanBeEffectTarget(e)
end end
function c61831093.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c61831093.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:GetLocation()==LOCATION_SZONE and c61831093.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_SZONE) and c61831093.filter(chkc,e) end
if chk==0 then return true end if chk==0 then return true end
local g=Duel.GetMatchingGroup(c61831093.filter,tp,LOCATION_SZONE,LOCATION_SZONE,nil,e) local g=Duel.GetMatchingGroup(c61831093.filter,tp,LOCATION_SZONE,LOCATION_SZONE,nil,e)
if g:GetCount()<2 then if g:GetCount()<2 then
......
...@@ -22,7 +22,7 @@ function c62379337.filter(c) ...@@ -22,7 +22,7 @@ function c62379337.filter(c)
return c:IsDefenceBelow(1500) and c:IsRace(RACE_PLANT) and c:IsAbleToHand() return c:IsDefenceBelow(1500) and c:IsRace(RACE_PLANT) and c:IsAbleToHand()
end end
function c62379337.operation(e,tp,eg,ep,ev,re,r,rp) function c62379337.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c62379337.filter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c62379337.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)
......
...@@ -19,7 +19,7 @@ function c6256844.target(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -19,7 +19,7 @@ function c6256844.target(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end end
function c6256844.operation(e,tp,eg,ep,ev,re,r,rp) function c6256844.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,c6256844.filter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c6256844.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)
......
...@@ -23,7 +23,7 @@ function c63223467.target(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -23,7 +23,7 @@ function c63223467.target(e,tp,eg,ep,ev,re,r,rp,chk)
end end
function c63223467.operation(e,tp,eg,ep,ev,re,r,rp) function c63223467.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,c63223467.filter,tp,LOCATION_DECK,0,1,1,nil,e,tp) local g=Duel.SelectMatchingCard(tp,c63223467.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)
......
...@@ -32,7 +32,7 @@ end ...@@ -32,7 +32,7 @@ end
function c63851864.eqlimit(e,c) function c63851864.eqlimit(e,c)
return c:IsRace(RACE_MACHINE) return c:IsRace(RACE_MACHINE)
end end
function c63851864.filter(c,tp) function c63851864.filter(c)
return c:IsFaceup() and c:IsRace(RACE_MACHINE) return c:IsFaceup() and c:IsRace(RACE_MACHINE)
end end
function c63851864.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c63851864.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
......
...@@ -15,7 +15,7 @@ function c63977008.filter(c,e,tp) ...@@ -15,7 +15,7 @@ function c63977008.filter(c,e,tp)
return c:IsLevelBelow(2) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsLevelBelow(2) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c63977008.sumtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c63977008.sumtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c63977008.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c63977008.filter(chkc,e,tp) end
if chk==0 then return Duel.IsExistingTarget(c63977008.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp) if chk==0 then return Duel.IsExistingTarget(c63977008.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp)
and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 end and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
......
...@@ -17,7 +17,7 @@ function c63995093.filter2(c,code,e,tp) ...@@ -17,7 +17,7 @@ function c63995093.filter2(c,code,e,tp)
return c:IsCode(code) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsCode(code) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c63995093.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c63995093.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c63995093.filter(chkc,e,tp) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c63995093.filter(chkc) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingTarget(c63995093.filter,tp,LOCATION_MZONE,0,1,nil) end and Duel.IsExistingTarget(c63995093.filter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(63995093,0)) Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(63995093,0))
...@@ -28,8 +28,7 @@ function c63995093.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -28,8 +28,7 @@ function c63995093.activate(e,tp,eg,ep,ev,re,r,rp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE) local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
if ft<=0 then return end if ft<=0 then return end
if ft>2 then ft=2 end if ft>2 then ft=2 end
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS) local tc=Duel.GetFirstTarget()
local tc=g:GetFirst()
if tc:IsRelateToEffect(e) and tc:IsFaceup() then if tc:IsRelateToEffect(e) and tc:IsFaceup() then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg=Duel.SelectMatchingCard(tp,c63995093.filter2,tp,LOCATION_DECK,0,1,ft,nil,tc:GetCode(),e,tp) local sg=Duel.SelectMatchingCard(tp,c63995093.filter2,tp,LOCATION_DECK,0,1,ft,nil,tc:GetCode(),e,tp)
......
...@@ -35,8 +35,8 @@ end ...@@ -35,8 +35,8 @@ end
function c64389297.filter(c) function c64389297.filter(c)
return c:IsFaceup() and c:IsCode(67284908) return c:IsFaceup() and c:IsCode(67284908)
end end
function c64389297.target(e,tp,eg,ep,ev,re,r,rp,chk) function c64389297.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() and chkc:IsCode(67284908) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and c64389297.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c64389297.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end if chk==0 then return Duel.IsExistingTarget(c64389297.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
Duel.SelectTarget(tp,c64389297.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil) Duel.SelectTarget(tp,c64389297.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
......
...@@ -47,7 +47,7 @@ end ...@@ -47,7 +47,7 @@ end
function c65079854.eqlimit(e,c) function c65079854.eqlimit(e,c)
return c:IsCode(73580471) or c:IsRace(RACE_PLANT) return c:IsCode(73580471) or c:IsRace(RACE_PLANT)
end end
function c65079854.filter(c,tp) function c65079854.filter(c)
return c:IsFaceup() and (c:IsCode(73580471) or c:IsRace(RACE_PLANT)) return c:IsFaceup() and (c:IsCode(73580471) or c:IsRace(RACE_PLANT))
end end
function c65079854.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c65079854.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
......
...@@ -16,7 +16,7 @@ function c652362.filter(c,e,tp) ...@@ -16,7 +16,7 @@ function c652362.filter(c,e,tp)
return lv>0 and lv<=4 and c:IsSetCard(0xc) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return lv>0 and lv<=4 and c:IsSetCard(0xc) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c652362.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c652362.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c652362.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c652362.filter(chkc,e,tp) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingTarget(c652362.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end and Duel.IsExistingTarget(c652362.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
......
...@@ -23,7 +23,7 @@ function c66214679.filter(c,e,tp) ...@@ -23,7 +23,7 @@ function c66214679.filter(c,e,tp)
return c:GetLevel()==4 and c:IsAttribute(ATTRIBUTE_DARK) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:GetLevel()==4 and c:IsAttribute(ATTRIBUTE_DARK) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c66214679.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c66214679.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c66214679.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c66214679.filter(chkc,e,tp) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and e:GetHandler():IsRelateToEffect(e) if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and e:GetHandler():IsRelateToEffect(e)
and e:GetHandler():IsFaceup() and Duel.IsExistingTarget(c66214679.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end and e:GetHandler():IsFaceup() and Duel.IsExistingTarget(c66214679.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
......
...@@ -22,9 +22,6 @@ function c67169062.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -22,9 +22,6 @@ function c67169062.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel.SetOperationInfo(0,CATEGORY_TODECK,g,g:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_TODECK,g,g:GetCount(),0,0)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,2) Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,2)
end end
function c67169062.tgfilter(c,e)
return not c:IsRelateToEffect(e)
end
function c67169062.activate(e,tp,eg,ep,ev,re,r,rp) function c67169062.activate(e,tp,eg,ep,ev,re,r,rp)
local tg=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS) local tg=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS)
if not tg or tg:FilterCount(Card.IsRelateToEffect,nil,e)~=5 then return end if not tg or tg:FilterCount(Card.IsRelateToEffect,nil,e)~=5 then return end
......
...@@ -14,9 +14,6 @@ function c68057622.initial_effect(c) ...@@ -14,9 +14,6 @@ function c68057622.initial_effect(c)
e2:SetOperation(c68057622.desop) e2:SetOperation(c68057622.desop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c68057622.filter(c)
return c:IsCode(68057622) and c:IsAbleToHand()
end
function c68057622.descon(e,tp,eg,ep,ev,re,r,rp) function c68057622.descon(e,tp,eg,ep,ev,re,r,rp)
local a=Duel.GetAttacker() local a=Duel.GetAttacker()
local at=Duel.GetAttackTarget() local at=Duel.GetAttackTarget()
......
...@@ -25,7 +25,7 @@ function c68124775.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -25,7 +25,7 @@ function c68124775.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) and c68124775.filter(chkc) end if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) and c68124775.filter(chkc) end
if chk==0 then return true end if chk==0 then return true end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local g=Duel.SelectTarget(tp,c68124775.filter,tp,0,LOCATION_MZONE,1,1,nil,tp) local g=Duel.SelectTarget(tp,c68124775.filter,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_REMOVE,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_REMOVE,g,1,0,0)
end end
function c68124775.operation(e,tp,eg,ep,ev,re,r,rp) function c68124775.operation(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -37,7 +37,7 @@ end ...@@ -37,7 +37,7 @@ end
function c68597372.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c68597372.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c68597372.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c68597372.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c68597372.filter,tp,LOCATION_MZONE,0,1,nil) end if chk==0 then return Duel.IsExistingTarget(c68597372.filter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONTROL) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
local g=Duel.SelectTarget(tp,c68597372.filter,tp,LOCATION_MZONE,0,1,1,nil) local g=Duel.SelectTarget(tp,c68597372.filter,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end end
......
...@@ -13,10 +13,6 @@ end ...@@ -13,10 +13,6 @@ end
function c69270537.tdfilter(c) function c69270537.tdfilter(c)
return c:IsFaceup() and c:IsSetCard(0x9) and c:IsType(TYPE_FUSION) and c:IsAbleToExtra() return c:IsFaceup() and c:IsSetCard(0x9) and c:IsType(TYPE_FUSION) and c:IsAbleToExtra()
end end
function c69270537.filter2(c,e,tp,m,chkf)
return c:IsType(TYPE_FUSION) and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_FUSION,tp,false,false)
and c:CheckFusionMaterial(m,nil,chkf)
end
function c69270537.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c69270537.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c69270537.tdfilter(chkc) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c69270537.tdfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c69270537.tdfilter,tp,LOCATION_MZONE,0,1,nil) end if chk==0 then return Duel.IsExistingTarget(c69270537.tdfilter,tp,LOCATION_MZONE,0,1,nil) end
......
...@@ -29,7 +29,7 @@ function c69313735.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -29,7 +29,7 @@ function c69313735.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end end
if e:GetLabel()~=0 then if e:GetLabel()~=0 then
e:SetLabel(0) e:SetLabel(0)
local rg=Duel.SelectReleaseGroup(tp,c69313735.rfilter,1,1,c,tp) local rg=Duel.SelectReleaseGroup(tp,c69313735.rfilter,1,1,nil,tp)
Duel.Release(rg,REASON_COST) Duel.Release(rg,REASON_COST)
end end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
......
...@@ -36,7 +36,7 @@ function c706925.sptg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -36,7 +36,7 @@ function c706925.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
end end
function c706925.spop(e,tp,eg,ep,ev,re,r,rp) function c706925.spop(e,tp,eg,ep,ev,re,r,rp)
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_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c706925.spfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp) local g=Duel.SelectMatchingCard(tp,c706925.spfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp)
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)
......
...@@ -51,9 +51,6 @@ function c7093411.repoperation(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -51,9 +51,6 @@ function c7093411.repoperation(e,tp,eg,ep,ev,re,r,rp,chk)
c:RegisterEffect(e1) c:RegisterEffect(e1)
Duel.RaiseEvent(c,47408488,e,0,tp,0,0) Duel.RaiseEvent(c,47408488,e,0,tp,0,0)
end end
function c7093411.filter(c)
return c:IsSetCard(0x34)
end
function c7093411.target(e,tp,eg,ep,ev,re,r,rp,chk) function c7093411.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsSetCard,tp,LOCATION_DECK+LOCATION_GRAVE+LOCATION_HAND,0,1,nil,0x34) if chk==0 then return Duel.IsExistingMatchingCard(Card.IsSetCard,tp,LOCATION_DECK+LOCATION_GRAVE+LOCATION_HAND,0,1,nil,0x34)
and Duel.GetLocationCount(tp,LOCATION_SZONE)>0 end and Duel.GetLocationCount(tp,LOCATION_SZONE)>0 end
......
...@@ -14,7 +14,7 @@ end ...@@ -14,7 +14,7 @@ end
function c71930383.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c71930383.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(1-tp) and chkc:IsOnField() and chkc:IsFacedown() end if chkc then return chkc:IsControler(1-tp) and chkc:IsOnField() and chkc:IsFacedown() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFacedown,tp,0,LOCATION_ONFIELD,1,nil) end if chk==0 then return Duel.IsExistingTarget(Card.IsFacedown,tp,0,LOCATION_ONFIELD,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,515) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEDOWN)
Duel.SelectTarget(tp,Card.IsFacedown,tp,0,LOCATION_ONFIELD,1,1,nil) Duel.SelectTarget(tp,Card.IsFacedown,tp,0,LOCATION_ONFIELD,1,1,nil)
end end
function c71930383.operation(e,tp,eg,ep,ev,re,r,rp) function c71930383.operation(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -22,7 +22,7 @@ function c7243511.cfilter(c) ...@@ -22,7 +22,7 @@ function c7243511.cfilter(c)
end end
function c7243511.cost(e,tp,eg,ep,ev,re,r,rp,chk) function c7243511.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c7243511.cfilter,tp,LOCATION_HAND,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(c7243511.cfilter,tp,LOCATION_HAND,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DISCARD) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local cg=Duel.SelectMatchingCard(tp,c7243511.cfilter,tp,LOCATION_HAND,0,1,1,nil) local cg=Duel.SelectMatchingCard(tp,c7243511.cfilter,tp,LOCATION_HAND,0,1,1,nil)
Duel.SendtoGrave(cg,REASON_COST) Duel.SendtoGrave(cg,REASON_COST)
end end
......
...@@ -15,7 +15,7 @@ function c73079365.filter(c,tp) ...@@ -15,7 +15,7 @@ function c73079365.filter(c,tp)
and bit.band(c:GetReason(),0x41)==0x41 and bit.band(c:GetReason(),0x41)==0x41
end end
function c73079365.condition(e,tp,eg,ep,ev,re,r,rp) function c73079365.condition(e,tp,eg,ep,ev,re,r,rp)
return rp==1-rp and eg:IsExists(c73079365.filter,1,nil,tp,rp) return rp==1-tp and eg:IsExists(c73079365.filter,1,nil,tp)
end end
function c73079365.desfilter(c) function c73079365.desfilter(c)
return c:IsDestructable() and c:IsType(TYPE_SPELL+TYPE_TRAP) return c:IsDestructable() and c:IsType(TYPE_SPELL+TYPE_TRAP)
......
...@@ -17,7 +17,7 @@ function c73262676.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -17,7 +17,7 @@ function c73262676.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_MZONE) and c73262676.filter(chkc) end if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_MZONE) and c73262676.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c73262676.filter,tp,LOCATION_MZONE,0,1,nil) if chk==0 then return Duel.IsExistingTarget(c73262676.filter,tp,LOCATION_MZONE,0,1,nil)
and Duel.IsExistingMatchingCard(Card.IsFaceup,tp,0,LOCATION_MZONE,1,nil) end and Duel.IsExistingMatchingCard(Card.IsFaceup,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,c73262676.filter,tp,LOCATION_MZONE,0,1,1,nil) local g=Duel.SelectTarget(tp,c73262676.filter,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
end end
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
function c74130411.initial_effect(c) function c74130411.initial_effect(c)
--search --search
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(12469386,0)) e1:SetDescription(aux.Stringid(74130411,0))
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH) e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
...@@ -24,7 +24,7 @@ function c74130411.filter(c) ...@@ -24,7 +24,7 @@ function c74130411.filter(c)
end end
function c74130411.thtg(e,tp,eg,ep,ev,re,r,rp,chk) function c74130411.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsRelateToEffect(e) and e:GetHandler():IsFaceup() if chk==0 then return e:GetHandler():IsRelateToEffect(e) and e:GetHandler():IsFaceup()
and Duel.IsExistingMatchingCard(c74130411.filter,tp,LOCATION_DECK,0,1,nil,e,tp) end and Duel.IsExistingMatchingCard(c74130411.filter,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 c74130411.thop(e,tp,eg,ep,ev,re,r,rp) function c74130411.thop(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -37,11 +37,11 @@ end ...@@ -37,11 +37,11 @@ end
function c74657662.eqlimit(e,c) function c74657662.eqlimit(e,c)
return c:IsSetCard(0x30) return c:IsSetCard(0x30)
end end
function c74657662.filter(c,tp) function c74657662.filter(c)
return c:IsFaceup() and c:IsSetCard(0x30) return c:IsFaceup() and c:IsSetCard(0x30)
end end
function c74657662.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c74657662.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:GetLocation()==LOCATION_MZONE and c74657662.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and c74657662.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c74657662.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end if chk==0 then return Duel.IsExistingTarget(c74657662.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
Duel.SelectTarget(tp,c74657662.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil) Duel.SelectTarget(tp,c74657662.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
......
...@@ -30,9 +30,6 @@ function c74730899.spcon(e,c) ...@@ -30,9 +30,6 @@ function c74730899.spcon(e,c)
return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(c74730899.spfilter,tp,LOCATION_MZONE,0,2,nil) and Duel.IsExistingMatchingCard(c74730899.spfilter,tp,LOCATION_MZONE,0,2,nil)
end end
function c74730899.costfilter(c)
return c:IsRace(RACE_THUNDER) and c:IsAbleToRemoveAsCost()
end
function c74730899.retcost(e,tp,eg,ep,ev,re,r,rp,chk) function c74730899.retcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckReleaseGroup(tp,Card.IsSetCard,1,e:GetHandler(),0x28) end if chk==0 then return Duel.CheckReleaseGroup(tp,Card.IsSetCard,1,e:GetHandler(),0x28) end
local g=Duel.SelectReleaseGroup(tp,Card.IsSetCard,1,1,e:GetHandler(),0x28) local g=Duel.SelectReleaseGroup(tp,Card.IsSetCard,1,1,e:GetHandler(),0x28)
......
...@@ -23,5 +23,5 @@ function c75646520.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -23,5 +23,5 @@ function c75646520.activate(e,tp,eg,ep,ev,re,r,rp)
Duel.RegisterEffect(e1,tp) Duel.RegisterEffect(e1,tp)
end end
function c75646520.distarget(e,c) function c75646520.distarget(e,c)
return c:GetType()=TYPE_CONTINUOUS+TYPE_TRAP return c:GetType()==TYPE_CONTINUOUS+TYPE_TRAP
end end
...@@ -19,7 +19,7 @@ end ...@@ -19,7 +19,7 @@ end
function c76775123.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c76775123.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(1-tp) and chkc:IsOnField() and chkc:IsFacedown() end if chkc then return chkc:IsControler(1-tp) and chkc:IsOnField() and chkc:IsFacedown() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFacedown,tp,0,LOCATION_ONFIELD,1,nil) end if chk==0 then return Duel.IsExistingTarget(Card.IsFacedown,tp,0,LOCATION_ONFIELD,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,515) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEDOWN)
Duel.SelectTarget(tp,Card.IsFacedown,tp,0,LOCATION_ONFIELD,1,1,nil) Duel.SelectTarget(tp,Card.IsFacedown,tp,0,LOCATION_ONFIELD,1,1,nil)
end end
function c76775123.operation(e,tp,eg,ep,ev,re,r,rp) function c76775123.operation(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -41,10 +41,6 @@ function c77859858.initial_effect(c) ...@@ -41,10 +41,6 @@ function c77859858.initial_effect(c)
e6:SetOperation(c77859858.costop) e6:SetOperation(c77859858.costop)
c:RegisterEffect(e6) c:RegisterEffect(e6)
end end
function c77859858.recop(e,tp,eg,ep,ev,re,r,rp)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
Duel.Recover(p,d,REASON_EFFECT)
end
function c77859858.leave(e,tp,eg,ep,ev,re,r,rp) function c77859858.leave(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if c:GetPreviousControler()==tp and c:IsStatus(STATUS_ACTIVATED) then if c:GetPreviousControler()==tp and c:IsStatus(STATUS_ACTIVATED) then
......
...@@ -92,7 +92,7 @@ function c78512663.spop(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -92,7 +92,7 @@ function c78512663.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Group.CreateGroup() local g=Group.CreateGroup()
local tc=nil local tc=nil
for i=1,3 do for i=1,3 do
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
if ft<=0 then if ft<=0 then
tc=g1:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst() tc=g1:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst()
else else
......
...@@ -41,9 +41,10 @@ function c79580323.stg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -41,9 +41,10 @@ function c79580323.stg(e,tp,eg,ep,ev,re,r,rp,chk)
end end
function c79580323.sop(e,tp,eg,ep,ev,re,r,rp) function c79580323.sop(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.SelectTarget(tp,c79580323.sfilter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c79580323.sfilter,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)
end end
end end
function c79580323.spcon(e,tp,eg,ep,ev,re,r,rp) function c79580323.spcon(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -9,9 +9,6 @@ function c80368942.initial_effect(c) ...@@ -9,9 +9,6 @@ function c80368942.initial_effect(c)
e1:SetOperation(c80368942.activate) e1:SetOperation(c80368942.activate)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c80368942.filter(c,e,tp)
return c:IsLevelBelow(4) and c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c80368942.gfilter(c) function c80368942.gfilter(c)
return c:IsSetCard(0x1f) and c:IsType(TYPE_MONSTER) return c:IsSetCard(0x1f) and c:IsType(TYPE_MONSTER)
end end
......
...@@ -6,6 +6,7 @@ function c8074847.initial_effect(c) ...@@ -6,6 +6,7 @@ function c8074847.initial_effect(c)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_TO_HAND) e1:SetCode(EVENT_TO_HAND)
e1:SetCondition(c8074847.condition) e1:SetCondition(c8074847.condition)
e1:SetTarget(c8074847.target)
e1:SetOperation(c8074847.operation) e1:SetOperation(c8074847.operation)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
......
...@@ -78,7 +78,7 @@ function c81566151.spop(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -78,7 +78,7 @@ function c81566151.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Group.CreateGroup() local g=Group.CreateGroup()
local tc=nil local tc=nil
for i=1,2 do for i=1,2 do
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
if ft<=0 then if ft<=0 then
tc=g1:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst() tc=g1:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst()
else else
......
...@@ -86,7 +86,7 @@ end ...@@ -86,7 +86,7 @@ end
function c84243274.rmtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c84243274.rmtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsOnField() and chkc:IsControler(1-tp) and chkc:IsAbleToRemove() end if chkc then return chkc:IsOnField() and chkc:IsControler(1-tp) and chkc:IsAbleToRemove() end
if chk==0 then return Duel.IsExistingTarget(Card.IsAbleToRemove,tp,0,LOCATION_ONFIELD,1,nil) end if chk==0 then return Duel.IsExistingTarget(Card.IsAbleToRemove,tp,0,LOCATION_ONFIELD,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local g=Duel.SelectTarget(tp,Card.IsAbleToRemove,tp,0,LOCATION_ONFIELD,1,1,nil) local g=Duel.SelectTarget(tp,Card.IsAbleToRemove,tp,0,LOCATION_ONFIELD,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_REMOVE,g,g:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_REMOVE,g,g:GetCount(),0,0)
end end
......
...@@ -31,13 +31,13 @@ end ...@@ -31,13 +31,13 @@ end
function c84962466.target1(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c84962466.target1(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c84962466.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c84962466.filter(chkc) end
if chk==0 then if chk==0 then
return Duel.GetCurrentPhase()~=PHASE_DAMAGE or Duel.IsExistingMatchingCard(c84962466.cfilter,tp,LOCATION_MZONE,0,1,nil) return Duel.GetCurrentPhase()~=PHASE_DAMAGE or Duel.IsExistingMatchingCard(c84962466.cfilter,tp,LOCATION_MZONE,0,1,nil,tp)
end end
if Duel.GetCurrentPhase()==PHASE_DAMAGE or if Duel.GetCurrentPhase()==PHASE_DAMAGE or
(Duel.IsExistingMatchingCard(c84962466.cfilter,tp,LOCATION_MZONE,0,1,nil) and Duel.SelectYesNo(tp,aux.Stringid(84962466,0))) then (Duel.IsExistingMatchingCard(c84962466.cfilter,tp,LOCATION_MZONE,0,1,nil,tp) and Duel.SelectYesNo(tp,aux.Stringid(84962466,0))) then
e:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP) e:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local rg=Duel.SelectMatchingCard(tp,c84962466.cfilter,tp,LOCATION_MZONE,0,1,1,nil) local rg=Duel.SelectMatchingCard(tp,c84962466.cfilter,tp,LOCATION_MZONE,0,1,1,nil,tp)
e:SetLabel(rg:GetFirst():GetBaseAttack()) e:SetLabel(rg:GetFirst():GetBaseAttack())
Duel.Remove(rg,POS_FACEUP,REASON_COST) Duel.Remove(rg,POS_FACEUP,REASON_COST)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
...@@ -48,9 +48,9 @@ end ...@@ -48,9 +48,9 @@ end
function c84962466.target2(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c84962466.target2(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c84962466.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c84962466.filter(chkc) end
if chk==0 then return e:GetHandler():GetFlagEffect(84962466)==0 if chk==0 then return e:GetHandler():GetFlagEffect(84962466)==0
and Duel.IsExistingMatchingCard(c84962466.cfilter,tp,LOCATION_MZONE,0,1,nil) end and Duel.IsExistingMatchingCard(c84962466.cfilter,tp,LOCATION_MZONE,0,1,nil,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local rg=Duel.SelectMatchingCard(tp,c84962466.cfilter,tp,LOCATION_MZONE,0,1,1,nil) local rg=Duel.SelectMatchingCard(tp,c84962466.cfilter,tp,LOCATION_MZONE,0,1,1,nil,tp)
e:SetLabel(rg:GetFirst():GetBaseAttack()) e:SetLabel(rg:GetFirst():GetBaseAttack())
Duel.Remove(rg,POS_FACEUP,REASON_COST) Duel.Remove(rg,POS_FACEUP,REASON_COST)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
......
...@@ -82,7 +82,7 @@ function c85507811.spop(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -82,7 +82,7 @@ function c85507811.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Group.CreateGroup() local g=Group.CreateGroup()
local tc=nil local tc=nil
for i=1,2 do for i=1,2 do
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
if ft<=0 then if ft<=0 then
tc=g1:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst() tc=g1:FilterSelect(tp,Card.IsLocation,1,1,nil,LOCATION_MZONE):GetFirst()
else else
......
...@@ -14,7 +14,7 @@ end ...@@ -14,7 +14,7 @@ end
function c86229493.condition(e,tp,eg,ep,ev,re,r,rp) function c86229493.condition(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsLocation(LOCATION_GRAVE) and e:GetHandler():IsReason(REASON_BATTLE) return e:GetHandler():IsLocation(LOCATION_GRAVE) and e:GetHandler():IsReason(REASON_BATTLE)
end end
function c86229493.filter(c,e,tp) function c86229493.filter(c)
return (c:IsFacedown() or c:IsAttribute(0xff-ATTRIBUTE_DARK)) and c:IsDestructable() return (c:IsFacedown() or c:IsAttribute(0xff-ATTRIBUTE_DARK)) and c:IsDestructable()
end end
function c86229493.target(e,tp,eg,ep,ev,re,r,rp,chk) function c86229493.target(e,tp,eg,ep,ev,re,r,rp,chk)
......
...@@ -14,7 +14,7 @@ end ...@@ -14,7 +14,7 @@ end
function c86442081.condition(e,tp,eg,ep,ev,re,r,rp) function c86442081.condition(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsLocation(LOCATION_GRAVE) and e:GetHandler():IsReason(REASON_BATTLE) return e:GetHandler():IsLocation(LOCATION_GRAVE) and e:GetHandler():IsReason(REASON_BATTLE)
end end
function c86442081.filter(c,e,tp) function c86442081.filter(c)
return (c:IsFacedown() or c:IsAttribute(0xff-ATTRIBUTE_WATER)) and c:IsDestructable() return (c:IsFacedown() or c:IsAttribute(0xff-ATTRIBUTE_WATER)) and c:IsDestructable()
end end
function c86442081.target(e,tp,eg,ep,ev,re,r,rp,chk) function c86442081.target(e,tp,eg,ep,ev,re,r,rp,chk)
......
...@@ -52,7 +52,7 @@ end ...@@ -52,7 +52,7 @@ end
function c86489182.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c86489182.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsOnField() and chkc:IsControler(1-tp) and chkc:IsAbleToHand() end if chkc then return chkc:IsOnField() and chkc:IsControler(1-tp) and chkc:IsAbleToHand() end
if chk==0 then return Duel.IsExistingTarget(Card.IsAbleToHand,tp,0,LOCATION_ONFIELD,1,nil) end if chk==0 then return Duel.IsExistingTarget(Card.IsAbleToHand,tp,0,LOCATION_ONFIELD,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RTOHAND)
local g=Duel.SelectTarget(tp,Card.IsAbleToHand,tp,0,LOCATION_ONFIELD,1,2,nil) local g=Duel.SelectTarget(tp,Card.IsAbleToHand,tp,0,LOCATION_ONFIELD,1,2,nil)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,g:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,g:GetCount(),0,0)
end end
......
...@@ -15,7 +15,7 @@ function c8687195.condition(e,tp,eg,ep,ev,re,r,rp) ...@@ -15,7 +15,7 @@ function c8687195.condition(e,tp,eg,ep,ev,re,r,rp)
return r~=REASON_REPLACE and Duel.GetAttackTarget()==e:GetHandler() and Duel.GetAttacker():IsControler(1-tp) return r~=REASON_REPLACE and Duel.GetAttackTarget()==e:GetHandler() and Duel.GetAttacker():IsControler(1-tp)
end end
function c8687195.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c8687195.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControle(tp) and chkc:IsLocation(LOCATION_MZONE) end if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_MZONE) end
if chk==0 then return true end if chk==0 then return true end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
Duel.SelectTarget(tp,nil,tp,LOCATION_MZONE,0,1,1,e:GetHandler()) Duel.SelectTarget(tp,nil,tp,LOCATION_MZONE,0,1,1,e:GetHandler())
......
...@@ -34,7 +34,7 @@ end ...@@ -34,7 +34,7 @@ end
function c87047074.eqlimit(e,c) function c87047074.eqlimit(e,c)
return c:IsSetCard(0x56) return c:IsSetCard(0x56)
end end
function c87047074.filter(c,tp) function c87047074.filter(c)
return c:IsFaceup() and c:IsSetCard(0x56) return c:IsFaceup() and c:IsSetCard(0x56)
end end
function c87047074.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c87047074.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
......
...@@ -34,7 +34,7 @@ end ...@@ -34,7 +34,7 @@ end
function c87973893.eqlimit(e,c) function c87973893.eqlimit(e,c)
return c:IsSetCard(0x56) return c:IsSetCard(0x56)
end end
function c87973893.filter(c,tp) function c87973893.filter(c)
return c:IsFaceup() and c:IsSetCard(0x56) return c:IsFaceup() and c:IsSetCard(0x56)
end end
function c87973893.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c87973893.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
......
...@@ -16,7 +16,7 @@ function c88671720.filter(c,e,tp) ...@@ -16,7 +16,7 @@ function c88671720.filter(c,e,tp)
and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c88671720.sumtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c88671720.sumtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c88671720.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c88671720.filter(chkc,e,tp) end
if chk==0 then return Duel.IsExistingTarget(c88671720.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp) if chk==0 then return Duel.IsExistingTarget(c88671720.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp)
and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 end and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
......
...@@ -10,9 +10,6 @@ function c88928798.initial_effect(c) ...@@ -10,9 +10,6 @@ function c88928798.initial_effect(c)
e1:SetOperation(c88928798.activate) e1:SetOperation(c88928798.activate)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c88928798.filter(c,p)
return c:GetControler()==p and c:IsOnField()
end
function c88928798.condition(e,tp,eg,ep,ev,re,r,rp) function c88928798.condition(e,tp,eg,ep,ev,re,r,rp)
if not re:IsHasType(EFFECT_TYPE_ACTIVATE) or not Duel.IsChainNegatable(ev) then return false end if not re:IsHasType(EFFECT_TYPE_ACTIVATE) or not Duel.IsChainNegatable(ev) then return false end
local g=Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS) local g=Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS)
......
...@@ -10,7 +10,7 @@ function c89899996.initial_effect(c) ...@@ -10,7 +10,7 @@ function c89899996.initial_effect(c)
e1:SetOperation(c89899996.operation) e1:SetOperation(c89899996.operation)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c89899996.cfilter(c,tp) function c89899996.cfilter(c)
return c:IsFaceup() and c:IsSetCard(0xc008) return c:IsFaceup() and c:IsSetCard(0xc008)
end end
function c89899996.condition(e,tp,eg,ep,ev,re,r,rp) function c89899996.condition(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -9,7 +9,7 @@ function c89914395.initial_effect(c) ...@@ -9,7 +9,7 @@ function c89914395.initial_effect(c)
e1:SetOperation(c89914395.operation) e1:SetOperation(c89914395.operation)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c89914395.filter(c,tp) function c89914395.filter(c)
return c:IsFaceup() and c:IsSetCard(0x4b) return c:IsFaceup() and c:IsSetCard(0x4b)
end end
function c89914395.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c89914395.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
......
...@@ -23,7 +23,7 @@ function c90239723.initial_effect(c) ...@@ -23,7 +23,7 @@ function c90239723.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c90239723.cfilter(c) function c90239723.cfilter(c)
return c:IsSetCard(0x26) and c:IsType(TYPE_MONSTER) and c:IsAbleToGrave() return c:IsSetCard(0x26) and c:IsType(TYPE_MONSTER) and c:IsAbleToGraveAsCost()
end end
function c90239723.cost(e,tp,eg,ep,ev,re,r,rp,chk) function c90239723.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c90239723.cfilter,tp,LOCATION_HAND,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(c90239723.cfilter,tp,LOCATION_HAND,0,1,nil) end
......
...@@ -38,7 +38,7 @@ end ...@@ -38,7 +38,7 @@ end
function c90592429.eqlimit(e,c) function c90592429.eqlimit(e,c)
return c:IsSetCard(0x30) return c:IsSetCard(0x30)
end end
function c90592429.filter(c,tp) function c90592429.filter(c)
return c:IsFaceup() and c:IsSetCard(0x30) return c:IsFaceup() and c:IsSetCard(0x30)
end end
function c90592429.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c90592429.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
......
...@@ -9,9 +9,6 @@ function c90887783.initial_effect(c) ...@@ -9,9 +9,6 @@ function c90887783.initial_effect(c)
e1:SetOperation(c90887783.operation) e1:SetOperation(c90887783.operation)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c90887783.condition(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsPreviousLocation(LOCATION_ONFIELD) and e:GetHandler():IsLocation(LOCATION_GRAVE)
end
function c90887783.filter1(c,tp) function c90887783.filter1(c,tp)
return c:IsRace(RACE_DRAGON) and c:IsAbleToDeck() and not c:IsPublic() return c:IsRace(RACE_DRAGON) and c:IsAbleToDeck() and not c:IsPublic()
and Duel.IsExistingMatchingCard(c90887783.filter2,tp,LOCATION_DECK,0,1,nil,c:GetLevel()) and Duel.IsExistingMatchingCard(c90887783.filter2,tp,LOCATION_DECK,0,1,nil,c:GetLevel())
......
...@@ -9,7 +9,7 @@ function c91148083.initial_effect(c) ...@@ -9,7 +9,7 @@ function c91148083.initial_effect(c)
e1:SetOperation(c91148083.operation) e1:SetOperation(c91148083.operation)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c91148083.filter(c,tp) function c91148083.filter(c)
return c:IsFaceup() and c:IsSetCard(0x4b) and c:IsControlerCanBeChanged() return c:IsFaceup() and c:IsSetCard(0x4b) and c:IsControlerCanBeChanged()
end end
function c91148083.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c91148083.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
......
...@@ -53,7 +53,7 @@ function c91349449.rmtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -53,7 +53,7 @@ function c91349449.rmtg(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(c91349449.filter1,tp,LOCATION_REMOVED,0,1,nil) if chk==0 then return Duel.IsExistingTarget(c91349449.filter1,tp,LOCATION_REMOVED,0,1,nil)
and Duel.IsExistingTarget(c91349449.filter2,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end and Duel.IsExistingTarget(c91349449.filter2,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local g1=Duel.SelectTarget(tp,c91349449.filter1,tp,LOCATION_REMOVED,0,1,1,nil) local g1=Duel.SelectTarget(tp,c91349449.filter1,tp,LOCATION_REMOVED,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TODECK,g1,1,0,0) Duel.SetOperationInfo(0,CATEGORY_TODECK,g1,1,0,0)
e:SetLabelObject(g1:GetFirst()) e:SetLabelObject(g1:GetFirst())
......
...@@ -14,7 +14,7 @@ end ...@@ -14,7 +14,7 @@ end
function c91822647.condition(e,tp,eg,ep,ev,re,r,rp) function c91822647.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetFieldGroupCount(tp,LOCATION_MZONE,0)==0 return Duel.GetFieldGroupCount(tp,LOCATION_MZONE,0)==0
end end
function c91822647.filter1(c,e) function c91822647.filter1(c)
return c:IsSetCard(0x10) and c:IsType(TYPE_MONSTER) and c:IsAbleToDeck() return c:IsSetCard(0x10) and c:IsType(TYPE_MONSTER) and c:IsAbleToDeck()
end end
function c91822647.filter2(c,e,tp) function c91822647.filter2(c,e,tp)
......
...@@ -44,10 +44,6 @@ function c92300891.posop(e,tp,eg,ep,ev,re,r,rp) ...@@ -44,10 +44,6 @@ function c92300891.posop(e,tp,eg,ep,ev,re,r,rp)
Duel.ChangePosition(c,POS_FACEUP_DEFENCE) Duel.ChangePosition(c,POS_FACEUP_DEFENCE)
end end
end end
function c92300891.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsReason(REASON_BATTLE) end
return true
end
function c92300891.valcon(e,re,r,rp) function c92300891.valcon(e,re,r,rp)
return bit.band(r,REASON_BATTLE)~=0 return bit.band(r,REASON_BATTLE)~=0
end end
...@@ -29,7 +29,7 @@ function c92773018.cfilter(c) ...@@ -29,7 +29,7 @@ function c92773018.cfilter(c)
end end
function c92773018.cost(e,tp,eg,ep,ev,re,r,rp,chk) function c92773018.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c92773018.cfilter,tp,LOCATION_MZONE,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(c92773018.cfilter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,c92773018.cfilter,tp,LOCATION_MZONE,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c92773018.cfilter,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SendtoGrave(g,REASON_COST) Duel.SendtoGrave(g,REASON_COST)
end end
...@@ -43,7 +43,7 @@ function c92773018.target1(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -43,7 +43,7 @@ function c92773018.target1(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
and Duel.SelectYesNo(tp,aux.Stringid(92773018,1)) then and Duel.SelectYesNo(tp,aux.Stringid(92773018,1)) then
e:SetCategory(CATEGORY_DESTROY) e:SetCategory(CATEGORY_DESTROY)
e:SetProperty(EFFECT_FLAG_CARD_TARGET) e:SetProperty(EFFECT_FLAG_CARD_TARGET)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,c92773018.cfilter,tp,LOCATION_MZONE,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c92773018.cfilter,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SendtoGrave(g,REASON_COST) Duel.SendtoGrave(g,REASON_COST)
Duel.SetTargetCard(tg) Duel.SetTargetCard(tg)
......
...@@ -40,9 +40,9 @@ function c93379652.filter(c) ...@@ -40,9 +40,9 @@ function c93379652.filter(c)
end end
function c93379652.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c93379652.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsOnField() and c93379652.filter(chkc) end if chkc then return chkc:IsOnField() and c93379652.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c93379652.filter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil,e,tp) end if chk==0 then return Duel.IsExistingTarget(c93379652.filter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,c93379652.filter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,nil,e,tp) local g=Duel.SelectTarget(tp,c93379652.filter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,g:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,g:GetCount(),0,0)
end end
function c93379652.operation(e,tp,eg,ep,ev,re,r,rp) function c93379652.operation(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -16,13 +16,13 @@ function c93504463.condition(e,tp,eg,ep,ev,re,r,rp) ...@@ -16,13 +16,13 @@ function c93504463.condition(e,tp,eg,ep,ev,re,r,rp)
return d and d:IsControler(tp) return d and d:IsControler(tp)
end end
function c93504463.spfilter(c,e,tp) function c93504463.spfilter(c,e,tp)
return c:IsSetCard(0x304e) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEDOWN) return c:IsSetCard(0x304e) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c93504463.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c93504463.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c93504463.spfilter(chkc,e,tp) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c93504463.spfilter(chkc,e,tp) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingTarget(c93504463.spfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end and Duel.IsExistingTarget(c93504463.spfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectTarget(tp,c93504463.spfilter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp) local g=Duel.SelectTarget(tp,c93504463.spfilter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0)
end end
......
...@@ -13,9 +13,6 @@ end ...@@ -13,9 +13,6 @@ end
function c93599951.condition(e,tp,eg,ep,ev,re,r,rp) function c93599951.condition(e,tp,eg,ep,ev,re,r,rp)
return tp~=Duel.GetTurnPlayer() and Duel.GetAttackTarget() return tp~=Duel.GetTurnPlayer() and Duel.GetAttackTarget()
end end
function c93599951.filter(c,e)
return c:IsCanBeEffectTarget(e)
end
function c93599951.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c93599951.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return false end if chkc then return false end
local a=Duel.GetAttacker() local a=Duel.GetAttacker()
......
...@@ -54,7 +54,7 @@ end ...@@ -54,7 +54,7 @@ end
function c93724592.tgtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c93724592.tgtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() end
if chk==0 then return true end if chk==0 then return true end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectTarget(tp,Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil) local g=Duel.SelectTarget(tp,Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,g,g:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,g,g:GetCount(),0,0)
end end
......
...@@ -14,12 +14,12 @@ end ...@@ -14,12 +14,12 @@ end
function c96008713.condition(e,tp,eg,ep,ev,re,r,rp) function c96008713.condition(e,tp,eg,ep,ev,re,r,rp)
return tp~=Duel.GetTurnPlayer() and Duel.GetFieldGroupCount(tp,LOCATION_MZONE,0)>0 return tp~=Duel.GetTurnPlayer() and Duel.GetFieldGroupCount(tp,LOCATION_MZONE,0)>0
end end
function c96008713.filter(c,e,tp) function c96008713.filter(c)
return c:IsFaceup() and c:IsControlerCanBeChanged() return c:IsFaceup() and c:IsControlerCanBeChanged()
end end
function c96008713.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c96008713.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local atr=Duel.GetAttacker() local atr=Duel.GetAttacker()
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and c96008713.filter(chkc,e,tp) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and c96008713.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c96008713.filter,tp,0,LOCATION_MZONE,1,atr) end if chk==0 then return Duel.IsExistingTarget(c96008713.filter,tp,0,LOCATION_MZONE,1,atr) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONTROL) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONTROL)
local g=Duel.SelectTarget(tp,c96008713.filter,tp,0,LOCATION_MZONE,1,1,atr) local g=Duel.SelectTarget(tp,c96008713.filter,tp,0,LOCATION_MZONE,1,1,atr)
......
...@@ -21,7 +21,7 @@ function c96355986.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -21,7 +21,7 @@ function c96355986.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel.SetTargetCard(tg) Duel.SetTargetCard(tg)
local rec=tg:GetAttack() local rec=tg:GetAttack()
Duel.SetTargetParam(rec) Duel.SetTargetParam(rec)
Duel.SetOperationInfo(0,CATEGORY_RECOVER,nil,0,tp,dam) Duel.SetOperationInfo(0,CATEGORY_RECOVER,nil,0,tp,rec)
end end
function c96355986.activate(e,tp,eg,ep,ev,re,r,rp) function c96355986.activate(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
......
...@@ -17,10 +17,6 @@ function c96631852.initial_effect(c) ...@@ -17,10 +17,6 @@ function c96631852.initial_effect(c)
e2:SetOperation(c96631852.desop) e2:SetOperation(c96631852.desop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c96631852.filter(c)
local code=c:GetCode()
return c:IsFaceup() and (code==8508055 or code==3810071 or code==49814180)
end
function c96631852.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c96631852.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() end if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,LOCATION_MZONE,0,1,nil) end if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,LOCATION_MZONE,0,1,nil) end
......
...@@ -18,9 +18,6 @@ function c96700602.cost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -18,9 +18,6 @@ function c96700602.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local g=Duel.SelectReleaseGroup(tp,Card.IsType,1,1,nil,TYPE_SYNCHRO) local g=Duel.SelectReleaseGroup(tp,Card.IsType,1,1,nil,TYPE_SYNCHRO)
Duel.Release(g,REASON_COST) Duel.Release(g,REASON_COST)
end end
function c96700602.cfilter(c,lv)
return c:IsLevelBelow(lv) and c:IsType(TYPE_SYNCHRO) and c:IsStatus(STATUS_PROC_COMPLETE)
end
function c96700602.target(e,tp,eg,ep,ev,re,r,rp,chk) function c96700602.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAttackPos,tp,0,LOCATION_MZONE,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAttackPos,tp,0,LOCATION_MZONE,1,nil) end
local tc=eg:GetFirst() local tc=eg:GetFirst()
......
...@@ -34,7 +34,6 @@ function c97342942.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -34,7 +34,6 @@ function c97342942.operation(e,tp,eg,ep,ev,re,r,rp)
if not c:IsRelateToEffect(e) then return end if not c:IsRelateToEffect(e) then return end
local rg=Duel.SelectReleaseGroup(tp,c97342942.rfilter,1,1,e:GetHandler(),e) local rg=Duel.SelectReleaseGroup(tp,c97342942.rfilter,1,1,e:GetHandler(),e)
if Duel.Release(rg,REASON_EFFECT)>0 then if Duel.Release(rg,REASON_EFFECT)>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local atk=rg:GetFirst():GetBaseAttack()/2 local atk=rg:GetFirst():GetBaseAttack()/2
Duel.Damage(1-tp,atk,REASON_EFFECT) Duel.Damage(1-tp,atk,REASON_EFFECT)
end end
......
...@@ -18,7 +18,7 @@ function c98259197.filter2(c) ...@@ -18,7 +18,7 @@ function c98259197.filter2(c)
return c:IsFaceup() and c:IsSetCard(0xf) return c:IsFaceup() and c:IsSetCard(0xf)
end end
function c98259197.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c98259197.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c98259197.filter(chkc,tp) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and c98259197.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c98259197.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end if chk==0 then return Duel.IsExistingTarget(c98259197.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
local g=Duel.SelectTarget(tp,c98259197.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil) local g=Duel.SelectTarget(tp,c98259197.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
......
...@@ -20,16 +20,6 @@ end ...@@ -20,16 +20,6 @@ end
function c99267150.splimit(e,se,sp,st) function c99267150.splimit(e,se,sp,st)
return bit.band(st,SUMMON_TYPE_FUSION)==SUMMON_TYPE_FUSION return bit.band(st,SUMMON_TYPE_FUSION)==SUMMON_TYPE_FUSION
end end
function c99267150.fscondition(e,g,gc)
if g==nil then return false end
if gc then return gc:IsRace(RACE_DRAGON) and g:IsExists(Card.IsRace,4,gc,RACE_DRAGON) end
return g:IsExists(Card.IsRace,5,nil,RACE_DRAGON)
end
function c99267150.fsoperation(e,tp,eg,ep,ev,re,r,rp,gc)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FMATERIAL)
if gc then Duel.SetFusionMaterial(eg:FilterSelect(tp,Card.IsRace,4,4,gc,RACE_DRAGON))
else Duel.SetFusionMaterial(eg:FilterSelect(tp,Card.IsRace,5,5,nil,RACE_DRAGON)) end
end
function c99267150.batfilter(e,c) function c99267150.batfilter(e,c)
return c:IsAttribute(0x2f) return c:IsAttribute(0x2f)
end end
...@@ -74,7 +74,7 @@ function c99365553.spfilter3(c,e,tp) ...@@ -74,7 +74,7 @@ function c99365553.spfilter3(c,e,tp)
and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c99365553.sptg3(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c99365553.sptg3(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(tp) and chk:IsLocation(LOCATION_GRAVE) and c99365553.spfilter3(chkc) end if chkc then return chkc:IsControler(tp) and chk:IsLocation(LOCATION_GRAVE) and c99365553.spfilter3(chkc,e,tp) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingTarget(c99365553.spfilter3,tp,LOCATION_GRAVE,0,1,nil,e,tp) end and Duel.IsExistingTarget(c99365553.spfilter3,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
......
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