Commit 23347a5f authored by POLYMER's avatar POLYMER

fix

parent fa2e80c6
......@@ -19,14 +19,14 @@ function cm.initial_effect(c)
e2:SetTarget(cm.costtg)
e2:SetOperation(cm.costop)
c:RegisterEffect(e2)
Duel.AddCustomActivityCounter(m,ACTIVITY_CHAIN,cm.chainfilter)
--Duel.AddCustomActivityCounter(m,ACTIVITY_CHAIN,cm.chainfilter)
if not cm.global_check then
cm.global_check=true
local ge1=Effect.CreateEffect(c)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge1:SetCode(EVENT_CHAINING)
ge1:SetOperation(cm.checkop)
--Duel.RegisterEffect(ge1,0)
Duel.RegisterEffect(ge1,0)
end
end
cm.traveler_saga=true
......@@ -49,7 +49,8 @@ function cm.costchk(e,te,tp)
end
function cm.costtg(e,te,tp)
e:SetLabelObject(te)
return te:GetHandler() and Duel.GetCustomActivityCount(m,tp,ACTIVITY_CHAIN)~=0 and te:GetActivateLocation()&LOCATION_ONFIELD==0 --and not te:GetHandler():IsOnField() and not te:IsHasType(EFFECT_TYPE_ACTIVATE)
--Duel.GetCustomActivityCount(m,tp,ACTIVITY_CHAIN)~=0
return te:GetHandler() and Duel.GetFlagEffect(tp,m)~=0 and not te:GetHandler():IsOnField() and not te:IsHasType(EFFECT_TYPE_ACTIVATE) --and te:GetActivateLocation()&LOCATION_ONFIELD==0
end
function cm.costop(e,tp,eg,ep,ev,re,r,rp)
if cm[0] then return end
......
......@@ -55,8 +55,10 @@ function cm.SelectSubGroup(g,tp,f,cancelable,min,max,...)
local sg=Group.CreateGroup()
local fg=Duel.GrabSelectedCard()
if #fg>max or min>max or #(g+fg)<min then return nil end
for tc in aux.Next(fg) do
fg:SelectUnselect(sg,tp,false,false,min,max)
if not check then
for tc in aux.Next(fg) do
fg:SelectUnselect(sg,tp,false,false,min,max)
end
end
sg:Merge(fg)
local mg,iisg,tmp,stop,iter,ctab,rtab,gtab
......
......@@ -119,6 +119,7 @@ function s.indop(e,tp,eg,ep,ev,re,r,rp)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetDescription(aux.Stringid(id,3))
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_IMMUNE_EFFECT)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CLIENT_HINT)
e2:SetRange(LOCATION_MZONE)
......
......@@ -69,17 +69,17 @@ function c40008627.filter(c,e,tp,rk)
return c:IsRank(rk) and c:IsRace(RACE_MACHINE)
and e:GetHandler():IsCanBeXyzMaterial(c)
and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_XYZ,tp,false,false)
and Duel.GetLocationCountFromEx(tp,tp,e:GetHandler(),c)>0
end
function c40008627.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return Duel.GetLocationCountFromEx(tp,tp,c)>0
and aux.MustMaterialCheck(c,tp,EFFECT_MUST_BE_XMATERIAL)
if chk==0 then return aux.MustMaterialCheck(c,tp,EFFECT_MUST_BE_XMATERIAL)
and Duel.IsExistingMatchingCard(c40008627.filter,tp,LOCATION_EXTRA,0,1,nil,e,tp,e:GetHandler():GetRank()) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA)
end
function c40008627.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if Duel.GetLocationCountFromEx(tp,tp,c)>0 and c:IsFaceup()
if c:IsFaceup()
and c:IsRelateToEffect(e) and c:IsControler(tp) and not c:IsImmuneToEffect(e)
and aux.MustMaterialCheck(c,tp,EFFECT_MUST_BE_XMATERIAL) 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