Commit 442725fd authored by POLYMER's avatar POLYMER

fix

parent 9b4c2b1c
...@@ -71,6 +71,7 @@ function c33310153.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -71,6 +71,7 @@ function c33310153.spop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.SelectYesNo(tp,aux.Stringid(33310153,0)) then return end if not Duel.SelectYesNo(tp,aux.Stringid(33310153,0)) then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c33310153.filter,tp,LOCATION_HAND,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c33310153.filter,tp,LOCATION_HAND,0,1,1,nil)
Duel.Summon(tp,g:GetFirst(),true,nil)
Duel.RegisterFlagEffect(tp,33310153,RESET_PHASE+PHASE_END,0,1) Duel.RegisterFlagEffect(tp,33310153,RESET_PHASE+PHASE_END,0,1)
Duel.AdjustAll()
Duel.Summon(tp,g:GetFirst(),true,nil)
end end
\ No newline at end of file
...@@ -78,6 +78,7 @@ function c33310154.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -78,6 +78,7 @@ function c33310154.spop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.SelectYesNo(tp,aux.Stringid(33310154,0)) then return end if not Duel.SelectYesNo(tp,aux.Stringid(33310154,0)) then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c33310154.filter,tp,LOCATION_HAND,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c33310154.filter,tp,LOCATION_HAND,0,1,1,nil)
Duel.Summon(tp,g:GetFirst(),true,nil)
Duel.RegisterFlagEffect(tp,33310154,RESET_PHASE+PHASE_END,0,1) Duel.RegisterFlagEffect(tp,33310154,RESET_PHASE+PHASE_END,0,1)
Duel.AdjustAll()
Duel.Summon(tp,g:GetFirst(),true,nil)
end end
...@@ -43,12 +43,14 @@ function c33310155.cost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -43,12 +43,14 @@ function c33310155.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c33310155.costfil,tp,LOCATION_MZONE,0,1,nil) and e:GetHandler():GetFlagEffect(33310155)>0 end if chk==0 then return Duel.IsExistingMatchingCard(c33310155.costfil,tp,LOCATION_MZONE,0,1,nil) and e:GetHandler():GetFlagEffect(33310155)>0 end
local g=Duel.SelectMatchingCard(tp,c33310155.costfil,tp,LOCATION_MZONE,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c33310155.costfil,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SendtoHand(g,nil,REASON_COST) Duel.SendtoHand(g,nil,REASON_COST)
Debug.Message(e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false))
if not e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) then Duel.SendtoGrave(e:GetHandler(),0) Debug.Message(e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false)) end
end end
function c33310155.tgfil(c,e,tp) function c33310155.tgfil(c,e,tp)
return c:IsSetCard(0x55b) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsSetCard(0x55b) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c33310155.tg(e,tp,eg,ep,ev,re,r,rp,chk) function c33310155.tg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c33310155.tgfil,tp,LOCATION_HAND+LOCATION_GRAVE,0,1,nil,e,tp) and Duel.GetMZoneCount(tp)>0 end if chk==0 then return Duel.IsExistingMatchingCard(c33310155.tgfil,tp,LOCATION_HAND+LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND+LOCATION_GRAVE) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND+LOCATION_GRAVE)
end end
function c33310155.op(e,tp,eg,ep,ev,re,r,rp) function c33310155.op(e,tp,eg,ep,ev,re,r,rp)
...@@ -70,6 +72,7 @@ function c33310155.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -70,6 +72,7 @@ function c33310155.spop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.SelectYesNo(tp,aux.Stringid(33310155,0)) then return end if not Duel.SelectYesNo(tp,aux.Stringid(33310155,0)) then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c33310155.filter,tp,LOCATION_HAND,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c33310155.filter,tp,LOCATION_HAND,0,1,1,nil)
Duel.Summon(tp,g:GetFirst(),true,nil)
Duel.RegisterFlagEffect(tp,33310155,RESET_PHASE+PHASE_END,0,1) Duel.RegisterFlagEffect(tp,33310155,RESET_PHASE+PHASE_END,0,1)
Duel.AdjustAll()
Duel.Summon(tp,g:GetFirst(),true,nil)
end end
...@@ -67,7 +67,8 @@ function c33310156.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -67,7 +67,8 @@ function c33310156.spop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.SelectYesNo(tp,aux.Stringid(33310156,0)) then return end if not Duel.SelectYesNo(tp,aux.Stringid(33310156,0)) then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c33310156.filter,tp,LOCATION_HAND,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c33310156.filter,tp,LOCATION_HAND,0,1,1,nil)
Duel.Summon(tp,g:GetFirst(),true,nil)
Duel.RegisterFlagEffect(tp,33310156,RESET_PHASE+PHASE_END,0,1) Duel.RegisterFlagEffect(tp,33310156,RESET_PHASE+PHASE_END,0,1)
Duel.AdjustAll()
Duel.Summon(tp,g:GetFirst(),true,nil)
end end
...@@ -69,8 +69,9 @@ function c33310157.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -69,8 +69,9 @@ function c33310157.spop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.SelectYesNo(tp,aux.Stringid(33310157,0)) then return end if not Duel.SelectYesNo(tp,aux.Stringid(33310157,0)) then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c33310157.filter,tp,LOCATION_HAND,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c33310157.filter,tp,LOCATION_HAND,0,1,1,nil)
Duel.Summon(tp,g:GetFirst(),true,nil)
Duel.RegisterFlagEffect(tp,33310157,RESET_PHASE+PHASE_END,0,1) Duel.RegisterFlagEffect(tp,33310157,RESET_PHASE+PHASE_END,0,1)
Duel.AdjustAll()
Duel.Summon(tp,g:GetFirst(),true,nil)
end end
...@@ -93,7 +93,7 @@ function c33310158.spcon1(e,tp,eg,ep,ev,re,r,rp) ...@@ -93,7 +93,7 @@ function c33310158.spcon1(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_XYZ) return e:GetHandler():IsSummonType(SUMMON_TYPE_XYZ)
end end
function c33310158.spfilter1(c) function c33310158.spfilter1(c)
return c:IsSetCard(0x55b) and c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsAbleToHand() return c:IsSetCard(0x55b) and c:IsAbleToHand()
end end
function c33310158.sptg1(e,tp,eg,ep,ev,re,r,rp,chk) function c33310158.sptg1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c33310158.spfilter1,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(c33310158.spfilter1,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,nil) end
......
...@@ -16,9 +16,12 @@ end ...@@ -16,9 +16,12 @@ end
function cm.cfilter(c,e,p) function cm.cfilter(c,e,p)
return c:IsControler(p) and c:IsLocation(LOCATION_MZONE) and c:GetSequence()<5 and c:IsCanBeEffectTarget(e) return c:IsControler(p) and c:IsLocation(LOCATION_MZONE) and c:GetSequence()<5 and c:IsCanBeEffectTarget(e)
end end
function cm.cofilter(c,tc)
return c:GetSequence()-tc:GetSequence()<=1 and tc:GetSequence()-c:GetSequence()<=1
end
function cm.disfilter(c,e) function cm.disfilter(c,e)
local p=c:GetControler() local p=c:GetControler()
return c:GetSequence()<5 and c:IsCanBeEffectTarget(e) and c:GetColumnGroup(1,1):Filter(cm.cfilter,nil,e,p):GetCount()>=3 return c:GetSequence()<5 and c:IsCanBeEffectTarget(e) and Duel.GetMatchingGroup(cm.cofilter,p,LOCATION_MZONE,0,nil,c):Filter(cm.cfilter,nil,e,p):GetCount()>=3
end end
function cm.distg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function cm.distg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) end
...@@ -27,14 +30,14 @@ function cm.distg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -27,14 +30,14 @@ function cm.distg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local tg=Duel.SelectMatchingCard(tp,cm.disfilter,tp,0,LOCATION_MZONE,1,1,nil,e) local tg=Duel.SelectMatchingCard(tp,cm.disfilter,tp,0,LOCATION_MZONE,1,1,nil,e)
local tc=tg:GetFirst() local tc=tg:GetFirst()
e:SetLabelObject(tc) e:SetLabelObject(tc)
local g=tc:GetColumnGroup(1,1) local g=Duel.GetMatchingGroup(cm.cofilter,tc:GetControler(),LOCATION_MZONE,0,nil,tc)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DISABLE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DISABLE)
local tg1=g:FilterSelect(tp,cm.cfilter,tp,0,LOCATION_MZONE,2,2,tc,e,1-tp) local tg1=g:FilterSelect(tp,cm.cfilter,tp,0,LOCATION_MZONE,2,2,tc,e,1-tp)
tg:Merge(tg1) tg:Merge(tg1)
Duel.SetTargetCard(tg) Duel.SetTargetCard(tg)
end end
function cm.filter1(c,p) function cm.filter1(c,p)
return c:IsControler(p) and c:GetSequence()<5 and c:GetColumnGroup(1,1):Filter(cm.filter2,nil,e,p):GetCount()>=3 return c:IsControler(p) and c:GetSequence()<5 and Duel.GetMatchingGroup(cm.cofilter,p,LOCATION_MZONE,0,nil,c):Filter(cm.filter2,nil,e,p):GetCount()>=3
end end
function cm.filter2(c,p) function cm.filter2(c,p)
return c:IsControler(p) and c:IsLocation(LOCATION_MZONE) and c:GetSequence()<5 return c:IsControler(p) and c:IsLocation(LOCATION_MZONE) and c:GetSequence()<5
......
...@@ -24,13 +24,13 @@ local e2=Effect.CreateEffect(c) ...@@ -24,13 +24,13 @@ local e2=Effect.CreateEffect(c)
e2:SetOperation(c871100010.spop) e2:SetOperation(c871100010.spop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c871100010.costfilter(c) function c871100010.costfilter2(c)
return c:IsType(TYPE_MONSTER) and c:IsAbleToGraveAsCost() return c:IsType(TYPE_MONSTER) and c:IsAbleToGraveAsCost()
end end
function c871100010.spcostt(e,tp,eg,ep,ev,re,r,rp,chk) function c871100010.spcostt(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c871100010.costfilter,tp,LOCATION_HAND,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(c871100010.costfilter2,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,c871100010.costfilter,tp,LOCATION_HAND,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c871100010.costfilter2,tp,LOCATION_HAND,0,1,1,nil)
Duel.SendtoGrave(g,REASON_COST) Duel.SendtoGrave(g,REASON_COST)
end end
function c871100010.filter(c,e,tp) function c871100010.filter(c,e,tp)
......
...@@ -31,7 +31,7 @@ function c98941042.initial_effect(c) ...@@ -31,7 +31,7 @@ function c98941042.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c98941042.mfilter(c) function c98941042.mfilter(c)
if Duel.IsExistingMatchingCard(Card.IsCode,tp,LOCATION_GRAVE,0,1,nil,32274490) then if Duel.IsExistingMatchingCard(Card.IsCode,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,nil,32274490) then
return c:IsLevelBelow(4) and c:IsRace(RACE_ZOMBIE) return c:IsLevelBelow(4) and c:IsRace(RACE_ZOMBIE)
else else
return c:IsLevelBelow(4) and c:IsRace(RACE_ZOMBIE) and c:IsCode(32274490) return c:IsLevelBelow(4) and c:IsRace(RACE_ZOMBIE) and c:IsCode(32274490)
...@@ -41,7 +41,7 @@ function c98941042.spcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -41,7 +41,7 @@ function c98941042.spcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_LINK) return e:GetHandler():IsSummonType(SUMMON_TYPE_LINK)
end end
function c98941042.spfilter(c,e,tp) function c98941042.spfilter(c,e,tp)
return (aux.IsCodeListed(c,32274490) or c:IsCode(32274490)) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_DEFENSE) return (aux.IsCodeListed(c,32274490) or c:IsCode(32274490)) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP)
end end
function c98941042.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function c98941042.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
...@@ -55,7 +55,7 @@ function c98941042.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -55,7 +55,7 @@ function c98941042.spop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,c98941042.spfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp) local g=Duel.SelectMatchingCard(tp,c98941042.spfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp)
local tc=g:GetFirst() local tc=g:GetFirst()
if tc then if tc then
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP_DEFENSE) Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
end end
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_FIELD)
......
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