Commit a47e05f5 authored by Tachibana's avatar Tachibana

eme

parent 85b32e31
Pipeline #6240 passed with stages
in 30 minutes and 49 seconds
No preview for this file type
...@@ -3,12 +3,13 @@ local m=66915000 ...@@ -3,12 +3,13 @@ local m=66915000
local cm=_G["c"..m] local cm=_G["c"..m]
function cm.initial_effect(c) function cm.initial_effect(c)
c:EnableReviveLimit() c:EnableReviveLimit()
--spsummon condition --splimit
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_SPSUMMON_CONDITION) e1:SetCode(EFFECT_SPSUMMON_CONDITION)
c:RegisterEffect(e1) e1:SetValue(cm.splimit)
c:RegisterEffect(e1)
--equip --equip
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,0)) e2:SetDescription(aux.Stringid(m,0))
...@@ -40,6 +41,10 @@ function cm.initial_effect(c) ...@@ -40,6 +41,10 @@ function cm.initial_effect(c)
e3:SetOperation(cm.drop) e3:SetOperation(cm.drop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function cm.splimit(e,se,sp,st)
if not StarLight_from_K then return false end
return StarLight_from_K.Brightstarlight_Effect[se]
end
function cm.val(e,c) function cm.val(e,c)
return c:GetEquipCount()*100 return c:GetEquipCount()*100
end end
......
--璀璨的星辉 --璀璨的星辉
if not StarLight_from_K then
StarLight_from_K={}
StarLight_from_K.Brightstarlight_Effect={}
end
function c66915001.initial_effect(c) function c66915001.initial_effect(c)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE) e3:SetType(EFFECT_TYPE_SINGLE)
...@@ -14,6 +18,7 @@ function c66915001.initial_effect(c) ...@@ -14,6 +18,7 @@ function c66915001.initial_effect(c)
e1:SetTarget(c66915001.target) e1:SetTarget(c66915001.target)
e1:SetOperation(c66915001.spop) e1:SetOperation(c66915001.spop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
StarLight_from_K.Brightstarlight_Effect[e1]=true
--spsummon limit --spsummon limit
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD) e2:SetType(EFFECT_TYPE_FIELD)
...@@ -25,7 +30,7 @@ function c66915001.initial_effect(c) ...@@ -25,7 +30,7 @@ function c66915001.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c66915001.filter(c,e,tp) function c66915001.filter(c,e,tp)
return c:IsCanBeSpecialSummoned(e,0,tp,true,false) and (c:IsSetCard(0x1374) and not c:IsCode(66915073) and not c:IsCode(66915074) and not c:IsCode(66915075) and not c:IsCode(66915077)) and Duel.GetLocationCountFromEx(tp,tp,nil,c)>0 return c:IsCanBeSpecialSummoned(e,0,tp,false,false) and c:IsSetCard(0x1374) and Duel.GetLocationCountFromEx(tp,tp,nil,c)>0
end end
function c66915001.spcon(e,tp,eg,ep,ev,re,r,rp) function c66915001.spcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(c66915001.filters,tp,LOCATION_SZONE,0,1,nil) return Duel.IsExistingMatchingCard(c66915001.filters,tp,LOCATION_SZONE,0,1,nil)
...@@ -41,44 +46,11 @@ function c66915001.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -41,44 +46,11 @@ function c66915001.spop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c66915001.filter,tp,LOCATION_EXTRA,0,1,1,nil,e,tp) local g=Duel.SelectMatchingCard(tp,c66915001.filter,tp,LOCATION_EXTRA,0,1,1,nil,e,tp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,true,false,POS_FACEUP) Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
g:GetFirst():CompleteProcedure() g:GetFirst():CompleteProcedure()
Duel.Hint(HINT_MUSIC,0,aux.Stringid(66915001,1)) Duel.Hint(HINT_MUSIC,0,aux.Stringid(66915001,1))
end end
end end
function c66915001.seqcon(e,tp,eg,ep,ev,re,r,rp)
local seq=e:GetHandler():GetSequence()
if seq>4 then return false end
return (seq>0 and Duel.CheckLocation(tp,LOCATION_MZONE,seq-1))
or (seq<4 and Duel.CheckLocation(tp,LOCATION_MZONE,seq+1))
end
function c66915001.seqop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) or c:IsControler(1-tp) then return end
local seq=c:GetSequence()
if seq>4 then return end
if (seq>0 and Duel.CheckLocation(tp,LOCATION_MZONE,seq-1))
or (seq<4 and Duel.CheckLocation(tp,LOCATION_MZONE,seq+1)) then
local flag=0
if seq>0 and Duel.CheckLocation(tp,LOCATION_MZONE,seq-1) then flag=bit.replace(flag,0x1,seq-1) end
if seq<4 and Duel.CheckLocation(tp,LOCATION_MZONE,seq+1) then flag=bit.replace(flag,0x1,seq+1) end
flag=bit.bxor(flag,0xff)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOZONE)
local s=Duel.SelectDisableField(tp,1,LOCATION_MZONE,0,flag)
local nseq=0
if s==1 then nseq=0
elseif s==2 then nseq=1
elseif s==4 then nseq=2
elseif s==8 then nseq=3
else nseq=4 end
Duel.MoveSequence(c,nseq)
end
end
function c66915001.eftg(e,c)
local seq=c:GetSequence()
return c:IsType(TYPE_EFFECT) and c:IsSetCard(0x1374)
and seq<5 and math.abs(e:GetHandler():GetSequence()-seq)==1
end
function c66915001.sumlimit(e,c,sump,sumtype,sumpos,targetp) function c66915001.sumlimit(e,c,sump,sumtype,sumpos,targetp)
return c:IsLocation(LOCATION_EXTRA) and not c:IsSetCard(0x1374) return c:IsLocation(LOCATION_EXTRA) and not c:IsSetCard(0x1374)
end end
\ No newline at end of file
...@@ -3,11 +3,12 @@ local m=66915006 ...@@ -3,11 +3,12 @@ local m=66915006
local cm=_G["c"..m] local cm=_G["c"..m]
function cm.initial_effect(c) function cm.initial_effect(c)
c:EnableReviveLimit() c:EnableReviveLimit()
--spsummon condition --splimit
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_SPSUMMON_CONDITION) e1:SetCode(EFFECT_SPSUMMON_CONDITION)
e1:SetValue(cm.splimit)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--move --move
local e11=Effect.CreateEffect(c) local e11=Effect.CreateEffect(c)
...@@ -36,6 +37,10 @@ cm.material_type=TYPE_SYNCHRO ...@@ -36,6 +37,10 @@ cm.material_type=TYPE_SYNCHRO
function cm.seqfilter(c) function cm.seqfilter(c)
return c:IsFaceup() and c:IsSetCard(0x374) and c:IsType(TYPE_CONTINUOUS) and (c:IsType(TYPE_SPELL) or c:IsType(TYPE_TRAP)) return c:IsFaceup() and c:IsSetCard(0x374) and c:IsType(TYPE_CONTINUOUS) and (c:IsType(TYPE_SPELL) or c:IsType(TYPE_TRAP))
end end
function cm.splimit(e,se,sp,st)
if not StarLight_from_K then return false end
return StarLight_from_K.Brightstarlight_Effect[se]
end
function cm.tg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function cm.tg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_SZONE) and chkc:IsControler(tp) and cm.seqfilter(chkc) end if chkc then return chkc:IsLocation(LOCATION_SZONE) and chkc:IsControler(tp) and cm.seqfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(cm.seqfilter,tp,LOCATION_SZONE,0,1,nil) if chk==0 then return Duel.IsExistingTarget(cm.seqfilter,tp,LOCATION_SZONE,0,1,nil)
......
...@@ -3,12 +3,13 @@ local m=66915007 ...@@ -3,12 +3,13 @@ local m=66915007
local cm=_G["c"..m] local cm=_G["c"..m]
function cm.initial_effect(c) function cm.initial_effect(c)
c:EnableReviveLimit() c:EnableReviveLimit()
--cannot special summon --splimit
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_SPSUMMON_CONDITION) e1:SetCode(EFFECT_SPSUMMON_CONDITION)
c:RegisterEffect(e1) e1:SetValue(cm.splimit)
c:RegisterEffect(e1)
--special summon --special summon
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD) e2:SetType(EFFECT_TYPE_FIELD)
...@@ -38,6 +39,10 @@ end ...@@ -38,6 +39,10 @@ end
function cm.spfilter(c) function cm.spfilter(c)
return c:IsAbleToGraveAsCost() and c:IsSetCard(0x374) and (c:IsType(TYPE_SPELL+TYPE_CONTINUOUS) or c:IsType(TYPE_TRAP)) return c:IsAbleToGraveAsCost() and c:IsSetCard(0x374) and (c:IsType(TYPE_SPELL+TYPE_CONTINUOUS) or c:IsType(TYPE_TRAP))
end end
function cm.splimit(e,se,sp,st)
if not StarLight_from_K then return false end
return StarLight_from_K.Brightstarlight_Effect[se]
end
function cm.spcon(e,tp,eg,ep,ev,re,r,rp) function cm.spcon(e,tp,eg,ep,ev,re,r,rp)
local tp=e:GetHandler():GetControler() local tp=e:GetHandler():GetControler()
return not Duel.IsExistingMatchingCard(Card.IsFaceup,tp,LOCATION_MZONE,0,1,nil) and Duel.IsExistingMatchingCard(cm.spfilter,tp,LOCATION_HAND+LOCATION_SZONE,0,1,nil) return not Duel.IsExistingMatchingCard(Card.IsFaceup,tp,LOCATION_MZONE,0,1,nil) and Duel.IsExistingMatchingCard(cm.spfilter,tp,LOCATION_HAND+LOCATION_SZONE,0,1,nil)
......
--创造星曜·生息座 --创造星曜·生息座
local m=66915012 local m=66915012
local cm=_G["c"..m] local cm=_G["c"..m]
if not StarLight_from_K then
StarLight_from_K={}
StarLight_from_K.Brightstarlight_Effect={}
end
function cm.initial_effect(c) function cm.initial_effect(c)
aux.AddCodeList(c,66915055) aux.AddCodeList(c,66915055)
c:SetUniqueOnField(1,0,m) c:SetUniqueOnField(1,0,m)
...@@ -13,6 +17,7 @@ function cm.initial_effect(c) ...@@ -13,6 +17,7 @@ function cm.initial_effect(c)
e1:SetTarget(cm.target) e1:SetTarget(cm.target)
e1:SetOperation(cm.operation) e1:SetOperation(cm.operation)
c:RegisterEffect(e1) c:RegisterEffect(e1)
StarLight_from_K.Brightstarlight_Effect[e1]=true
--spsummon limit --spsummon limit
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD) e2:SetType(EFFECT_TYPE_FIELD)
...@@ -24,11 +29,11 @@ function cm.initial_effect(c) ...@@ -24,11 +29,11 @@ function cm.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.filter(c,e,tp) function cm.filter(c,e,tp)
return c:IsCanBeSpecialSummoned(e,0,tp,true,false) and c:IsSetCard(0x1374) return c:IsCanBeSpecialSummoned(e,0,tp,false,false) and c:IsSetCard(0x1374)
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:GetLocation()==LOCATION_GRAVE and chkc:GetControler()==tp if chkc then return chkc:GetLocation()==LOCATION_GRAVE and chkc:GetControler()==tp
and chkc:IsCanBeSpecialSummoned(e,0,tp,true,false) end and chkc:IsCanBeSpecialSummoned(e,0,tp,false,false) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingTarget(cm.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end and Duel.IsExistingTarget(cm.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
...@@ -39,7 +44,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -39,7 +44,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if c:IsRelateToEffect(e) and tc:IsRelateToEffect(e) if c:IsRelateToEffect(e) and tc:IsRelateToEffect(e)
and Duel.SpecialSummonStep(tc,0,tp,tp,true,false,POS_FACEUP) then and Duel.SpecialSummonStep(tc,0,tp,tp,false,false,POS_FACEUP) then
c:SetCardTarget(tc) c:SetCardTarget(tc)
Duel.SpecialSummonComplete() Duel.SpecialSummonComplete()
local e1=Effect.CreateEffect(tc) local e1=Effect.CreateEffect(tc)
......
...@@ -3,11 +3,12 @@ local m=66915016 ...@@ -3,11 +3,12 @@ local m=66915016
local cm=_G["c"..m] local cm=_G["c"..m]
function cm.initial_effect(c) function cm.initial_effect(c)
c:EnableReviveLimit() c:EnableReviveLimit()
--spsummon condition --splimit
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_SPSUMMON_CONDITION) e1:SetCode(EFFECT_SPSUMMON_CONDITION)
e1:SetValue(cm.splimit)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--atkup --atkup
local e22=Effect.CreateEffect(c) local e22=Effect.CreateEffect(c)
...@@ -27,6 +28,10 @@ function cm.initial_effect(c) ...@@ -27,6 +28,10 @@ function cm.initial_effect(c)
e11:SetValue(cm.aclimit) e11:SetValue(cm.aclimit)
c:RegisterEffect(e11) c:RegisterEffect(e11)
end end
function cm.splimit(e,se,sp,st)
if not StarLight_from_K then return false end
return StarLight_from_K.Brightstarlight_Effect[se]
end
function cm.aclimit(e,re,tp) function cm.aclimit(e,re,tp)
return re:IsActiveType(TYPE_SPELL+TYPE_TRAP+TYPE_MONSTER) return re:IsActiveType(TYPE_SPELL+TYPE_TRAP+TYPE_MONSTER)
end end
......
--伴随星光而生的阴影 --伴随星光而生的阴影
local m=66915018 local m=66915018
local cm=_G["c"..m] local cm=_G["c"..m]
if not StarLight_from_K then
StarLight_from_K={}
StarLight_from_K.Shadowstarlight_Effect={}
end
function cm.initial_effect(c) function cm.initial_effect(c)
--Activate --Activate
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
...@@ -12,7 +16,8 @@ function cm.initial_effect(c) ...@@ -12,7 +16,8 @@ function cm.initial_effect(c)
e1:SetCondition(cm.spcon) e1:SetCondition(cm.spcon)
e1:SetTarget(cm.target) e1:SetTarget(cm.target)
e1:SetOperation(cm.spop) e1:SetOperation(cm.spop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
sl.Shadowstarlight_Effect[e1]=true
end end
function cm.splimit(e,c,sump,sumtype,sumpos,targetp) function cm.splimit(e,c,sump,sumtype,sumpos,targetp)
return c:IsLocation(LOCATION_EXTRA) and not c:IsSetCard(0x1374) return c:IsLocation(LOCATION_EXTRA) and not c:IsSetCard(0x1374)
...@@ -32,7 +37,7 @@ function cm.atkcost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -32,7 +37,7 @@ function cm.atkcost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.RegisterEffect(e1,tp) Duel.RegisterEffect(e1,tp)
end end
function cm.filter(c,e,tp) function cm.filter(c,e,tp)
return c:IsCanBeSpecialSummoned(e,0,tp,true,false) and c:IsCode(66915019) or c:IsCode(66915020) and Duel.GetLocationCountFromEx(tp,tp,nil,c)>0 return c:IsCanBeSpecialSummoned(e,0,tp,false,false) and c:IsCode(66915019) or c:IsCode(66915020) and Duel.GetLocationCountFromEx(tp,tp,nil,c)>0
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.filters,tp,LOCATION_SZONE,0,1,nil) return Duel.IsExistingMatchingCard(cm.filters,tp,LOCATION_SZONE,0,1,nil)
...@@ -51,6 +56,6 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -51,6 +56,6 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,cm.filter,tp,LOCATION_EXTRA,0,1,1,nil,e,tp) local g=Duel.SelectMatchingCard(tp,cm.filter,tp,LOCATION_EXTRA,0,1,1,nil,e,tp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,true,false,POS_FACEUP) Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end end
end end
\ No newline at end of file
...@@ -4,12 +4,13 @@ local cm=_G["c"..m] ...@@ -4,12 +4,13 @@ local cm=_G["c"..m]
function cm.initial_effect(c) function cm.initial_effect(c)
cm.dfc_front_side=66915020 cm.dfc_front_side=66915020
c:EnableReviveLimit() c:EnableReviveLimit()
--spsummon condition --splimit
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_SPSUMMON_CONDITION) e1:SetCode(EFFECT_SPSUMMON_CONDITION)
c:RegisterEffect(e1) e1:SetValue(cm.splimit)
c:RegisterEffect(e1)
--search --search
local e11=Effect.CreateEffect(c) local e11=Effect.CreateEffect(c)
e11:SetCategory(CATEGORY_TODECK+CATEGORY_DRAW) e11:SetCategory(CATEGORY_TODECK+CATEGORY_DRAW)
...@@ -32,6 +33,10 @@ function cm.initial_effect(c) ...@@ -32,6 +33,10 @@ function cm.initial_effect(c)
c:RegisterEffect(e111) c:RegisterEffect(e111)
end end
cm.material_type=TYPE_SYNCHRO cm.material_type=TYPE_SYNCHRO
function cm.splimit(e,se,sp,st)
if not StarLight_from_K then return false end
return StarLight_from_K.Brightstarlight_Effect[se] or StarLight_from_K.Shadowstarlight_Effect[se]
end
function cm.condition(e,tp,eg,ep,ev,re,r,rp) function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return re and re:GetHandler():IsCode(66915018) return re and re:GetHandler():IsCode(66915018)
end end
...@@ -84,7 +89,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -84,7 +89,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function cm.filter(c,e,tp) function cm.filter(c,e,tp)
return c:IsCanBeSpecialSummoned(e,0,tp,true,true) and c:IsSetCard(0x1374) return c:IsCanBeSpecialSummoned(e,0,tp,false,false) and c:IsSetCard(0x1374)
end end
function cm.targets(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function cm.targets(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
...@@ -97,6 +102,6 @@ end ...@@ -97,6 +102,6 @@ end
function cm.activate(e,tp,eg,ep,ev,re,r,rp) function cm.activate(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then if tc:IsRelateToEffect(e) then
Duel.SpecialSummon(tc,0,tp,tp,true,true,POS_FACEUP) Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
end end
end end
...@@ -4,11 +4,12 @@ local cm=_G["c"..m] ...@@ -4,11 +4,12 @@ local cm=_G["c"..m]
function cm.initial_effect(c) function cm.initial_effect(c)
cm.dfc_front_side=66915019 cm.dfc_front_side=66915019
c:EnableReviveLimit() c:EnableReviveLimit()
--spsummon condition --splimit
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_SPSUMMON_CONDITION) e1:SetCode(EFFECT_SPSUMMON_CONDITION)
e1:SetValue(cm.splimit)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--search --search
local e11=Effect.CreateEffect(c) local e11=Effect.CreateEffect(c)
...@@ -30,6 +31,10 @@ function cm.initial_effect(c) ...@@ -30,6 +31,10 @@ function cm.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function cm.splimit(e,se,sp,st)
if not StarLight_from_K then return false end
return StarLight_from_K.Brightstarlight_Effect[se] or StarLight_from_K.Shadowstarlight_Effect[se]
end
function cm.filter(c) function cm.filter(c)
return c:IsSetCard(0x1374) and c:IsAbleToGraveAsCost() return c:IsSetCard(0x1374) and c:IsAbleToGraveAsCost()
end end
......
...@@ -52,7 +52,8 @@ function cm.filter(c) ...@@ -52,7 +52,8 @@ function cm.filter(c)
return c:IsSetCard(0x1374) and c:IsType(TYPE_MONSTER) return c:IsSetCard(0x1374) and c:IsType(TYPE_MONSTER)
end end
function cm.splimit(e,se,sp,st) function cm.splimit(e,se,sp,st)
return bit.band(st,SUMMON_TYPE_FUSION)==SUMMON_TYPE_FUSION if not StarLight_from_K and bit.band(st,SUMMON_TYPE_FUSION)~=SUMMON_TYPE_FUSION then return false end
return bit.band(st,SUMMON_TYPE_FUSION)==SUMMON_TYPE_FUSION or StarLight_from_K.Brightstarlight_Effect[se]
end end
function cm.cfilter(c) function cm.cfilter(c)
return c:IsFaceup() and c:IsCode(66915001) return c:IsFaceup() and c:IsCode(66915001)
......
...@@ -3,13 +3,13 @@ function c66915026.initial_effect(c) ...@@ -3,13 +3,13 @@ function c66915026.initial_effect(c)
--synchro summon --synchro summon
aux.AddSynchroProcedure(c,nil,aux.NonTuner(nil),1) aux.AddSynchroProcedure(c,nil,aux.NonTuner(nil),1)
c:EnableReviveLimit() c:EnableReviveLimit()
--spsummon --spsummon condition
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_SPSUMMON_CONDITION) e1:SetCode(EFFECT_SPSUMMON_CONDITION)
e1:SetValue(aux.synlimit) e1:SetValue(c66915026.splimit)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--remove --remove
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(66915026,0)) e2:SetDescription(aux.Stringid(66915026,0))
...@@ -31,6 +31,10 @@ function c66915026.initial_effect(c) ...@@ -31,6 +31,10 @@ function c66915026.initial_effect(c)
e12:SetValue(c66915026.efilter) e12:SetValue(c66915026.efilter)
c:RegisterEffect(e12) c:RegisterEffect(e12)
end end
function c66915026.splimit(e,se,sp,st)
if not StarLight_from_K and bit.band(st,SUMMON_TYPE_FUSION)~=SUMMON_TYPE_SYNCHRO then return false end
return bit.band(st,SUMMON_TYPE_FUSION)==SUMMON_TYPE_SYNCHRO or StarLight_from_K.Brightstarlight_Effect[se]
end
function c66915026.con(e) function c66915026.con(e)
return e:GetHandler():GetFlagEffect(66915026)~=0 return e:GetHandler():GetFlagEffect(66915026)~=0
end end
......
...@@ -53,7 +53,7 @@ function cm.filter1(c,e,tp) ...@@ -53,7 +53,7 @@ function cm.filter1(c,e,tp)
end end
function cm.filter2(c,e,tp,mc,code) function cm.filter2(c,e,tp,mc,code)
return c:IsType(TYPE_XYZ) and c:IsSetCard(0x1374) and not c:IsCode(code) and mc:IsCanBeXyzMaterial(c) return c:IsType(TYPE_XYZ) and c:IsSetCard(0x1374) and not c:IsCode(code) and mc:IsCanBeXyzMaterial(c)
and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_XYZ,tp,true,true) and Duel.GetLocationCountFromEx(tp,tp,mc,c)>0 and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_XYZ,tp,false,false) and Duel.GetLocationCountFromEx(tp,tp,mc,c)>0
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:IsControler(tp) and chkc:IsLocation(LOCATION_MZONE) and cm.filter1(chkc,e,tp) end if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_MZONE) and cm.filter1(chkc,e,tp) end
...@@ -76,7 +76,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -76,7 +76,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
end end
sc:SetMaterial(Group.FromCards(tc)) sc:SetMaterial(Group.FromCards(tc))
Duel.Overlay(sc,Group.FromCards(tc)) Duel.Overlay(sc,Group.FromCards(tc))
Duel.SpecialSummon(sc,SUMMON_TYPE_XYZ,tp,tp,true,true,POS_FACEUP) Duel.SpecialSummon(sc,SUMMON_TYPE_XYZ,tp,tp,false,false,POS_FACEUP)
sc:CompleteProcedure() sc:CompleteProcedure()
end end
Duel.BreakEffect() Duel.BreakEffect()
......
...@@ -9,6 +9,7 @@ function cm.initial_effect(c) ...@@ -9,6 +9,7 @@ function cm.initial_effect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_SPSUMMON_CONDITION) e1:SetCode(EFFECT_SPSUMMON_CONDITION)
e1:SetValue(cm.splimit)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--reset atk --reset atk
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
...@@ -59,6 +60,10 @@ function cm.initial_effect(c) ...@@ -59,6 +60,10 @@ function cm.initial_effect(c)
c:RegisterEffect(e1111) c:RegisterEffect(e1111)
end end
function cm.splimit(e,se,sp,st)
if not StarLight_from_K and bit.band(st,SUMMON_TYPE_XYZ)~=SUMMON_TYPE_XYZ then return false end
return bit.band(st,SUMMON_TYPE_XYZ)==SUMMON_TYPE_XYZ or StarLight_from_K.Brightstarlight_Effect[se]
end
function cm.filter1(c) function cm.filter1(c)
return c:IsSetCard(0x374) and c:IsType(TYPE_CONTINUOUS+TYPE_TRAP) return c:IsSetCard(0x374) and c:IsType(TYPE_CONTINUOUS+TYPE_TRAP)
end end
......
--原初女神· --原初女神·
local m=66915033 local m=66915033
local cm=_G["c"..m] local cm=_G["c"..m]
if not StarLight_from_K then
StarLight_from_K={}
StarLight_from_K.Brightstarlight_Effect={}
end
function cm.initial_effect(c) function cm.initial_effect(c)
c:EnableReviveLimit() c:EnableReviveLimit()
--spsummon condition --spsummon condition
...@@ -8,8 +12,8 @@ function cm.initial_effect(c) ...@@ -8,8 +12,8 @@ function cm.initial_effect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_SPSUMMON_CONDITION) e1:SetCode(EFFECT_SPSUMMON_CONDITION)
e1:SetValue(aux.linklimit) e1:SetValue(cm.splimit)
c:RegisterEffect(e1) c:RegisterEffect(e1)
-- --
local e0=Effect.CreateEffect(c) local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_FIELD) e0:SetType(EFFECT_TYPE_FIELD)
...@@ -36,15 +40,6 @@ function cm.initial_effect(c) ...@@ -36,15 +40,6 @@ function cm.initial_effect(c)
e6:SetValue(0x1374) e6:SetValue(0x1374)
e6:SetTarget(cm.sctg) e6:SetTarget(cm.sctg)
c:RegisterEffect(e6) c:RegisterEffect(e6)
--setcard
local e66=Effect.CreateEffect(c)
e66:SetType(EFFECT_TYPE_FIELD)
e66:SetRange(LOCATION_MZONE)
e66:SetTargetRange(LOCATION_MZONE,0)
e66:SetCode(EFFECT_ADD_SETCODE)
e66:SetValue(0x149)
e66:SetTarget(cm.sctg)
c:RegisterEffect(e66)
--spsummon limit --spsummon limit
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD) e2:SetType(EFFECT_TYPE_FIELD)
...@@ -66,6 +61,11 @@ function cm.initial_effect(c) ...@@ -66,6 +61,11 @@ function cm.initial_effect(c)
e3:SetTarget(cm.thtg) e3:SetTarget(cm.thtg)
e3:SetOperation(cm.thop) e3:SetOperation(cm.thop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
StarLight_from_K.Brightstarlight_Effect[e3]=true
end
function cm.splimit(e,se,sp,st)
if not StarLight_from_Kand bit.band(st,SUMMON_TYPE_LINK)~=SUMMON_TYPE_LINK then return false end
return bit.band(st,SUMMON_TYPE_LINK)==SUMMON_TYPE_LINK or StarLight_from_K.Brightstarlight_Effect[se]
end end
function cm.sumlimit(e,c,sump,sumtype,sumpos,targetp) function cm.sumlimit(e,c,sump,sumtype,sumpos,targetp)
return c:IsLocation(LOCATION_EXTRA) and not c:IsSetCard(0x1374) return c:IsLocation(LOCATION_EXTRA) and not c:IsSetCard(0x1374)
...@@ -155,7 +155,7 @@ function cm.discon(e,tp,eg,ep,ev,re,r,rp) ...@@ -155,7 +155,7 @@ function cm.discon(e,tp,eg,ep,ev,re,r,rp)
return not e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED) and re:GetHandler():IsCode(66915001) return not e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED) and re:GetHandler():IsCode(66915001)
end end
function cm.filter(c,e,tp,zone) function cm.filter(c,e,tp,zone)
return c:IsSetCard(0x1374) and c:IsCanBeSpecialSummoned(e,0,tp,true,true,POS_FACEUP,tp,zone) return c:IsSetCard(0x1374) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP,tp,zone)
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)
local zone=bit.band(e:GetHandler():GetLinkedZone(tp),0x1f) local zone=bit.band(e:GetHandler():GetLinkedZone(tp),0x1f)
...@@ -170,6 +170,6 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -170,6 +170,6 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
local zone=bit.band(e:GetHandler():GetLinkedZone(tp),0x1f) local zone=bit.band(e:GetHandler():GetLinkedZone(tp),0x1f)
if tc:IsRelateToEffect(e) and zone~=0 then if tc:IsRelateToEffect(e) and zone~=0 then
Duel.SpecialSummon(tc,0,tp,tp,true,true,POS_FACEUP,zone) Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP,zone)
end end
end end
...@@ -89,16 +89,6 @@ function Tenka.Asamiya(c) ...@@ -89,16 +89,6 @@ function Tenka.Asamiya(c)
c:RegisterEffect(ea) c:RegisterEffect(ea)
end end
-- --
function Tenka.EightOne(c)
c:EnableReviveLimit()
local eb=Effect.CreateEffect(c)
eb:SetType(EFFECT_TYPE_SINGLE)
eb:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
eb:SetCode(EFFECT_SPSUMMON_CONDITION)
eb:SetValue(aux.FALSE)
c:RegisterEffect(eb)
end
--
function Tenka.Einstein(c) function Tenka.Einstein(c)
local ea=Effect.CreateEffect(c) local ea=Effect.CreateEffect(c)
ea:SetType(EFFECT_TYPE_FIELD) ea:SetType(EFFECT_TYPE_FIELD)
......
--八宫一月 --八宫一月
local m=81001002 local m=81001002
local cm=_G["c"..m] local cm=_G["c"..m]
xpcall(function() require("expansions/script/c81000000") end,function() require("script/c81000000") end) xpcall(function()require("expansions/script/c81000000") end,function()require("script/c81000000") end)
function cm.initial_effect(c) function cm.initial_effect(c)
Tenka.EightOne(c) c:EnableReviveLimit()
--spsummon condition
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCode(EFFECT_SPSUMMON_CONDITION)
e0:SetValue(cm.splimit)
c:RegisterEffect(e0)
--atkup --atkup
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
...@@ -23,6 +30,10 @@ function cm.initial_effect(c) ...@@ -23,6 +30,10 @@ function cm.initial_effect(c)
e4:SetOperation(cm.thop) e4:SetOperation(cm.thop)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function cm.splimit(e,se,sp,st)
if not StarLight_from_K then return false end
return StarLight_from_K.Brightstarlight_Effect[se]
end
function cm.cfilter(c) function cm.cfilter(c)
return c:IsFaceup() and c:IsType(TYPE_TRAP+TYPE_SPELL) return c:IsFaceup() and c:IsType(TYPE_TRAP+TYPE_SPELL)
end end
......
--八宫一月·夜 --八宫一月·夜
local m=81001003 local m=81001003
local cm=_G["c"..m] local cm=_G["c"..m]
xpcall(function() require("expansions/script/c81000000") end,function() require("script/c81000000") end) xpcall(function()require("expansions/script/c81000000") end,function()require("script/c81000000") end)
function cm.initial_effect(c) function cm.initial_effect(c)
Tenka.EightOne(c) c:EnableReviveLimit()
--spsummon condition
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCode(EFFECT_SPSUMMON_CONDITION)
e0:SetValue(cm.splimit)
c:RegisterEffect(e0)
--tuner --tuner
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
...@@ -23,6 +30,10 @@ function cm.initial_effect(c) ...@@ -23,6 +30,10 @@ function cm.initial_effect(c)
e3:SetOperation(cm.thop) e3:SetOperation(cm.thop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function cm.splimit(e,se,sp,st)
if not StarLight_from_K then return false end
return StarLight_from_K.Brightstarlight_Effect[se]
end
function cm.tnop(e,tp,eg,ep,ev,re,r,rp) function cm.tnop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
......
--八宫一月·春 --八宫一月·春
local m=81001004 local m=81001004
local cm=_G["c"..m] local cm=_G["c"..m]
xpcall(function() require("expansions/script/c81000000") end,function() require("script/c81000000") end) xpcall(function()require("expansions/script/c81000000") end,function()require("script/c81000000") end)
function cm.initial_effect(c) function cm.initial_effect(c)
Tenka.EightOne(c) c:EnableReviveLimit()
--spsummon condition
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCode(EFFECT_SPSUMMON_CONDITION)
e0:SetValue(cm.splimit)
c:RegisterEffect(e0)
--set --set
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_TOKEN) e3:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_TOKEN)
...@@ -27,6 +34,10 @@ function cm.initial_effect(c) ...@@ -27,6 +34,10 @@ function cm.initial_effect(c)
e4:SetOperation(cm.rmop) e4:SetOperation(cm.rmop)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function cm.splimit(e,se,sp,st)
if not StarLight_from_K then return false end
return StarLight_from_K.Brightstarlight_Effect[se]
end
function cm.setcon(e,tp,eg,ep,ev,re,r,rp) function cm.setcon(e,tp,eg,ep,ev,re,r,rp)
return re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and re:GetHandler():IsSetCard(0x374) return re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and re:GetHandler():IsSetCard(0x374)
end end
......
...@@ -2,8 +2,19 @@ ...@@ -2,8 +2,19 @@
local m=81001005 local m=81001005
local cm=_G["c"..m] local cm=_G["c"..m]
xpcall(function() require("expansions/script/c81000000") end,function() require("script/c81000000") end) xpcall(function() require("expansions/script/c81000000") end,function() require("script/c81000000") end)
if not StarLight_from_K then
StarLight_from_K={}
StarLight_from_K.Brightstarlight_Effect={}
end
function cm.initial_effect(c) function cm.initial_effect(c)
Tenka.EightOne(c) c:EnableReviveLimit()
--spsummon condition
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCode(EFFECT_SPSUMMON_CONDITION)
e0:SetValue(cm.splimit)
c:RegisterEffect(e0)
--to hand --to hand
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0)) e1:SetDescription(aux.Stringid(m,0))
...@@ -32,6 +43,12 @@ function cm.initial_effect(c) ...@@ -32,6 +43,12 @@ function cm.initial_effect(c)
e3:SetCondition(cm.ccon) e3:SetCondition(cm.ccon)
e3:SetCost(cm.cost) e3:SetCost(cm.cost)
c:RegisterEffect(e3) c:RegisterEffect(e3)
StarLight_from_K.Brightstarlight_Effect[e2]=true
StarLight_from_K.Brightstarlight_Effect[e3]=true
end
function cm.splimit(e,se,sp,st)
if not StarLight_from_K then return false end
return StarLight_from_K.Brightstarlight_Effect[se]
end end
function cm.tgfilter(c) function cm.tgfilter(c)
return c:IsFaceup() and c:IsType(TYPE_TRAP+TYPE_SPELL) and c:IsAbleToGrave() return c:IsFaceup() and c:IsType(TYPE_TRAP+TYPE_SPELL) and c:IsAbleToGrave()
...@@ -72,7 +89,7 @@ function cm.tscost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -72,7 +89,7 @@ function cm.tscost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SendtoGrave(g,REASON_COST) Duel.SendtoGrave(g,REASON_COST)
end end
function cm.spfilter(c,e,tp) function cm.spfilter(c,e,tp)
return c:IsSetCard(0x1374) and c:IsCanBeSpecialSummoned(e,0,tp,true,true) and (c:IsFaceup() or c:IsLocation(LOCATION_GRAVE)) return c:IsSetCard(0x1374) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and (c:IsFaceup() or c:IsLocation(LOCATION_GRAVE))
end end
function cm.tstg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.tstg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.spfilter,tp,LOCATION_REMOVED+LOCATION_GRAVE,0,1,nil,e,tp) end if chk==0 then return Duel.IsExistingMatchingCard(cm.spfilter,tp,LOCATION_REMOVED+LOCATION_GRAVE,0,1,nil,e,tp) end
...@@ -83,7 +100,7 @@ function cm.tsop(e,tp,eg,ep,ev,re,r,rp) ...@@ -83,7 +100,7 @@ function cm.tsop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(cm.spfilter),tp,LOCATION_REMOVED+LOCATION_GRAVE,0,1,1,nil,e,tp) local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(cm.spfilter),tp,LOCATION_REMOVED+LOCATION_GRAVE,0,1,1,nil,e,tp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,true,true,POS_FACEUP) Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
g:GetFirst():CompleteProcedure() g:GetFirst():CompleteProcedure()
end end
end end
......
--八宫一月·昔 --八宫一月·昔
local m=81001006 local m=81001006
local cm=_G["c"..m] local cm=_G["c"..m]
xpcall(function() require("expansions/script/c81000000") end,function() require("script/c81000000") end) xpcall(function()require("expansions/script/c81000000") end,function()require("script/c81000000") end)
function cm.initial_effect(c) function cm.initial_effect(c)
Tenka.EightOne(c) c:EnableReviveLimit()
--spsummon condition
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCode(EFFECT_SPSUMMON_CONDITION)
e0:SetValue(cm.splimit)
c:RegisterEffect(e0)
--atk limit --atk limit
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
...@@ -27,6 +34,10 @@ function cm.initial_effect(c) ...@@ -27,6 +34,10 @@ function cm.initial_effect(c)
e5:SetOperation(cm.negop) e5:SetOperation(cm.negop)
c:RegisterEffect(e5) c:RegisterEffect(e5)
end end
function cm.splimit(e,se,sp,st)
if not StarLight_from_K then return false end
return StarLight_from_K.Brightstarlight_Effect[se]
end
function cm.atktg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function cm.atktg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and chkc:IsFaceup() end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and chkc:IsFaceup() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,0,LOCATION_MZONE,1,nil) end if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,0,LOCATION_MZONE,1,nil) end
......
--八宫一月·眠 --八宫一月·眠
local m=81001007 local m=81001007
local cm=_G["c"..m] local cm=_G["c"..m]
xpcall(function() require("expansions/script/c81000000") end,function() require("script/c81000000") end) xpcall(function()require("expansions/script/c81000000") end,function()require("script/c81000000") end)
function cm.initial_effect(c) function cm.initial_effect(c)
Tenka.EightOne(c) c:EnableReviveLimit()
--spsummon condition
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCode(EFFECT_SPSUMMON_CONDITION)
e0:SetValue(cm.splimit)
c:RegisterEffect(e0)
--atk up --atk up
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD) e2:SetType(EFFECT_TYPE_FIELD)
...@@ -24,6 +31,10 @@ function cm.initial_effect(c) ...@@ -24,6 +31,10 @@ function cm.initial_effect(c)
e3:SetOperation(cm.atkop) e3:SetOperation(cm.atkop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function cm.splimit(e,se,sp,st)
if not StarLight_from_K then return false end
return StarLight_from_K.Brightstarlight_Effect[se]
end
function cm.tkfilter(c) function cm.tkfilter(c)
return c:IsFaceup() and c:IsType(TYPE_TRAP+TYPE_SPELL) return c:IsFaceup() and c:IsType(TYPE_TRAP+TYPE_SPELL)
end end
......
-- --
local m=81001008 local m=81001008
local cm=_G["c"..m] local cm=_G["c"..m]
xpcall(function() require("expansions/script/c81000000") end,function() require("script/c81000000") end) xpcall(function()require("expansions/script/c81000000") end,function()require("script/c81000000") end)
function cm.initial_effect(c) function cm.initial_effect(c)
Tenka.EightOne(c) c:EnableReviveLimit()
--spsummon condition
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCode(EFFECT_SPSUMMON_CONDITION)
e0:SetValue(cm.splimit)
c:RegisterEffect(e0)
--destroy replace --destroy replace
local e0=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e0:SetCode(EFFECT_DESTROY_REPLACE) e1:SetCode(EFFECT_DESTROY_REPLACE)
e0:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e0:SetCountLimit(1,m) e1:SetCountLimit(1,m)
e0:SetTarget(cm.desreptg) e1:SetTarget(cm.desreptg)
e0:SetValue(cm.desrepval) e1:SetValue(cm.desrepval)
e0:SetOperation(cm.desrepop) e1:SetOperation(cm.desrepop)
c:RegisterEffect(e0) c:RegisterEffect(e1)
--move --move
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_TOHAND) e2:SetCategory(CATEGORY_TOHAND)
...@@ -31,6 +38,10 @@ function cm.initial_effect(c) ...@@ -31,6 +38,10 @@ function cm.initial_effect(c)
e3:SetCost(cm.mvcost) e3:SetCost(cm.mvcost)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function cm.splimit(e,se,sp,st)
if not StarLight_from_K then return false end
return StarLight_from_K.Brightstarlight_Effect[se]
end
function cm.repfilter(c,tp) function cm.repfilter(c,tp)
return c:IsFaceup() and c:IsControler(tp) and c:IsLocation(LOCATION_MZONE) and c:IsSetCard(0x1374) return c:IsFaceup() and c:IsControler(tp) and c:IsLocation(LOCATION_MZONE) and c:IsSetCard(0x1374)
and (c:IsReason(REASON_BATTLE) or c:IsReason(REASON_EFFECT)) and not c:IsReason(REASON_REPLACE) and (c:IsReason(REASON_BATTLE) or c:IsReason(REASON_EFFECT)) and not c:IsReason(REASON_REPLACE)
......
...@@ -3,7 +3,14 @@ local m=81001009 ...@@ -3,7 +3,14 @@ local m=81001009
local cm=_G["c"..m] local cm=_G["c"..m]
Duel.LoadScript("c81000000.lua") Duel.LoadScript("c81000000.lua")
function cm.initial_effect(c) function cm.initial_effect(c)
Tenka.EightOne(c) c:EnableReviveLimit()
--spsummon condition
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCode(EFFECT_SPSUMMON_CONDITION)
e0:SetValue(cm.splimit)
c:RegisterEffect(e0)
--indes --indes
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_FIELD)
...@@ -26,6 +33,10 @@ function cm.initial_effect(c) ...@@ -26,6 +33,10 @@ function cm.initial_effect(c)
e2:SetOperation(cm.desop) e2:SetOperation(cm.desop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.splimit(e,se,sp,st)
if not StarLight_from_K then return false end
return StarLight_from_K.Brightstarlight_Effect[se]
end
function cm.target(e,c) function cm.target(e,c)
return c:IsSetCard(0x374) and c:IsType(TYPE_SPELL+TYPE_TRAP) return c:IsSetCard(0x374) and c:IsType(TYPE_SPELL+TYPE_TRAP)
end end
......
...@@ -3,7 +3,14 @@ local m=81001010 ...@@ -3,7 +3,14 @@ local m=81001010
local cm=_G["c"..m] local cm=_G["c"..m]
Duel.LoadScript("c81000000.lua") Duel.LoadScript("c81000000.lua")
function cm.initial_effect(c) function cm.initial_effect(c)
Tenka.EightOne(c) c:EnableReviveLimit()
--spsummon condition
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCode(EFFECT_SPSUMMON_CONDITION)
e0:SetValue(cm.splimit)
c:RegisterEffect(e0)
--Activate --Activate
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_DISABLE+CATEGORY_TOGRAVE) e1:SetCategory(CATEGORY_DISABLE+CATEGORY_TOGRAVE)
...@@ -30,6 +37,10 @@ function cm.initial_effect(c) ...@@ -30,6 +37,10 @@ function cm.initial_effect(c)
e3:SetValue(aux.indoval) e3:SetValue(aux.indoval)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function cm.splimit(e,se,sp,st)
if not StarLight_from_K then return false end
return StarLight_from_K.Brightstarlight_Effect[se]
end
function cm.discon(e,tp,eg,ep,ev,re,r,rp) function cm.discon(e,tp,eg,ep,ev,re,r,rp)
return re:IsActiveType(TYPE_MONSTER) return re:IsActiveType(TYPE_MONSTER)
and Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_LOCATION)==LOCATION_MZONE and Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_LOCATION)==LOCATION_MZONE
......
...@@ -2,8 +2,19 @@ ...@@ -2,8 +2,19 @@
local m=81001013 local m=81001013
local cm=_G["c"..m] local cm=_G["c"..m]
Duel.LoadScript("c81000000.lua") Duel.LoadScript("c81000000.lua")
if not StarLight_from_K then
StarLight_from_K={}
StarLight_from_K.Brightstarlight_Effect={}
end
function cm.initial_effect(c) function cm.initial_effect(c)
Tenka.EightOne(c) c:EnableReviveLimit()
--spsummon condition
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCode(EFFECT_SPSUMMON_CONDITION)
e0:SetValue(cm.splimit)
c:RegisterEffect(e0)
--extra summon --extra summon
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
...@@ -14,6 +25,7 @@ function cm.initial_effect(c) ...@@ -14,6 +25,7 @@ function cm.initial_effect(c)
e1:SetTarget(cm.sptg) e1:SetTarget(cm.sptg)
e1:SetOperation(cm.spop) e1:SetOperation(cm.spop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
StarLight_from_K.Brightstarlight_Effect[e1]=true
--disable spsummon --disable spsummon
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetCategory(CATEGORY_DISABLE_SUMMON+CATEGORY_DESTROY) e3:SetCategory(CATEGORY_DISABLE_SUMMON+CATEGORY_DESTROY)
...@@ -26,8 +38,12 @@ function cm.initial_effect(c) ...@@ -26,8 +38,12 @@ function cm.initial_effect(c)
e3:SetOperation(cm.operation) e3:SetOperation(cm.operation)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function cm.splimit(e,se,sp,st)
if not StarLight_from_K then return false end
return StarLight_from_K.Brightstarlight_Effect[se]
end
function cm.spfilter(c,e,tp) function cm.spfilter(c,e,tp)
return (c:IsSetCard(0x1374) and not c:IsCode(66915073) and not c:IsCode(66915074) and not c:IsCode(66915075) and not c:IsCode(66915077)) and c:IsCanBeSpecialSummoned(e,0,tp,true,true) and Duel.GetLocationCountFromEx(tp,tp,nil,c)>0 return c:IsSetCard(0x1374) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.GetLocationCountFromEx(tp,tp,nil,c)>0
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.IsExistingMatchingCard(cm.spfilter,tp,LOCATION_EXTRA,0,1,nil,e,tp) end if chk==0 then return Duel.IsExistingMatchingCard(cm.spfilter,tp,LOCATION_EXTRA,0,1,nil,e,tp) end
...@@ -37,7 +53,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -37,7 +53,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,cm.spfilter,tp,LOCATION_EXTRA,0,1,1,nil,e,tp) local g=Duel.SelectMatchingCard(tp,cm.spfilter,tp,LOCATION_EXTRA,0,1,1,nil,e,tp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,true,true,POS_FACEUP) Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
g:GetFirst():CompleteProcedure() g:GetFirst():CompleteProcedure()
local e3=Effect.CreateEffect(e:GetHandler()) local e3=Effect.CreateEffect(e:GetHandler())
e3:SetType(EFFECT_TYPE_FIELD) e3:SetType(EFFECT_TYPE_FIELD)
...@@ -45,12 +61,12 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -45,12 +61,12 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
e3:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON) e3:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetAbsoluteRange(tp,1,0) e3:SetAbsoluteRange(tp,1,0)
e3:SetTarget(cm.splimit) e3:SetTarget(cm.splimit2)
e3:SetReset(RESET_EVENT+RESETS_STANDARD) e3:SetReset(RESET_EVENT+RESETS_STANDARD)
g:GetFirst():RegisterEffect(e3,true) g:GetFirst():RegisterEffect(e3,true)
end end
end end
function cm.splimit(e,c,sump,sumtype,sumpos,targetp,se) function cm.splimit2(e,c,sump,sumtype,sumpos,targetp,se)
return c:IsLocation(LOCATION_EXTRA) and not c:IsSetCard(0x1374) return c:IsLocation(LOCATION_EXTRA) and not c:IsSetCard(0x1374)
end end
function cm.condition(e,tp,eg,ep,ev,re,r,rp) function cm.condition(e,tp,eg,ep,ev,re,r,rp)
......
--八宫一月·念 --八宫一月·念
local m=81001014 local m=81001014
local cm=_G["c"..m] local cm=_G["c"..m]
xpcall(function() require("expansions/script/c81000000") end,function() require("script/c81000000") end) xpcall(function()require("expansions/script/c81000000") end,function()require("script/c81000000") end)
function cm.initial_effect(c) function cm.initial_effect(c)
--synchro summon --synchro summon
aux.AddSynchroProcedure(c,nil,aux.NonTuner(nil),1) aux.AddSynchroProcedure(c,nil,aux.NonTuner(nil),1)
......
...@@ -2,6 +2,10 @@ ...@@ -2,6 +2,10 @@
local m=81001016 local m=81001016
local cm=_G["c"..m] local cm=_G["c"..m]
Duel.LoadScript("c81000000.lua") Duel.LoadScript("c81000000.lua")
if not StarLight_from_K then
StarLight_from_K={}
StarLight_from_K.Brightstarlight_Effect={}
end
function cm.initial_effect(c) function cm.initial_effect(c)
--Activate --Activate
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
...@@ -14,6 +18,7 @@ function cm.initial_effect(c) ...@@ -14,6 +18,7 @@ function cm.initial_effect(c)
e1:SetTarget(cm.sptg) e1:SetTarget(cm.sptg)
e1:SetOperation(cm.spop) e1:SetOperation(cm.spop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
StarLight_from_K.Brightstarlight_Effect[e1]=true
end end
function cm.counterfilter(c) function cm.counterfilter(c)
return not c:IsSummonLocation(LOCATION_DECK+LOCATION_HAND) return not c:IsSummonLocation(LOCATION_DECK+LOCATION_HAND)
...@@ -38,7 +43,7 @@ function cm.tgfilter(c,e,tp) ...@@ -38,7 +43,7 @@ function cm.tgfilter(c,e,tp)
end end
function cm.spfilter(c,e,tp,tc) function cm.spfilter(c,e,tp,tc)
return c:IsSetCard(0x1374) and c:IsAttribute(ATTRIBUTE_DARK) return c:IsSetCard(0x1374) and c:IsAttribute(ATTRIBUTE_DARK)
and c:IsCanBeSpecialSummoned(e,0,tp,true,true) and Duel.GetLocationCountFromEx(tp,tp,tc,c)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.GetLocationCountFromEx(tp,tp,tc,c)>0
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.IsExistingMatchingCard(cm.tgfilter,tp,LOCATION_MZONE,0,1,nil,e,tp) end if chk==0 then return Duel.IsExistingMatchingCard(cm.tgfilter,tp,LOCATION_MZONE,0,1,nil,e,tp) end
...@@ -51,20 +56,19 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -51,20 +56,19 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
if tc and Duel.SendtoGrave(tc,REASON_EFFECT)~=0 and tc:IsLocation(LOCATION_GRAVE) then if tc and Duel.SendtoGrave(tc,REASON_EFFECT)~=0 and tc:IsLocation(LOCATION_GRAVE) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,cm.spfilter,tp,LOCATION_EXTRA,0,1,1,nil,e,tp) local g=Duel.SelectMatchingCard(tp,cm.spfilter,tp,LOCATION_EXTRA,0,1,1,nil,e,tp)
Duel.SpecialSummon(g,0,tp,tp,true,true,POS_FACEUP) Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
g:GetFirst():CompleteProcedure() g:GetFirst():CompleteProcedure()
Duel.Hint(HINT_MUSIC,0,aux.Stringid(81001011,2))
local e3=Effect.CreateEffect(e:GetHandler()) local e3=Effect.CreateEffect(e:GetHandler())
e3:SetType(EFFECT_TYPE_FIELD) e3:SetType(EFFECT_TYPE_FIELD)
e3:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e3:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e3:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON) e3:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetAbsoluteRange(tp,1,0) e3:SetAbsoluteRange(tp,1,0)
e3:SetTarget(cm.splimit) e3:SetTarget(cm.splimit2)
e3:SetReset(RESET_EVENT+RESETS_STANDARD) e3:SetReset(RESET_EVENT+RESETS_STANDARD)
g:GetFirst():RegisterEffect(e3,true) g:GetFirst():RegisterEffect(e3,true)
end end
end end
function cm.splimit(e,c,sump,sumtype,sumpos,targetp,se) function cm.splimit2(e,c,sump,sumtype,sumpos,targetp,se)
return c:IsLocation(LOCATION_EXTRA) and not c:IsSetCard(0x1374) return c:IsLocation(LOCATION_EXTRA) and not c:IsSetCard(0x1374)
end end
...@@ -3,7 +3,14 @@ local m=81001017 ...@@ -3,7 +3,14 @@ local m=81001017
local cm=_G["c"..m] local cm=_G["c"..m]
Duel.LoadScript("c81000000.lua") Duel.LoadScript("c81000000.lua")
function cm.initial_effect(c) function cm.initial_effect(c)
Tenka.EightOne(c) c:EnableReviveLimit()
--spsummon condition
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCode(EFFECT_SPSUMMON_CONDITION)
e0:SetValue(cm.splimit)
c:RegisterEffect(e0)
--tuner --tuner
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_HANDES+CATEGORY_DRAW) e2:SetCategory(CATEGORY_HANDES+CATEGORY_DRAW)
...@@ -26,6 +33,10 @@ function cm.initial_effect(c) ...@@ -26,6 +33,10 @@ function cm.initial_effect(c)
e3:SetOperation(cm.drop) e3:SetOperation(cm.drop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function cm.splimit(e,se,sp,st)
if not StarLight_from_K then return false end
return StarLight_from_K.Brightstarlight_Effect[se]
end
function cm.hdtg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.hdtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetFieldGroupCount(tp,0,LOCATION_HAND)>0 if chk==0 then return Duel.GetFieldGroupCount(tp,0,LOCATION_HAND)>0
and Duel.IsPlayerCanDraw(tp,1) and Duel.IsPlayerCanDraw(1-tp,1) end and Duel.IsPlayerCanDraw(tp,1) and Duel.IsPlayerCanDraw(1-tp,1) end
......
...@@ -3,7 +3,14 @@ local m=81001018 ...@@ -3,7 +3,14 @@ local m=81001018
local cm=_G["c"..m] local cm=_G["c"..m]
Duel.LoadScript("c81000000.lua") Duel.LoadScript("c81000000.lua")
function cm.initial_effect(c) function cm.initial_effect(c)
Tenka.EightOne(c) c:EnableReviveLimit()
--spsummon condition
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCode(EFFECT_SPSUMMON_CONDITION)
e0:SetValue(cm.splimit)
c:RegisterEffect(e0)
--Search --Search
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0)) e1:SetDescription(aux.Stringid(m,0))
...@@ -33,6 +40,10 @@ function cm.initial_effect(c) ...@@ -33,6 +40,10 @@ function cm.initial_effect(c)
e3:SetCost(cm.dascost) e3:SetCost(cm.dascost)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function cm.splimit(e,se,sp,st)
if not StarLight_from_K then return false end
return StarLight_from_K.Brightstarlight_Effect[se]
end
function cm.thfilter(c) function cm.thfilter(c)
return c:IsSetCard(0x374) and c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsAbleToHand() and not c:IsType(TYPE_CONTINUOUS) return c:IsSetCard(0x374) and c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsAbleToHand() and not c:IsType(TYPE_CONTINUOUS)
end 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