Commit a05cc06e authored by Tachibana's avatar Tachibana

1145141919810

parent b115edf5
...@@ -3,7 +3,3 @@ local m=26821000 ...@@ -3,7 +3,3 @@ local m=26821000
local cm=_G["c"..m] local cm=_G["c"..m]
cm.named_with_SliverScene=1 cm.named_with_SliverScene=1
Duel.LoadScript("c26800000.lua") Duel.LoadScript("c26800000.lua")
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
...@@ -27,10 +27,6 @@ function cm.initial_effect(c) ...@@ -27,10 +27,6 @@ function cm.initial_effect(c)
e2:SetOperation(cm.damop) e2:SetOperation(cm.damop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.spfilter(c) function cm.spfilter(c)
return c:IsCode(26821000) and c:IsAbleToGraveAsCost() return c:IsCode(26821000) and c:IsAbleToGraveAsCost()
end end
......
...@@ -27,10 +27,6 @@ function cm.initial_effect(c) ...@@ -27,10 +27,6 @@ function cm.initial_effect(c)
e2:SetOperation(cm.op) e2:SetOperation(cm.op)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.filter(c) function cm.filter(c)
return (c:IsFaceup() or c:IsLocation(LOCATION_GRAVE)) and c:IsCode(26821000) return (c:IsFaceup() or c:IsLocation(LOCATION_GRAVE)) and c:IsCode(26821000)
end end
......
...@@ -30,10 +30,6 @@ function cm.initial_effect(c) ...@@ -30,10 +30,6 @@ function cm.initial_effect(c)
e2:SetOperation(cm.rmop) e2:SetOperation(cm.rmop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.spcost(e,tp,eg,ep,ev,re,r,rp,chk) function cm.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) and Amana.SliverCost(e,tp,eg,ep,ev,re,r,rp,0) end if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) and Amana.SliverCost(e,tp,eg,ep,ev,re,r,rp,0) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST) e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......
...@@ -24,10 +24,6 @@ function cm.initial_effect(c) ...@@ -24,10 +24,6 @@ function cm.initial_effect(c)
e2:SetOperation(cm.operation) e2:SetOperation(cm.operation)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.cfilter(c) function cm.cfilter(c)
return c:IsFaceup() and c:IsCode(26821000) return c:IsFaceup() and c:IsCode(26821000)
end end
...@@ -35,7 +31,7 @@ function cm.con(e,tp,eg,ep,ev,re,r,rp) ...@@ -35,7 +31,7 @@ function cm.con(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_ONFIELD,0,1,nil) return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_ONFIELD,0,1,nil)
end end
function cm.filter(c) function cm.filter(c)
return (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) and c:IsAbleToHand() return c.named_with_SliverScene and c:IsAbleToHand()
end end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk) function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_DECK,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_DECK,0,1,nil) end
...@@ -66,7 +62,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -66,7 +62,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
end end
function cm.actop(e,tp,eg,ep,ev,re,r,rp) function cm.actop(e,tp,eg,ep,ev,re,r,rp)
local rc=re:GetHandler() local rc=re:GetHandler()
if re:IsActiveType(TYPE_MONSTER) and cm.IsSliverScene(rc) and ep==tp then if re:IsActiveType(TYPE_MONSTER) and rc.named_with_SliverScene and ep==tp then
Duel.SetChainLimit(cm.chainlm) Duel.SetChainLimit(cm.chainlm)
end end
end end
......
...@@ -27,10 +27,6 @@ function cm.initial_effect(c) ...@@ -27,10 +27,6 @@ function cm.initial_effect(c)
e4:SetOperation(cm.operation) e4:SetOperation(cm.operation)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.condition(e,tp,eg,ep,ev,re,r,rp) function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetAttacker():IsControler(1-tp) return Duel.GetAttacker():IsControler(1-tp)
end end
...@@ -79,5 +75,5 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -79,5 +75,5 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.RegisterEffect(e2,tp) Duel.RegisterEffect(e2,tp)
end end
function cm.efftg(e,c) function cm.efftg(e,c)
return c:IsType(TYPE_MONSTER) and (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) return c:IsType(TYPE_MONSTER) and c.named_with_SliverScene
end end
...@@ -27,12 +27,8 @@ function cm.initial_effect(c) ...@@ -27,12 +27,8 @@ function cm.initial_effect(c)
e2:SetOperation(cm.desop) e2:SetOperation(cm.desop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.spfilter(c) function cm.spfilter(c)
return (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) and c:IsType(TYPE_MONSTER) return c.named_with_SliverScene and c:IsType(TYPE_MONSTER)
end end
function cm.spcon(e,c) function cm.spcon(e,c)
if c==nil then return true end if c==nil then return true end
......
...@@ -27,10 +27,6 @@ function cm.initial_effect(c) ...@@ -27,10 +27,6 @@ function cm.initial_effect(c)
e2:SetOperation(cm.tgop) e2:SetOperation(cm.tgop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.spcon(e,c) function cm.spcon(e,c)
if c==nil then return true end if c==nil then return true end
return Duel.GetFieldGroupCount(c:GetControler(),0,LOCATION_MZONE)>0 return Duel.GetFieldGroupCount(c:GetControler(),0,LOCATION_MZONE)>0
......
...@@ -28,10 +28,6 @@ function cm.initial_effect(c) ...@@ -28,10 +28,6 @@ function cm.initial_effect(c)
e2:SetOperation(cm.recop) e2:SetOperation(cm.recop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.cfilter(c) function cm.cfilter(c)
return c:IsFaceup() and c:IsCode(26821000) return c:IsFaceup() and c:IsCode(26821000)
end end
...@@ -69,7 +65,7 @@ function cm.thcost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -69,7 +65,7 @@ function cm.thcost(e,tp,eg,ep,ev,re,r,rp,chk)
aux.bfgcost(e,tp,eg,ep,ev,re,r,rp,1) aux.bfgcost(e,tp,eg,ep,ev,re,r,rp,1)
end end
function cm.recfilter(c) function cm.recfilter(c)
return c:IsFaceup() and (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) return c:IsFaceup() and c.named_with_SliverScene
end end
function cm.rectg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.rectg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.recfilter,tp,LOCATION_MZONE,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(cm.recfilter,tp,LOCATION_MZONE,0,1,nil) end
......
...@@ -27,10 +27,6 @@ function cm.initial_effect(c) ...@@ -27,10 +27,6 @@ function cm.initial_effect(c)
e2:SetOperation(cm.atop) e2:SetOperation(cm.atop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.cfilter(c) function cm.cfilter(c)
return c:IsFaceup() and c:IsCode(26821000) return c:IsFaceup() and c:IsCode(26821000)
end end
...@@ -38,7 +34,7 @@ function cm.con(e,tp,eg,ep,ev,re,r,rp) ...@@ -38,7 +34,7 @@ function cm.con(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_ONFIELD,0,1,nil) and Duel.GetTurnPlayer()~=tp and aux.bpcon() return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_ONFIELD,0,1,nil) and Duel.GetTurnPlayer()~=tp and aux.bpcon()
end end
function cm.filter(c,e,tp) function cm.filter(c,e,tp)
return (cm.IsSliverScene(c) or c:IsCode(26821000,26821999) or c:IsControler(1-tp)) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return (c.named_with_SliverScene or c:IsControler(1-tp)) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function cm.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and cm.filter(chkc,e,tp) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and cm.filter(chkc,e,tp) end
...@@ -78,5 +74,5 @@ function cm.atop(e,tp,eg,ep,ev,re,r,rp) ...@@ -78,5 +74,5 @@ function cm.atop(e,tp,eg,ep,ev,re,r,rp)
Duel.RegisterEffect(e1,tp) Duel.RegisterEffect(e1,tp)
end end
function cm.atlimit(e,c) function cm.atlimit(e,c)
return (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) and c:IsFaceup() return c.named_with_SliverScene and c:IsFaceup()
end end
...@@ -28,10 +28,6 @@ function cm.initial_effect(c) ...@@ -28,10 +28,6 @@ function cm.initial_effect(c)
e2:SetOperation(cm.tgop) e2:SetOperation(cm.tgop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.spcon(e,c) function cm.spcon(e,c)
if c==nil then return true end if c==nil then return true end
return Duel.GetFieldGroupCount(c:GetControler(),LOCATION_MZONE,0)==0 return Duel.GetFieldGroupCount(c:GetControler(),LOCATION_MZONE,0)==0
......
...@@ -33,10 +33,6 @@ function cm.initial_effect(c) ...@@ -33,10 +33,6 @@ function cm.initial_effect(c)
e2:SetOperation(cm.rmop) e2:SetOperation(cm.rmop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.spcon(e,tp,eg,ep,ev,re,r,rp) function cm.spcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_LINK) return e:GetHandler():IsSummonType(SUMMON_TYPE_LINK)
end end
......
...@@ -39,12 +39,8 @@ end ...@@ -39,12 +39,8 @@ end
function cm.splimit(e,se,sp,st) function cm.splimit(e,se,sp,st)
return se:IsHasType(EFFECT_TYPE_ACTIONS) return se:IsHasType(EFFECT_TYPE_ACTIONS)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.dfilter(c) function cm.dfilter(c)
return c:IsFacedown() or not (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) return c:IsFacedown() or not c.named_with_SliverScene
end end
function cm.condition(e,tp,eg,ep,ev,re,r,rp) function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return not Duel.IsExistingMatchingCard(cm.dfilter,tp,LOCATION_MZONE,0,1,nil) return not Duel.IsExistingMatchingCard(cm.dfilter,tp,LOCATION_MZONE,0,1,nil)
......
...@@ -20,17 +20,13 @@ function cm.initial_effect(c) ...@@ -20,17 +20,13 @@ function cm.initial_effect(c)
e2:SetOperation(cm.operation) e2:SetOperation(cm.operation)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk) function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) and Amana.SliverCost(e,tp,eg,ep,ev,re,r,rp,0) end if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) and Amana.SliverCost(e,tp,eg,ep,ev,re,r,rp,0) end
Amana.SliverCost(e,tp,eg,ep,ev,re,r,rp,1) Amana.SliverCost(e,tp,eg,ep,ev,re,r,rp,1)
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST) e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
end end
function cm.cfilter(c) function cm.cfilter(c)
return c:IsFacedown() or not (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) return c:IsFacedown() or not c.named_with_SliverScene
end end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk) function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil) end
...@@ -41,7 +37,7 @@ function cm.target(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -41,7 +37,7 @@ function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
end end
end end
function cm.filter(c,e,tp) function cm.filter(c,e,tp)
return c:IsType(TYPE_MONSTER) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) return c:IsType(TYPE_MONSTER) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and c.named_with_SliverScene
end end
function cm.operation(e,tp,eg,ep,ev,re,r,rp) function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local sg=Duel.GetMatchingGroup(cm.cfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil) local sg=Duel.GetMatchingGroup(cm.cfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil)
......
...@@ -30,10 +30,6 @@ function cm.initial_effect(c) ...@@ -30,10 +30,6 @@ function cm.initial_effect(c)
e3:SetOperation(cm.thop) e3:SetOperation(cm.thop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.excost(e,tp,eg,ep,ev,re,r,rp,chk) function cm.excost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) and Amana.SliverCost(e,tp,eg,ep,ev,re,r,rp,0) end if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) and Amana.SliverCost(e,tp,eg,ep,ev,re,r,rp,0) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST) e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
...@@ -52,7 +48,7 @@ function cm.exop(e,tp,eg,ep,ev,re,r,rp) ...@@ -52,7 +48,7 @@ function cm.exop(e,tp,eg,ep,ev,re,r,rp)
Duel.ShuffleExtra(1-tp) Duel.ShuffleExtra(1-tp)
end end
function cm.filter(c) function cm.filter(c)
return (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) and c:IsAbleToHand() return c.named_with_SliverScene and c:IsAbleToHand()
end end
function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and cm.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and cm.filter(chkc) end
......
...@@ -31,12 +31,8 @@ function cm.initial_effect(c) ...@@ -31,12 +31,8 @@ function cm.initial_effect(c)
e4:SetCode(EVENT_SPSUMMON_SUCCESS) e4:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.cfilter(c,g) function cm.cfilter(c,g)
return c:IsFaceup() and (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) return c:IsFaceup() and c.named_with_SliverScene
and g:IsContains(c) and not c:IsStatus(STATUS_BATTLE_DESTROYED) and g:IsContains(c) and not c:IsStatus(STATUS_BATTLE_DESTROYED)
end end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk) function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
...@@ -47,7 +43,7 @@ function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -47,7 +43,7 @@ function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.Release(g,REASON_COST) Duel.Release(g,REASON_COST)
end end
function cm.mfilter(c) function cm.mfilter(c)
return (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) and c:IsLinkType(TYPE_MONSTER) return c.named_with_SliverScene and c:IsLinkType(TYPE_MONSTER)
end end
function cm.filter(c,tp) function cm.filter(c,tp)
return c:GetSummonPlayer()==tp and c:IsFaceup() return c:GetSummonPlayer()==tp and c:IsFaceup()
......
...@@ -26,12 +26,8 @@ function cm.initial_effect(c) ...@@ -26,12 +26,8 @@ function cm.initial_effect(c)
e2:SetOperation(cm.damop) e2:SetOperation(cm.damop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.cdfilter(c) function cm.cdfilter(c)
return c:IsFaceup() and (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) and c:GetCode()~=m return c:IsFaceup() and c.named_with_SliverScene and c:GetCode()~=m
end end
function cm.cspcon(e,c) function cm.cspcon(e,c)
if c==nil then return true end if c==nil then return true end
......
...@@ -28,12 +28,8 @@ function cm.initial_effect(c) ...@@ -28,12 +28,8 @@ function cm.initial_effect(c)
e2:SetOperation(cm.operation) e2:SetOperation(cm.operation)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.cfilter(c) function cm.cfilter(c)
return c:IsFaceup() and (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) and not c:IsCode(m) return c:IsFaceup() and c.named_with_SliverScene and not c:IsCode(m)
end end
function cm.spcon(e,tp,eg,ep,ev,re,r,rp) function cm.spcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_MZONE,0,1,nil) return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_MZONE,0,1,nil)
...@@ -56,7 +52,7 @@ function cm.condition(e,tp,eg,ep,ev,re,r,rp) ...@@ -56,7 +52,7 @@ function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return rp==1-tp and Duel.IsExistingMatchingCard(cm.efilter,tp,LOCATION_ONFIELD,0,1,nil) return rp==1-tp and Duel.IsExistingMatchingCard(cm.efilter,tp,LOCATION_ONFIELD,0,1,nil)
end end
function cm.filter(c,e,tp) function cm.filter(c,e,tp)
return (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) and c:IsType(TYPE_MONSTER) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c.named_with_SliverScene and c:IsType(TYPE_MONSTER) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk) function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
......
...@@ -25,10 +25,6 @@ function cm.initial_effect(c) ...@@ -25,10 +25,6 @@ function cm.initial_effect(c)
e4:SetOperation(cm.zop) e4:SetOperation(cm.zop)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.spcon(e,tp,eg,ep,ev,re,r,rp) function cm.spcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetFieldGroupCount(tp,LOCATION_MZONE,0)==0 return Duel.GetFieldGroupCount(tp,LOCATION_MZONE,0)==0
end end
......
...@@ -27,10 +27,6 @@ function cm.initial_effect(c) ...@@ -27,10 +27,6 @@ function cm.initial_effect(c)
e2:SetOperation(cm.damop) e2:SetOperation(cm.damop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.hspfilter(c,ft,tp) function cm.hspfilter(c,ft,tp)
return c:IsType(TYPE_MONSTER) and c:IsRace(RACE_BEAST) return c:IsType(TYPE_MONSTER) and c:IsRace(RACE_BEAST)
and (ft>0 or (c:IsControler(tp) and c:GetSequence()<5)) and (c:IsControler(tp) or c:IsFaceup()) and (ft>0 or (c:IsControler(tp) and c:GetSequence()<5)) and (c:IsControler(tp) or c:IsFaceup())
...@@ -53,7 +49,7 @@ function cm.damcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -53,7 +49,7 @@ function cm.damcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_ONFIELD,0,1,nil) return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_ONFIELD,0,1,nil)
end end
function cm.damfilter(c) function cm.damfilter(c)
return (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) and c:IsFaceup() return c.named_with_SliverScene and c:IsFaceup()
end end
function cm.damtg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.damtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.damfilter,tp,LOCATION_MZONE,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(cm.damfilter,tp,LOCATION_MZONE,0,1,nil) end
......
...@@ -26,12 +26,8 @@ function cm.initial_effect(c) ...@@ -26,12 +26,8 @@ function cm.initial_effect(c)
e2:SetOperation(cm.sumop) e2:SetOperation(cm.sumop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.rfilter(c) function cm.rfilter(c)
return cm.IsSliverScene(c) or c:IsCode(26821000,26821999) return c.named_with_SliverScene
end end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk) function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckReleaseGroup(tp,cm.rfilter,1,nil) and Amana.SliverCost(e,tp,eg,ep,ev,re,r,rp,0) end if chk==0 then return Duel.CheckReleaseGroup(tp,cm.rfilter,1,nil) and Amana.SliverCost(e,tp,eg,ep,ev,re,r,rp,0) end
...@@ -75,5 +71,5 @@ function cm.ntcon(e,c,minc) ...@@ -75,5 +71,5 @@ function cm.ntcon(e,c,minc)
return minc==0 and Duel.GetLocationCount(c:GetControler(),LOCATION_MZONE)>0 return minc==0 and Duel.GetLocationCount(c:GetControler(),LOCATION_MZONE)>0
end end
function cm.nttg(e,c) function cm.nttg(e,c)
return c:IsLevel(7) and (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) return c:IsLevel(7) and c.named_with_SliverScene
end end
...@@ -24,12 +24,8 @@ function cm.initial_effect(c) ...@@ -24,12 +24,8 @@ function cm.initial_effect(c)
e2:SetOperation(cm.immop) e2:SetOperation(cm.immop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.tgfilter(c) function cm.tgfilter(c)
return (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) and c:IsAbleToGrave() return c.named_with_SliverScene and c:IsAbleToGrave()
end end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk) function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.tgfilter,tp,LOCATION_DECK+LOCATION_EXTRA,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(cm.tgfilter,tp,LOCATION_DECK+LOCATION_EXTRA,0,1,nil) end
...@@ -70,5 +66,5 @@ function cm.immop(e,tp,eg,ep,ev,re,r,rp) ...@@ -70,5 +66,5 @@ function cm.immop(e,tp,eg,ep,ev,re,r,rp)
Duel.RegisterEffect(e2,tp) Duel.RegisterEffect(e2,tp)
end end
function cm.indtg(e,c) function cm.indtg(e,c)
return (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) return c.named_with_SliverScene
end end
...@@ -29,12 +29,8 @@ function cm.initial_effect(c) ...@@ -29,12 +29,8 @@ function cm.initial_effect(c)
e2:SetOperation(cm.desop) e2:SetOperation(cm.desop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.spfilter(c) function cm.spfilter(c)
return (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) and c:IsType(TYPE_MONSTER) and c:IsAbleToRemoveAsCost() return c.named_with_SliverScene and c:IsType(TYPE_MONSTER) and c:IsAbleToRemoveAsCost()
end end
function cm.spcon(e,c) function cm.spcon(e,c)
if c==nil then return true end if c==nil then return true end
......
...@@ -27,10 +27,6 @@ function cm.initial_effect(c) ...@@ -27,10 +27,6 @@ function cm.initial_effect(c)
e5:SetOperation(cm.disop) e5:SetOperation(cm.disop)
c:RegisterEffect(e5) c:RegisterEffect(e5)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.spcon(e,c) function cm.spcon(e,c)
if c==nil then return true end if c==nil then return true end
return Duel.GetLocationCount(c:GetControler(),LOCATION_MZONE)>0 return Duel.GetLocationCount(c:GetControler(),LOCATION_MZONE)>0
......
...@@ -29,17 +29,13 @@ function cm.initial_effect(c) ...@@ -29,17 +29,13 @@ function cm.initial_effect(c)
e2:SetCode(EVENT_SPSUMMON_SUCCESS) e2:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk) function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsDiscardable() and Amana.SliverCost(e,tp,eg,ep,ev,re,r,rp,0) end if chk==0 then return e:GetHandler():IsDiscardable() and Amana.SliverCost(e,tp,eg,ep,ev,re,r,rp,0) end
Duel.SendtoGrave(e:GetHandler(),REASON_COST+REASON_DISCARD) Duel.SendtoGrave(e:GetHandler(),REASON_COST+REASON_DISCARD)
Amana.SliverCost(e,tp,eg,ep,ev,re,r,rp,1) Amana.SliverCost(e,tp,eg,ep,ev,re,r,rp,1)
end end
function cm.filter(c) function cm.filter(c)
return (c:IsLocation(LOCATION_GRAVE) or c:IsFaceup()) and (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) and not c:IsCode(m) and c:IsAbleToHand() return (c:IsLocation(LOCATION_GRAVE) or c:IsFaceup()) and c.named_with_SliverScene and not c:IsCode(m) and c:IsAbleToHand()
end end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function cm.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_GRAVE+LOCATION_REMOVED,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_GRAVE+LOCATION_REMOVED,0,1,nil) end
...@@ -54,7 +50,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -54,7 +50,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp,chk)
end end
end end
function cm.spfilter(c,e,tp) function cm.spfilter(c,e,tp)
return (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) and c:IsType(TYPE_MONSTER) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c.named_with_SliverScene and c:IsType(TYPE_MONSTER) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and cm.spfilter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and cm.spfilter(chkc) end
......
...@@ -28,12 +28,8 @@ function cm.initial_effect(c) ...@@ -28,12 +28,8 @@ function cm.initial_effect(c)
e2:SetOperation(cm.setop) e2:SetOperation(cm.setop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.cfilter(c) function cm.cfilter(c)
return c:IsFaceup() and (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) return c:IsFaceup() and c.named_with_SliverScene
end end
function cm.condition(e,tp,eg,ep,ev,re,r,rp) function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_MZONE,0,1,nil) return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_MZONE,0,1,nil)
......
...@@ -28,13 +28,9 @@ function cm.initial_effect(c) ...@@ -28,13 +28,9 @@ function cm.initial_effect(c)
e2:SetOperation(cm.ssop) e2:SetOperation(cm.ssop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.spcon(e,tp,eg,ep,ev,re,r,rp) function cm.spcon(e,tp,eg,ep,ev,re,r,rp)
local rc=re:GetHandler() local rc=re:GetHandler()
return rp==tp and (cm.IsSliverScene(rc) or rc:IsCode(26821000,26821999)) return rp==tp and rc.named_with_SliverScene
end end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
...@@ -49,7 +45,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -49,7 +45,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function cm.ssfilter(c,e,tp) function cm.ssfilter(c,e,tp)
return (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c.named_with_SliverScene and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function cm.sstg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.sstg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
......
...@@ -32,12 +32,8 @@ function cm.initial_effect(c) ...@@ -32,12 +32,8 @@ function cm.initial_effect(c)
e4:SetOperation(cm.leaveop) e4:SetOperation(cm.leaveop)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.thfilter(c) function cm.thfilter(c)
return (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand() return c.named_with_SliverScene and c:IsType(TYPE_MONSTER) and c:IsAbleToHand()
end end
function cm.activate(e,tp,eg,ep,ev,re,r,rp) function cm.activate(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(cm.thfilter,tp,LOCATION_DECK,0,nil) local g=Duel.GetMatchingGroup(cm.thfilter,tp,LOCATION_DECK,0,nil)
...@@ -55,7 +51,7 @@ function cm.con(e,tp,eg,ep,ev,re,r,rp) ...@@ -55,7 +51,7 @@ function cm.con(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_ONFIELD,0,1,nil) return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_ONFIELD,0,1,nil)
end end
function cm.drtgfilter(c) function cm.drtgfilter(c)
return c:IsAbleToDeck() and (cm.IsSliverScene(c) or c:IsCode(26821000,26821999)) return c:IsAbleToDeck() and c.named_with_SliverScene
end end
function cm.drtg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.drtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsPlayerCanDraw(tp,1) and Duel.IsExistingMatchingCard(cm.drtgfilter,tp,LOCATION_HAND,0,1,nil) end if chk==0 then return Duel.IsPlayerCanDraw(tp,1) and Duel.IsExistingMatchingCard(cm.drtgfilter,tp,LOCATION_HAND,0,1,nil) end
......
...@@ -33,10 +33,6 @@ function cm.initial_effect(c) ...@@ -33,10 +33,6 @@ function cm.initial_effect(c)
e2:SetOperation(cm.ssop) e2:SetOperation(cm.ssop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.IsSliverScene(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_SliverScene
end
function cm.spcon(e,tp,eg,ep,ev,re,r,rp) function cm.spcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()~=tp return Duel.GetTurnPlayer()~=tp
end end
......
--银幕白狐衍生物
local m=26821999
local cm=_G["c"..m]
Duel.LoadScript("c81000000.lua")
cm.named_with_SliverScene=1
\ No newline at end of file
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