Commit 4659b008 authored by mercury233's avatar mercury233

update

parent 333a1094
...@@ -27,8 +27,10 @@ function c1580833.filter(c,tp) ...@@ -27,8 +27,10 @@ function c1580833.filter(c,tp)
and (c:IsReason(REASON_BATTLE) or (c:IsReason(REASON_EFFECT) and c:GetReasonPlayer()~=tp)) and (c:IsReason(REASON_BATTLE) or (c:IsReason(REASON_EFFECT) and c:GetReasonPlayer()~=tp))
end end
function c1580833.reptg(e,tp,eg,ep,ev,re,r,rp,chk) function c1580833.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return eg:IsExists(c1580833.filter,1,e:GetHandler(),tp) and not e:GetHandler():IsStatus(STATUS_DESTROY_CONFIRMED) end local c=e:GetHandler()
return Duel.SelectEffectYesNo(tp,e:GetHandler(),96) if chk==0 then return eg:IsExists(c1580833.filter,1,c,tp)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED) end
return Duel.SelectEffectYesNo(tp,c,96)
end end
function c1580833.repval(e,c) function c1580833.repval(e,c)
return c1580833.filter(c,e:GetHandlerPlayer()) return c1580833.filter(c,e:GetHandlerPlayer())
......
...@@ -90,16 +90,17 @@ function c17228908.repfilter(c,tp) ...@@ -90,16 +90,17 @@ function c17228908.repfilter(c,tp)
return c:IsFaceup() and c:IsType(TYPE_NORMAL) and c:IsLocation(LOCATION_MZONE) return c:IsFaceup() and c:IsType(TYPE_NORMAL) and c:IsLocation(LOCATION_MZONE)
and c:IsReason(REASON_BATTLE+REASON_EFFECT) and c:GetFlagEffect(17228908)==0 and c:IsReason(REASON_BATTLE+REASON_EFFECT) and c:GetFlagEffect(17228908)==0
end end
function c17228908.desfilter(c,tp) function c17228908.desfilter(c,e)
return c:IsRace(RACE_DINOSAUR) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED) return c:IsRace(RACE_DINOSAUR) and c:IsDestructable(e)
and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED)
end end
function c17228908.reptg(e,tp,eg,ep,ev,re,r,rp,chk) function c17228908.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
local ct=eg:FilterCount(c17228908.repfilter,nil,tp) local ct=eg:FilterCount(c17228908.repfilter,nil,tp)
if chk==0 then return ct>0 if chk==0 then return ct>0
and Duel.IsExistingMatchingCard(c17228908.desfilter,tp,LOCATION_HAND+LOCATION_DECK,0,ct,nil,tp) end and Duel.IsExistingMatchingCard(c17228908.desfilter,tp,LOCATION_HAND+LOCATION_DECK,0,ct,nil,e) end
if Duel.SelectEffectYesNo(tp,e:GetHandler(),96) then if Duel.SelectEffectYesNo(tp,e:GetHandler(),96) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local tg=Duel.SelectMatchingCard(tp,c17228908.desfilter,tp,LOCATION_HAND+LOCATION_DECK,0,ct,ct,nil,tp) local tg=Duel.SelectMatchingCard(tp,c17228908.desfilter,tp,LOCATION_HAND+LOCATION_DECK,0,ct,ct,nil,e)
local g=e:GetLabelObject() local g=e:GetLabelObject()
g:Clear() g:Clear()
local tc=tg:GetFirst() local tc=tg:GetFirst()
...@@ -116,6 +117,7 @@ function c17228908.repval(e,c) ...@@ -116,6 +117,7 @@ function c17228908.repval(e,c)
return c17228908.repfilter(c,e:GetHandlerPlayer()) return c17228908.repfilter(c,e:GetHandlerPlayer())
end end
function c17228908.repop(e,tp,eg,ep,ev,re,r,rp) function c17228908.repop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_CARD,1-tp,17228908)
local tg=e:GetLabelObject() local tg=e:GetLabelObject()
local tc=tg:GetFirst() local tc=tg:GetFirst()
while tc do while tc do
......
...@@ -10,16 +10,17 @@ function c19505896.initial_effect(c) ...@@ -10,16 +10,17 @@ function c19505896.initial_effect(c)
e1:SetOperation(c19505896.desrepop) e1:SetOperation(c19505896.desrepop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c19505896.repfilter(c) function c19505896.repfilter(c,e)
return c:IsFaceup() and c:IsRace(RACE_PLANT) and not c:IsStatus(STATUS_DESTROY_CONFIRMED) return c:IsFaceup() and c:IsRace(RACE_PLANT)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED)
end end
function c19505896.desreptg(e,tp,eg,ep,ev,re,r,rp,chk) function c19505896.desreptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return not c:IsReason(REASON_REPLACE) if chk==0 then return not c:IsReason(REASON_REPLACE)
and Duel.IsExistingMatchingCard(c19505896.repfilter,tp,LOCATION_MZONE,0,1,c) end and Duel.IsExistingMatchingCard(c19505896.repfilter,tp,LOCATION_MZONE,0,1,c,e) end
if Duel.SelectEffectYesNo(tp,e:GetHandler(),96) then if Duel.SelectEffectYesNo(tp,c,96) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local g=Duel.SelectMatchingCard(tp,c19505896.repfilter,tp,LOCATION_MZONE,0,1,1,c) local g=Duel.SelectMatchingCard(tp,c19505896.repfilter,tp,LOCATION_MZONE,0,1,1,c,e)
e:SetLabelObject(g:GetFirst()) e:SetLabelObject(g:GetFirst())
g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true) g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true)
return true return true
......
...@@ -68,8 +68,8 @@ end ...@@ -68,8 +68,8 @@ end
function c19748583.reptg(e,tp,eg,ep,ev,re,r,rp,chk) function c19748583.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return bit.band(r,REASON_EFFECT)~=0 and c:GetEquipTarget():IsAttribute(ATTRIBUTE_LIGHT) if chk==0 then return bit.band(r,REASON_EFFECT)~=0 and c:GetEquipTarget():IsAttribute(ATTRIBUTE_LIGHT)
and not e:GetHandler():IsStatus(STATUS_DESTROY_CONFIRMED) end and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED) end
return Duel.SelectEffectYesNo(e:GetOwnerPlayer(),e:GetHandler(),96) return Duel.SelectEffectYesNo(e:GetOwnerPlayer(),c,96)
end end
function c19748583.repop(e,tp,eg,ep,ev,re,r,rp) function c19748583.repop(e,tp,eg,ep,ev,re,r,rp)
Duel.Destroy(e:GetHandler(),REASON_EFFECT+REASON_REPLACE) Duel.Destroy(e:GetHandler(),REASON_EFFECT+REASON_REPLACE)
......
...@@ -49,16 +49,17 @@ end ...@@ -49,16 +49,17 @@ end
function c20920083.indval(e,re,rp) function c20920083.indval(e,re,rp)
return rp~=e:GetHandlerPlayer() return rp~=e:GetHandlerPlayer()
end end
function c20920083.repfilter(c) function c20920083.repfilter(c,e)
return c:GetSequence()<5 and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED) return c:GetSequence()<5 and c:IsDestructable(e)
and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED)
end end
function c20920083.desreptg(e,tp,eg,ep,ev,re,r,rp,chk) function c20920083.desreptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup() if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup()
and Duel.IsExistingMatchingCard(c20920083.repfilter,tp,LOCATION_SZONE,0,1,c) end and Duel.IsExistingMatchingCard(c20920083.repfilter,tp,LOCATION_SZONE,0,1,c,e) end
if Duel.SelectEffectYesNo(tp,c,96) then if Duel.SelectEffectYesNo(tp,c,96) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local g=Duel.SelectMatchingCard(tp,c20920083.repfilter,tp,LOCATION_SZONE,0,1,1,c) local g=Duel.SelectMatchingCard(tp,c20920083.repfilter,tp,LOCATION_SZONE,0,1,1,c,e)
e:SetLabelObject(g:GetFirst()) e:SetLabelObject(g:GetFirst())
Duel.HintSelection(g) Duel.HintSelection(g)
g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true) g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true)
......
...@@ -80,14 +80,17 @@ function c22842214.eqop(e,tp,eg,ep,ev,re,r,rp) ...@@ -80,14 +80,17 @@ function c22842214.eqop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function c22842214.eqfilter(c,ec) function c22842214.eqfilter(c,ec)
return c:GetFlagEffect(22842214)~=0 and c:IsHasCardTarget(ec) and not c:IsStatus(STATUS_DESTROY_CONFIRMED) return c:GetFlagEffect(22842214)~=0 and c:IsHasCardTarget(ec)
end
function c22842214.repfilter(c,e,ec)
return c22842214.eqfilter(c,ec) and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED)
end end
function c22842214.desreptg(e,tp,eg,ep,ev,re,r,rp,chk) function c22842214.desreptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return not c:IsReason(REASON_REPLACE) and Duel.IsExistingMatchingCard(c22842214.eqfilter,tp,LOCATION_SZONE,LOCATION_SZONE,1,nil,c) end if chk==0 then return not c:IsReason(REASON_REPLACE) and Duel.IsExistingMatchingCard(c22842214.repfilter,tp,LOCATION_SZONE,LOCATION_SZONE,1,nil,e,c) end
if Duel.SelectEffectYesNo(tp,c,96) then if Duel.SelectEffectYesNo(tp,c,96) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local tc=Duel.SelectMatchingCard(tp,c22842214.eqfilter,tp,LOCATION_SZONE,LOCATION_SZONE,1,1,nil,c):GetFirst() local tc=Duel.SelectMatchingCard(tp,c22842214.repfilter,tp,LOCATION_SZONE,LOCATION_SZONE,1,1,nil,e,c):GetFirst()
e:SetLabelObject(tc) e:SetLabelObject(tc)
tc:SetStatus(STATUS_DESTROY_CONFIRMED,true) tc:SetStatus(STATUS_DESTROY_CONFIRMED,true)
return true return true
......
...@@ -17,20 +17,19 @@ function c22862454.repfilter(c,tp) ...@@ -17,20 +17,19 @@ function c22862454.repfilter(c,tp)
return c:IsControler(tp) and c:IsLocation(LOCATION_ONFIELD) return c:IsControler(tp) and c:IsLocation(LOCATION_ONFIELD)
and c:IsReason(REASON_BATTLE+REASON_EFFECT) and not c:IsReason(REASON_REPLACE) and c:IsReason(REASON_BATTLE+REASON_EFFECT) and not c:IsReason(REASON_REPLACE)
end end
function c22862454.desfilter(c,tp) function c22862454.desfilter(c,e,tp)
return c:IsControler(tp) and c:IsType(TYPE_MONSTER) return c:IsControler(tp) and c:IsType(TYPE_MONSTER)
and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED) and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED)
end end
function c22862454.desreptg(e,tp,eg,ep,ev,re,r,rp,chk) function c22862454.desreptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
local g=c:GetLinkedGroup() local g=c:GetLinkedGroup()
if chk==0 then return eg:IsExists(c22862454.repfilter,1,nil,tp) if chk==0 then return eg:IsExists(c22862454.repfilter,1,nil,tp)
and g:IsExists(c22862454.desfilter,1,nil,tp) end and g:IsExists(c22862454.desfilter,1,nil,e,tp) end
if Duel.SelectEffectYesNo(tp,c,96) then if Duel.SelectEffectYesNo(tp,c,96) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local sg=g:FilterSelect(tp,c22862454.desfilter,1,1,nil,tp) local sg=g:FilterSelect(tp,c22862454.desfilter,1,1,nil,e,tp)
e:SetLabelObject(sg:GetFirst()) e:SetLabelObject(sg:GetFirst())
Duel.HintSelection(sg)
sg:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true) sg:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true)
return true return true
else return false end else return false end
...@@ -39,6 +38,7 @@ function c22862454.desrepval(e,c) ...@@ -39,6 +38,7 @@ function c22862454.desrepval(e,c)
return c22862454.repfilter(c,e:GetHandlerPlayer()) return c22862454.repfilter(c,e:GetHandlerPlayer())
end end
function c22862454.desrepop(e,tp,eg,ep,ev,re,r,rp) function c22862454.desrepop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_CARD,1-tp,22862454)
local tc=e:GetLabelObject() local tc=e:GetLabelObject()
tc:SetStatus(STATUS_DESTROY_CONFIRMED,false) tc:SetStatus(STATUS_DESTROY_CONFIRMED,false)
Duel.Destroy(tc,REASON_EFFECT+REASON_REPLACE) Duel.Destroy(tc,REASON_EFFECT+REASON_REPLACE)
......
...@@ -55,10 +55,11 @@ function c25231813.indval(e,re,r,rp) ...@@ -55,10 +55,11 @@ function c25231813.indval(e,re,r,rp)
return bit.band(r,REASON_BATTLE)~=0 return bit.band(r,REASON_BATTLE)~=0
end end
function c25231813.reptg2(e,tp,eg,ep,ev,re,r,rp,chk) function c25231813.reptg2(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():GetEquipTarget():IsReason(REASON_EFFECT) local c=e:GetHandler()
and not e:GetHandler():IsStatus(STATUS_DESTROY_CONFIRMED) end if chk==0 then return c:GetEquipTarget():IsReason(REASON_EFFECT)
if Duel.SelectEffectYesNo(tp,e:GetHandler(),96) then and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED) end
e:GetHandler():SetStatus(STATUS_DESTROY_CONFIRMED,true) if Duel.SelectEffectYesNo(tp,c,96) then
c:SetStatus(STATUS_DESTROY_CONFIRMED,true)
return true return true
else return false end else return false end
end end
......
...@@ -68,16 +68,17 @@ end ...@@ -68,16 +68,17 @@ end
function c25494711.actcon(e) function c25494711.actcon(e)
return Duel.GetAttacker()==e:GetHandler() or Duel.GetAttackTarget()==e:GetHandler() return Duel.GetAttacker()==e:GetHandler() or Duel.GetAttackTarget()==e:GetHandler()
end end
function c25494711.repfilter(c) function c25494711.repfilter(c,e)
return c:IsFaceup() and c:IsSetCard(0xab) and not c:IsStatus(STATUS_DESTROY_CONFIRMED) return c:IsFaceup() and c:IsSetCard(0xab)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED)
end end
function c25494711.reptg(e,tp,eg,ep,ev,re,r,rp,chk) function c25494711.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup() if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup()
and Duel.IsExistingMatchingCard(c25494711.repfilter,tp,LOCATION_ONFIELD,0,1,c) end and Duel.IsExistingMatchingCard(c25494711.repfilter,tp,LOCATION_ONFIELD,0,1,c,e) end
if Duel.SelectEffectYesNo(tp,c,96) then if Duel.SelectEffectYesNo(tp,c,96) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local g=Duel.SelectMatchingCard(tp,c25494711.repfilter,tp,LOCATION_ONFIELD,0,1,1,c) local g=Duel.SelectMatchingCard(tp,c25494711.repfilter,tp,LOCATION_ONFIELD,0,1,1,c,e)
Duel.SetTargetCard(g) Duel.SetTargetCard(g)
g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true) g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true)
return true return true
......
...@@ -38,18 +38,18 @@ function c27782503.desop(e,tp,eg,ep,ev,re,r,rp) ...@@ -38,18 +38,18 @@ function c27782503.desop(e,tp,eg,ep,ev,re,r,rp)
Duel.Destroy(d,REASON_EFFECT) Duel.Destroy(d,REASON_EFFECT)
end end
end end
function c27782503.repfilter(c) function c27782503.repfilter(c,e)
return c:IsFaceup() and c:IsSetCard(0x3d) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED) return c:IsFaceup() and c:IsSetCard(0x3d)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED)
end end
function c27782503.desreptg(e,tp,eg,ep,ev,re,r,rp,chk) function c27782503.desreptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup() if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup()
and Duel.IsExistingMatchingCard(c27782503.repfilter,tp,LOCATION_MZONE,0,1,c) end and Duel.IsExistingMatchingCard(c27782503.repfilter,tp,LOCATION_MZONE,0,1,c,e) end
if Duel.SelectEffectYesNo(tp,c,96) then if Duel.SelectEffectYesNo(tp,c,96) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local g=Duel.SelectMatchingCard(tp,c27782503.repfilter,tp,LOCATION_MZONE,0,1,1,c) local g=Duel.SelectMatchingCard(tp,c27782503.repfilter,tp,LOCATION_MZONE,0,1,1,c,e)
e:SetLabelObject(g:GetFirst()) e:SetLabelObject(g:GetFirst())
Duel.HintSelection(g)
g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true) g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true)
return true return true
else return false end else return false end
......
...@@ -42,18 +42,18 @@ function c29981921.disop(e,tp,eg,ep,ev,re,r,rp) ...@@ -42,18 +42,18 @@ function c29981921.disop(e,tp,eg,ep,ev,re,r,rp)
Duel.Destroy(eg,REASON_EFFECT) Duel.Destroy(eg,REASON_EFFECT)
end end
end end
function c29981921.repfilter(c) function c29981921.repfilter(c,e)
return c:IsFaceup() and c:IsSetCard(0x3d) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED) return c:IsFaceup() and c:IsSetCard(0x3d)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED)
end end
function c29981921.desreptg(e,tp,eg,ep,ev,re,r,rp,chk) function c29981921.desreptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup() if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup()
and Duel.IsExistingMatchingCard(c29981921.repfilter,tp,LOCATION_MZONE,0,1,c) end and Duel.IsExistingMatchingCard(c29981921.repfilter,tp,LOCATION_MZONE,0,1,c,e) end
if Duel.SelectEffectYesNo(tp,c,96) then if Duel.SelectEffectYesNo(tp,c,96) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local g=Duel.SelectMatchingCard(tp,c29981921.repfilter,tp,LOCATION_MZONE,0,1,1,c) local g=Duel.SelectMatchingCard(tp,c29981921.repfilter,tp,LOCATION_MZONE,0,1,1,c,e)
e:SetLabelObject(g:GetFirst()) e:SetLabelObject(g:GetFirst())
Duel.HintSelection(g)
g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true) g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true)
return true return true
else return false end else return false end
......
...@@ -24,17 +24,17 @@ function c31904181.dircon(e) ...@@ -24,17 +24,17 @@ function c31904181.dircon(e)
return Duel.IsExistingMatchingCard(c31904181.cfilter,e:GetHandler():GetControler(),LOCATION_MZONE,0,1,nil) return Duel.IsExistingMatchingCard(c31904181.cfilter,e:GetHandler():GetControler(),LOCATION_MZONE,0,1,nil)
end end
function c31904181.repfilter(c) function c31904181.repfilter(c)
return c:IsFaceup() and c:IsSetCard(0x3d) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED) return c:IsFaceup() and c:IsSetCard(0x3d)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED)
end end
function c31904181.desreptg(e,tp,eg,ep,ev,re,r,rp,chk) function c31904181.desreptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup() if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup()
and Duel.IsExistingMatchingCard(c31904181.repfilter,tp,LOCATION_MZONE,0,1,c) end and Duel.IsExistingMatchingCard(c31904181.repfilter,tp,LOCATION_MZONE,0,1,c,e) end
if Duel.SelectEffectYesNo(tp,c,96) then if Duel.SelectEffectYesNo(tp,c,96) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local g=Duel.SelectMatchingCard(tp,c31904181.repfilter,tp,LOCATION_MZONE,0,1,1,c) local g=Duel.SelectMatchingCard(tp,c31904181.repfilter,tp,LOCATION_MZONE,0,1,1,c,e)
e:SetLabelObject(g:GetFirst()) e:SetLabelObject(g:GetFirst())
Duel.HintSelection(g)
g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true) g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true)
return true return true
else return false end else return false end
......
...@@ -25,8 +25,10 @@ function c34379489.filter(c,tp) ...@@ -25,8 +25,10 @@ function c34379489.filter(c,tp)
and c:IsReason(REASON_BATTLE+REASON_EFFECT) and not c:IsReason(REASON_REPLACE) and c:IsReason(REASON_BATTLE+REASON_EFFECT) and not c:IsReason(REASON_REPLACE)
end end
function c34379489.reptg(e,tp,eg,ep,ev,re,r,rp,chk) function c34379489.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return eg:IsExists(c34379489.filter,1,nil,tp) and not e:GetHandler():IsStatus(STATUS_DESTROY_CONFIRMED) end local c=e:GetHandler()
return Duel.SelectEffectYesNo(tp,e:GetHandler(),96) if chk==0 then return eg:IsExists(c34379489.filter,1,nil,tp)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED) end
return Duel.SelectEffectYesNo(tp,c,96)
end end
function c34379489.repval(e,c) function c34379489.repval(e,c)
return c34379489.filter(c,e:GetHandlerPlayer()) return c34379489.filter(c,e:GetHandlerPlayer())
......
...@@ -25,8 +25,10 @@ function c37752990.filter(c,tp) ...@@ -25,8 +25,10 @@ function c37752990.filter(c,tp)
and (c:IsReason(REASON_BATTLE) or (c:IsReason(REASON_EFFECT) and c:GetReasonPlayer()~=tp)) and (c:IsReason(REASON_BATTLE) or (c:IsReason(REASON_EFFECT) and c:GetReasonPlayer()~=tp))
end end
function c37752990.reptg(e,tp,eg,ep,ev,re,r,rp,chk) function c37752990.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return eg:IsExists(c37752990.filter,1,e:GetHandler(),tp) and not e:GetHandler():IsStatus(STATUS_DESTROY_CONFIRMED) end local c=e:GetHandler()
return Duel.SelectEffectYesNo(tp,e:GetHandler(),96) if chk==0 then return eg:IsExists(c37752990.filter,1,c,tp)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED) end
return Duel.SelectEffectYesNo(tp,c,96)
end end
function c37752990.repval(e,c) function c37752990.repval(e,c)
return c37752990.filter(c,e:GetHandlerPlayer()) return c37752990.filter(c,e:GetHandlerPlayer())
......
...@@ -70,8 +70,8 @@ end ...@@ -70,8 +70,8 @@ end
function c4252828.desreptg(e,tp,eg,ep,ev,re,r,rp,chk) function c4252828.desreptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
local ec=e:GetLabelObject():GetLabelObject() local ec=e:GetLabelObject():GetLabelObject()
if chk==0 then return ec and ec:IsHasCardTarget(c) if chk==0 then return ec and ec:IsHasCardTarget(c) and ec:GetFlagEffect(4252828)~=0
and not ec:IsStatus(STATUS_DESTROY_CONFIRMED) and ec:GetFlagEffect(4252828)~=0 end and ec:IsDestructable(e) and not ec:IsStatus(STATUS_DESTROY_CONFIRMED) end
return Duel.SelectEffectYesNo(tp,c,96) return Duel.SelectEffectYesNo(tp,c,96)
end end
function c4252828.desrepop(e,tp,eg,ep,ev,re,r,rp) function c4252828.desrepop(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -25,23 +25,24 @@ function c45778242.atkcon(e) ...@@ -25,23 +25,24 @@ function c45778242.atkcon(e)
local tp=e:GetHandlerPlayer() local tp=e:GetHandlerPlayer()
return Duel.GetTurnPlayer()==tp and e:GetHandler():IsSummonType(SUMMON_TYPE_NORMAL) return Duel.GetTurnPlayer()==tp and e:GetHandler():IsSummonType(SUMMON_TYPE_NORMAL)
end end
function c45778242.repfilter(c) function c45778242.repfilter(c,e)
return (c:IsFaceup() or c:IsLocation(LOCATION_HAND)) and c:IsRace(RACE_CYBERS) and not c:IsStatus(STATUS_DESTROY_CONFIRMED) return (c:IsFaceup() or c:IsLocation(LOCATION_HAND)) and c:IsRace(RACE_CYBERS)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED)
end end
function c45778242.reptg(e,tp,eg,ep,ev,re,r,rp,chk) function c45778242.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsLocation(LOCATION_MZONE) and c:IsFaceup() if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsLocation(LOCATION_MZONE) and c:IsFaceup()
and Duel.IsExistingMatchingCard(c45778242.repfilter,tp,LOCATION_MZONE+LOCATION_HAND,0,1,c) end and Duel.IsExistingMatchingCard(c45778242.repfilter,tp,LOCATION_MZONE+LOCATION_HAND,0,1,c,e) end
if Duel.SelectEffectYesNo(tp,c,96) then if Duel.SelectEffectYesNo(tp,c,96) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local g=Duel.SelectMatchingCard(tp,c45778242.repfilter,tp,LOCATION_MZONE+LOCATION_HAND,0,1,1,c) local g=Duel.SelectMatchingCard(tp,c45778242.repfilter,tp,LOCATION_MZONE+LOCATION_HAND,0,1,1,c,e)
Duel.SetTargetCard(g) e:SetLabelObject(g:GetFirst())
g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true) g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true)
return true return true
else return false end else return false end
end end
function c45778242.repop(e,tp,eg,ep,ev,re,r,rp) function c45778242.repop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS) local tc=e:GetLabelObject()
g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,false) tc:SetStatus(STATUS_DESTROY_CONFIRMED,false)
Duel.Destroy(g,REASON_EFFECT+REASON_REPLACE) Duel.Destroy(tc,REASON_EFFECT+REASON_REPLACE)
end end
...@@ -69,6 +69,7 @@ function c47349116.reptg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -69,6 +69,7 @@ function c47349116.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
if Duel.SelectEffectYesNo(tp,e:GetHandler(),96) then if Duel.SelectEffectYesNo(tp,e:GetHandler(),96) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local sg=Duel.SelectMatchingCard(tp,c47349116.tgfilter,tp,LOCATION_DECK,0,1,1,nil) local sg=Duel.SelectMatchingCard(tp,c47349116.tgfilter,tp,LOCATION_DECK,0,1,1,nil)
Duel.Hint(HINT_CARD,0,47349116)
Duel.SendtoGrave(sg,REASON_EFFECT) Duel.SendtoGrave(sg,REASON_EFFECT)
return true return true
else return false end else return false end
......
...@@ -26,8 +26,10 @@ function c5067884.repfilter(c,tp) ...@@ -26,8 +26,10 @@ function c5067884.repfilter(c,tp)
and (c:IsReason(REASON_BATTLE) or (c:IsReason(REASON_EFFECT) and c:GetReasonPlayer()~=tp)) and (c:IsReason(REASON_BATTLE) or (c:IsReason(REASON_EFFECT) and c:GetReasonPlayer()~=tp))
end end
function c5067884.reptg(e,tp,eg,ep,ev,re,r,rp,chk) function c5067884.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return eg:IsExists(c5067884.repfilter,1,e:GetHandler(),tp) and not e:GetHandler():IsStatus(STATUS_DESTROY_CONFIRMED) end local c=e:GetHandler()
return Duel.SelectEffectYesNo(tp,e:GetHandler(),96) if chk==0 then return eg:IsExists(c5067884.repfilter,1,c,tp)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED) end
return Duel.SelectEffectYesNo(tp,c,96)
end end
function c5067884.repval(e,c) function c5067884.repval(e,c)
return c5067884.repfilter(c,e:GetHandlerPlayer()) return c5067884.repfilter(c,e:GetHandlerPlayer())
......
...@@ -47,8 +47,10 @@ function c51028231.filter(c,tp) ...@@ -47,8 +47,10 @@ function c51028231.filter(c,tp)
and c:IsSetCard(0x10ec) and not c:IsReason(REASON_REPLACE) and c:IsSetCard(0x10ec) and not c:IsReason(REASON_REPLACE)
end end
function c51028231.reptg(e,tp,eg,ep,ev,re,r,rp,chk) function c51028231.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return eg:IsExists(c51028231.filter,1,nil,tp) and not e:GetHandler():IsStatus(STATUS_DESTROY_CONFIRMED) end local c=e:GetHandler()
return Duel.SelectEffectYesNo(tp,e:GetHandler(),96) if chk==0 then return eg:IsExists(c51028231.filter,1,nil,tp)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED) end
return Duel.SelectEffectYesNo(tp,c,96)
end end
function c51028231.repval(e,c) function c51028231.repval(e,c)
return c51028231.filter(c,e:GetHandlerPlayer()) return c51028231.filter(c,e:GetHandlerPlayer())
......
...@@ -26,18 +26,17 @@ function c59496924.repfilter(c,tp) ...@@ -26,18 +26,17 @@ function c59496924.repfilter(c,tp)
return c:IsFaceup() and c:IsControler(tp) and c:IsLocation(LOCATION_ONFIELD) and c:IsSetCard(0xd2) return c:IsFaceup() and c:IsControler(tp) and c:IsLocation(LOCATION_ONFIELD) and c:IsSetCard(0xd2)
and (c:IsReason(REASON_BATTLE) or (c:IsReason(REASON_EFFECT) and c:GetReasonPlayer()~=tp)) and not c:IsReason(REASON_REPLACE) and (c:IsReason(REASON_BATTLE) or (c:IsReason(REASON_EFFECT) and c:GetReasonPlayer()~=tp)) and not c:IsReason(REASON_REPLACE)
end end
function c59496924.desfilter(c,tp) function c59496924.desfilter(c,e,tp)
return c:IsFaceup() and c:IsControler(tp) and c:IsLocation(LOCATION_ONFIELD) and c:IsSetCard(0xd2) return c:IsFaceup() and c:IsControler(tp) and c:IsLocation(LOCATION_ONFIELD) and c:IsSetCard(0xd2)
and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED) and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED)
end end
function c59496924.reptg(e,tp,eg,ep,ev,re,r,rp,chk) function c59496924.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return eg:IsExists(c59496924.repfilter,1,nil,tp) if chk==0 then return eg:IsExists(c59496924.repfilter,1,nil,tp)
and Duel.IsExistingMatchingCard(c59496924.desfilter,tp,LOCATION_ONFIELD,0,1,nil,tp) end and Duel.IsExistingMatchingCard(c59496924.desfilter,tp,LOCATION_ONFIELD,0,1,nil,e,tp) end
if Duel.SelectEffectYesNo(tp,e:GetHandler(),96) then if Duel.SelectEffectYesNo(tp,e:GetHandler(),96) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local g=Duel.SelectMatchingCard(tp,c59496924.desfilter,tp,LOCATION_ONFIELD,0,1,1,nil,tp) local g=Duel.SelectMatchingCard(tp,c59496924.desfilter,tp,LOCATION_ONFIELD,0,1,1,nil,e,tp)
e:SetLabelObject(g:GetFirst()) e:SetLabelObject(g:GetFirst())
Duel.HintSelection(g)
g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true) g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true)
return true return true
end end
...@@ -47,6 +46,7 @@ function c59496924.repval(e,c) ...@@ -47,6 +46,7 @@ function c59496924.repval(e,c)
return c59496924.repfilter(c,e:GetHandlerPlayer()) return c59496924.repfilter(c,e:GetHandlerPlayer())
end end
function c59496924.repop(e,tp,eg,ep,ev,re,r,rp) function c59496924.repop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_CARD,1-tp,59496924)
local tc=e:GetLabelObject() local tc=e:GetLabelObject()
tc:SetStatus(STATUS_DESTROY_CONFIRMED,false) tc:SetStatus(STATUS_DESTROY_CONFIRMED,false)
Duel.Destroy(tc,REASON_EFFECT+REASON_REPLACE) Duel.Destroy(tc,REASON_EFFECT+REASON_REPLACE)
......
...@@ -49,9 +49,9 @@ end ...@@ -49,9 +49,9 @@ end
function c6178850.destg(e,tp,eg,ep,ev,re,r,rp,chk) function c6178850.destg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
local tg=c:GetEquipTarget() local tg=c:GetEquipTarget()
if chk==0 then return c and not c:IsStatus(STATUS_DESTROY_CONFIRMED) if chk==0 then return c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED)
and tg and tg:IsReason(REASON_BATTLE) end and tg and tg:IsReason(REASON_BATTLE) end
return Duel.SelectEffectYesNo(tp,e:GetHandler(),96) return Duel.SelectEffectYesNo(tp,c,96)
end end
function c6178850.desop(e,tp,eg,ep,ev,re,r,rp) function c6178850.desop(e,tp,eg,ep,ev,re,r,rp)
Duel.Destroy(e:GetHandler(),REASON_EFFECT+REASON_REPLACE) Duel.Destroy(e:GetHandler(),REASON_EFFECT+REASON_REPLACE)
......
...@@ -49,18 +49,18 @@ function c63176202.spcon(e,c) ...@@ -49,18 +49,18 @@ function c63176202.spcon(e,c)
return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(c63176202.spfilter,tp,LOCATION_MZONE,0,2,nil) and Duel.IsExistingMatchingCard(c63176202.spfilter,tp,LOCATION_MZONE,0,2,nil)
end end
function c63176202.repfilter(c) function c63176202.repfilter(c,e)
return c:IsFaceup() and c:IsSetCard(0x3d) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED) return c:IsFaceup() and c:IsSetCard(0x3d)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED)
end end
function c63176202.desreptg(e,tp,eg,ep,ev,re,r,rp,chk) function c63176202.desreptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup() if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup()
and Duel.IsExistingMatchingCard(c63176202.repfilter,tp,LOCATION_MZONE,0,1,c) end and Duel.IsExistingMatchingCard(c63176202.repfilter,tp,LOCATION_MZONE,0,1,c,e) end
if Duel.SelectEffectYesNo(tp,c,96) then if Duel.SelectEffectYesNo(tp,c,96) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local g=Duel.SelectMatchingCard(tp,c63176202.repfilter,tp,LOCATION_MZONE,0,1,1,c) local g=Duel.SelectMatchingCard(tp,c63176202.repfilter,tp,LOCATION_MZONE,0,1,1,c,e)
e:SetLabelObject(g:GetFirst()) e:SetLabelObject(g:GetFirst())
Duel.HintSelection(g)
g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true) g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true)
return true return true
else return false end else return false end
......
...@@ -84,7 +84,7 @@ function c63465535.desreptg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -84,7 +84,7 @@ function c63465535.desreptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
local ec=e:GetLabelObject():GetLabelObject() local ec=e:GetLabelObject():GetLabelObject()
if chk==0 then return c:IsReason(REASON_BATTLE) and ec and ec:IsHasCardTarget(c) if chk==0 then return c:IsReason(REASON_BATTLE) and ec and ec:IsHasCardTarget(c)
and not ec:IsStatus(STATUS_DESTROY_CONFIRMED) and ec:GetFlagEffect(63465535)~=0 end and ec:IsDestructable(e) and not ec:IsStatus(STATUS_DESTROY_CONFIRMED) and ec:GetFlagEffect(63465535)~=0 end
return Duel.SelectEffectYesNo(tp,c,96) return Duel.SelectEffectYesNo(tp,c,96)
end end
function c63465535.desrepop(e,tp,eg,ep,ev,re,r,rp) function c63465535.desrepop(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -55,18 +55,18 @@ function c64398890.desop(e,tp,eg,ep,ev,re,r,rp) ...@@ -55,18 +55,18 @@ function c64398890.desop(e,tp,eg,ep,ev,re,r,rp)
Duel.Destroy(tc,REASON_EFFECT) Duel.Destroy(tc,REASON_EFFECT)
end end
end end
function c64398890.repfilter(c) function c64398890.repfilter(c,e)
return c:IsFaceup() and c:IsSetCard(0x3d) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED) return c:IsFaceup() and c:IsSetCard(0x3d)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED)
end end
function c64398890.desreptg(e,tp,eg,ep,ev,re,r,rp,chk) function c64398890.desreptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup() if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup()
and Duel.IsExistingMatchingCard(c64398890.repfilter,tp,LOCATION_MZONE,0,1,c) end and Duel.IsExistingMatchingCard(c64398890.repfilter,tp,LOCATION_MZONE,0,1,c,e) end
if Duel.SelectEffectYesNo(tp,c,96) then if Duel.SelectEffectYesNo(tp,c,96) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local g=Duel.SelectMatchingCard(tp,c64398890.repfilter,tp,LOCATION_MZONE,0,1,1,c) local g=Duel.SelectMatchingCard(tp,c64398890.repfilter,tp,LOCATION_MZONE,0,1,1,c,e)
e:SetLabelObject(g:GetFirst()) e:SetLabelObject(g:GetFirst())
Duel.HintSelection(g)
g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true) g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true)
return true return true
else return false end else return false end
......
...@@ -27,8 +27,10 @@ function c64973287.repfilter(c,tp) ...@@ -27,8 +27,10 @@ function c64973287.repfilter(c,tp)
and (c:IsReason(REASON_BATTLE) or (c:IsReason(REASON_EFFECT) and c:GetReasonPlayer()~=tp)) and (c:IsReason(REASON_BATTLE) or (c:IsReason(REASON_EFFECT) and c:GetReasonPlayer()~=tp))
end end
function c64973287.reptg(e,tp,eg,ep,ev,re,r,rp,chk) function c64973287.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return eg:IsExists(c64973287.repfilter,1,e:GetHandler(),tp) and not e:GetHandler():IsStatus(STATUS_DESTROY_CONFIRMED) end local c=e:GetHandler()
return Duel.SelectEffectYesNo(tp,e:GetHandler(),96) if chk==0 then return eg:IsExists(c64973287.repfilter,1,c,tp)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED) end
return Duel.SelectEffectYesNo(tp,c,96)
end end
function c64973287.repval(e,c) function c64973287.repval(e,c)
return c64973287.repfilter(c,e:GetHandlerPlayer()) return c64973287.repfilter(c,e:GetHandlerPlayer())
......
...@@ -36,8 +36,10 @@ function c65025250.filter(c,tp) ...@@ -36,8 +36,10 @@ function c65025250.filter(c,tp)
and c:IsSetCard(0xb3) and not c:IsReason(REASON_REPLACE) and c:IsSetCard(0xb3) and not c:IsReason(REASON_REPLACE)
end end
function c65025250.reptg(e,tp,eg,ep,ev,re,r,rp,chk) function c65025250.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return eg:IsExists(c65025250.filter,1,nil,tp) and not e:GetHandler():IsStatus(STATUS_DESTROY_CONFIRMED) end local c=e:GetHandler()
return Duel.SelectEffectYesNo(tp,e:GetHandler(),96) if chk==0 then return eg:IsExists(c65025250.filter,1,nil,tp)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED) end
return Duel.SelectEffectYesNo(tp,c,96)
end end
function c65025250.repval(e,c) function c65025250.repval(e,c)
return c65025250.filter(c,e:GetHandlerPlayer()) return c65025250.filter(c,e:GetHandlerPlayer())
......
...@@ -42,19 +42,19 @@ end ...@@ -42,19 +42,19 @@ end
function c675319.atlimit(e,c) function c675319.atlimit(e,c)
return c:IsFaceup() and c:IsRace(RACE_BEASTWARRIOR) and Duel.IsExistingMatchingCard(c675319.atfilter,c:GetControler(),LOCATION_MZONE,0,1,nil,c:GetAttack()) return c:IsFaceup() and c:IsRace(RACE_BEASTWARRIOR) and Duel.IsExistingMatchingCard(c675319.atfilter,c:GetControler(),LOCATION_MZONE,0,1,nil,c:GetAttack())
end end
function c675319.repfilter(c,tp,e) function c675319.repfilter(c,tp)
return c:IsFaceup() and c:IsControler(tp) and c:IsLocation(LOCATION_MZONE) return c:IsFaceup() and c:IsControler(tp) and c:IsLocation(LOCATION_MZONE)
and c:IsSetCard(0xf1) and c:IsReason(REASON_EFFECT) and c:GetFlagEffect(675319)==0 and c:IsSetCard(0xf1) and c:IsReason(REASON_EFFECT) and c:GetFlagEffect(675319)==0
end end
function c675319.desfilter(c,tp) function c675319.desfilter(c,e,tp)
return c:IsControler(tp) and c:IsLocation(LOCATION_MZONE+LOCATION_HAND) and c:IsType(TYPE_MONSTER) return c:IsControler(tp) and c:IsLocation(LOCATION_MZONE+LOCATION_HAND) and c:IsType(TYPE_MONSTER)
and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED) and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED)
end end
function c675319.reptg(e,tp,eg,ep,ev,re,r,rp,chk) function c675319.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c675319.desfilter,tp,LOCATION_MZONE+LOCATION_HAND,0,1,nil,tp) if chk==0 then return Duel.IsExistingMatchingCard(c675319.desfilter,tp,LOCATION_MZONE+LOCATION_HAND,0,1,nil,e,tp)
and eg:IsExists(c675319.repfilter,1,nil,tp,e) end and eg:IsExists(c675319.repfilter,1,nil,tp) end
if Duel.SelectEffectYesNo(tp,e:GetHandler(),96) then if Duel.SelectEffectYesNo(tp,e:GetHandler(),96) then
local g=eg:Filter(c675319.repfilter,nil,tp,e) local g=eg:Filter(c675319.repfilter,nil,tp)
if g:GetCount()==1 then if g:GetCount()==1 then
e:SetLabelObject(g:GetFirst()) e:SetLabelObject(g:GetFirst())
else else
...@@ -63,8 +63,7 @@ function c675319.reptg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -63,8 +63,7 @@ function c675319.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
e:SetLabelObject(cg:GetFirst()) e:SetLabelObject(cg:GetFirst())
end end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local tg=Duel.SelectMatchingCard(tp,c675319.desfilter,tp,LOCATION_MZONE+LOCATION_HAND,0,1,1,nil,tp) local tg=Duel.SelectMatchingCard(tp,c675319.desfilter,tp,LOCATION_MZONE+LOCATION_HAND,0,1,1,nil,e,tp)
Duel.HintSelection(tg)
Duel.SetTargetCard(tg) Duel.SetTargetCard(tg)
tg:GetFirst():RegisterFlagEffect(675319,RESET_EVENT+0x1fc0000+RESET_CHAIN,0,1) tg:GetFirst():RegisterFlagEffect(675319,RESET_EVENT+0x1fc0000+RESET_CHAIN,0,1)
tg:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true) tg:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true)
...@@ -75,6 +74,7 @@ function c675319.repval(e,c) ...@@ -75,6 +74,7 @@ function c675319.repval(e,c)
return c==e:GetLabelObject() return c==e:GetLabelObject()
end end
function c675319.repop(e,tp,eg,ep,ev,re,r,rp) function c675319.repop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_CARD,1-tp,675319)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
tc:SetStatus(STATUS_DESTROY_CONFIRMED,false) tc:SetStatus(STATUS_DESTROY_CONFIRMED,false)
Duel.Destroy(tc,REASON_EFFECT+REASON_REPLACE) Duel.Destroy(tc,REASON_EFFECT+REASON_REPLACE)
......
...@@ -22,18 +22,18 @@ end ...@@ -22,18 +22,18 @@ end
function c69025477.dircon(e) function c69025477.dircon(e)
return Duel.IsExistingMatchingCard(c69025477.cfilter,e:GetHandler():GetControler(),LOCATION_MZONE,0,1,nil) return Duel.IsExistingMatchingCard(c69025477.cfilter,e:GetHandler():GetControler(),LOCATION_MZONE,0,1,nil)
end end
function c69025477.repfilter(c) function c69025477.repfilter(c,e)
return c:IsFaceup() and c:IsSetCard(0x3d) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED) return c:IsFaceup() and c:IsSetCard(0x3d)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED)
end end
function c69025477.desreptg(e,tp,eg,ep,ev,re,r,rp,chk) function c69025477.desreptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup() if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup()
and Duel.IsExistingMatchingCard(c69025477.repfilter,tp,LOCATION_MZONE,0,1,c) end and Duel.IsExistingMatchingCard(c69025477.repfilter,tp,LOCATION_MZONE,0,1,c,e) end
if Duel.SelectEffectYesNo(tp,e:GetHandler(),96) then if Duel.SelectEffectYesNo(tp,c,96) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local g=Duel.SelectMatchingCard(tp,c69025477.repfilter,tp,LOCATION_MZONE,0,1,1,c) local g=Duel.SelectMatchingCard(tp,c69025477.repfilter,tp,LOCATION_MZONE,0,1,1,c,e)
e:SetLabelObject(g:GetFirst()) e:SetLabelObject(g:GetFirst())
Duel.HintSelection(g)
g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true) g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true)
return true return true
else return false end else return false end
......
...@@ -45,23 +45,24 @@ function c75775867.desop(e,tp,eg,ep,ev,re,r,rp) ...@@ -45,23 +45,24 @@ function c75775867.desop(e,tp,eg,ep,ev,re,r,rp)
Duel.Destroy(tc,REASON_EFFECT) Duel.Destroy(tc,REASON_EFFECT)
end end
end end
function c75775867.repfilter(c) function c75775867.repfilter(c,e)
return c:IsFaceup() and c:IsSetCard(0x26) and not c:IsStatus(STATUS_DESTROY_CONFIRMED) return c:IsFaceup() and c:IsSetCard(0x26)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED)
end end
function c75775867.reptg(e,tp,eg,ep,ev,re,r,rp,chk) function c75775867.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup() and c:IsDefensePos() if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup() and c:IsDefensePos()
and Duel.IsExistingMatchingCard(c75775867.repfilter,tp,LOCATION_MZONE,0,1,c) end and Duel.IsExistingMatchingCard(c75775867.repfilter,tp,LOCATION_MZONE,0,1,c,e) end
if Duel.SelectEffectYesNo(tp,c,96) then if Duel.SelectEffectYesNo(tp,c,96) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local g=Duel.SelectMatchingCard(tp,c75775867.repfilter,tp,LOCATION_MZONE,0,1,1,c) local g=Duel.SelectMatchingCard(tp,c75775867.repfilter,tp,LOCATION_MZONE,0,1,1,c,e)
Duel.SetTargetCard(g) e:SetLabelObject(g:GetFirst())
g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true) g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true)
return true return true
else return false end else return false end
end end
function c75775867.repop(e,tp,eg,ep,ev,re,r,rp) function c75775867.repop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS) local tc=e:GetLabelObject()
g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,false) tc:SetStatus(STATUS_DESTROY_CONFIRMED,false)
Duel.Destroy(g,REASON_EFFECT+REASON_REPLACE) Duel.Destroy(tc,REASON_EFFECT+REASON_REPLACE)
end end
...@@ -25,26 +25,27 @@ function c78437364.atkval(e,c) ...@@ -25,26 +25,27 @@ function c78437364.atkval(e,c)
local val=math.max(c:GetBaseDefense(),0) local val=math.max(c:GetBaseDefense(),0)
return val*-1 return val*-1
end end
function c78437364.repfilter(c,tp) function c78437364.repfilter(c,e,tp)
return c:IsControler(tp) and c:IsLocation(LOCATION_MZONE) and not c:IsStatus(STATUS_DESTROY_CONFIRMED) return c:IsControler(tp) and c:IsLocation(LOCATION_MZONE)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED)
end end
function c78437364.desreptg(e,tp,eg,ep,ev,re,r,rp,chk) function c78437364.desreptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then if chk==0 then
local g=c:GetLinkedGroup() local g=c:GetLinkedGroup()
return not c:IsReason(REASON_REPLACE) and g:IsExists(c78437364.repfilter,1,nil,tp) return not c:IsReason(REASON_REPLACE) and g:IsExists(c78437364.repfilter,1,nil,e,tp)
end end
if Duel.SelectEffectYesNo(tp,e:GetHandler(),96) then if Duel.SelectEffectYesNo(tp,c,96) then
local g=c:GetLinkedGroup() local g=c:GetLinkedGroup()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local sg=g:FilterSelect(tp,c78437364.repfilter,1,1,nil,tp) local sg=g:FilterSelect(tp,c78437364.repfilter,1,1,nil,e,tp)
Duel.SetTargetCard(sg) e:SetLabelObject(sg:GetFirst())
sg:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true) sg:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true)
return true return true
else return false end else return false end
end end
function c78437364.desrepop(e,tp,eg,ep,ev,re,r,rp) function c78437364.desrepop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS) local tc=e:GetLabelObject()
g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,false) tc:SetStatus(STATUS_DESTROY_CONFIRMED,false)
Duel.Destroy(g,REASON_EFFECT+REASON_REPLACE) Duel.Destroy(tc,REASON_EFFECT+REASON_REPLACE)
end end
...@@ -43,19 +43,19 @@ function c80476891.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -43,19 +43,19 @@ function c80476891.operation(e,tp,eg,ep,ev,re,r,rp)
tc:RegisterEffect(e2) tc:RegisterEffect(e2)
end end
end end
function c80476891.repfilter(c,tp,e) function c80476891.repfilter(c,tp)
return c:IsFaceup() and c:IsControler(tp) and c:IsLocation(LOCATION_MZONE) return c:IsFaceup() and c:IsControler(tp) and c:IsLocation(LOCATION_MZONE)
and c:IsType(TYPE_DUAL) and c:IsReason(REASON_EFFECT) and c:GetFlagEffect(80476891)==0 and c:IsType(TYPE_DUAL) and c:IsReason(REASON_EFFECT) and c:GetFlagEffect(80476891)==0
end end
function c80476891.desfilter(c,tp) function c80476891.desfilter(c,e,tp)
return c:IsControler(tp) and c:IsLocation(LOCATION_ONFIELD) return c:IsControler(tp) and c:IsLocation(LOCATION_ONFIELD)
and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED) and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED)
end end
function c80476891.reptg(e,tp,eg,ep,ev,re,r,rp,chk) function c80476891.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c80476891.desfilter,tp,LOCATION_ONFIELD,0,1,nil,tp) if chk==0 then return Duel.IsExistingMatchingCard(c80476891.desfilter,tp,LOCATION_ONFIELD,0,1,nil,e,tp)
and eg:IsExists(c80476891.repfilter,1,nil,tp,e) end and eg:IsExists(c80476891.repfilter,1,nil,tp) end
if Duel.SelectEffectYesNo(tp,e:GetHandler(),96) then if Duel.SelectEffectYesNo(tp,e:GetHandler(),96) then
local g=eg:Filter(c80476891.repfilter,nil,tp,e) local g=eg:Filter(c80476891.repfilter,nil,tp)
if g:GetCount()==1 then if g:GetCount()==1 then
e:SetLabelObject(g:GetFirst()) e:SetLabelObject(g:GetFirst())
else else
...@@ -64,8 +64,7 @@ function c80476891.reptg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -64,8 +64,7 @@ function c80476891.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
e:SetLabelObject(cg:GetFirst()) e:SetLabelObject(cg:GetFirst())
end end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local tg=Duel.SelectMatchingCard(tp,c80476891.desfilter,tp,LOCATION_ONFIELD,0,1,1,nil,tp) local tg=Duel.SelectMatchingCard(tp,c80476891.desfilter,tp,LOCATION_ONFIELD,0,1,1,nil,e,tp)
Duel.HintSelection(tg)
Duel.SetTargetCard(tg) Duel.SetTargetCard(tg)
tg:GetFirst():RegisterFlagEffect(80476891,RESET_EVENT+0x1fc0000+RESET_CHAIN,0,1) tg:GetFirst():RegisterFlagEffect(80476891,RESET_EVENT+0x1fc0000+RESET_CHAIN,0,1)
tg:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true) tg:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true)
...@@ -76,6 +75,7 @@ function c80476891.repval(e,c) ...@@ -76,6 +75,7 @@ function c80476891.repval(e,c)
return c==e:GetLabelObject() return c==e:GetLabelObject()
end end
function c80476891.repop(e,tp,eg,ep,ev,re,r,rp) function c80476891.repop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_CARD,1-tp,80476891)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
tc:SetStatus(STATUS_DESTROY_CONFIRMED,false) tc:SetStatus(STATUS_DESTROY_CONFIRMED,false)
Duel.Destroy(tc,REASON_EFFECT+REASON_REPLACE) Duel.Destroy(tc,REASON_EFFECT+REASON_REPLACE)
......
...@@ -70,18 +70,17 @@ function c83347294.repfilter(c,tp) ...@@ -70,18 +70,17 @@ function c83347294.repfilter(c,tp)
return c:IsFaceup() and c:IsControler(tp) and c:IsLocation(LOCATION_ONFIELD) and c:IsSetCard(0x99) return c:IsFaceup() and c:IsControler(tp) and c:IsLocation(LOCATION_ONFIELD) and c:IsSetCard(0x99)
and (c:IsReason(REASON_BATTLE) or c:IsReason(REASON_EFFECT)) and not c:IsReason(REASON_REPLACE) and (c:IsReason(REASON_BATTLE) or c:IsReason(REASON_EFFECT)) and not c:IsReason(REASON_REPLACE)
end end
function c83347294.desfilter(c,tp) function c83347294.desfilter(c,e,tp)
return c:IsControler(tp) and c:IsLocation(LOCATION_HAND+LOCATION_MZONE+LOCATION_PZONE) and c:IsSetCard(0x99) return c:IsControler(tp) and c:IsLocation(LOCATION_HAND+LOCATION_MZONE+LOCATION_PZONE) and c:IsSetCard(0x99)
and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED) and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED)
end end
function c83347294.reptg(e,tp,eg,ep,ev,re,r,rp,chk) function c83347294.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return eg:IsExists(c83347294.repfilter,1,nil,tp) if chk==0 then return eg:IsExists(c83347294.repfilter,1,nil,tp)
and Duel.IsExistingMatchingCard(c83347294.desfilter,tp,LOCATION_HAND+LOCATION_MZONE+LOCATION_PZONE,0,1,nil,tp) end and Duel.IsExistingMatchingCard(c83347294.desfilter,tp,LOCATION_HAND+LOCATION_MZONE+LOCATION_PZONE,0,1,nil,e,tp) end
if Duel.SelectEffectYesNo(tp,e:GetHandler(),96) then if Duel.SelectEffectYesNo(tp,e:GetHandler(),96) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local g=Duel.SelectMatchingCard(tp,c83347294.desfilter,tp,LOCATION_HAND+LOCATION_MZONE+LOCATION_PZONE,0,1,1,nil,tp) local g=Duel.SelectMatchingCard(tp,c83347294.desfilter,tp,LOCATION_HAND+LOCATION_MZONE+LOCATION_PZONE,0,1,1,nil,e,tp)
e:SetLabelObject(g:GetFirst()) e:SetLabelObject(g:GetFirst())
Duel.HintSelection(g)
g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true) g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true)
return true return true
end end
......
...@@ -8,23 +8,24 @@ function c89333528.initial_effect(c) ...@@ -8,23 +8,24 @@ function c89333528.initial_effect(c)
e2:SetOperation(c89333528.desrepop) e2:SetOperation(c89333528.desrepop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c89333528.repfilter(c) function c89333528.repfilter(c,e)
return c:IsFaceup() and c:IsCode(68505803) and not c:IsStatus(STATUS_DESTROY_CONFIRMED) return c:IsFaceup() and c:IsCode(68505803)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED)
end end
function c89333528.desreptg(e,tp,eg,ep,ev,re,r,rp,chk) function c89333528.desreptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup() if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup()
and Duel.IsExistingMatchingCard(c89333528.repfilter,tp,LOCATION_MZONE,0,1,c) end and Duel.IsExistingMatchingCard(c89333528.repfilter,tp,LOCATION_MZONE,0,1,c,e) end
if Duel.SelectEffectYesNo(tp,c,96) then if Duel.SelectEffectYesNo(tp,c,96) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local g=Duel.SelectMatchingCard(tp,c89333528.repfilter,tp,LOCATION_MZONE,0,1,1,c) local g=Duel.SelectMatchingCard(tp,c89333528.repfilter,tp,LOCATION_MZONE,0,1,1,c,e)
Duel.SetTargetCard(g) e:SetLabelObject(g:GetFirst())
g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true) g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true)
return true return true
else return false end else return false end
end end
function c89333528.desrepop(e,tp,eg,ep,ev,re,r,rp) function c89333528.desrepop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS) local tc=e:GetLabelObject()
g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,false) tc:SetStatus(STATUS_DESTROY_CONFIRMED,false)
Duel.Destroy(g,REASON_EFFECT+REASON_REPLACE) Duel.Destroy(tc,REASON_EFFECT+REASON_REPLACE)
end end
...@@ -55,18 +55,18 @@ function c90397998.desop(e,tp,eg,ep,ev,re,r,rp) ...@@ -55,18 +55,18 @@ function c90397998.desop(e,tp,eg,ep,ev,re,r,rp)
Duel.Destroy(tc,REASON_EFFECT) Duel.Destroy(tc,REASON_EFFECT)
end end
end end
function c90397998.repfilter(c) function c90397998.repfilter(c,e)
return c:IsFaceup() and c:IsSetCard(0x3d) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED) return c:IsFaceup() and c:IsSetCard(0x3d)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED)
end end
function c90397998.desreptg(e,tp,eg,ep,ev,re,r,rp,chk) function c90397998.desreptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup() if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup()
and Duel.IsExistingMatchingCard(c90397998.repfilter,tp,LOCATION_MZONE,0,1,c) end and Duel.IsExistingMatchingCard(c90397998.repfilter,tp,LOCATION_MZONE,0,1,c,e) end
if Duel.SelectEffectYesNo(tp,c,96) then if Duel.SelectEffectYesNo(tp,c,96) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local g=Duel.SelectMatchingCard(tp,c90397998.repfilter,tp,LOCATION_MZONE,0,1,1,c) local g=Duel.SelectMatchingCard(tp,c90397998.repfilter,tp,LOCATION_MZONE,0,1,1,c,e)
e:SetLabelObject(g:GetFirst()) e:SetLabelObject(g:GetFirst())
Duel.HintSelection(g)
g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true) g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true)
return true return true
else return false end else return false end
......
...@@ -66,7 +66,7 @@ end ...@@ -66,7 +66,7 @@ end
function c95395761.reptg(e,tp,eg,ep,ev,re,r,rp,chk) function c95395761.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
local tc=c:GetEquipTarget() local tc=c:GetEquipTarget()
if chk==0 then return not c:IsStatus(STATUS_DESTROY_CONFIRMED) end if chk==0 then return c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED) end
return Duel.SelectEffectYesNo(tp,c,96) return Duel.SelectEffectYesNo(tp,c,96)
end end
function c95395761.repop(e,tp,eg,ep,ev,re,r,rp) function c95395761.repop(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -37,18 +37,18 @@ function c95519486.desop(e,tp,eg,ep,ev,re,r,rp) ...@@ -37,18 +37,18 @@ function c95519486.desop(e,tp,eg,ep,ev,re,r,rp)
Duel.Destroy(d,REASON_EFFECT) Duel.Destroy(d,REASON_EFFECT)
end end
end end
function c95519486.repfilter(c) function c95519486.repfilter(c,e)
return c:IsFaceup() and c:IsSetCard(0x3d) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED) return c:IsFaceup() and c:IsSetCard(0x3d)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED)
end end
function c95519486.desreptg(e,tp,eg,ep,ev,re,r,rp,chk) function c95519486.desreptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup() if chk==0 then return not c:IsReason(REASON_REPLACE) and c:IsOnField() and c:IsFaceup()
and Duel.IsExistingMatchingCard(c95519486.repfilter,tp,LOCATION_MZONE,0,1,c) end and Duel.IsExistingMatchingCard(c95519486.repfilter,tp,LOCATION_MZONE,0,1,c,e) end
if Duel.SelectEffectYesNo(tp,c,96) then if Duel.SelectEffectYesNo(tp,c,96) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESREPLACE)
local g=Duel.SelectMatchingCard(tp,c95519486.repfilter,tp,LOCATION_MZONE,0,1,1,c) local g=Duel.SelectMatchingCard(tp,c95519486.repfilter,tp,LOCATION_MZONE,0,1,1,c,e)
e:SetLabelObject(g:GetFirst()) e:SetLabelObject(g:GetFirst())
Duel.HintSelection(g)
g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true) g:GetFirst():SetStatus(STATUS_DESTROY_CONFIRMED,true)
return true return true
else return false end else return false end
......
...@@ -91,7 +91,8 @@ function c97617181.desreptg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -91,7 +91,8 @@ function c97617181.desreptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
local ec=c:GetEquipTarget() local ec=c:GetEquipTarget()
local ph=Duel.GetCurrentPhase() local ph=Duel.GetCurrentPhase()
if chk==0 then return (ph>PHASE_MAIN1 and ph<PHASE_MAIN2) and not c:IsStatus(STATUS_DESTROY_CONFIRMED) end if chk==0 then return (ph>PHASE_MAIN1 and ph<PHASE_MAIN2)
and c:IsDestructable(e) and not c:IsStatus(STATUS_DESTROY_CONFIRMED) end
return Duel.SelectEffectYesNo(tp,c,96) return Duel.SelectEffectYesNo(tp,c,96)
end end
function c97617181.desrepop(e,tp,eg,ep,ev,re,r,rp) function c97617181.desrepop(e,tp,eg,ep,ev,re,r,rp)
......
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