Commit fccd961b authored by Nemo Ma's avatar Nemo Ma

fix

parent 11c6c560
......@@ -16,7 +16,7 @@ function cm.initial_effect(c)
c:RegisterEffect(e1)
end
function cm.filter(c,tp)
return _G["c"..c:GetOriginalCode()].traveler_saga and ((c:CheckActivateEffect(false,false,false)~=nil and Duel.GetLocationCount(tp,LOCATION_SZONE)>0) or (c:IsType(TYPE_CONTINUOUS) and c:GetActivateEffect():IsActivatable(tp)) or (c:IsType(TYPE_FIELD) and c:GetActivateEffect():IsActivatable(tp,true,true)))
return (_G["c"..c:GetOriginalCode()] and _G["c"..c:GetOriginalCode()].traveler_saga) and ((c:CheckActivateEffect(false,false,false)~=nil and Duel.GetLocationCount(tp,LOCATION_SZONE)>0) or (c:IsType(TYPE_CONTINUOUS) and c:GetActivateEffect():IsActivatable(tp)) or (c:IsType(TYPE_FIELD) and c:GetActivateEffect():IsActivatable(tp,true,true)))
end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
......
......@@ -45,7 +45,7 @@ function cm.valcheck(e,c)
if #g>0 then e:SetLabel(g:GetClassCount(Card.GetCode)) end
end
function cm.filter(c)
return _G["c"..c:GetOriginalCode()].traveler_saga and c:IsAbleToDeckAsCost()
return (_G["c"..c:GetOriginalCode()] and _G["c"..c:GetOriginalCode()].traveler_saga) and c:IsAbleToDeckAsCost()
end
function cm.costchk(e,te,tp)
return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_ONFIELD+LOCATION_GRAVE,0,3,nil)
......
......@@ -23,6 +23,7 @@ function cm.initial_effect(c)
--remain field
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e3:SetCode(EFFECT_REMAIN_FIELD)
c:RegisterEffect(e3)
--addition
......
......@@ -23,6 +23,7 @@ function cm.initial_effect(c)
--remain field
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e3:SetCode(EFFECT_REMAIN_FIELD)
c:RegisterEffect(e3)
--addition
......
......@@ -25,6 +25,7 @@ function cm.initial_effect(c)
--remain field
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e3:SetCode(EFFECT_REMAIN_FIELD)
c:RegisterEffect(e3)
--addition
......
......@@ -25,6 +25,7 @@ function cm.initial_effect(c)
--remain field
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e3:SetCode(EFFECT_REMAIN_FIELD)
c:RegisterEffect(e3)
--addition
......
......@@ -23,6 +23,7 @@ function cm.initial_effect(c)
--remain field
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e3:SetCode(EFFECT_REMAIN_FIELD)
c:RegisterEffect(e3)
--addition
......
......@@ -25,6 +25,7 @@ function cm.initial_effect(c)
--remain field
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e3:SetCode(EFFECT_REMAIN_FIELD)
c:RegisterEffect(e3)
--addition
......
......@@ -60,7 +60,7 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp)
if tc:IsRelateToEffect(e) then
Duel.SendtoHand(tc,nil,REASON_EFFECT)
end
local e1==Duel.IsPlayerAffectedByEffect(tp,m+1)
local e1=Duel.IsPlayerAffectedByEffect(tp,m+1)
if e1 then
e1:Reset()
if Duel.GetFieldGroupCount(tp,0,LOCATION_HAND)<=0 or not Duel.SelectYesNo(tp,aux.Stringid(m,1)) then return end
......
......@@ -2,18 +2,8 @@
function c29065606.initial_effect(c)
c:SetSPSummonOnce(29065606)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterBoolFunction(Card.IsRace,RACE_MACHINE),5,2)
aux.AddXyzProcedure(c,aux.FilterBoolFunction(Card.IsRace,RACE_MACHINE),5,2,c29065606.ovfilter,aux.Stringid(29065606,1))
c:EnableReviveLimit()
--xyz summon
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_SPSUMMON_PROC)
e1:SetRange(LOCATION_EXTRA)
e1:SetValue(SUMMON_TYPE_XYZ)
e1:SetCondition(c29065606.sprcon)
e1:SetOperation(c29065606.sprop)
c:RegisterEffect(e1)
--Equip
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
......@@ -33,24 +23,12 @@ function c29065606.initial_effect(c)
e3:SetOperation(c29065606.desop)
c:RegisterEffect(e3)
end
function c29065606.xyzfil(c)
return c:IsCanOverlay() and c:IsSetCard(0x87ad) and c:IsLevel(4)
end
function c29065606.sprcon(e,c)
if c==nil then return true end
local tp=c:GetControler()
return Duel.IsExistingMatchingCard(c29065606.xyzfil,tp,LOCATION_MZONE,0,1,nil) and Duel.GetCurrentPhase()==PHASE_MAIN2
function c29065606.ovfilter(c)
return c:IsFaceup() and c:IsSetCard(0x87ad) and c:IsLevel(4) and Duel.GetCurrentPhase()==PHASE_MAIN2
end
function c29065606.eqfil(c,tc)
return c:GetPreviousEquipTarget()==tc
end
function c29065606.sprop(e,tp,eg,ep,ev,re,r,rp,c)
local c=e:GetHandler()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_XMATERIAL)
local g=Duel.SelectMatchingCard(tp,c29065606.xyzfil,tp,LOCATION_MZONE,0,1,1,nil)
c:SetMaterial(g)
Duel.Overlay(c,g)
end
function c29065606.eqcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_XYZ) and e:GetHandler():GetMaterial():Filter(Card.IsSetCard,nil,0x7ad):GetCount()>0
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