Commit 69eb0c35 authored by wind2009's avatar wind2009

Fix

parent 46e3c19a
Pipeline #41110 canceled with stages
in 7 seconds
No preview for this file type
...@@ -131,4 +131,4 @@ function s.spop2(e,tp,eg,ep,ev,re,r,rp) ...@@ -131,4 +131,4 @@ function s.spop2(e,tp,eg,ep,ev,re,r,rp)
local sg=g:Select(tp,2,2,nil) local sg=g:Select(tp,2,2,nil)
Duel.SpecialSummon(sg,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(sg,0,tp,tp,false,false,POS_FACEUP)
end end
end end
\ No newline at end of file
...@@ -51,7 +51,7 @@ function s.podcond(e) ...@@ -51,7 +51,7 @@ function s.podcond(e)
return Duel.IsExistingMatchingCard(s.podfilter,tp,0,LOCATION_MZONE,1,nil) return Duel.IsExistingMatchingCard(s.podfilter,tp,0,LOCATION_MZONE,1,nil)
end end
function s.filter(c,e,tp) function s.filter(c,e,tp)
return not c:IsCode(id) and c:IsLevelBelow(4) and c:IsCode(0x2066) return not c:IsCode(id) and c:IsLevelBelow(4) and c:IsSetCard(0x2066)
and (c:IsAbleToHand() or Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false)) and (c:IsAbleToHand() or Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false))
end end
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
...@@ -72,4 +72,4 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -72,4 +72,4 @@ function s.spop(e,tp,eg,ep,ev,re,r,rp)
Duel.SendtoHand(tc,nil,REASON_EFFECT) Duel.SendtoHand(tc,nil,REASON_EFFECT)
end end
end end
end end
\ No newline at end of file
...@@ -123,4 +123,4 @@ function s.atkcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -123,4 +123,4 @@ function s.atkcon(e,tp,eg,ep,ev,re,r,rp)
end end
function s.atkop(e,tp,eg,ep,ev,re,r,rp) function s.atkop(e,tp,eg,ep,ev,re,r,rp)
Duel.NegateAttack() Duel.NegateAttack()
end end
\ No newline at end of file
...@@ -90,7 +90,7 @@ function s.spop2(e,tp,eg,ep,ev,re,r,rp) ...@@ -90,7 +90,7 @@ function s.spop2(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc:IsRelateToChain() and aux.NecroValleyFilter()(tc) if tc:IsRelateToChain() and aux.NecroValleyFilter()(tc)
and Duel.SpecialSummonStep(tc,0,tp,tp,false,false,POS_FACEUP)~=0 and Duel.SpecialSummonStep(tc,0,tp,tp,false,false,POS_FACEUP)~=0
and tc:GetTextAttack()<=1200 and tc:GetTextAttack()>=0 then and tc:GetBaseAttack()<=1200 then
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK) e1:SetCode(EFFECT_UPDATE_ATTACK)
...@@ -100,4 +100,4 @@ function s.spop2(e,tp,eg,ep,ev,re,r,rp) ...@@ -100,4 +100,4 @@ function s.spop2(e,tp,eg,ep,ev,re,r,rp)
tc:RegisterEffect(e1) tc:RegisterEffect(e1)
end end
Duel.SpecialSummonComplete() Duel.SpecialSummonComplete()
end end
\ No newline at end of file
...@@ -104,4 +104,4 @@ function s.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -104,4 +104,4 @@ function s.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end end
end end
end end
\ No newline at end of file
...@@ -59,4 +59,4 @@ function s.spop2(e,tp,eg,ep,ev,re,r,rp) ...@@ -59,4 +59,4 @@ function s.spop2(e,tp,eg,ep,ev,re,r,rp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP_DEFENSE) Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP_DEFENSE)
end end
end end
\ No newline at end of file
...@@ -79,4 +79,4 @@ function s.sumop(e,tp,eg,ep,ev,re,r,rp) ...@@ -79,4 +79,4 @@ function s.sumop(e,tp,eg,ep,ev,re,r,rp)
if tc then if tc then
Duel.Summon(tp,tc,true,nil) Duel.Summon(tp,tc,true,nil)
end end
end end
\ No newline at end of file
...@@ -76,4 +76,4 @@ function s.spop2(e,tp,eg,ep,ev,re,r,rp) ...@@ -76,4 +76,4 @@ function s.spop2(e,tp,eg,ep,ev,re,r,rp)
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
end end
end end
end end
\ No newline at end of file
...@@ -59,9 +59,9 @@ function s.eop(e,tp,eg,ep,ev,re,r,rp) ...@@ -59,9 +59,9 @@ function s.eop(e,tp,eg,ep,ev,re,r,rp)
and Duel.GetFlagEffect(tp,id+o*2)==0 and Duel.GetFlagEffect(tp,id+o*2)==0
if not (b1 or b2 or b3) then return end if not (b1 or b2 or b3) then return end
local op=aux.SelectFromOptions(tp, local op=aux.SelectFromOptions(tp,
{b1,aux.Stringid(id,0),1}, {b1,aux.Stringid(id,1),1},
{b2,aux.Stringid(id,1),2}, {b2,aux.Stringid(id,2),2},
{b3,aux.Stringid(id,2),3}) {b3,aux.Stringid(id,3),3})
if op==1 then if op==1 then
Duel.RegisterFlagEffect(tp,id,RESET_PHASE+PHASE_END,0,1) Duel.RegisterFlagEffect(tp,id,RESET_PHASE+PHASE_END,0,1)
local g=Duel.GetMatchingGroup(Card.IsAbleToDeck,tp,LOCATION_MZONE,LOCATION_MZONE,aux.ExceptThisCard(e)) local g=Duel.GetMatchingGroup(Card.IsAbleToDeck,tp,LOCATION_MZONE,LOCATION_MZONE,aux.ExceptThisCard(e))
...@@ -79,7 +79,7 @@ function s.eop(e,tp,eg,ep,ev,re,r,rp) ...@@ -79,7 +79,7 @@ function s.eop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetFieldGroup(tp,0,LOCATION_EXTRA) local g=Duel.GetFieldGroup(tp,0,LOCATION_EXTRA)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.BreakEffect() Duel.BreakEffect()
Duel.ConfirmCards(tp,g) Duel.ConfirmCards(tp,g,true)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local tg=g:FilterSelect(tp,Card.IsAbleToRemove,1,1,nil) local tg=g:FilterSelect(tp,Card.IsAbleToRemove,1,1,nil)
if tg:GetCount()>0 then if tg:GetCount()>0 then
...@@ -88,4 +88,4 @@ function s.eop(e,tp,eg,ep,ev,re,r,rp) ...@@ -88,4 +88,4 @@ function s.eop(e,tp,eg,ep,ev,re,r,rp)
Duel.ShuffleExtra(1-tp) Duel.ShuffleExtra(1-tp)
end end
end end
end end
\ No newline at end of file
...@@ -40,7 +40,7 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -40,7 +40,7 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
and (not e:IsCostChecked() or Duel.GetFlagEffect(tp,id+o)==0) and (not e:IsCostChecked() or Duel.GetFlagEffect(tp,id+o)==0)
local b3=false local b3=false
local chkf=tp local chkf=tp
local mg1=Duel.GetMatchingGroup(s.filter1,tp,LOCATION_HAND+LOCATION_MZONE+LOCATION_GRAVE+LOCATION_REMOVED,0,nil) local mg1=Duel.GetMatchingGroup(s.filter1,tp,LOCATION_HAND+LOCATION_MZONE+LOCATION_GRAVE+LOCATION_REMOVED,0,nil,e)
local res=Duel.IsExistingMatchingCard(s.filter2,tp,LOCATION_EXTRA,0,1,nil,e,tp,mg1,nil,chkf) local res=Duel.IsExistingMatchingCard(s.filter2,tp,LOCATION_EXTRA,0,1,nil,e,tp,mg1,nil,chkf)
if not res then if not res then
local ce=Duel.GetChainMaterial(tp) local ce=Duel.GetChainMaterial(tp)
...@@ -134,4 +134,4 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -134,4 +134,4 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp)
end end
end end
end end
end end
\ No newline at end of file
--ボスオンパレード --ボスオンパレード
local s,id,o=GetID() local s,id,o=GetID()
function s.initial_effect(c) function s.initial_effect(c)
aux.AddCodeList(c,66947414)
--Activate --Activate
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH) e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
...@@ -63,18 +64,24 @@ function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -63,18 +64,24 @@ function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK)
end end
function s.spop(e,tp,eg,ep,ev,re,r,rp) function s.spop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectMatchingCard(tp,s.dfilter,tp,LOCATION_HAND+LOCATION_MZONE,0,1,1,nil,e,tp) local g=nil
if Duel.IsExistingMatchingCard(s.dfilter,tp,LOCATION_HAND+LOCATION_MZONE,0,1,nil,e,tp) then
g=Duel.SelectMatchingCard(tp,s.dfilter,tp,LOCATION_HAND+LOCATION_MZONE,0,1,1,nil,e,tp)
else
g=Duel.SelectMatchingCard(tp,Card.IsType,tp,LOCATION_HAND+LOCATION_MZONE,0,1,1,nil,TYPE_MONSTER)
end
if Duel.Destroy(g,REASON_EFFECT)>0 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 then if Duel.Destroy(g,REASON_EFFECT)>0 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg=Duel.SelectMatchingCard(tp,s.spfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp,nil) local sg=Duel.SelectMatchingCard(tp,s.spfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp,nil)
if #sg>0 then if #sg>0 then
local tc=sg:GetFirst() local tc=sg:GetFirst()
if Duel.GetLocationCount(1-tp,LOCATION_MZONE)>0 and tc:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP,1-tp) local ssp=Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and tc:IsCanBeSpecialSummoned(e,0,tp,false,false)
and (not (Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and tc:IsCanBeSpecialSummoned(e,0,tp,false,false)) local osp=Duel.GetLocationCount(1-tp,LOCATION_MZONE)>0 and tc:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP,1-tp)
or Duel.SelectYesNo(tp,aux.Stringid(id,3))) then if osp and (not ssp or Duel.SelectYesNo(tp,aux.Stringid(id,3))) then
Duel.SpecialSummon(tc,0,tp,1-tp,false,false,POS_FACEUP) Duel.SpecialSummon(tc,0,tp,1-tp,false,false,POS_FACEUP)
else elseif ssp then
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
end end
end end
...@@ -95,4 +102,4 @@ function s.setop(e,tp,eg,ep,ev,re,r,rp) ...@@ -95,4 +102,4 @@ function s.setop(e,tp,eg,ep,ev,re,r,rp)
if tc then if tc then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true) Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true)
end end
end end
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment