Commit b2d5ced1 authored by VanillaSalt's avatar VanillaSalt

position change

parent db119265
......@@ -27,11 +27,14 @@ function c11613567.ntcon(e,c,minc)
return minc==0 and c:GetLevel()>4 and Duel.GetLocationCount(c:GetControler(),LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(c11613567.ntfilter,c:GetControler(),LOCATION_MZONE,0,1,nil)
end
function c11613567.filter(c)
return not c:IsType(TYPE_LINK)
end
function c11613567.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:GetLocation()==LOCATION_MZONE and chkc:IsControler(1-tp) end
if chk==0 then return Duel.IsExistingTarget(aux.TRUE,tp,0,LOCATION_MZONE,1,nil) end
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and c11613567.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c11613567.filter,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,aux.TRUE,tp,0,LOCATION_MZONE,1,1,nil)
local g=Duel.SelectTarget(tp,c11613567.filter,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
function c11613567.operation(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -40,12 +40,15 @@ end
function c12800777.poscon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()~=tp
end
function c12800777.filter(c)
return c:IsFaceup() and not c:IsType(TYPE_LINK)
end
function c12800777.postg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and chkc:IsFaceup() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,0,LOCATION_MZONE,1,nil) end
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and c12800777.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c12800777.filter,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,Card.IsFaceup,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,g:GetCount(),0,0)
local g=Duel.SelectTarget(tp,c12800777.filter,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
function c12800777.posop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
......
......@@ -19,14 +19,14 @@ function c14936691.initial_effect(c)
c:RegisterEffect(e2)
end
function c14936691.filter(c)
return c:IsFaceup() and c:IsSetCard(0x3e) and c:IsRace(RACE_REPTILE)
return c:IsFaceup() and c:IsSetCard(0x3e) and c:IsRace(RACE_REPTILE) and c:IsCanTurnSet()
end
function c14936691.postg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c14936691.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c14936691.filter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,c14936691.filter,tp,LOCATION_MZONE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,g:GetCount(),0,0)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
function c14936691.posop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
......
......@@ -77,11 +77,14 @@ function c22790789.desop(e,tp,eg,ep,ev,re,r,rp)
Duel.Destroy(c,REASON_EFFECT)
end
end
function c22790789.filter(c)
return c:IsPosition(POS_FACEUP_ATTACK) and not c:IsType(TYPE_LINK)
end
function c22790789.postg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and chkc:IsPosition(POS_FACEUP_ATTACK) end
if chk==0 then return Duel.IsExistingTarget(Card.IsPosition,tp,0,LOCATION_MZONE,1,nil,POS_FACEUP_ATTACK) end
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and c22790789.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c22790789.filter,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,Card.IsPosition,tp,0,LOCATION_MZONE,1,1,nil,POS_FACEUP_ATTACK)
local g=Duel.SelectTarget(tp,c22790789.filter,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
function c22790789.posop(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -44,11 +44,14 @@ function c23874409.spop(e,tp,eg,ep,ev,re,r,rp)
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
end
function c23874409.filter(c)
return not c:IsType(TYPE_LINK)
end
function c23874409.postg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) end
if chk==0 then return Duel.IsExistingTarget(nil,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DEFENSE)
local g=Duel.SelectTarget(tp,nil,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c23874409.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c23874409.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,c23874409.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
function c23874409.posop(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -48,7 +48,7 @@ function c2519690.thop(e,tp,eg,ep,ev,re,r,rp)
end
function c2519690.postg(e,tp,eg,ep,ev,re,r,rp,chk)
local d=Duel.GetAttackTarget()
if chk==0 then return d and d:IsControler(1-tp) end
if chk==0 then return d and d:IsControler(1-tp) and not d:IsType(TYPE_LINK) end
Duel.SetOperationInfo(0,CATEGORY_POSITION,d,1,0,0)
end
function c2519690.posop(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -15,11 +15,14 @@ end
function c25262697.poscon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsEnvironment(47355498)
end
function c25262697.filter(c)
return c:IsFaceup() and not c:IsType(TYPE_LINK)
end
function c25262697.postg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,0,LOCATION_MZONE,1,nil) end
if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) and c25262697.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c25262697.filter,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,Card.IsFaceup,tp,0,LOCATION_MZONE,1,1,nil)
local g=Duel.SelectTarget(tp,c25262697.filter,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
function c25262697.posop(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -15,11 +15,14 @@ end
function c25652655.condition(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsLocation(LOCATION_GRAVE) and r==REASON_SYNCHRO
end
function c25652655.filter(c)
return not c:IsType(TYPE_LINK)
end
function c25652655.target(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) and c25652655.filter(chkc) end
if chk==0 then return true end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,nil,tp,0,LOCATION_MZONE,1,1,nil)
local g=Duel.SelectTarget(tp,c25652655.filter,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,g:GetCount(),0,0)
end
function c25652655.operation(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -11,7 +11,7 @@ function c25880422.initial_effect(c)
c:RegisterEffect(e1)
end
function c25880422.filter(c)
return c:IsPosition(POS_FACEUP_ATTACK)
return c:IsPosition(POS_FACEUP_ATTACK) and not c:IsType(TYPE_LINK)
end
function c25880422.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and c25880422.filter(chkc) end
......
......@@ -28,7 +28,7 @@ end
function c26533075.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local tg=Duel.GetAttacker()
if chkc then return chkc==tg end
if chk==0 then return tg:IsOnField() and tg:IsCanBeEffectTarget(e) end
if chk==0 then return tg:IsOnField() and not tg:IsType(TYPE_LINK) and tg:IsCanBeEffectTarget(e) end
Duel.SetTargetCard(tg)
Duel.SetOperationInfo(0,CATEGORY_POSITION,tg,1,0,0)
end
......
......@@ -26,7 +26,10 @@ function c33245030.cost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SendtoGrave(e:GetHandler(),REASON_COST)
end
function c33245030.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetAttacker():IsAttackPos() end
if chk==0 then
local at=Duel.GetAttacker()
return at:IsAttackPos() and not at:IsType(TYPE_LINK)
end
end
function c33245030.operation(e,tp,eg,ep,ev,re,r,rp)
local at=Duel.GetAttacker()
......
......@@ -41,11 +41,14 @@ end
function c37993923.condition2(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsPreviousLocation(LOCATION_ONFIELD)
end
function c37993923.filter(c)
return not c:IsType(TYPE_LINK)
end
function c37993923.target2(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) end
if chk==0 then return Duel.IsExistingTarget(nil,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c37993923.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c37993923.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,nil,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
local g=Duel.SelectTarget(tp,c37993923.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,g:GetCount(),0,0)
end
function c37993923.operation(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -23,11 +23,14 @@ function c39751093.initial_effect(c)
e5:SetCode(EVENT_FLIP)
c:RegisterEffect(e5)
end
function c39751093.filter(c)
return c:IsFaceup() and not c:IsType(TYPE_LINK)
end
function c39751093.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,0,LOCATION_MZONE,1,nil) end
if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) and c39751093.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c39751093.filter,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,Card.IsFaceup,tp,0,LOCATION_MZONE,1,1,nil)
local g=Duel.SelectTarget(tp,c39751093.filter,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
function c39751093.operation(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -11,11 +11,14 @@ function c40619741.initial_effect(c)
e1:SetOperation(c40619741.posop)
c:RegisterEffect(e1)
end
function c40619741.filter(c)
return not c:IsType(TYPE_LINK)
end
function c40619741.postg(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 chk==0 then return e:GetHandler():GetEquipCount()>0 and Duel.IsExistingTarget(aux.TRUE,tp,0,LOCATION_MZONE,1,nil) end
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and c40619741.filter(chkc) end
if chk==0 then return e:GetHandler():GetEquipCount()>0 and Duel.IsExistingTarget(c40619741.filter,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,aux.TRUE,tp,0,LOCATION_MZONE,1,e:GetHandler():GetEquipCount(),nil)
local g=Duel.SelectTarget(tp,c40619741.filter,tp,0,LOCATION_MZONE,1,e:GetHandler():GetEquipCount(),nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,g:GetCount(),0,0)
end
function c40619741.posop(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -17,11 +17,14 @@ function c42647539.initial_effect(c)
e3:SetCode(EVENT_FLIP_SUMMON_SUCCESS)
c:RegisterEffect(e3)
end
function c42647539.filter(c)
return c:IsFaceup() and not c:IsType(TYPE_LINK)
end
function c42647539.postg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() end
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c42647539.filter(chkc) end
if chk==0 then return true end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
local g=Duel.SelectTarget(tp,Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
local g=Duel.SelectTarget(tp,c42647539.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
function c42647539.posop(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -69,7 +69,7 @@ function c4417407.poscost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.Release(g,REASON_COST)
end
function c4417407.filter(c)
return not c:IsPosition(POS_FACEUP_DEFENSE)
return not c:IsPosition(POS_FACEUP_DEFENSE) and not c:IsType(TYPE_LINK)
end
function c4417407.postg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) and c4417407.filter(chkc) end
......
......@@ -20,7 +20,7 @@ function c47579719.cost(e,tp,eg,ep,ev,re,r,rp,chk)
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
end
function c47579719.filter(c)
return c:GetPosition()~=POS_FACEUP_DEFENSE
return not c:IsPosition(POS_FACEUP_DEFENSE) and not c:IsType(TYPE_LINK)
end
function c47579719.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c47579719.filter,tp,0,LOCATION_MZONE,1,nil) end
......
......@@ -10,11 +10,14 @@ function c50122883.initial_effect(c)
e1:SetOperation(c50122883.operation)
c:RegisterEffect(e1)
end
function c50122883.filter(c)
return c:IsFaceup() and not c:IsType(TYPE_LINK)
end
function c50122883.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() end
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c50122883.filter(chkc) end
if chk==0 then return true end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
local g=Duel.SelectTarget(tp,c50122883.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
function c50122883.operation(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -12,7 +12,7 @@ function c50896944.initial_effect(c)
c:RegisterEffect(e1)
end
function c50896944.filter(c)
return not c:IsPosition(POS_FACEUP_DEFENSE)
return not c:IsPosition(POS_FACEUP_DEFENSE) and not c:IsType(TYPE_LINK)
end
function c50896944.postg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c50896944.filter(chkc) end
......
......@@ -42,11 +42,14 @@ end
function c52551211.poscon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsReason(REASON_EFFECT)
end
function c52551211.posfilter(c)
return not c:IsType(TYPE_LINK)
end
function c52551211.postg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) end
if chk==0 then return Duel.IsExistingTarget(nil,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c52551211.posfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c52551211.posfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,nil,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
local g=Duel.SelectTarget(tp,c52551211.posfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
function c52551211.posop(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -46,11 +46,14 @@ end
function c55106249.splimit(e,c,tp,sumtp,sumpos)
return not c:IsSetCard(0xab) and bit.band(sumtp,SUMMON_TYPE_PENDULUM)==SUMMON_TYPE_PENDULUM
end
function c55106249.filter(c)
return not c:IsType(TYPE_LINK)
end
function c55106249.postg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) end
if chk==0 then return Duel.IsExistingTarget(nil,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c55106249.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c55106249.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,nil,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
local g=Duel.SelectTarget(tp,c55106249.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
function c55106249.posop(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -34,7 +34,10 @@ function c55470553.poscost(e,tp,eg,ep,ev,re,r,rp,chk)
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
end
function c55470553.postg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetAttacker():IsAttackPos() end
if chk==0 then
local at=Duel.GetAttacker()
return at:IsAttackPos() and not at:IsType(TYPE_LINK)
end
end
function c55470553.posop(e,tp,eg,ep,ev,re,r,rp)
local at=Duel.GetAttacker()
......
......@@ -48,11 +48,14 @@ end
function c58569561.poscon(e,tp,eg,ep,ev,re,r,rp)
return ep==tp
end
function c58569561.filter(c)
return c:IsFaceup() and not c:IsType(TYPE_LINK)
end
function c58569561.postg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() end
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c58569561.filter(chkc) end
if chk==0 then return ep==tp and e:GetHandler():IsRelateToEffect(e) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
local g=Duel.SelectTarget(tp,c58569561.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,g:GetCount(),0,0)
end
function c58569561.posop(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -86,11 +86,14 @@ function c58859575.poscost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsDiscardable,tp,LOCATION_HAND,0,1,nil) end
Duel.DiscardHand(tp,Card.IsDiscardable,1,1,REASON_COST+REASON_DISCARD)
end
function c58859575.filter(c)
return not c:IsType(TYPE_LINK)
end
function c58859575.postg(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 chk==0 then return Duel.IsExistingTarget(nil,tp,0,LOCATION_MZONE,1,nil) end
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and c58859575.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c58859575.filter,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,nil,tp,0,LOCATION_MZONE,1,1,nil)
local g=Duel.SelectTarget(tp,c58859575.filter,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,g:GetCount(),0,0)
end
function c58859575.posop(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -12,11 +12,14 @@ function c60410769.initial_effect(c)
e1:SetOperation(c60410769.posop)
c:RegisterEffect(e1)
end
function c60410769.filter(c)
return c:IsPosition(POS_FACEUP_ATTACK) and not c:IsType(TYPE_LINK)
end
function c60410769.postg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and chkc:IsPosition(POS_FACEUP_ATTACK) end
if chk==0 then return Duel.IsExistingTarget(Card.IsPosition,tp,0,LOCATION_MZONE,1,nil,POS_FACEUP_ATTACK) end
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and c60410769.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c60410769.filter,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUPATTACK)
local g=Duel.SelectTarget(tp,Card.IsPosition,tp,0,LOCATION_MZONE,1,1,nil,POS_FACEUP_ATTACK)
local g=Duel.SelectTarget(tp,c60410769.filter,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
function c60410769.posop(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -42,11 +42,14 @@ end
function c60950180.poscon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(60950180)>0
end
function c60950180.filter(c)
return c:IsPosition(POS_FACEUP_ATTACK) and not c:IsType(TYPE_LINK)
end
function c60950180.postg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsPosition(POS_FACEUP_ATTACK) end
if chk==0 then return Duel.IsExistingTarget(Card.IsPosition,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil,POS_FACEUP_ATTACK) end
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c60950180.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c60950180.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,Card.IsPosition,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil,POS_FACEUP_ATTACK)
local g=Duel.SelectTarget(tp,c60950180.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
function c60950180.posop(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -17,11 +17,14 @@ function c61864793.poscon(e,tp,eg,ep,ev,re,r,rp)
local pp=c:GetPreviousPosition()
return not c:IsStatus(STATUS_CONTINUOUS_POS) and ((np<3 and pp>3) or (pp<3 and np>3))
end
function c61864793.filter(c)
return not c:IsType(TYPE_LINK)
end
function c61864793.postg(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 chk==0 then return Duel.IsExistingTarget(nil,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
Duel.SelectTarget(tp,nil,tp,0,LOCATION_MZONE,1,1,nil)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and c61864793.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c61864793.filter,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
Duel.SelectTarget(tp,c61864793.filter,tp,0,LOCATION_MZONE,1,1,nil)
end
function c61864793.posop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
......
......@@ -22,11 +22,14 @@ function c66506689.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
end
function c66506689.filter(c)
return not c:IsType(TYPE_LINK)
end
function c66506689.tg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) end
if chk==0 then return Duel.IsExistingTarget(nil,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g=Duel.SelectTarget(tp,nil,tp,0,LOCATION_MZONE,1,1,nil)
if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) and c66506689.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c66506689.filter,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,c66506689.filter,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,g:GetCount(),0,0)
end
function c66506689.op(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -37,11 +37,14 @@ function c66625883.posop(e,tp,eg,ep,ev,re,r,rp)
Duel.ChangePosition(c,POS_FACEUP_DEFENSE)
end
end
function c66625883.filter(c)
return not c:IsType(TYPE_LINK)
end
function c66625883.tg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) end
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c66625883.filter(chkc) end
if chk==0 then return true end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g=Duel.SelectTarget(tp,aux.TRUE,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,c66625883.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
function c66625883.op(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -26,7 +26,7 @@ end
function c67270095.postg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local d=Duel.GetAttackTarget()
if chkc then return chkc==d end
if chk==0 then return d and d:IsAttackPos() and d:IsCanBeEffectTarget(e) end
if chk==0 then return d and d:IsAttackPos() and not d:IsType(TYPE_LINK) and d:IsCanBeEffectTarget(e) end
Duel.SetTargetCard(d)
Duel.SetOperationInfo(0,CATEGORY_POSITION,d,1,0,0)
end
......
......@@ -36,7 +36,7 @@ function c68215963.repop(e,tp,eg,ep,ev,re,r,rp)
Duel.RaiseEvent(c,EVENT_CUSTOM+47408488,e,0,tp,0,0)
end
function c68215963.filter(c)
return c:IsAttackPos() and c:GetAttackedCount()>0
return c:IsAttackPos() and c:GetAttackedCount()>0 and not c:IsType(TYPE_LINK)
end
function c68215963.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c68215963.filter(chkc) end
......
......@@ -20,11 +20,14 @@ function c69514125.initial_effect(c)
e2:SetCode(EFFECT_PIERCE)
c:RegisterEffect(e2)
end
function c69514125.filter(c)
return c:IsFaceup() and not c:IsType(TYPE_LINK)
end
function c69514125.postg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and chkc:IsFaceup() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
local g=Duel.SelectTarget(tp,Card.IsFaceup,tp,0,LOCATION_MZONE,1,1,nil)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and c69514125.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c69514125.filter,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,c69514125.filter,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
function c69514125.posop(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -32,11 +32,14 @@ end
function c73652465.condition(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsLocation(LOCATION_GRAVE) and r==REASON_SYNCHRO
end
function c73652465.posfilter(c)
return not c:IsType(TYPE_LINK)
end
function c73652465.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) end
if chk==0 then return Duel.IsExistingTarget(nil,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c73652465.posfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c73652465.posfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,nil,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
local g=Duel.SelectTarget(tp,c73652465.posfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
function c73652465.operation(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -14,7 +14,7 @@ function c7541475.initial_effect(c)
end
function c7541475.postg(e,tp,eg,ep,ev,re,r,rp,chk)
local d=Duel.GetAttackTarget()
if chk==0 then return d end
if chk==0 then return d and d:GetControler()~=Duel.GetAttacker():GetControler() and not d:IsType(TYPE_LINK) end
Duel.SetOperationInfo(0,CATEGORY_POSITION,d,1,0,0)
end
function c7541475.posop(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -13,16 +13,19 @@ function c76520646.initial_effect(c)
e1:SetOperation(c76520646.posop)
c:RegisterEffect(e1)
end
function c76520646.filter(c)
return c:IsFaceup() and not c:IsType(TYPE_LINK)
end
function c76520646.postg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,0,LOCATION_MZONE,1,nil) end
if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) and c76520646.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c76520646.filter,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,Card.IsFaceup,tp,0,LOCATION_MZONE,1,1,nil)
local g=Duel.SelectTarget(tp,c76520646.filter,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
function c76520646.posop(e,tp,eg,ep,ev,re,r,rp,chk)
function c76520646.posop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc and tc:IsFaceup() and tc:IsRelateToEffect(e) then
if tc:IsFaceup() and tc:IsRelateToEffect(e) then
Duel.ChangePosition(tc,POS_FACEUP_DEFENSE,0,POS_FACEUP_ATTACK,0)
end
end
......@@ -108,7 +108,7 @@ end
function c84243274.postg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return false end
local bc=Duel.GetAttackTarget()
if chk==0 then return bc and bc:IsCanBeEffectTarget(e) end
if chk==0 then return bc and not bc:IsType(TYPE_LINK) and bc:IsCanBeEffectTarget(e) end
Duel.SetTargetCard(bc)
Duel.SetOperationInfo(0,CATEGORY_POSITION,bc,1,0,0)
end
......
......@@ -11,7 +11,6 @@ function c9109991.initial_effect(c)
e2:SetCategory(CATEGORY_POSITION)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_F)
e2:SetRange(LOCATION_MZONE)
e2:SetCode(EVENT_BATTLE_DAMAGE)
e2:SetCondition(c9109991.condition)
e2:SetTarget(c9109991.target)
......@@ -21,14 +20,15 @@ end
function c9109991.condition(e,tp,eg,ep,ev,re,r,rp)
return ep~=tp and Duel.GetAttackTarget()==nil
end
function c9109991.filter(c)
return c:IsAttackPos() and not c:IsType(TYPE_LINK)
end
function c9109991.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) and chkc:IsAttackPos() end
if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) and c9109991.filter(chkc) end
if chk==0 then return true end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATTACK)
local g=Duel.SelectTarget(tp,Card.IsAttackPos,tp,0,LOCATION_MZONE,1,1,nil)
if g:GetCount()>0 then
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,c9109991.filter,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,g:GetCount(),0,0)
end
function c9109991.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
......
......@@ -16,11 +16,14 @@ function c96146814.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToRemoveAsCost() end
Duel.Remove(e:GetHandler(),POS_FACEUP,REASON_COST)
end
function c96146814.filter(c)
return not c:IsType(TYPE_LINK)
end
function c96146814.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) end
if chk==0 then return Duel.IsExistingTarget(aux.TRUE,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c96146814.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c96146814.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,aux.TRUE,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
local g=Duel.SelectTarget(tp,c96146814.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
function c96146814.operation(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -48,11 +48,14 @@ function c97362768.operation(e,tp,eg,ep,ev,re,r,rp)
e:GetLabelObject():SetLabel(0)
end
end
function c97362768.posfilter(c)
return c:IsFaceup() and not c:IsType(TYPE_LINK)
end
function c97362768.postg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c97362768.posfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c97362768.posfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectTarget(tp,Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
local g=Duel.SelectTarget(tp,c97362768.posfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
end
function c97362768.posop(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -16,42 +16,72 @@ function c98045062.cost(e,tp,eg,ep,ev,re,r,rp,chk)
e:SetLabel(1)
return true
end
function c98045062.filter(c,e)
return c:IsFaceup() and c:IsCanBeEffectTarget(e)
function c98045062.filter1(c)
return c:IsFaceup() and not c:IsType(TYPE_LINK)
end
function c98045062.filter2(c)
return c:IsFaceup() and c:IsControlerCanBeChanged()
end
function c98045062.filter3(c)
return c:IsFaceup() and c:IsAbleToChangeControler()
end
function c98045062.cfilter(c,tp)
if c:IsControler(tp) then
return Duel.IsExistingTarget(c98045062.filter3,tp,0,LOCATION_MZONE,1,nil)
else
return Duel.IsExistingTarget(c98045062.filter2,tp,0,LOCATION_MZONE,1,c)
end
end
function c98045062.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and chkc:IsFaceup() end
if chk==0 then
if chkc then
if e:GetLabel()==0 then
return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and c98045062.filter1(chkc)
else
return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and c98045062.filter2(chkc)
end
end
local b1=Duel.IsExistingTarget(c98045062.filter1,tp,0,LOCATION_MZONE,1,nil)
local b2=nil
if e:GetLabel()==0 then
b2=Duel.IsExistingTarget(c98045062.filter2,tp,0,LOCATION_MZONE,1,nil)
else
b2=Duel.CheckReleaseGroup(tp,c98045062.cfilter,1,nil,tp)
end
if chk==0 then
e:SetLabel(0)
return Duel.IsExistingTarget(Card.IsFaceup,tp,0,LOCATION_MZONE,1,nil)
return b1 or b2
end
local g=Duel.GetMatchingGroup(c98045062.filter,tp,0,LOCATION_MZONE,nil,e)
local cg=nil
if e:GetLabel()==1 then cg=g:Filter(Card.IsAbleToChangeControler,nil)
else cg=g:Filter(Card.IsControlerCanBeChanged,nil) end
local sel=0
Duel.Hint(HINT_SELECTMSG,tp,550)
if cg:GetCount()==0 then
sel=Duel.SelectOption(tp,aux.Stringid(98045062,0))
elseif e:GetLabel()==1 and not Duel.CheckReleaseGroup(tp,nil,1,nil) then
if b1 and b2 then
sel=Duel.SelectOption(tp,aux.Stringid(98045062,0),aux.Stringid(98045062,1))
elseif b1 then
sel=Duel.SelectOption(tp,aux.Stringid(98045062,0))
else
sel=Duel.SelectOption(tp,aux.Stringid(98045062,0),aux.Stringid(98045062,1))
if sel==1 and e:GetLabel()==1 then
local rg=Duel.SelectReleaseGroup(tp,nil,1,1,nil)
Duel.Release(rg,REASON_COST)
end
sel=Duel.SelectOption(tp,aux.Stringid(98045062,1))+1
end
if sel==0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local sg=g:Select(tp,1,1,nil)
Duel.SetTargetCard(sg)
local g=Duel.SelectTarget(tp,c98045062.filter1,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONTROL)
local sg=cg:Select(tp,1,1,nil)
Duel.SetTargetCard(sg)
Duel.SetOperationInfo(0,CATEGORY_CONTROL,g,1,0,0)
if e:GetLabel()==0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONTROL)
local g=Duel.SelectTarget(tp,c98045062.filter2,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_CONTROL,g,1,0,0)
else
local rg=Duel.SelectReleaseGroup(tp,c98045062.cfilter,1,1,nil,tp)
Duel.Release(rg,REASON_COST)
if rg:GetFirst():IsControler(tp) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONTROL)
local g=Duel.SelectTarget(tp,c98045062.filter3,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_CONTROL,g,1,0,0)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONTROL)
local g=Duel.SelectTarget(tp,c98045062.filter2,tp,0,LOCATION_MZONE,1,1,rg:GetFirst())
Duel.SetOperationInfo(0,CATEGORY_CONTROL,g,1,0,0)
end
end
end
e:SetLabel(sel)
end
......
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