Commit 9ef3238a authored by DailyShana's avatar DailyShana

fix and update

parent 6e3a130a
......@@ -112,6 +112,9 @@ function c23187256.gfilter(c,rank)
end
function c23187256.operation(e,tp,eg,ep,ev,re,r,rp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
if Duel.IsPlayerAffectedByEffect(tp,59822133) then ft=1 end
local ect=c29724053 and Duel.IsPlayerAffectedByEffect(tp,29724053) and c29724053[tp]
if ect~=nil then ft=math.min(ft,ect) end
local c=e:GetHandler()
local g1=Duel.GetMatchingGroup(c23187256.filter,tp,LOCATION_EXTRA,0,nil,e,tp)
local ct=c:GetOverlayGroup():GetClassCount(Card.GetCode)
......
......@@ -14,6 +14,14 @@ function c29724053.initial_effect(c)
e2:SetTargetRange(1,1)
e2:SetTarget(c29724053.sumlimit)
c:RegisterEffect(e2)
--
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD)
e3:SetRange(LOCATION_SZONE)
e3:SetCode(29724053)
e3:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e3:SetTargetRange(1,1)
c:RegisterEffect(e3)
if c29724053.global_check==nil then
c29724053.global_check=true
c29724053[0]=3
......
......@@ -58,6 +58,8 @@ function c31531170.pendop(e,tp,eg,ep,ev,re,r,rp,c,sg,og)
if lscale>rscale then lscale,rscale=rscale,lscale end
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
if Duel.IsPlayerAffectedByEffect(tp,59822133) then ft=1 end
local ect=c29724053 and Duel.IsPlayerAffectedByEffect(tp,29724053) and c29724053[tp]
if ect~=nil then ft=math.min(ft,ect) end
if og then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=og:FilterSelect(tp,aux.PConditionFilter,1,ft,nil,e,tp,lscale,rscale)
......
......@@ -43,8 +43,10 @@ function c57734012.filter1(c,e,tp)
local m=_G["c"..c:GetCode()]
if not m then return false end
local no=m.xyz_number
local ect=c29724053 and Duel.IsPlayerAffectedByEffect(tp,29724053) and c29724053[tp]
return no and no>=101 and no<=107 and c:IsSetCard(0x48) and not c:IsSetCard(0x1048)
and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
and (not ect or ect>1 or c:IsLocation(LOCATION_GRAVE))
and Duel.IsExistingMatchingCard(c57734012.filter2,tp,LOCATION_EXTRA,0,1,nil,e,tp,c,no)
end
function c57734012.filter2(c,e,tp,mc,no)
......
......@@ -1559,7 +1559,7 @@ function Auxiliary.PendOperation()
else
tg=Duel.GetMatchingGroup(Auxiliary.PConditionFilter,tp,LOCATION_HAND+LOCATION_EXTRA,0,nil,e,tp,lscale,rscale)
end
local ect=c29724053 and c29724053[tp]
local ect=c29724053 and Duel.IsPlayerAffectedByEffect(tp,29724053) and c29724053[tp]
if ect and (ect<=0 or ect>ft) then ect=nil end
if ect==nil or tg:FilterCount(Card.IsLocation,nil,LOCATION_EXTRA)<=ect then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
......
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