Commit 6744d24f authored by wind2009's avatar wind2009

Fix

parent 335d97ca
Pipeline #41767 passed with stages
in 2 minutes and 42 seconds
......@@ -3,8 +3,8 @@ local s,id,o=GetID()
function s.initial_effect(c)
--fusion material
c:EnableReviveLimit()
-- old function
if aux.AddFusionProcShaddoll then
--old function
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
......@@ -13,6 +13,7 @@ function s.initial_effect(c)
e0:SetOperation(s.FShaddollOperation)
c:RegisterEffect(e0)
else
--new function
aux.AddFusionProcMix(c,false,true,
function (mc) return mc:IsFusionSetCard(0x9d) end,
function (mc) return aux.FShaddollFilter2(mc,ATTRIBUTE_DARK) end,
......
......@@ -5,8 +5,10 @@ function s.initial_effect(c)
c:EnableReviveLimit()
-- using new function
if aux.AddFusionProcShaddoll then
--old function
aux.AddFusionProcShaddoll(c,ATTRIBUTE_WIND)
else
--new function
aux.AddFusionProcFun2(c,function (mc) return mc:IsFusionSetCard(0x9d) end, function (mc) return aux.FShaddollFilter2(mc,ATTRIBUTE_WIND) end, true)
end
--cannot spsummon
......
......@@ -19,7 +19,7 @@ function s.initial_effect(c)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_SZONE)
e2:SetLabel(0)
e2:SetCost(s.fuscost)
e2:SetCost(s.cost)
e2:SetTarget(s.fustg)
e2:SetOperation(s.fusop)
e2:SetCountLimit(1,id+o)
......@@ -58,10 +58,6 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp)
Duel.SendtoGrave(g,REASON_EFFECT)
end
end
function s.fuscost(e,tp,eg,ep,ev,re,r,rp,chk)
e:SetLabel(100)
return true
end
function s.fusfilter1(c,e,tp)
return c:IsType(TYPE_FUSION) and Duel.IsExistingMatchingCard(s.fusfilter2,tp,LOCATION_EXTRA,0,1,nil,e,tp,c:GetAttribute(),c)
end
......@@ -76,6 +72,7 @@ function s.fustg(e,tp,eg,ep,ev,re,r,rp,chk)
return aux.MustMaterialCheck(nil,tp,EFFECT_MUST_BE_FMATERIAL) and Duel.CheckReleaseGroup(tp,s.fusfilter1,1,nil,e,tp)
and s.cost(e,tp,eg,ep,ev,re,r,rp,0)
end
e:SetLabel(0)
local rg=Duel.SelectReleaseGroup(tp,s.fusfilter1,1,1,nil,e,tp)
e:SetLabel(rg:GetFirst():GetAttribute())
Duel.Release(rg,REASON_COST)
......
......@@ -120,9 +120,9 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp)
end
end
function s.cfilter(c,tp,chk)
return c:IsType(TYPE_FUSION) and c:IsReleasableByEffect() and not chk
return c:IsType(TYPE_FUSION) and c:IsReleasableByEffect() and (not chk
or (Duel.GetMZoneCount(tp,c)>1
and Duel.IsPlayerCanSpecialSummonMonster(tp,id+o,0,TYPES_TOKEN_MONSTER,0,0,c:GetLevel(),RACE_SPELLCASTER,ATTRIBUTE_DARK))
and Duel.IsPlayerCanSpecialSummonMonster(tp,id+o,0,TYPES_TOKEN_MONSTER,0,0,c:GetLevel(),RACE_SPELLCASTER,ATTRIBUTE_DARK)))
end
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
local rg=Duel.GetReleaseGroup(tp,false,REASON_EFFECT)
......
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