Commit db931ed8 authored by DailyShana's avatar DailyShana

fix

for Forbidden
parent b9f60344
......@@ -9,23 +9,26 @@ function c11136371.initial_effect(c)
e1:SetOperation(c11136371.plop)
c:RegisterEffect(e1)
end
function c11136371.plfilter(c)
function c11136371.cfilter(c)
return c:GetSequence()<5 and c:IsAbleToGraveAsCost()
end
function c11136371.plcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c11136371.plfilter,tp,LOCATION_SZONE,0,1,e:GetHandler()) end
local g=Duel.GetMatchingGroup(c11136371.plfilter,tp,LOCATION_SZONE,0,e:GetHandler())
if chk==0 then return Duel.IsExistingMatchingCard(c11136371.cfilter,tp,LOCATION_SZONE,0,1,e:GetHandler()) end
local g=Duel.GetMatchingGroup(c11136371.cfilter,tp,LOCATION_SZONE,0,e:GetHandler())
Duel.SendtoGrave(g,REASON_COST)
end
function c11136371.plfilter(c)
return c:IsSetCard(0x1034) and not c:IsForbidden()
end
function c11136371.pltg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsSetCard,tp,LOCATION_GRAVE,0,1,nil,0x1034) end
if chk==0 then return Duel.IsExistingMatchingCard(c11136371.plfilter,tp,LOCATION_GRAVE,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,nil,1,tp,LOCATION_GRAVE)
end
function c11136371.plop(e,tp,eg,ep,ev,re,r,rp)
local ft=Duel.GetLocationCount(tp,LOCATION_SZONE)
if ft<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD)
local g=Duel.SelectMatchingCard(tp,Card.IsSetCard,tp,LOCATION_GRAVE,0,ft,ft,nil,0x1034)
local g=Duel.SelectMatchingCard(tp,c11136371.plfilter,tp,LOCATION_GRAVE,0,ft,ft,nil)
if g:GetCount()>0 then
local tc=g:GetFirst()
while tc do
......
......@@ -62,7 +62,7 @@ function c11790356.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()~=tp
end
function c11790356.filter2(c)
return c:IsSetCard(0xd6) and c:IsType(TYPE_MONSTER)
return c:IsSetCard(0xd6) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end
function c11790356.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_MZONE) and c11790356.cfilter(chkc) end
......
......@@ -112,7 +112,7 @@ function c14756848.desop(e,tp,eg,ep,ev,re,r,rp)
Duel.HintSelection(g)
if Duel.Destroy(g,REASON_EFFECT)~=0
and (Duel.CheckLocation(tp,LOCATION_SZONE,6) or Duel.CheckLocation(tp,LOCATION_SZONE,7))
and not tc:IsLocation(LOCATION_HAND+LOCATION_DECK)
and not tc:IsLocation(LOCATION_HAND+LOCATION_DECK) and not tc:IsForbidden()
and Duel.SelectYesNo(tp,aux.Stringid(14756848,4)) then
Duel.BreakEffect()
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true)
......
......@@ -26,7 +26,7 @@ function c18060565.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel.SetOperationInfo(0,CATEGORY_EQUIP,nil,1,tp,LOCATION_DECK)
end
function c18060565.eqfilter(c)
return c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON) and c:IsLevelBelow(3)
return c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON) and c:IsLevelBelow(3) and not c:IsForbidden()
end
function c18060565.eqop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_SZONE)<=0 then return end
......
......@@ -29,7 +29,7 @@ function c21249921.eqcon(e,tp,eg,ep,ev,re,r,rp)
return bit.band(e:GetHandler():GetSummonType(),SUMMON_TYPE_SYNCHRO)==SUMMON_TYPE_SYNCHRO
end
function c21249921.filter(c)
return c:IsLevelBelow(3) and c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON)
return c:IsLevelBelow(3) and c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end
function c21249921.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c21249921.filter(chkc) end
......
......@@ -30,7 +30,7 @@ function c21790410.initial_effect(c)
c:RegisterEffect(e3)
end
function c21790410.filter(c)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end
function c21790410.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
......@@ -31,7 +31,7 @@ function c22842214.initial_effect(c)
c:RegisterEffect(e3)
end
function c22842214.filter(c)
return c:IsFaceup() and c:IsRace(RACE_FISH+RACE_AQUA+RACE_SEASERPENT)
return c:IsFaceup() and c:IsRace(RACE_FISH+RACE_AQUA+RACE_SEASERPENT) and not c:IsForbidden()
end
function c22842214.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_REMOVED) and chkc:IsControler(tp) and c22842214.filter(chkc) end
......
......@@ -38,7 +38,7 @@ function c2461031.initial_effect(c)
c:RegisterEffect(e5)
end
function c2461031.filter(c)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end
function c2461031.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
......@@ -27,7 +27,7 @@ function c25682811.eqcon(e,tp,eg,ep,ev,re,r,rp)
return bit.band(e:GetHandler():GetSummonType(),SUMMON_TYPE_SYNCHRO)==SUMMON_TYPE_SYNCHRO
end
function c25682811.filter(c)
return c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON)
return c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end
function c25682811.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c25682811.filter(chkc) end
......
......@@ -20,12 +20,15 @@ function c26211048.eqcost(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 c26211048.eqfilter(c)
return c:IsLocation(LOCATION_MZONE) or c:IsLocation(LOCATION_GRAVE) and not c:IsForbidden()
end
function c26211048.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE+LOCATION_MZONE) and chkc:IsControler(1-tp) and chkc:IsType(TYPE_MONSTER) end
if chkc then return c26211048.eqfilter(chkc) and chkc:IsControler(1-tp) and chkc:IsType(TYPE_MONSTER) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
and Duel.IsExistingTarget(Card.IsType,tp,0,LOCATION_GRAVE+LOCATION_MZONE,1,nil,TYPE_MONSTER) end
and Duel.IsExistingTarget(c26211048.eqfilter,tp,0,LOCATION_GRAVE+LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
local g=Duel.SelectTarget(tp,Card.IsType,tp,0,LOCATION_GRAVE+LOCATION_MZONE,1,1,nil,TYPE_MONSTER)
local g=Duel.SelectTarget(tp,c26211048.eqfilter,tp,0,LOCATION_GRAVE+LOCATION_MZONE,1,1,nil)
if g:GetFirst():IsLocation(LOCATION_GRAVE) then
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,g,1,0,0)
end
......
......@@ -14,7 +14,7 @@ end
function c26885836.eqcon(e,tp,eg,ep,ev,re,r,rp)
local tc=e:GetHandler():GetBattleTarget()
e:SetLabelObject(tc)
return aux.bdogcon(e,tp,eg,ep,ev,re,r,rp)
return aux.bdogcon(e,tp,eg,ep,ev,re,r,rp) and not tc:IsForbidden()
end
function c26885836.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return not e:GetHandler():IsHasEffect(26885836)
......
......@@ -26,7 +26,7 @@ function c28183605.atkval(e,c)
return Duel.GetMatchingGroupCount(c28183605.atkfilter,c:GetControler(),LOCATION_ONFIELD,0,nil)*200
end
function c28183605.filter(c)
return c:IsLevelBelow(3) and c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON)
return c:IsLevelBelow(3) and c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end
function c28183605.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c28183605.filter(chkc) end
......
......@@ -23,7 +23,7 @@ function c3019642.initial_effect(c)
c:RegisterEffect(e2)
end
function c3019642.filter(c)
return c:IsLevelBelow(3) and c:IsRace(RACE_DRAGON)
return c:IsLevelBelow(3) and c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end
function c3019642.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c3019642.filter(chkc) end
......
......@@ -23,7 +23,7 @@ function c30312361.cost(e,tp,eg,ep,ev,re,r,rp,chk)
e:GetHandler():RegisterFlagEffect(30312361,RESET_EVENT+0x1fe0000+RESET_PHASE+PHASE_END,0,1)
end
function c30312361.filter(c)
return c:IsType(TYPE_EFFECT) and not c:IsForbidden() and c:IsAbleToRemove()
return c:IsType(TYPE_EFFECT) and c:IsAbleToRemove()
end
function c30312361.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c30312361.filter(chkc) end
......
......@@ -20,7 +20,7 @@ function c31563350.eqcost(e,tp,eg,ep,ev,re,r,rp,chk)
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
end
function c31563350.filter(c,tp)
return c:IsRace(RACE_WARRIOR) and c:CheckUniqueOnField(tp)
return c:IsRace(RACE_WARRIOR) and c:CheckUniqueOnField(tp) and not c:IsForbidden()
end
function c31563350.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
......@@ -24,7 +24,7 @@ function c33460840.initial_effect(c)
c:RegisterEffect(e3)
end
function c33460840.filter(c,ec)
return c:IsRace(RACE_DRAGON) and (c:GetLevel()==7 or c:GetLevel()==8)
return c:IsRace(RACE_DRAGON) and (c:GetLevel()==7 or c:GetLevel()==8) and not c:IsForbidden()
end
function c33460840.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
......@@ -33,7 +33,7 @@ function c3428069.initial_effect(c)
end
function c3428069.filter(c,e,tp)
return c:IsType(TYPE_MONSTER) and c:IsPreviousLocation(LOCATION_MZONE) and c:GetPreviousControler()==1-tp
and c:IsLocation(LOCATION_GRAVE) and c:IsReason(REASON_EFFECT+REASON_BATTLE) and c:IsCanBeEffectTarget(e)
and c:IsLocation(LOCATION_GRAVE) and c:IsReason(REASON_EFFECT+REASON_BATTLE) and c:IsCanBeEffectTarget(e) and not c:IsForbidden()
end
function c3428069.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return eg:IsContains(chkc) and c3428069.filter(chkc,e,tp) end
......
......@@ -33,7 +33,7 @@ function c38450736.initial_effect(c)
c:RegisterEffect(e3)
end
function c38450736.filter(c)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end
function c38450736.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
......@@ -30,7 +30,7 @@ function c40418351.initial_effect(c)
c:RegisterEffect(e3)
end
function c40418351.filter(c)
return c:IsRace(RACE_DRAGON)
return c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end
function c40418351.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c40418351.filter(chkc) end
......
......@@ -17,7 +17,7 @@ function c41230939.initial_effect(c)
c:RegisterEffect(e2)
end
function c41230939.filter(c)
return c:IsLevelBelow(3) and c:IsRace(RACE_DRAGON)
return c:IsLevelBelow(3) and c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end
function c41230939.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c41230939.filter(chkc) end
......
......@@ -30,12 +30,15 @@ end
function c44505297.eqcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetSummonType()==SUMMON_TYPE_XYZ
end
function c44505297.eqfilter(c)
return c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end
function c44505297.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsType(TYPE_MONSTER) end
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and c44505297.eqfilter(chkc) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
and Duel.IsExistingTarget(Card.IsType,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,nil,TYPE_MONSTER) end
and Duel.IsExistingTarget(c44505297.eqfilter,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
local g=Duel.SelectTarget(tp,Card.IsType,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,1,nil,TYPE_MONSTER)
local g=Duel.SelectTarget(tp,c44505297.eqfilter,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,g,1,0,0)
end
function c44505297.eqop(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -54,12 +54,15 @@ function c47408488.pltg(e,tp,eg,ep,ev,re,r,rp,chk)
return ct>0 and Duel.GetLocationCount(tp,LOCATION_SZONE)>=ct
end
end
function c47408488.plfilter(c)
return c:IsSetCard(0x1034) and not c:IsForbidden()
end
function c47408488.plop(e,tp,eg,ep,ev,re,r,rp)
local ft=Duel.GetLocationCount(tp,LOCATION_SZONE)
if ft<=0 then return end
if ft>e:GetLabel() then ft=e:GetLabel() end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD)
local g=Duel.SelectMatchingCard(tp,Card.IsSetCard,tp,LOCATION_DECK,0,ft,ft,nil,0x1034)
local g=Duel.SelectMatchingCard(tp,c47408488.plfilter,tp,LOCATION_DECK,0,ft,ft,nil)
if g:GetCount()>0 then
local tc=g:GetFirst()
while tc do
......
......@@ -13,7 +13,7 @@ function c51345461.initial_effect(c)
c:RegisterEffect(e1)
end
function c51345461.filter(c,rc,tid)
return c:IsReason(REASON_BATTLE) and c:GetReasonCard()==rc and c:GetTurnID()==tid
return c:IsReason(REASON_BATTLE) and c:GetReasonCard()==rc and c:GetTurnID()==tid and not c:IsForbidden()
end
function c51345461.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
......@@ -27,7 +27,7 @@ function c52601736.initial_effect(c)
c:RegisterEffect(e3)
end
function c52601736.filter(c)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end
function c52601736.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
......@@ -23,7 +23,7 @@ function c54578613.initial_effect(c)
c:RegisterEffect(e2)
end
function c54578613.filter(c)
return c:IsSetCard(0x29) and c:IsLevelBelow(3) and c:IsRace(RACE_DRAGON)
return c:IsSetCard(0x29) and c:IsLevelBelow(3) and c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end
function c54578613.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c54578613.filter(chkc) end
......
......@@ -46,7 +46,7 @@ function c56051086.eqcost(e,tp,eg,ep,ev,re,r,rp,chk)
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
end
function c56051086.filter(c)
return c:IsSetCard(0x48) and c:IsType(TYPE_MONSTER)
return c:IsSetCard(0x48) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end
function c56051086.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c56051086.filter(chkc) end
......
......@@ -32,8 +32,8 @@ function c6075801.initial_effect(c)
e4:SetOperation(c6075801.spop)
c:RegisterEffect(e4)
end
function c6075801.filter(c,ec)
return c:IsRace(RACE_DRAGON) and (c:GetLevel()==7 or c:GetLevel()==8)
function c6075801.filter(c)
return c:IsRace(RACE_DRAGON) and (c:GetLevel()==7 or c:GetLevel()==8) and not c:IsForbidden()
end
function c6075801.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsRelateToEffect(e) and Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
......@@ -16,7 +16,7 @@ function c61538782.eqcon(e,tp,eg,ep,ev,re,r,rp)
local tc=c:GetBattleTarget()
if not c:IsRelateToBattle() or c:IsFacedown() then return false end
e:SetLabelObject(tc)
return tc:IsLocation(LOCATION_GRAVE) and tc:IsType(TYPE_MONSTER) and tc:IsReason(REASON_BATTLE)
return tc:IsLocation(LOCATION_GRAVE) and tc:IsType(TYPE_MONSTER) and tc:IsReason(REASON_BATTLE) and not tc:IsForbidden()
end
function c61538782.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
......
......@@ -56,7 +56,7 @@ function c63487632.spop(e,tp,eg,ep,ev,re,r,rp,c)
Duel.Remove(g,POS_FACEUP,REASON_COST)
end
function c63487632.filter(c)
return c:GetCode()~=63487632 and c:IsRace(RACE_DRAGON)
return c:GetCode()~=63487632 and c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end
function c63487632.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c63487632.filter(chkc) end
......
......@@ -39,7 +39,7 @@ function c66066482.initial_effect(c)
c:RegisterEffect(e3)
end
function c66066482.filter(c)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end
function c66066482.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
......@@ -30,7 +30,7 @@ function c68184115.initial_effect(c)
c:RegisterEffect(e3)
end
function c68184115.filter(c)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end
function c68184115.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
......@@ -39,7 +39,7 @@ function c69207766.initial_effect(c)
c:RegisterEffect(e5)
end
function c69207766.filter(c)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end
function c69207766.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
......@@ -26,7 +26,7 @@ function c77625948.initial_effect(c)
c:RegisterEffect(e3)
end
function c77625948.filter(c)
return c:IsLevelBelow(3) and c:IsRace(RACE_DRAGON)
return c:IsLevelBelow(3) and c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end
function c77625948.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c77625948.filter(chkc) end
......
......@@ -44,7 +44,7 @@ function c84769941.eqcost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.RemoveCounter(tp,1,1,0x37,2,REASON_COST)
end
function c84769941.eqfilter(c)
return c:IsSetCard(0xd3) and c:IsType(TYPE_MONSTER)
return c:IsSetCard(0xd3) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end
function c84769941.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
......@@ -42,7 +42,7 @@ function c876330.eqcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetPreviousLocation()==LOCATION_HAND
end
function c876330.filter(c)
return c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON)
return c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end
function c876330.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c876330.filter(chkc) end
......
......@@ -30,7 +30,7 @@ function c9161357.eqcon(e,tp,eg,ep,ev,re,r,rp)
return bit.band(e:GetHandler():GetSummonType(),SUMMON_TYPE_XYZ)==SUMMON_TYPE_XYZ
end
function c9161357.filter(c)
return c:IsSetCard(0x48) and c:IsType(TYPE_MONSTER)
return c:IsSetCard(0x48) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end
function c9161357.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c9161357.filter(chkc) end
......
......@@ -222,7 +222,7 @@ function c93157004.desop(e,tp,eg,ep,ev,re,r,rp)
end
end
function c93157004.eqfilter(c)
return c:IsSetCard(0x30) and c:IsType(TYPE_MONSTER)
return c:IsSetCard(0x30) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end
function c93157004.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
......@@ -62,7 +62,7 @@ function c95090813.mtop(e,tp,eg,ep,ev,re,r,rp)
end
end
function c95090813.filter(c)
return c:IsLevelBelow(3) and c:IsRace(RACE_WARRIOR)
return c:IsLevelBelow(3) and c:IsRace(RACE_WARRIOR) and not c:IsForbidden()
end
function c95090813.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c95090813.filter(chkc) end
......
......@@ -35,7 +35,7 @@ function c95395761.initial_effect(c)
c:RegisterEffect(e5)
end
function c95395761.filter(c)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER)
return c:IsSetCard(0x56) and c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end
function c95395761.eqtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
......
......@@ -30,7 +30,7 @@ function c99659159.atktg(e,c)
return c:GetEquipGroup():IsExists(Card.IsSetCard,1,nil,0x29)
end
function c99659159.filter(c)
return c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON)
return c:IsSetCard(0x29) and c:IsRace(RACE_DRAGON) and not c:IsForbidden()
end
function c99659159.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() 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