Commit 7dea1e5c authored by POLYMER's avatar POLYMER

fix

parent 7b481d6b
...@@ -14,7 +14,7 @@ function s.initial_effect(c) ...@@ -14,7 +14,7 @@ function s.initial_effect(c)
e1:SetTarget(s.target) e1:SetTarget(s.target)
e1:SetOperation(s.activate) e1:SetOperation(s.activate)
c:RegisterEffect(e1) c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,1)) e2:SetDescription(aux.Stringid(id,1))
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
...@@ -29,12 +29,15 @@ function s.condition(e,tp,eg,ep,ev,re,r,rp) ...@@ -29,12 +29,15 @@ function s.condition(e,tp,eg,ep,ev,re,r,rp)
local ph=Duel.GetCurrentPhase() local ph=Duel.GetCurrentPhase()
return ph==PHASE_MAIN1 or ph==PHASE_MAIN2 return ph==PHASE_MAIN1 or ph==PHASE_MAIN2
end end
function s.lvfilter(c) function s.lvfilter(c)
return c:IsFaceup() and c:IsSetCard(0x5f51) and c:IsLevelAbove(1) return c:IsFaceup() and c:IsSetCard(0x5f51) and c:IsLevelAbove(1)
end end
function s.desfilter(c) function s.desfilter(c)
return c:IsSetCard(0x5f51) and c:IsDestructable() return c:IsSetCard(0x5f51)
end end
function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and s.lvfilter(chkc) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and s.lvfilter(chkc) end
if chk==0 then if chk==0 then
...@@ -57,34 +60,31 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -57,34 +60,31 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp)
e1:SetValue(12) e1:SetValue(12)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1) tc:RegisterEffect(e1)
end end
Duel.AdjustInstantly() Duel.AdjustInstantly()
Duel.BreakEffect() Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local dg=Duel.SelectMatchingCard(tp,s.desfilter,tp,LOCATION_HAND+LOCATION_ONFIELD,0,1,#tg,c) local dg=Duel.SelectMatchingCard(tp,s.desfilter,tp,LOCATION_HAND+LOCATION_ONFIELD,0,#tg,#tg,c)
if #dg>0 then if #dg>0 then
local conf=dg:Filter(Card.IsFacedown,nil) local conf=dg:Filter(Card.IsFacedown,nil)
if #conf>0 then Duel.ConfirmCards(1-tp,conf) end if #conf>0 then Duel.ConfirmCards(1-tp,conf) end
local count = Duel.Destroy(dg,REASON_EFFECT) local count = Duel.Destroy(dg,REASON_EFFECT)
if count > 0 then if count > 0 then
local sc=Duel.GetMatchingGroup(function(xyzc) local sc=Duel.GetMatchingGroup(function(xyzc)
return xyzc:IsSetCard(0x5f51) and xyzc:IsType(TYPE_XYZ) return xyzc:IsSetCard(0x5f51) and xyzc:IsType(TYPE_XYZ)
and xyzc:IsCanBeSpecialSummoned(e,SUMMON_TYPE_XYZ,tp,false,false) and xyzc:IsCanBeSpecialSummoned(e,SUMMON_TYPE_XYZ,tp,false,false) end,tp,LOCATION_EXTRA,0,nil)
end,tp,LOCATION_EXTRA,0,nil)
if #sc>0 and Duel.SelectEffectYesNo(tp,c,aux.Stringid(id,2)) then if #sc>0 and Duel.SelectEffectYesNo(tp,c,aux.Stringid(id,2)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local xyz=sc:Select(tp,1,1,nil):GetFirst() local xyz=sc:Select(tp,1,1,nil):GetFirst()
local mg=Duel.GetMatchingGroup(function(mc) local mg=Duel.GetMatchingGroup(function(mc)
return mc:IsFaceup() and mc:IsType(TYPE_MONSTER) and mc:IsCanBeXyzMaterial(xyz) return mc:IsFaceup() and mc:IsType(TYPE_MONSTER) and mc:IsCanBeXyzMaterial(xyz) end,tp,LOCATION_MZONE,0,nil)
end,tp,LOCATION_MZONE,0,nil)
if #mg>=2 then if #mg>=2 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local mat=mg:FilterSelect(tp,function(mc) return mc:IsLevel(12) end,2,64,nil) local mat=mg:FilterSelect(tp,function(mc) return mc:IsLevel(12) end,2,64,nil)
if #mat>=2 then if #mat>=2 then
xyz:SetMaterial(mat) xyz:SetMaterial(mat)
Duel.Overlay(xyz,mat) Duel.Overlay(xyz,mat)
if Duel.SpecialSummon(xyz,SUMMON_TYPE_XYZ,tp,tp,false,false,POS_FACEUP)~=0 then if Duel.SpecialSummon(xyz,SUMMON_TYPE_XYZ,tp,tp,false,false,POS_FACEUP)~=0 then xyz:CompleteProcedure()
xyz:CompleteProcedure()
end end
end end
end end
......
...@@ -30,7 +30,7 @@ function c43480000.initial_effect(c) ...@@ -30,7 +30,7 @@ function c43480000.initial_effect(c)
e2:SetCode(EVENT_FREE_CHAIN) e2:SetCode(EVENT_FREE_CHAIN)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET) e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1,43480001) e2:SetCountLimit(1,434800001)
e2:SetTarget(c43480000.eqtg) e2:SetTarget(c43480000.eqtg)
e2:SetOperation(c43480000.eqop) e2:SetOperation(c43480000.eqop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
...@@ -39,7 +39,7 @@ function c43480000.initial_effect(c) ...@@ -39,7 +39,7 @@ function c43480000.initial_effect(c)
e3:SetCategory(CATEGORY_SPECIAL_SUMMON) e3:SetCategory(CATEGORY_SPECIAL_SUMMON)
e3:SetType(EFFECT_TYPE_IGNITION) e3:SetType(EFFECT_TYPE_IGNITION)
e3:SetRange(LOCATION_SZONE) e3:SetRange(LOCATION_SZONE)
e3:SetCountLimit(1,43480002) e3:SetCountLimit(1,434800002)
e3:SetCondition(c43480000.spcon) e3:SetCondition(c43480000.spcon)
e3:SetTarget(c43480000.sptg) e3:SetTarget(c43480000.sptg)
e3:SetOperation(c43480000.spop) e3:SetOperation(c43480000.spop)
...@@ -82,7 +82,7 @@ end ...@@ -82,7 +82,7 @@ end
function c43480000.desop(e,tp,eg,ep,ev,re,r,rp) function c43480000.desop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local p=tp local p=tp
if Duel.IsPlayerAffectedByEffect(tp,43480050) then p=1-tp end if Duel.IsPlayerAffectedByEffect(tp,4348050) then p=1-tp end
local dg=Duel.GetMatchingGroup(c43480000.desfil,p,LOCATION_MZONE,0,nil) local dg=Duel.GetMatchingGroup(c43480000.desfil,p,LOCATION_MZONE,0,nil)
if dg:GetCount()>0 then if dg:GetCount()>0 then
Duel.Destroy(dg,REASON_EFFECT) Duel.Destroy(dg,REASON_EFFECT)
......
...@@ -51,7 +51,7 @@ function c43480005.cfilter(c) ...@@ -51,7 +51,7 @@ function c43480005.cfilter(c)
return c:IsFaceup() and c:IsSetCard(0x3f13) return c:IsFaceup() and c:IsSetCard(0x3f13)
end end
function c43480005.pspcon(e,tp,eg,ep,ev,re,r,rp) function c43480005.pspcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(c43480005.cfilter,tp,LOCATION_MZONE,0,1,nil) or Duel.IsEnvironment(43480070,tp) return Duel.IsExistingMatchingCard(c43480005.cfilter,tp,LOCATION_MZONE,0,1,nil) or Duel.IsEnvironment(4348070,tp)
end end
function c43480005.psptg(e,tp,eg,ep,ev,re,r,rp,chk) function c43480005.psptg(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
...@@ -85,7 +85,7 @@ end ...@@ -85,7 +85,7 @@ end
function c43480005.desop(e,tp,eg,ep,ev,re,r,rp) function c43480005.desop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local p=tp local p=tp
if Duel.IsPlayerAffectedByEffect(tp,43480050) then p=1-tp end if Duel.IsPlayerAffectedByEffect(tp,4348050) then p=1-tp end
local dg=Duel.GetMatchingGroup(c43480005.desfil,p,LOCATION_MZONE,0,nil) local dg=Duel.GetMatchingGroup(c43480005.desfil,p,LOCATION_MZONE,0,nil)
if dg:GetCount()>0 then if dg:GetCount()>0 then
Duel.Destroy(dg,REASON_EFFECT) Duel.Destroy(dg,REASON_EFFECT)
......
...@@ -51,7 +51,7 @@ function c43480010.cfilter(c) ...@@ -51,7 +51,7 @@ function c43480010.cfilter(c)
return c:IsFaceup() and c:IsSetCard(0x3f13) return c:IsFaceup() and c:IsSetCard(0x3f13)
end end
function c43480010.pspcon(e,tp,eg,ep,ev,re,r,rp) function c43480010.pspcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(c43480010.cfilter,tp,LOCATION_MZONE,0,1,nil) or Duel.IsEnvironment(43480070,tp) return Duel.IsExistingMatchingCard(c43480010.cfilter,tp,LOCATION_MZONE,0,1,nil) or Duel.IsEnvironment(4348070,tp)
end end
function c43480010.psptg(e,tp,eg,ep,ev,re,r,rp,chk) function c43480010.psptg(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
...@@ -85,7 +85,7 @@ end ...@@ -85,7 +85,7 @@ end
function c43480010.desop(e,tp,eg,ep,ev,re,r,rp) function c43480010.desop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local p=tp local p=tp
if Duel.IsPlayerAffectedByEffect(tp,43480050) then p=1-tp end if Duel.IsPlayerAffectedByEffect(tp,4348050) then p=1-tp end
local dg=Duel.GetMatchingGroup(c43480010.desfil,p,LOCATION_MZONE,0,nil) local dg=Duel.GetMatchingGroup(c43480010.desfil,p,LOCATION_MZONE,0,nil)
if dg:GetCount()>0 then if dg:GetCount()>0 then
Duel.Destroy(dg,REASON_EFFECT) Duel.Destroy(dg,REASON_EFFECT)
......
...@@ -52,7 +52,7 @@ function c43480015.cfilter(c) ...@@ -52,7 +52,7 @@ function c43480015.cfilter(c)
return c:IsFaceup() and c:IsSetCard(0x3f13) return c:IsFaceup() and c:IsSetCard(0x3f13)
end end
function c43480015.pspcon(e,tp,eg,ep,ev,re,r,rp) function c43480015.pspcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(c43480015.cfilter,tp,LOCATION_MZONE,0,1,nil) or Duel.IsEnvironment(43480070,tp) return Duel.IsExistingMatchingCard(c43480015.cfilter,tp,LOCATION_MZONE,0,1,nil) or Duel.IsEnvironment(4348070,tp)
end end
function c43480015.psptg(e,tp,eg,ep,ev,re,r,rp,chk) function c43480015.psptg(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
...@@ -76,7 +76,7 @@ end ...@@ -76,7 +76,7 @@ end
function c43480015.desop(e,tp,eg,ep,ev,re,r,rp) function c43480015.desop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local p=tp local p=tp
if Duel.IsPlayerAffectedByEffect(tp,43480050) then p=1-tp end if Duel.IsPlayerAffectedByEffect(tp,4348050) then p=1-tp end
local dg=Duel.GetMatchingGroup(c43480015.desfil,p,LOCATION_MZONE,0,nil) local dg=Duel.GetMatchingGroup(c43480015.desfil,p,LOCATION_MZONE,0,nil)
if dg:GetCount()>0 then if dg:GetCount()>0 then
Duel.Destroy(dg,REASON_EFFECT) Duel.Destroy(dg,REASON_EFFECT)
......
--被遗忘的研究者 无洺 --被遗忘的研究者 无洺
function c43480025.initial_effect(c) function c4348025.initial_effect(c)
--special summon --special summon
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_IGNITION) e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_HAND) e1:SetRange(LOCATION_HAND)
e1:SetCountLimit(1,43480025) e1:SetCountLimit(1,4348025)
e1:SetCondition(c43480025.spcon) e1:SetCondition(c4348025.spcon)
e1:SetCost(c43480025.spcost) e1:SetCost(c4348025.spcost)
e1:SetTarget(c43480025.sptg) e1:SetTarget(c4348025.sptg)
e1:SetOperation(c43480025.spop) e1:SetOperation(c4348025.spop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--SpecialSummon --SpecialSummon
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
...@@ -17,9 +17,9 @@ function c43480025.initial_effect(c) ...@@ -17,9 +17,9 @@ function c43480025.initial_effect(c)
e2:SetType(EFFECT_TYPE_IGNITION) e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET) e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1,43480026) e2:SetCountLimit(1,4348026)
e2:SetTarget(c43480025.psptg) e2:SetTarget(c4348025.psptg)
e2:SetOperation(c43480025.pspop) e2:SetOperation(c4348025.pspop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--indes --indes
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
...@@ -32,37 +32,37 @@ function c43480025.initial_effect(c) ...@@ -32,37 +32,37 @@ function c43480025.initial_effect(c)
e3:SetValue(1) e3:SetValue(1)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c43480025.cfilter(c) function c4348025.cfilter(c)
return c:IsFacedown() or not c:IsSetCard(0x3f13) return c:IsFacedown() or not c:IsSetCard(0x3f13)
end end
function c43480025.spcon(e,tp,eg,ep,ev,re,r,rp) function c4348025.spcon(e,tp,eg,ep,ev,re,r,rp)
return not Duel.IsExistingMatchingCard(c43480025.cfilter,tp,LOCATION_MZONE,0,1,nil) return not Duel.IsExistingMatchingCard(c4348025.cfilter,tp,LOCATION_MZONE,0,1,nil)
end end
function c43480025.spcost(e,tp,eg,ep,ev,re,r,rp,chk) function c4348025.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsDiscardable,tp,LOCATION_HAND,0,1,e:GetHandler()) end if chk==0 then return Duel.IsExistingMatchingCard(Card.IsDiscardable,tp,LOCATION_HAND,0,1,e:GetHandler()) end
Duel.DiscardHand(tp,Card.IsDiscardable,1,1,REASON_COST+REASON_DISCARD,e:GetHandler()) Duel.DiscardHand(tp,Card.IsDiscardable,1,1,REASON_COST+REASON_DISCARD,e:GetHandler())
end end
function c43480025.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function c4348025.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
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
end end
function c43480025.spop(e,tp,eg,ep,ev,re,r,rp) function c4348025.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 then if c:IsRelateToEffect(e) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 then
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
end end
end end
function c43480025.pspfil(c,e,tp) function c4348025.pspfil(c,e,tp)
return c:IsFaceup() and c:IsType(TYPE_PENDULUM) and c:IsSetCard(0x3f13) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsFaceup() and c:IsType(TYPE_PENDULUM) and c:IsSetCard(0x3f13) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c43480025.psptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c4348025.psptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_PZONE) and c43480025.pspfil(chkc,e,tp) end if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_PZONE) and c4348025.pspfil(chkc,e,tp) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingTarget(c43480025.pspfil,tp,LOCATION_PZONE,0,1,nil,e,tp) end if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingTarget(c4348025.pspfil,tp,LOCATION_PZONE,0,1,nil,e,tp) end
local g=Duel.SelectTarget(tp,c43480025.pspfil,tp,LOCATION_PZONE,0,1,1,nil,e,tp) local g=Duel.SelectTarget(tp,c4348025.pspfil,tp,LOCATION_PZONE,0,1,1,nil,e,tp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,g:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,g:GetCount(),0,0)
end end
function c43480025.pspop(e,tp,eg,ep,ev,re,r,rp) function c4348025.pspop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 then if tc:IsRelateToEffect(e) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 then
......
...@@ -33,12 +33,18 @@ function c43480035.pbfil(c) ...@@ -33,12 +33,18 @@ function c43480035.pbfil(c)
return not c:IsPublic() and c:IsSetCard(0x3f13) return not c:IsPublic() and c:IsSetCard(0x3f13)
end end
function c43480035.thcost(e,tp,eg,ep,ev,re,r,rp,chk) function c43480035.thcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c43480035.pbfil,tp,LOCATION_HAND,0,1,nil) end local replace = Duel.IsPlayerAffectedByEffect(tp, 43480080)
local pg=Duel.SelectMatchingCard(tp,c43480035.pbfil,tp,LOCATION_HAND,0,1,1,nil) if chk == 0 then
Duel.ConfirmCards(1-tp,pg) if replace then return true end
return Duel.IsExistingMatchingCard(c43480035.pbfil,tp,LOCATION_HAND,0,1,nil)
end
if not replace then
local pg=Duel.SelectMatchingCard(tp,c43480035.pbfil,tp,LOCATION_HAND,0,1,1,nil)
Duel.ConfirmCards(1-tp,pg)
end
end end
function c43480035.thfilter(c) function c43480035.thfilter(c)
return c:IsCode(43480070) and c:IsAbleToHand() return c:IsCode(4348070) and c:IsAbleToHand()
end end
function c43480035.thtg(e,tp,eg,ep,ev,re,r,rp,chk) function c43480035.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c43480035.thfilter,tp,LOCATION_DECK,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(c43480035.thfilter,tp,LOCATION_DECK,0,1,nil) end
......
...@@ -42,9 +42,15 @@ function c43480040.pbfil(c) ...@@ -42,9 +42,15 @@ function c43480040.pbfil(c)
return not c:IsPublic() and c:IsSetCard(0x3f13) return not c:IsPublic() and c:IsSetCard(0x3f13)
end end
function c43480040.setcost(e,tp,eg,ep,ev,re,r,rp,chk) function c43480040.setcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c43480040.pbfil,tp,LOCATION_HAND,0,1,nil) end local replace = Duel.IsPlayerAffectedByEffect(tp, 43480080)
local pg=Duel.SelectMatchingCard(tp,c43480040.pbfil,tp,LOCATION_HAND,0,1,1,nil) if chk == 0 then
Duel.ConfirmCards(1-tp,pg) if replace then return true end
return Duel.IsExistingMatchingCard(c43480040.pbfil,tp,LOCATION_HAND,0,1,nil)
end
if not replace then
local pg=Duel.SelectMatchingCard(tp,c43480040.pbfil,tp,LOCATION_HAND,0,1,1,nil)
Duel.ConfirmCards(1-tp,pg)
end
end end
function c43480040.setfilter(c) function c43480040.setfilter(c)
return c:IsSetCard(0x3f13) and c:IsType(TYPE_TRAP) and c:IsSSetable() return c:IsSetCard(0x3f13) and c:IsType(TYPE_TRAP) and c:IsSSetable()
......
...@@ -19,7 +19,7 @@ function c43480045.initial_effect(c) ...@@ -19,7 +19,7 @@ function c43480045.initial_effect(c)
e2:SetCode(EVENT_CHAINING) e2:SetCode(EVENT_CHAINING)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET) e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1,43480046) e2:SetCountLimit(1,4348006)
e2:SetCondition(c43480045.rmdcon) e2:SetCondition(c43480045.rmdcon)
e2:SetTarget(c43480045.rmdtg) e2:SetTarget(c43480045.rmdtg)
e2:SetOperation(c43480045.rmdop) e2:SetOperation(c43480045.rmdop)
...@@ -74,8 +74,8 @@ function c43480045.eqop(e,tp,eg,ep,ev,re,r,rp) ...@@ -74,8 +74,8 @@ function c43480045.eqop(e,tp,eg,ep,ev,re,r,rp)
end end
function c43480045.rmdcon(e,tp,eg,ep,ev,re,r,rp) function c43480045.rmdcon(e,tp,eg,ep,ev,re,r,rp)
local b1=re:IsActiveType(TYPE_MONSTER) and Duel.GetFlagEffect(tp,43480045)==0 local b1=re:IsActiveType(TYPE_MONSTER) and Duel.GetFlagEffect(tp,43480045)==0
local b2=re:IsActiveType(TYPE_SPELL) and Duel.GetFlagEffect(tp,4348046)==0 local b2=re:IsActiveType(TYPE_SPELL) and Duel.GetFlagEffect(tp,4348006)==0
local b3=re:IsActiveType(TYPE_TRAP) and Duel.GetFlagEffect(tp,4348047)==0 local b3=re:IsActiveType(TYPE_TRAP) and Duel.GetFlagEffect(tp,43480047)==0
return rp==1-tp and (b1 or b2 or b3) return rp==1-tp and (b1 or b2 or b3)
end end
function c43480045.desfil(c,e) function c43480045.desfil(c,e)
...@@ -91,10 +91,10 @@ function c43480045.rmdtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -91,10 +91,10 @@ function c43480045.rmdtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel.RegisterFlagEffect(tp,43480045,RESET_PHASE+PHASE_END,0,1) Duel.RegisterFlagEffect(tp,43480045,RESET_PHASE+PHASE_END,0,1)
end end
if re:IsActiveType(TYPE_SPELL) then if re:IsActiveType(TYPE_SPELL) then
Duel.RegisterFlagEffect(tp,4348046,RESET_PHASE+PHASE_END,0,1) Duel.RegisterFlagEffect(tp,4348006,RESET_PHASE+PHASE_END,0,1)
end end
if re:IsActiveType(TYPE_TRAP) then if re:IsActiveType(TYPE_TRAP) then
Duel.RegisterFlagEffect(tp,4348047,RESET_PHASE+PHASE_END,0,1) Duel.RegisterFlagEffect(tp,43480047,RESET_PHASE+PHASE_END,0,1)
end end
end end
function c43480045.rmdop(e,tp,eg,ep,ev,re,r,rp) function c43480045.rmdop(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -55,7 +55,7 @@ function c43480050.spcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -55,7 +55,7 @@ function c43480050.spcon(e,tp,eg,ep,ev,re,r,rp)
return bit.band(r,REASON_EFFECT+REASON_BATTLE)~=0 return bit.band(r,REASON_EFFECT+REASON_BATTLE)~=0
end end
function c43480050.spfilter(c,e,tp) function c43480050.spfilter(c,e,tp)
return c:IsCode(4348040) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsCode(43480040) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c43480050.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function c43480050.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingMatchingCard(c43480050.spfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingMatchingCard(c43480050.spfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
......
...@@ -77,7 +77,7 @@ function c43480055.pspop(e,tp,eg,ep,ev,re,r,rp) ...@@ -77,7 +77,7 @@ function c43480055.pspop(e,tp,eg,ep,ev,re,r,rp)
end end
function c43480055.spfilter(c,e,tp) function c43480055.spfilter(c,e,tp)
return c:IsCode(43480030) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsCode(4348030) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c43480055.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function c43480055.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
......
...@@ -17,7 +17,7 @@ function c43480060.initial_effect(c) ...@@ -17,7 +17,7 @@ function c43480060.initial_effect(c)
e2:SetCode(EVENT_FREE_CHAIN) e2:SetCode(EVENT_FREE_CHAIN)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET) e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetRange(LOCATION_GRAVE) e2:SetRange(LOCATION_GRAVE)
e2:SetCountLimit(1,4348061) e2:SetCountLimit(1,43480061)
e2:SetCost(aux.bfgcost) e2:SetCost(aux.bfgcost)
e2:SetTarget(c43480060.eqtg) e2:SetTarget(c43480060.eqtg)
e2:SetOperation(c43480060.eqop) e2:SetOperation(c43480060.eqop)
......
...@@ -17,7 +17,7 @@ function c43480065.initial_effect(c) ...@@ -17,7 +17,7 @@ function c43480065.initial_effect(c)
e2:SetType(EFFECT_TYPE_IGNITION) e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET) e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetRange(LOCATION_GRAVE) e2:SetRange(LOCATION_GRAVE)
e2:SetCountLimit(1,4348066) e2:SetCountLimit(1,43480066)
e2:SetCost(aux.bfgcost) e2:SetCost(aux.bfgcost)
e2:SetTarget(c43480065.eqtg) e2:SetTarget(c43480065.eqtg)
e2:SetOperation(c43480065.eqop) e2:SetOperation(c43480065.eqop)
......
...@@ -10,7 +10,7 @@ function c43480070.initial_effect(c) ...@@ -10,7 +10,7 @@ function c43480070.initial_effect(c)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_IGNITION) e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_FZONE) e1:SetRange(LOCATION_FZONE)
e1:SetCountLimit(1,4348071) e1:SetCountLimit(1,43480071)
e1:SetTarget(c43480070.pltg) e1:SetTarget(c43480070.pltg)
e1:SetOperation(c43480070.plop) e1:SetOperation(c43480070.plop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
...@@ -30,7 +30,7 @@ function c43480070.initial_effect(c) ...@@ -30,7 +30,7 @@ function c43480070.initial_effect(c)
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e3:SetCode(EVENT_DESTROYED) e3:SetCode(EVENT_DESTROYED)
e3:SetProperty(EFFECT_FLAG_DELAY) e3:SetProperty(EFFECT_FLAG_DELAY)
e3:SetCountLimit(1,4348072) e3:SetCountLimit(1,43480072)
e3:SetCondition(c43480070.spcon) e3:SetCondition(c43480070.spcon)
e3:SetTarget(c43480070.sptg) e3:SetTarget(c43480070.sptg)
e3:SetOperation(c43480070.spop) e3:SetOperation(c43480070.spop)
......
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