Commit 6e910b55 authored by mercury233's avatar mercury233 Committed by GitHub

fix Curse of the Shadow Prison (#1858)

parent ea6d6087
...@@ -108,8 +108,8 @@ end ...@@ -108,8 +108,8 @@ end
function c50907446.FShaddollFilter(c,fc) function c50907446.FShaddollFilter(c,fc)
return c:IsFusionSetCard(0x9d) and c:IsCanBeFusionMaterial(fc) return c:IsFusionSetCard(0x9d) and c:IsCanBeFusionMaterial(fc)
end end
function c50907446.FShaddollExFilter(c,fc) function c50907446.FShaddollExFilter(c,fc,fe)
return c:IsFaceup() and c50907446.FShaddollFilter(c,fc) return c:IsFaceup() and not c:IsImmuneToEffect(fe) and c50907446.FShaddollFilter(c,fc)
end end
function c50907446.FShaddollFilter1(c,g) function c50907446.FShaddollFilter1(c,g)
return c:IsFusionSetCard(0x9d) and g:IsExists(c50907446.FShaddollFilter2,1,c) and not g:IsExists(Card.IsFusionAttribute,1,c,c:GetFusionAttribute()) return c:IsFusionSetCard(0x9d) and g:IsExists(c50907446.FShaddollFilter2,1,c) and not g:IsExists(Card.IsFusionAttribute,1,c,c:GetFusionAttribute())
...@@ -140,7 +140,8 @@ function c50907446.FShaddollCondition() ...@@ -140,7 +140,8 @@ function c50907446.FShaddollCondition()
local fc=Duel.GetFieldCard(tp,LOCATION_FZONE,0) local fc=Duel.GetFieldCard(tp,LOCATION_FZONE,0)
local exg=nil local exg=nil
if fc and fc:IsHasEffect(81788994) and fc:IsCanRemoveCounter(tp,0x16,3,REASON_EFFECT) then if fc and fc:IsHasEffect(81788994) and fc:IsCanRemoveCounter(tp,0x16,3,REASON_EFFECT) then
exg=Duel.GetMatchingGroup(c50907446.FShaddollExFilter,tp,0,LOCATION_MZONE,mg,c) local fe=fc:IsHasEffect(81788994)
exg=Duel.GetMatchingGroup(c50907446.FShaddollExFilter,tp,0,LOCATION_MZONE,mg,c,fe)
end end
if gc then if gc then
if not mg:IsContains(gc) then return false end if not mg:IsContains(gc) then return false end
...@@ -156,7 +157,8 @@ function c50907446.FShaddollOperation() ...@@ -156,7 +157,8 @@ function c50907446.FShaddollOperation()
local fc=Duel.GetFieldCard(tp,LOCATION_FZONE,0) local fc=Duel.GetFieldCard(tp,LOCATION_FZONE,0)
local exg=nil local exg=nil
if fc and fc:IsHasEffect(81788994) and fc:IsCanRemoveCounter(tp,0x16,3,REASON_EFFECT) then if fc and fc:IsHasEffect(81788994) and fc:IsCanRemoveCounter(tp,0x16,3,REASON_EFFECT) then
exg=Duel.GetMatchingGroup(c50907446.FShaddollExFilter,tp,0,LOCATION_MZONE,mg,c) local fe=fc:IsHasEffect(81788994)
exg=Duel.GetMatchingGroup(c50907446.FShaddollExFilter,tp,0,LOCATION_MZONE,mg,c,fe)
end end
local g=nil local g=nil
if gc then if gc then
......
...@@ -1500,8 +1500,8 @@ end ...@@ -1500,8 +1500,8 @@ end
function Auxiliary.FShaddollFilter(c,fc,attr) function Auxiliary.FShaddollFilter(c,fc,attr)
return (Auxiliary.FShaddollFilter1(c) or Auxiliary.FShaddollFilter2(c,attr)) and c:IsCanBeFusionMaterial(fc) and not c:IsHasEffect(6205579) return (Auxiliary.FShaddollFilter1(c) or Auxiliary.FShaddollFilter2(c,attr)) and c:IsCanBeFusionMaterial(fc) and not c:IsHasEffect(6205579)
end end
function Auxiliary.FShaddollExFilter(c,fc,attr) function Auxiliary.FShaddollExFilter(c,fc,attr,fe)
return c:IsFaceup() and Auxiliary.FShaddollFilter(c,fc,attr) return c:IsFaceup() and not c:IsImmuneToEffect(fe) and Auxiliary.FShaddollFilter(c,fc,attr)
end end
function Auxiliary.FShaddollFilter1(c) function Auxiliary.FShaddollFilter1(c)
return c:IsFusionSetCard(0x9d) return c:IsFusionSetCard(0x9d)
...@@ -1532,7 +1532,8 @@ function Auxiliary.FShaddollCondition(attr) ...@@ -1532,7 +1532,8 @@ function Auxiliary.FShaddollCondition(attr)
local fc=Duel.GetFieldCard(tp,LOCATION_FZONE,0) local fc=Duel.GetFieldCard(tp,LOCATION_FZONE,0)
local exg=nil local exg=nil
if fc and fc:IsHasEffect(81788994) and fc:IsCanRemoveCounter(tp,0x16,3,REASON_EFFECT) then if fc and fc:IsHasEffect(81788994) and fc:IsCanRemoveCounter(tp,0x16,3,REASON_EFFECT) then
exg=Duel.GetMatchingGroup(Auxiliary.FShaddollExFilter,tp,0,LOCATION_MZONE,mg,c,attr) local fe=fc:IsHasEffect(81788994)
exg=Duel.GetMatchingGroup(Auxiliary.FShaddollExFilter,tp,0,LOCATION_MZONE,mg,c,attr,fe)
end end
if gc then if gc then
if not mg:IsContains(gc) then return false end if not mg:IsContains(gc) then return false end
...@@ -1548,7 +1549,8 @@ function Auxiliary.FShaddollOperation(attr) ...@@ -1548,7 +1549,8 @@ function Auxiliary.FShaddollOperation(attr)
local fc=Duel.GetFieldCard(tp,LOCATION_FZONE,0) local fc=Duel.GetFieldCard(tp,LOCATION_FZONE,0)
local exg=nil local exg=nil
if fc and fc:IsHasEffect(81788994) and fc:IsCanRemoveCounter(tp,0x16,3,REASON_EFFECT) then if fc and fc:IsHasEffect(81788994) and fc:IsCanRemoveCounter(tp,0x16,3,REASON_EFFECT) then
exg=Duel.GetMatchingGroup(Auxiliary.FShaddollExFilter,tp,0,LOCATION_MZONE,mg,c,attr) local fe=fc:IsHasEffect(81788994)
exg=Duel.GetMatchingGroup(Auxiliary.FShaddollExFilter,tp,0,LOCATION_MZONE,mg,c,attr,fe)
end end
local g=nil local g=nil
if gc then if gc then
......
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