Commit 2fd9e2d3 authored by TanakaKotoha's avatar TanakaKotoha

fix

parent 771088d4
No preview for this file type
--赤口的土著神
local m=11200030
local m=11200034
local cm=_G["c"..m]
function cm.initial_effect(c)
aux.AddCodeList(c,11200029)
......
--教团的普通骑士
local m=16104200
local cm=_G["c"..m]
c16104200.rksetcode="CHURCH_KNIGHT"
function cm.initial_effect(c)
--double tribute
--教团的普通骑士.
if not pcall(function() require("expansions/script/c16199990") end) then require("script/c16199990") end
local m,cm=rscf.DefineCard(16104200,"CHURCH_KNIGHT")
if rsch then return end
rsch=cm
rscf.DefineSet(rsch,"CHURCH",1)
rscf.DefineSet(rsch,"CHURCH_KNIGHT",2)
function rsch.GainEffect(c,code)
local e1=rsef.STO(c,EVENT_BATTLE_DESTROYING,{m,1},1,nil,EFFECT_FLAG_NO_TURN_RESET,cm.gecon,nil,nil,cm.geop)
e1:SetLabel(code)
return e1
end
function cm.gecon(e,tp,eg)
local c=e:GetHandler()
local bc=c:GetBattleTarget()
return bc:GetPreviousRaceOnField() & RACE_WARRIOR == 0
end
function cm.geop(e,tp)
local c=rscf.GetFaceUpSelf(e)
if not c then return end
c:RegisterFlagEffect(e:GetLabel(),rsreset.est,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(m,1))
end
function rsch.gaincon(code)
return function(e)
return e:GetHandler():GetFlagEffect(code)>0 or e:GetHandler():GetFlagEffect(code+100)>0
end
end
function rsch.SummonEffect(c,code,op)
local e1=rsef.SC(c,EVENT_SUMMON_SUCCESS)
e1:RegisterSolve(cm.secon,nil,nil,cm.seop(code,op))
return e1
end
function cm.secfilter(c)
return c:IsRace(RACE_WARRIOR) or c:IsType(TYPE_SPELL+TYPE_TRAP)
end
function cm.secon(e,tp)
local c=e:GetHandler()
local mat=c:GetMaterial()
local b1=c:IsSummonType(SUMMON_TYPE_ADVANCE) and mat:IsExists(cm.secfilter,1,nil)
local b2=not mat or #mat==0
return b1 or b2
end
function cm.seop(code,op)
return function(e,...)
rshint.Card(code)
op(e,...)
end
end
function rsch.SummonEffect2(c,code,cate,flag,tg,op)
local e1=rsef.STO(c,EVENT_SUMMON_SUCCESS,{code,0},nil,cate,flag,cm.secon,nil,tg,op)
return e1
end
function rsch.LimitFun(c,code)
Duel.AddCustomActivityCounter(code,ACTIVITY_SPSUMMON,cm.lfct1)
Duel.AddCustomActivityCounter(code,ACTIVITY_SUMMON,cm.lfct2)
end
function rsch.limitcost(code,cost2)
return function(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetCustomActivityCount(code,tp,ACTIVITY_SPSUMMON)==0 and Duel.GetCustomActivityCount(code,tp,ACTIVITY_SUMMON)==0 and (not cost2 or cost2(e,tp,eg,ep,ev,re,r,rp,0)) end
e1,e2=rsef.FV_LIMIT_PLAYER({e:GetHandler(),tp},"sum,sp",nil,cm.sltg,{1,0},nil,rsreset.pend)
if cost2 then
cost2(e,tp,eg,ep,ev,re,r,rp,1)
end
end
end
function cm.lfct1(c)
return c:IsRace(RACE_WARRIOR)
end
function cm.lfct2(c)
return c:GetSummonLocation()~=LOCATION_EXTRA
end
function cm.sltg(e,c)
if c:IsLocation(LOCATION_EXTRA) then return true end
return not c:IsRace(RACE_WARRIOR)
end
function rsch.BetrayFun(c,code,code_sum)
aux.AddCodeList(c,code_sum)
c:SetUniqueOnField(1,1,code)
local e1=rscf.SetSummonCondition(c,false,aux.FALSE)
local e2=rscf.SetSpecialSummonProduce(c,LOCATION_HAND,cm.bfcon,cm.bfop)
e2:SetLabel(code_sum)
return e1,e2
end
function cm.bfcon(e,c,tp)
return Duel.CheckReleaseGroup(tp,cm.bfcfilter,1,nil,tp,e:GetLabel())
end
function cm.bfcfilter(c,tp,code)
return c:IsCode(code) and Duel.GetMZoneCount(tp,c,tp)>0
end
function cm.bfop(e,tp)
local rg=Duel.SelectReleaseGroup(tp,cm.bfcfilter,1,1,nil,tp,e:GetLabel())
Duel.Release(rg,REASON_COST)
end
function rsch.DoubleTriFun(c,tc,reset,filter)
tc = tc or c
local tg = aux.TargetBoolFunction(rsch.IsSet1)
if filter then tg = aux.TargetBoolFunction(filter) end
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_DOUBLE_TRIBUTE)
e1:SetValue(cm.condition)
c:RegisterEffect(e1)
--to hand
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,0))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_SUMMON_SUCCESS)
e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetCountLimit(1,m)
e2:SetTarget(cm.sptg)
e2:SetOperation(cm.spop)
c:RegisterEffect(e2)
local e3=e2:Clone()
e3:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e3)
if reset then
e1:SetReset(reset)
end
e1:SetValue(tg)
tc:RegisterEffect(e1)
return e1
end
function cm.spfilter(c,e,tp)
return c:GetAttack()<=900 and c:GetLevel()<=3 and c:IsRace(RACE_WARRIOR) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP)
--------------------------------------
function cm.initial_effect(c)
local e1=rsef.STO(c,EVENT_SPSUMMON_SUCCESS,{m,0},{1,m},"sp","de,dsp",nil,nil,rsop.target(cm.spfilter,"sp",LOCATION_DECK),cm.spop)
local e3=rsef.RegisterClone(c,e1,"code",EVENT_SUMMON_SUCCESS)
local e4=rsch.DoubleTriFun(c)
end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(cm.spfilter,tp,LOCATION_DECK,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK)
function cm.spfilter(c,e,tp)
return c:IsRace(RACE_WARRIOR) and c:IsAttackBelow(899) and c:IsLevelBelow(3) and rscf.spfilter2()(c,e,tp)
end
function cm.spop(e,tp)
local c=e:GetHandler()
if Duel.GetLocationCount(tp,LOCATION_MZONE)>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,cm.spfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp)
if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
end
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetReset(RESET_PHASE+PHASE_END)
e1:SetTargetRange(1,0)
e1:SetTarget(cm.splimit)
Duel.RegisterEffect(e1,tp)
local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e2:SetCode(EFFECT_CANNOT_SUMMON)
e2:SetReset(RESET_PHASE+PHASE_END)
e2:SetTargetRange(1,0)
e2:SetTarget(cm.splimit)
Duel.RegisterEffect(e1,tp)
end
function cm.condition(e,c)
return (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH")
end
function cm.splimit(e,c,sump,sumtype,sumpos,targetp,se)
return c:IsLocation(LOCATION_EXTRA) or not (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH" or c:IsSetCard(0xccb) or c:IsCode(16104222))
rsop.SelectSpecialSummon(tp,cm.spfilter,tp,LOCATION_DECK,0,1,1,nil,{},e,tp)
local e1,e2=rsef.FV_LIMIT_PLAYER({c,tp},"sum,sp",nil,cm.tg,{1,0},nil,rsreset.pend)
end
function cm.tg(e,c)
if c:IsCode(16104222) then return false end
if c:IsLocation(LOCATION_EXTRA) then return true end
return not (rsch.IsSet1(c) or c:IsSetCard(0xccb))
end
\ No newline at end of file
--教团的灰骑士 格雷
local m=16104202
local cm=_G["c"..m]
c16104202.rksetcode="CHURCH_KNIGHT"
if not pcall(function() require("expansions/script/c16104200") end) then require("script/c16104200") end
local m,cm=rscf.DefineCard(16104202,"CHURCH_KNIGHT")
function cm.initial_effect(c)
c:SetUniqueOnField(1,1,m)
--summon success
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_SUMMON_SUCCESS)
e1:SetOperation(cm.sumsuc)
c:RegisterEffect(e1)
local e1_1=Effect.CreateEffect(c)
e1_1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e1_1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1_1:SetOperation(cm.sumsuc1)
c:RegisterEffect(e1_1)
--a d A
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,3))
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_BATTLE_DESTROYED)
e2:SetProperty(EFFECT_FLAG_NO_TURN_RESET)
e2:SetCountLimit(1)
e2:SetRange(LOCATION_MZONE)
e2:SetCondition(cm.gacon)
e2:SetTarget(cm.gatg)
e2:SetOperation(cm.gaop)
c:RegisterEffect(e2)
--summon with 1 tribute
local e1=rsch.SummonEffect(c,m,cm.op)
local e2=rsch.GainEffect(c,m)
local e3=rsef.QO(c,nil,{m,0},1,"eq","tg",LOCATION_MZONE,rsch.gaincon(m),nil,rstg.target(cm.eqfilter,"eq",LOCATION_MZONE,LOCATION_MZONE,1,1,c),cm.eqop)
local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(m,4))
e4:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e4:SetType(EFFECT_TYPE_SINGLE)
e4:SetCode(EFFECT_SUMMON_PROC)
e4:SetCondition(cm.otcon)
e4:SetOperation(cm.otop)
e4:SetValue(SUMMON_TYPE_ADVANCE)
e4:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_SINGLE)
e4:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e4:SetRange(LOCATION_MZONE)
e4:SetCode(EFFECT_DESTROY_REPLACE)
e4:SetCondition(rsch.gaincon(m))
e4:SetTarget(cm.desreptg)
e4:SetOperation(cm.desrepop)
c:RegisterEffect(e4)
local e5=e4:Clone()
e5:SetCode(EFFECT_SET_PROC)
c:RegisterEffect(e5)
--summon with s/t
local e6=Effect.CreateEffect(c)
e6:SetType(EFFECT_TYPE_SINGLE)
e6:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e6:SetCode(EFFECT_ADD_EXTRA_TRIBUTE)
e6:SetTargetRange(LOCATION_SZONE,0)
e6:SetCondition(cm.otcon1)
e6:SetTarget(cm.reltarget)
e6:SetValue(POS_FACEUP_ATTACK)
c:RegisterEffect(e6)
end
function cm.otcon1(e)
return Duel.IsEnvironment(16104206,e:GetOwnerPlayer(),LOCATION_FZONE)
end
function cm.reltarget(e,c)
return c:IsFaceup() and (c:IsType(TYPE_CONTINUOUS) or c:IsType(TYPE_EQUIP))
end
function cm.otfilter(c)
return c:IsSummonType(SUMMON_TYPE_ADVANCE)
end
function cm.otcon(e,c,minc)
if c==nil then return Duel.IsExistingMatchingCard(cm.otfilter,0,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
local mg=Duel.GetMatchingGroup(cm.otfilter,0,LOCATION_MZONE,LOCATION_MZONE,nil)
return c:IsLevelAbove(7) and minc<=1 and Duel.CheckTribute(c,1,1,mg) and Duel.IsEnvironment(16104206,e:GetOwnerPlayer(),LOCATION_FZONE)
end
function cm.otop(e,tp,eg,ep,ev,re,r,rp,c)
local sg=Duel.SelectMatchingCard(tp,cm.otfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
c:SetMaterial(sg)
Duel.Release(sg,REASON_SUMMON+REASON_MATERIAL)
end
function cm.sumsuc(e,tp,eg,ep,ev,re,r,rp)
function cm.op(e,tp)
local c=e:GetHandler()
if (c:IsSummonType(SUMMON_TYPE_ADVANCE) and c:GetMaterial():IsExists(cm.adfilter,1,nil)) or not c:IsSummonType(SUMMON_TYPE_ADVANCE) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetTargetRange(0,1)
e1:SetValue(cm.aclimit)
e1:SetReset(RESET_PHASE+PHASE_END)
e1:SetLabel(c:GetFieldID())
Duel.RegisterEffect(e1,tp)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_DISABLE)
e2:SetTargetRange(0,LOCATION_ONFIELD)
e2:SetTarget(cm.disable)
e2:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e2,tp)
end
if e:GetHandler():GetFlagEffect(16104206)~=0 then
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,2))
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCategory(CATEGORY_EQUIP)
e1:SetRange(LOCATION_MZONE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP)
e1:SetTarget(cm.eqtg)
e1:SetOperation(cm.eqop)
e1:SetCountLimit(1)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_SINGLE)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e2:SetRange(LOCATION_MZONE)
e2:SetCode(EFFECT_DESTROY_REPLACE)
e2:SetTarget(cm.desreptg)
e2:SetOperation(cm.desrepop)
e2:SetReset(RESET_EVENT+RESETS_STANDARD)
e2:SetLabelObject(e2)
c:RegisterEffect(e2)
end
end
function cm.sumsuc1(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if e:GetHandler():GetFlagEffect(16104220)~=0 then
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,2))
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCategory(CATEGORY_EQUIP)
e1:SetRange(LOCATION_MZONE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP)
e1:SetTarget(cm.eqtg)
e1:SetOperation(cm.eqop)
e1:SetCountLimit(1)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_SINGLE)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e2:SetRange(LOCATION_MZONE)
e2:SetCode(EFFECT_DESTROY_REPLACE)
e2:SetTarget(cm.desreptg)
e2:SetOperation(cm.desrepop)
e2:SetReset(RESET_EVENT+RESETS_STANDARD)
e2:SetLabelObject(e2)
c:RegisterEffect(e2)
end
local e1=rsef.FV_LIMIT({c,tp},"dis",nil,aux.TargetBoolFunction(Card.IsType,TYPE_SPELL+TYPE_TRAP),{0,LOCATION_ONFIELD },nil,rsreset.pend)
local e2=rsef.FV_LIMIT_PLAYER({c,tp},"act",cm.val,nil,{1,1},nil,rsreset.pend)
end
function cm.adfilter(c)
return c:IsRace(RACE_WARRIOR) or c:IsType(TYPE_SPELL) or c:IsType(TYPE_TRAP)
function cm.val(e,re)
local rc = re:GetHandler()
return rc:IsType(TYPE_SPELL+TYPE_TRAP) and rc:IsOnField() and rc:IsControler(1-e:GetHandlerPlayer())
end
function cm.aclimit(e,re,tp)
return re:GetHandler():IsOnField() and re:IsHasType(EFFECT_TYPE_ACTIVATE)
function cm.eqfilter(c,e,tp)
return Duel.GetLocationCount(tp,LOCATION_SZONE)>0 and (c:IsControler(tp) or c:IsAbleToChangeControler())
end
function cm.disable(e,c)
return c:IsType(TYPE_SPELL) or c:IsType(TYPE_TRAP)
end
function cm.gacon(e,tp,eg,ep,ev,re,r,rp)
local des=eg:GetFirst()
local rc=des:GetReasonCard()
return ((not des:IsRace(RACE_WARRIOR)) and rc:IsRelateToBattle() and rc==e:GetHandler()) or re:GetHandler():GetFlagEffect(tp,16104206)==1
end
function cm.gacon1(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(16104206)~=0
end
function cm.gatg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
end
function cm.gaop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) then
function cm.eqop(e,tp)
local c=rscf.GetFaceUpSelf(e)
local tc=rscf.GetTargetCard()
if not tc then return end
if not rsop.Equip(e,tc,c) then return end
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,2))
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCategory(CATEGORY_EQUIP)
e1:SetRange(LOCATION_MZONE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP)
e1:SetTarget(cm.eqtg)
e1:SetOperation(cm.eqop)
e1:SetCountLimit(1)
e1:SetType(EFFECT_TYPE_EQUIP)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_SINGLE)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e2:SetRange(LOCATION_MZONE)
e2:SetCode(EFFECT_DESTROY_REPLACE)
e2:SetTarget(cm.desreptg)
e2:SetOperation(cm.desrepop)
e2:SetReset(RESET_EVENT+RESETS_STANDARD)
e2:SetLabelObject(e2)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(e:GetHandler())
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetDescription(aux.Stringid(m,1))
e3:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CLIENT_HINT)
e3:SetRange(LOCATION_MZONE)
e3:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e3,true)
end
end
function cm.filter1(c)
return c:IsType(TYPE_MONSTER) and not c:IsForbidden()
end
function cm.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and cm.filter1(chkc) end
if chk==0 then return Duel.IsExistingTarget(cm.filter1,tp,LOCATION_MZONE,LOCATION_MZONE,1,e:GetHandler()) and Duel.GetLocationCount(tp,LOCATION_SZONE) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SELECT)
Duel.SelectTarget(tp,cm.filter1,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,e:GetHandler())
Duel.SetOperationInfo(0,CATEGORY_EQUIP,nil,1,tp,LOCATION_MZONE)
end
function cm.eqop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local sc=Duel.GetFirstTarget()
if Duel.GetLocationCount(tp,LOCATION_SZONE)<=0 then return end
if sc:IsRelateToEffect(e) and c:IsRelateToEffect(e) and c:IsFaceup() then
if not Duel.Equip(tp,sc,c) then return end
--equip limit
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetCode(EFFECT_EQUIP_LIMIT)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetLabelObject(c)
e1:SetValue(cm.eqlimit)
sc:RegisterEffect(e1)
--atk/def up
local e2=Effect.CreateEffect(sc)
e2:SetType(EFFECT_TYPE_EQUIP)
e2:SetCode(EFFECT_UPDATE_ATTACK)
e2:SetValue(1000)
e2:SetReset(RESET_EVENT+RESETS_STANDARD)
sc:RegisterEffect(e2)
local e3=Effect.CreateEffect(sc)
e3:SetType(EFFECT_TYPE_EQUIP)
e3:SetCode(EFFECT_UPDATE_DEFENSE)
e3:SetValue(1000)
e3:SetReset(RESET_EVENT+RESETS_STANDARD)
sc:RegisterEffect(e3)
end
end
function cm.eqlimit(e,c)
return c==e:GetLabelObject()
e1:SetValue(1000)
tc:RegisterEffect(e1)
local e2=rsef.RegisterClone({c,tc},e1,"code",EFFECT_UPDATE_DEFENSE)
end
function cm.repfilter(c)
return c:IsFaceup() and c:IsType(TYPE_EQUIP) and not c:IsStatus(STATUS_DESTROY_CONFIRMED)
function cm.repfilter(c,e)
return c:IsType(TYPE_SPELL) and c:IsLocation(LOCATION_SZONE) and not c:IsStatus(STATUS_DESTROY_CONFIRMED+STATUS_BATTLE_DESTROYED) and c:IsDestructable(e)
end
function cm.desreptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then
local g=c:GetEquipGroup()
return not c:IsReason(REASON_REPLACE) and g:IsExists(cm.repfilter,1,nil)
return not c:IsReason(REASON_REPLACE) and c:IsReason(REASON_BATTLE+REASON_EFFECT) and g:IsExists(cm.repfilter,1,nil,e)
end
if Duel.SelectYesNo(tp,aux.Stringid(m,2)) then
if Duel.SelectEffectYesNo(tp,c,96) then
local g=c:GetEquipGroup()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local sg=g:FilterSelect(tp,cm.repfilter,1,1,nil)
Duel.SetTargetCard(sg)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local tc=g:FilterSelect(tp,cm.repfilter,1,1,nil,e):GetFirst()
e:SetLabelObject(tc)
tc:SetStatus(STATUS_DESTROY_CONFIRMED,true)
return true
else return false end
end
function cm.desrepop(e,tp,eg,ep,ev,re,r,rp)
local tg=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS)
Duel.Destroy(tg,REASON_EFFECT+REASON_REPLACE)
local tc=e:GetLabelObject()
tc:SetStatus(STATUS_DESTROY_CONFIRMED,false)
rshint.Card(m)
Duel.Destroy(tc,REASON_EFFECT+REASON_REPLACE)
end
\ No newline at end of file
--教团的银骑士 莱特哈尔
local m=16104204
local cm=_G["c"..m]
c16104204.rksetcode="CHURCH_KNIGHT"
if not pcall(function() require("expansions/script/c16104200") end) then require("script/c16104200") end
local m,cm=rscf.DefineCard(16104204,"CHURCH_KNIGHT")
function cm.initial_effect(c)
c:SetUniqueOnField(1,1,m)
--summon success
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_SUMMON_SUCCESS)
e1:SetOperation(cm.sumsuc)
c:RegisterEffect(e1)
local e1_1=Effect.CreateEffect(c)
e1_1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e1_1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1_1:SetOperation(cm.sumsuc1)
c:RegisterEffect(e1_1)
--a d A
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,2))
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_BATTLE_DESTROYED)
e2:SetProperty(EFFECT_FLAG_NO_TURN_RESET)
e2:SetCountLimit(1)
e2:SetRange(LOCATION_MZONE)
e2:SetCondition(cm.gacon)
e2:SetTarget(cm.gatg)
e2:SetOperation(cm.gaop)
c:RegisterEffect(e2)
--summon with 1 tribute
local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(m,3))
e4:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e4:SetType(EFFECT_TYPE_SINGLE)
e4:SetCode(EFFECT_SUMMON_PROC)
e4:SetCondition(cm.otcon)
e4:SetOperation(cm.otop)
e4:SetValue(SUMMON_TYPE_ADVANCE)
c:RegisterEffect(e4)
local e5=e4:Clone()
e5:SetCode(EFFECT_SET_PROC)
c:RegisterEffect(e5)
--summon with s/t
local e6=Effect.CreateEffect(c)
e6:SetType(EFFECT_TYPE_SINGLE)
e6:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e6:SetCode(EFFECT_ADD_EXTRA_TRIBUTE)
e6:SetTargetRange(LOCATION_SZONE,0)
e6:SetCondition(cm.otcon1)
e6:SetTarget(cm.reltarget)
e6:SetValue(POS_FACEUP_ATTACK)
c:RegisterEffect(e6)
local e1=rsch.SummonEffect(c,m,cm.op)
local e2=rsch.GainEffect(c,m)
local e3=rsef.SC(c,EVENT_BATTLE_START)
e3:RegisterSolve(rsch.gaincon(m),nil,nil,cm.desop)
end
function cm.otcon1(e)
return Duel.IsEnvironment(16104206,e:GetOwnerPlayer(),LOCATION_FZONE)
end
function cm.reltarget(e,c)
return c:IsFaceup() and (c:IsType(TYPE_CONTINUOUS) or c:IsType(TYPE_EQUIP))
end
function cm.otfilter(c)
return c:IsSummonType(SUMMON_TYPE_ADVANCE)
end
function cm.otcon(e,c,minc)
if c==nil then return Duel.IsExistingMatchingCard(cm.otfilter,0,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
local mg=Duel.GetMatchingGroup(cm.otfilter,0,LOCATION_MZONE,LOCATION_MZONE,nil)
return c:IsLevelAbove(7) and minc<=1 and Duel.CheckTribute(c,1,1,mg) and Duel.IsEnvironment(16104206,e:GetOwnerPlayer(),LOCATION_FZONE)
end
function cm.otop(e,tp,eg,ep,ev,re,r,rp,c)
local sg=Duel.SelectMatchingCard(tp,cm.otfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
c:SetMaterial(sg)
Duel.Release(sg,REASON_SUMMON+REASON_MATERIAL)
end
function cm.sumsuc(e,tp,eg,ep,ev,re,r,rp)
function cm.op(e,tp)
local c=e:GetHandler()
if c:GetMaterial():IsExists(cm.adfilter,1,nil) or not c:IsSummonType(SUMMON_TYPE_ADVANCE) then
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_SINGLE)
e4:SetCode(EFFECT_IMMUNE_EFFECT)
e4:SetValue(cm.val)
e4:SetOwnerPlayer(tp)
e4:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
c:RegisterEffect(e4)
end
if e:GetHandler():GetFlagEffect(16104206)~=0 then
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,2))
e1:SetCategory(CATEGORY_DESTROY)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_BATTLE_START)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetTarget(cm.destg)
e1:SetOperation(cm.desop)
c:RegisterEffect(e1)
end
end
function cm.sumsuc1(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if e:GetHandler():GetFlagEffect(16104220)~=0 then
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,2))
e1:SetCategory(CATEGORY_DESTROY)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_BATTLE_START)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetTarget(cm.destg)
e1:SetOperation(cm.desop)
c:RegisterEffect(e1)
end
end
function cm.adfilter(c)
return c:IsRace(RACE_WARRIOR) or c:IsType(TYPE_SPELL) or c:IsType(TYPE_TRAP)
end
function cm.val(e,re,tp)
rsef.SV_IMMUNE_EFFECT(c,cm.imval,nil,rsreset.est_pend)
end
function cm.imval(e,re)
return not re:GetHandler():IsRace(RACE_WARRIOR)
end
function cm.gacon(e,tp,eg,ep,ev,re,r,rp)
local des=eg:GetFirst()
local rc=des:GetReasonCard()
return (not des:IsRace(RACE_WARRIOR)) and rc:IsRelateToBattle() and rc==e:GetHandler()
end
function cm.gatg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
end
function cm.gaop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,2))
e1:SetCategory(CATEGORY_DESTROY)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_BATTLE_START)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetTarget(cm.destg)
e1:SetOperation(cm.desop)
c:RegisterEffect(e1)
local e3=Effect.CreateEffect(e:GetHandler())
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetDescription(aux.Stringid(m,1))
e3:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CLIENT_HINT)
e3:SetRange(LOCATION_MZONE)
e3:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e3,true)
end
end
function cm.destg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
local tc=Duel.GetAttacker()
if tc==c then tc=Duel.GetAttackTarget() end
if chk==0 then return tc and tc:IsFaceup() and not tc:IsRace(RACE_WARRIOR) end
Duel.SetOperationInfo(0,CATEGORY_DESTROY,tc,1,0,0)
if e:IsHasType(EFFECT_TYPE_TRIGGER_O) then
Duel.SetChainLimit(aux.FALSE)
end
end
function cm.desop(e,tp,eg,ep,ev,re,r,rp)
function cm.desop(e,tp)
local c=e:GetHandler()
local tc=Duel.GetAttacker()
if tc==c then tc=Duel.GetAttackTarget() end
if tc:IsRelateToBattle() then if Duel.Destroy(tc,REASON_EFFECT)~=0 then
local LP1=Duel.GetLP(1-tp)
if tc:GetTextAttack()>LP1 then Duel.SetLP(1-tp,0) end
Duel.SetLP(1-tp,LP1-tc:GetTextAttack()) end
local bc=c:GetBattleTarget()
if bc:IsFacedown() or not bc:IsRace(RACE_WARRIOR) then
rshint.Card(m)
if Duel.Destroy(bc,REASON_EFFECT)>0 then
local atk = bc:GetBaseAttack()
if atk > 0 then
Duel.Damage(1-tp,atk,REASON_EFFECT)
end
end
end
end
\ No newline at end of file
--不灭的圣光教团国
local m=16104206
local cm=_G["c"..m]
c16104206.rksetcode="CHURCH"
if not pcall(function() require("expansions/script/c16104200") end) then require("script/c16104200") end
local m,cm=rscf.DefineCard(16104206,"CHURCH")
function cm.initial_effect(c)
--Activate
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_ACTIVATE)
e0:SetCode(EVENT_FREE_CHAIN)
c:RegisterEffect(e0)
--cannot Disable Sum
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_CANNOT_DISABLE_SUMMON)
e3:SetRange(LOCATION_FZONE)
e3:SetProperty(EFFECT_FLAG_IGNORE_RANGE+EFFECT_FLAG_SET_AVAILABLE)
e3:SetTarget(aux.TargetBoolFunction(Card.ischurch))
c:RegisterEffect(e3)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_CANNOT_DISABLE_SPSUMMON)
e2:SetRange(LOCATION_FZONE)
e2:SetProperty(EFFECT_FLAG_IGNORE_RANGE+EFFECT_FLAG_SET_AVAILABLE)
e2:SetTarget(aux.TargetBoolFunction(Card.ischurch))
c:RegisterEffect(e2)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_DISABLE_FLIP_SUMMON)
e1:SetRange(LOCATION_FZONE)
e1:SetProperty(EFFECT_FLAG_IGNORE_RANGE+EFFECT_FLAG_SET_AVAILABLE)
e1:SetTarget(aux.TargetBoolFunction(Card.ischurch))
c:RegisterEffect(e1)
--Summon
local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(m,2))
e4:SetCategory(CATEGORY_SUMMON)
e4:SetType(EFFECT_TYPE_QUICK_O)
e4:SetCode(EVENT_FREE_CHAIN)
e4:SetRange(LOCATION_FZONE)
e4:SetCountLimit(1)
e4:SetTarget(cm.sumtg)
e4:SetOperation(cm.sumop)
c:RegisterEffect(e4)
Duel.RegisterFlagEffect(tp,m,RESET_EVENT+RESETS_STANDARD,0,0)
local e1=rsef.ACT(c)
local e2,e3,e4=rsef.FV_CANNOT_DISABLE(c,"sum,sp,fp",nil,aux.TargetBoolFunction(rsch.IsSet1),{LOCATION_MZONE,0})
local e11=rsef.QO(c,nil,{m,1},1,"sum",nil,LOCATION_FZONE,nil,nil,rsop.target(cm.sumfilter,"sum",LOCATION_HAND),cm.sumop)
local e5=Effect.CreateEffect(c)
e5:SetDescription(aux.Stringid(m,0))
e5:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e5:SetType(EFFECT_TYPE_SINGLE)
e5:SetCode(EFFECT_SUMMON_PROC)
e5:SetCondition(cm.advcon)
e5:SetOperation(cm.advop)
e5:SetValue(SUMMON_TYPE_ADVANCE)
local e6=Effect.CreateEffect(c)
e6:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_GRANT)
e6:SetRange(LOCATION_FZONE)
e6:SetTargetRange(LOCATION_HAND,0)
e6:SetTarget(cm.advtg)
e6:SetLabelObject(e5)
c:RegisterEffect(e6)
local e7=Effect.CreateEffect(c)
e7:SetDescription(aux.Stringid(m,0))
e7:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e7:SetType(EFFECT_TYPE_SINGLE)
e7:SetCode(EFFECT_SET_PROC)
e7:SetCondition(cm.advcon)
e7:SetOperation(cm.advop)
e7:SetValue(SUMMON_TYPE_ADVANCE)
local e8=Effect.CreateEffect(c)
e8:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_GRANT)
e8:SetRange(LOCATION_FZONE)
e8:SetTargetRange(LOCATION_HAND,0)
e8:SetTarget(cm.advtg)
e8:SetLabelObject(e7)
c:RegisterEffect(e8)
local e9=Effect.CreateEffect(c)
e9:SetType(EFFECT_TYPE_SINGLE)
e9:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e9:SetCode(EFFECT_ADD_EXTRA_TRIBUTE)
e9:SetTargetRange(LOCATION_SZONE,0)
e9:SetTarget(aux.TargetBoolFunction(Card.IsType,TYPE_CONTINUOUS+TYPE_EQUIP))
e9:SetValue(POS_FACEUP_ATTACK)
e9:SetCondition(cm.excon)
local e10=Effect.CreateEffect(c)
e10:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_GRANT)
e10:SetRange(LOCATION_FZONE)
e10:SetTargetRange(LOCATION_HAND,0)
e10:SetTarget(cm.advtg)
e10:SetLabelObject(e9)
c:RegisterEffect(e10)
end
function cm.filter(c)
return (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH") and c:IsSummonable(true,nil)
function cm.excon(e)
return not cm.check_s
end
function Card.ischurch(c)
return (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH")
function cm.advtg(e,c)
return rsch.IsSet2(c) and c:IsLevelAbove(7)
end
function cm.sumtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_HAND,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_SUMMON,nil,1,0,0)
function cm.otfilter(c)
return c:IsSummonType(SUMMON_TYPE_ADVANCE)
end
function cm.sumop(e,tp,eg,ep,ev,re,r,rp)
function cm.advcon(e,c,minc)
if c==nil then return true end
local tp=c:GetControler()
local mg=Duel.GetMatchingGroup(cm.otfilter,tp,LOCATION_MZONE,0,nil)
cm.check_s = true
local res = c:IsLevelAbove(7) and minc<=1 and Duel.CheckTribute(c,1,1,mg)
cm.check_s = false
return res
end
function cm.advop(e,tp,eg,ep,ev,re,r,rp,c)
cm.check_s = true
local mg=Duel.GetMatchingGroup(cm.otfilter,tp,LOCATION_MZONE,0,nil)
local sg=Duel.SelectTribute(tp,c,1,1,mg)
c:SetMaterial(sg)
Duel.Release(sg,REASON_SUMMON+REASON_MATERIAL)
cm.check_s = false
end
function cm.sumfilter(c,e,tp)
return rsch.IsSet1(c) and c:IsSummonable(true,nil)
end
function cm.sumop(e,tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SUMMON)
local g=Duel.SelectMatchingCard(tp,cm.filter,tp,LOCATION_HAND,0,1,1,nil)
if g:GetCount()<=0 then return end
local sc=g:GetFirst()
if sc.rksetcode=="CHURCH_KNIGHT" and sc:GetOriginalLevel()>=6 then
sc:RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD-RESET_TOFIELD+RESET_PHASE+PHASE_END,0,1)
local e3=Effect.CreateEffect(e:GetHandler())
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetDescription(aux.Stringid(m,1))
e3:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CLIENT_HINT)
e3:SetRange(LOCATION_MZONE)
e3:SetReset(RESET_EVENT+RESETS_STANDARD-RESET_TOFIELD)
sc:RegisterEffect(e3,true)
local tc=Duel.SelectMatchingCard(tp,cm.sumfilter,tp,LOCATION_HAND,0,1,1,nil):GetFirst()
if tc then
local code = tc:GetOriginalCodeRule()
tc:RegisterFlagEffect(code + 100,rsreset.est-RESET_TOFIELD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(16104200,2))
Duel.Summon(tp,tc,true,nil)
end
Duel.Summon(tp,sc,true,nil)
end
\ No newline at end of file
--教团的苍骑士 IO
local m=16104208
local cm=_G["c"..m]
c16104208.rksetcode="CHURCH_KNIGHT"
if not pcall(function() require("expansions/script/c16104200") end) then require("script/c16104200") end
local m,cm=rscf.DefineCard(16104208,"CHURCH_KNIGHT")
function cm.initial_effect(c)
c:SetUniqueOnField(1,1,m)
--summon success
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_F)
e1:SetCode(EVENT_SUMMON_SUCCESS)
e1:SetCondition(cm.sucon)
e1:SetOperation(cm.sumsuc)
c:RegisterEffect(e1)
local e1_1=Effect.CreateEffect(c)
e1_1:SetDescription(aux.Stringid(m,0))
e1_1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e1_1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1_1:SetOperation(cm.sumsuc1)
c:RegisterEffect(e1_1)
--a d A
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,2))
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_BATTLE_DESTROYED)
e2:SetProperty(EFFECT_FLAG_NO_TURN_RESET)
e2:SetCountLimit(1)
e2:SetRange(LOCATION_MZONE)
e2:SetCondition(cm.gacon)
e2:SetTarget(cm.gatg)
e2:SetOperation(cm.gaop)
c:RegisterEffect(e2)
--summon with 1 tribute
local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(m,4))
e4:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e4:SetType(EFFECT_TYPE_SINGLE)
e4:SetCode(EFFECT_SUMMON_PROC)
e4:SetCondition(cm.otcon)
e4:SetOperation(cm.otop)
e4:SetValue(SUMMON_TYPE_ADVANCE)
c:RegisterEffect(e4)
local e5=e4:Clone()
e5:SetCode(EFFECT_SET_PROC)
c:RegisterEffect(e5)
--summon with s/t
local e6=Effect.CreateEffect(c)
e6:SetType(EFFECT_TYPE_SINGLE)
e6:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e6:SetCode(EFFECT_ADD_EXTRA_TRIBUTE)
e6:SetTargetRange(LOCATION_SZONE,0)
e6:SetCondition(cm.otcon1)
e6:SetTarget(cm.reltarget)
e6:SetValue(POS_FACEUP_ATTACK)
c:RegisterEffect(e6)
local e1=rsch.SummonEffect2(c,m,"tg",nil,rsop.target(cm.tgfilter,"tg",LOCATION_MZONE,LOCATION_MZONE,true),cm.op)
local e2=rsch.GainEffect(c,m)
local e3=rsef.QO(c,nil,{m,1},1,"des","tg",LOCATION_MZONE,rsch.gaincon(m),nil,rstg.target2(cm.fun,cm.cfilter,nil,LOCATION_MZONE,LOCATION_MZONE),cm.desop)
end
function cm.otcon1(e)
return Duel.IsEnvironment(16104206,e:GetOwnerPlayer(),LOCATION_FZONE)
function cm.tgfilter(c)
return c:IsAbleToGrave() and (c:IsFacedown() or not c:IsRace(RACE_WARRIOR))
end
function cm.reltarget(e,c)
return c:IsFaceup() and (c:IsType(TYPE_CONTINUOUS) or c:IsType(TYPE_EQUIP))
function cm.op(e,tp)
local g=Duel.GetMatchingGroup(cm.tgfilter,tp,LOCATION_MZONE,LOCATION_MZONE,nil)
Duel.SendtoGrave(g,REASON_EFFECT)
end
function cm.otfilter(c)
return c:IsSummonType(SUMMON_TYPE_ADVANCE)
function cm.fun(g,e,tp)
local tg=g:GetFirst():GetColumnGroup()
Duel.SetOperationInfo(0,CATEGORY_DESTROY,tg,#tg,0,0)
end
function cm.otcon(e,c,minc)
if c==nil then return Duel.IsExistingMatchingCard(cm.otfilter,0,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
local mg=Duel.GetMatchingGroup(cm.otfilter,0,LOCATION_MZONE,LOCATION_MZONE,nil)
return c:IsLevelAbove(7) and minc<=1 and Duel.CheckTribute(c,1,1,mg) and Duel.IsEnvironment(16104206,e:GetOwnerPlayer(),LOCATION_FZONE)
function cm.cfilter(c)
return c:IsFaceup() and c:IsRace(RACE_WARRIOR) and c:GetColumnGroupCount()>0
end
function cm.otop(e,tp,eg,ep,ev,re,r,rp,c)
local sg=Duel.SelectMatchingCard(tp,cm.otfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
c:SetMaterial(sg)
Duel.Release(sg,REASON_SUMMON+REASON_MATERIAL)
end
function cm.des(c)
return not c:IsRace(RACE_WARRIOR)
end
function cm.sucon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetMaterial():IsExists(cm.adfilter,1,nil) or not e:GetHandler():GetMaterial():IsSummonType(SUMMON_TYPE_ADVANCE)
end
function cm.sumsuc(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=Duel.GetMatchingGroup(cm.des,tp,LOCATION_MZONE,LOCATION_MZONE,nil)
Duel.Destroy(g,REASON_EFFECT)
if e:GetHandler():GetFlagEffect(16104206)~=0 then
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,2))
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCategory(CATEGORY_DESTROY)
e1:SetRange(LOCATION_MZONE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP)
e1:SetTarget(cm.dstg)
e1:SetOperation(cm.dsop)
e1:SetCountLimit(1)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e1)
end
end
function cm.sumsuc1(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if e:GetHandler():GetFlagEffect(16104220)~=0 then
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,2))
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCategory(CATEGORY_DESTROY)
e1:SetRange(LOCATION_MZONE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP)
e1:SetTarget(cm.dstg)
e1:SetOperation(cm.dsop)
e1:SetCountLimit(1)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e1)
end
end
function cm.adfilter(c)
return c:IsRace(RACE_WARRIOR) or c:IsType(TYPE_SPELL) or c:IsType(TYPE_TRAP)
end
function cm.gacon(e,tp,eg,ep,ev,re,r,rp)
local des=eg:GetFirst()
local rc=des:GetReasonCard()
return (not des:IsRace(RACE_WARRIOR)) and rc:IsRelateToBattle() and rc==e:GetHandler()
end
function cm.gatg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
end
function cm.gaop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,2))
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCategory(CATEGORY_DESTROY)
e1:SetRange(LOCATION_MZONE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP)
e1:SetTarget(cm.dstg)
e1:SetOperation(cm.dsop)
e1:SetCountLimit(1)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e1)
local e3=Effect.CreateEffect(e:GetHandler())
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetDescription(aux.Stringid(m,1))
e3:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CLIENT_HINT)
e3:SetRange(LOCATION_MZONE)
e3:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e3,true)
end
end
function cm.filter1(c)
return c:IsType(TYPE_MONSTER) and c:IsFaceup() and c:IsRace(RACE_WARRIOR)
end
function cm.desfilter(c,g)
return g:IsContains(c)
end
function cm.dstg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and cm.filter1(chkc) end
if chk==0 then return Duel.IsExistingTarget(cm.filter1,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SELECT)
Duel.SelectTarget(tp,cm.filter1,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,nil,1,tp,LOCATION_MZONE)
end
function cm.dsop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local sc=Duel.GetFirstTarget()
local cg=sc:GetColumnGroup()
local g=Duel.GetMatchingGroup(cm.desfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,sc,cg)
if sc:IsRelateToEffect(e) then
Duel.Destroy(g,REASON_EFFECT)
end
function cm.desop(e,tp)
local tc=rscf.GetTargetCard()
if not tc then return end
local dg=tc:GetColumnGroup()
Duel.Destroy(dg,REASON_EFFECT)
end
\ No newline at end of file
--教团的翼骑士 韦因
local m=16104210
local cm=_G["c"..m]
c16104210.rksetcode="CHURCH_KNIGHT"
if not pcall(function() require("expansions/script/c16104200") end) then require("script/c16104200") end
local m,cm=rscf.DefineCard(16104210,"CHURCH_KNIGHT")
function cm.initial_effect(c)
c:SetUniqueOnField(1,1,m)
--hand
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,3))
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetRange(LOCATION_HAND)
e1:SetCost(cm.sprcost)
e1:SetTarget(cm.sprtg)
e1:SetOperation(cm.sprop)
c:RegisterEffect(e1)
--hand
local e4=Effect.CreateEffect(c)
e4:SetCategory(CATEGORY_DRAW)
e4:SetDescription(aux.Stringid(m,5))
e4:SetType(EFFECT_TYPE_IGNITION)
e4:SetCode(EVENT_FREE_CHAIN)
e4:SetRange(LOCATION_HAND)
e4:SetCost(cm.sprcost)
e4:SetTarget(cm.sprtg1)
e4:SetOperation(cm.sprop1)
c:RegisterEffect(e4)
--a d A
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,2))
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_BATTLE_DESTROYED)
e2:SetProperty(EFFECT_FLAG_NO_TURN_RESET)
e2:SetCountLimit(1)
e2:SetRange(LOCATION_MZONE)
e2:SetCondition(cm.gacon)
e2:SetTarget(cm.gatg)
e2:SetOperation(cm.gaop)
c:RegisterEffect(e2)
--summon success
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e0:SetCode(EVENT_SUMMON_SUCCESS)
e0:SetOperation(cm.sumsuc)
c:RegisterEffect(e0)
local e0_1=Effect.CreateEffect(c)
e0_1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e0_1:SetCode(EVENT_SPSUMMON_SUCCESS)
e0_1:SetOperation(cm.sumsuc1)
c:RegisterEffect(e0_1)
Duel.AddCustomActivityCounter(m,ACTIVITY_SPSUMMON,cm.counterfilter1)
Duel.AddCustomActivityCounter(m,ACTIVITY_SUMMON,cm.counterfilter)
end
function cm.counterfilter(c)
return c:IsRace(RACE_WARRIOR)
end
function cm.counterfilter1(c)
return c:GetSummonLocation()~=LOCATION_EXTRA and c:IsRace(RACE_WARRIOR)
end
function cm.sumsuc(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if e:GetHandler():GetFlagEffect(16104206)~=0 then
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,2))
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCategory(CATEGORY_REMOVE)
e1:SetRange(LOCATION_MZONE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetProperty(EFFECT_FLAG_DAMAGE_STEP)
e1:SetTarget(cm.eqtg)
e1:SetOperation(cm.eqop)
e1:SetCountLimit(1)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e1)
end
end
function cm.sumsuc1(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if e:GetHandler():GetFlagEffect(16104220)~=0 then
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,2))
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCategory(CATEGORY_REMOVE)
e1:SetRange(LOCATION_MZONE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetProperty(EFFECT_FLAG_DAMAGE_STEP)
e1:SetTarget(cm.eqtg)
e1:SetOperation(cm.eqop)
e1:SetCountLimit(1)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e1)
end
end
function cm.filter(c)
return (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH") and c:GetLevel()>=5
end
function cm.filter1(c)
return c:IsAbleToGrave()
rsch.LimitFun(c,m)
local e1=rsch.GainEffect(c,m)
local e2=rsef.QO(c,nil,{m,0},nil,nil,nil,LOCATION_HAND,nil,rsch.limitcost(m,rscost.cost(Card.IsDiscardable,"dish")),rsop.target(cm.cfilter,nil,LOCATION_HAND,0,1,1,c),cm.sumop)
local e3=rsef.QO(c,nil,{m,1},nil,"dr,tg",nil,LOCATION_HAND,nil,rsch.limitcost(m,rscost.cost(0,"dish")),rsop.target(1,"dr"),cm.drop)
local e4=rsef.QO(c,nil,{m,2},1,"rm",nil,LOCATION_MZONE,rsch.gaincon(m),nil,rsop.target(Card.IsAbleToRemove,"rm",LOCATION_ONFIELD,LOCATION_ONFIELD),cm.rmop)
end
function cm.sprcost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return c:IsDiscardable() and Duel.GetCustomActivityCount(m,tp,ACTIVITY_SPSUMMON)==0 and Duel.GetCustomActivityCount(m,tp,ACTIVITY_SUMMON)==0 end
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_OATH)
e1:SetTargetRange(1,0)
e1:SetTarget(cm.splimit)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local e2=e1:Clone()
e2:SetCode(EFFECT_CANNOT_SUMMON)
Duel.RegisterEffect(e2,tp)
Duel.SendtoGrave(c,REASON_COST+REASON_DISCARD)
end
function cm.splimit(e,c,sump,sumtype,sumpos,targetp,se)
return c:IsLocation(LOCATION_EXTRA) or not c:IsRace(RACE_WARRIOR)
function cm.cfilter(c)
return rsch.IsSet1(c) and c:IsLevelAbove(5) and not c:IsPublic()
end
function cm.sprtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_HAND,0,1,e:GetHandler())
end
function cm.sumop(e,tp)
rsop.SelectSolve(HINTMSG_SELF,tp,cm.cfilter,tp,LOCATION_HAND,0,1,1,nil,cm.solvefun,e,tp)
end
function cm.sprop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_HAND,0,1,e:GetHandler()) then return end
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(m,4))
local g=Duel.SelectMatchingCard(tp,cm.filter,tp,LOCATION_HAND,0,1,1,nil)
function cm.solvefun(g,e,tp)
Duel.HintSelection(g)
local tc=g:GetFirst()
if tc then
Duel.ConfirmCards(1-tp,tc)
Duel.ShuffleHand(tp)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetDescription(aux.Stringid(m,0))
e1:SetProperty(EFFECT_FLAG_UNCOPYABLE)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_SUMMON_PROC)
e1:SetCondition(cm.ntcon)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1)
end
end
function cm.sprtg1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
return Duel.IsPlayerCanDraw(tp,2)
end
Duel.SetTargetPlayer(tp)
Duel.SetTargetParam(2)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,2)
end
function cm.filter2(c)
return c:IsAbleToGrave() and (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH")
end
function cm.filter3(c)
return (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH")
end
function cm.sprop1(e,tp,eg,ep,ev,re,r,rp)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
if Duel.Draw(p,d,REASON_EFFECT)==2 then
if Duel.IsExistingMatchingCard(cm.filter3,tp,LOCATION_HAND,0,1,nil) then
local g=Duel.SelectMatchingCard(tp,cm.filter2,tp,LOCATION_HAND,0,1,1,nil)
Duel.SendtoGrave(g,REASON_EFFECT)
else
local g=Duel.GetMatchingGroup(Card.IsAbleToDeck,tp,LOCATION_HAND,0,nil)
Duel.SendtoDeck(g,nil,2,REASON_EFFECT)
end
end
local c=e:GetHandler()
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_PUBLIC)
e1:SetReset(rsreset.pend)
tc:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,0))
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_SUMMON_PROC)
e2:SetReset(rsreset.pend)
e2:SetCondition(cm.ntcon)
tc:RegisterEffect(e2)
return true
end
function cm.ntcon(e,c,minc)
if c==nil then return true end
return minc==0 and c:IsLevelAbove(5) and Duel.GetLocationCount(c:GetControler(),LOCATION_MZONE)>0
end
function cm.gacon(e,tp,eg,ep,ev,re,r,rp)
local des=eg:GetFirst()
local rc=des:GetReasonCard()
return (not des:IsRace(RACE_WARRIOR)) and rc:IsRelateToBattle() and rc==e:GetHandler()
end
function cm.gatg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
end
function cm.gaop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,2))
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCategory(CATEGORY_REMOVE)
e1:SetRange(LOCATION_MZONE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetProperty(EFFECT_FLAG_DAMAGE_STEP)
e1:SetTarget(cm.eqtg)
e1:SetOperation(cm.eqop)
e1:SetCountLimit(1)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e1)
local e3=Effect.CreateEffect(e:GetHandler())
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetDescription(aux.Stringid(m,1))
e3:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CLIENT_HINT)
e3:SetRange(LOCATION_MZONE)
e3:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e3,true)
function cm.drop(e,tp)
if Duel.Draw(tp,2,REASON_EFFECT)>0 then
rsop.SelectToGrave(tp,Card.IsAbleToGrave,tp,LOCATION_HAND,0,1,1,nil,{})
end
end
function cm.filter1(c)
return c:IsAbleToRemove()
end
function cm.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.IsExistingTarget(cm.filter1,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_REMOVE,nil,1,tp,LOCATION_ONFIELD)
end
function cm.eqop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.SelectMatchingCard(tp,cm.filter1,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,nil):GetFirst()
if tc and Duel.Remove(tc,POS_FACEUP,REASON_EFFECT)~=0 then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CANNOT_TRIGGER)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CLIENT_HINT)
e1:SetReset(RESET_EVENT+RESETS_STANDARD-RESET_REMOVE)
tc:RegisterEffect(e1)
function cm.rmop(e,tp)
local ct,og,tc=rsop.SelectRemove(tp,Card.IsAbleToRemove,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,nil,{})
if tc and tc:IsLocation(LOCATION_REMOVED) then
rsef.SV_LIMIT({e:GetHandler(),tc},"tri",nil,nil,rsreset.est)
end
end
\ No newline at end of file
--教团的圣旗手 迪萨贝尔
local m=16104212
local cm=_G["c"..m]
c16104212.rksetcode="CHURCH"
if not pcall(function() require("expansions/script/c16104200") end) then require("script/c16104200") end
local m,cm=rscf.DefineCard(16104212,"CHURCH")
function cm.initial_effect(c)
c:SetUniqueOnField(1,1,m)
--summon success
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_TOHAND)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_SUMMON_SUCCESS)
e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCountLimit(1)
e1:SetTarget(cm.thtg)
e1:SetOperation(cm.thop)
c:RegisterEffect(e1)
local e3=e1:Clone()
e3:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e3)
--double tribute
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_DOUBLE_TRIBUTE)
e2:SetValue(cm.condition)
c:RegisterEffect(e2)
Duel.AddCustomActivityCounter(m,ACTIVITY_SUMMON,cm.counterfilter)
Duel.AddCustomActivityCounter(m,ACTIVITY_SPSUMMON,cm.counterfilter1)
end
function cm.counterfilter(c)
return c:IsRace(RACE_WARRIOR)
end
function cm.counterfilter1(c)
return c:GetSummonLocation()~=LOCATION_EXTRA and c:IsRace(RACE_WARRIOR)
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetCustomActivityCount(m,tp,ACTIVITY_SPSUMMON)==0 end
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_OATH)
e1:SetTargetRange(1,0)
e1:SetTarget(cm.splimit)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local e2=e1:Clone()
e2:SetCode(EFFECT_CANNOT_SUMMON)
Duel.RegisterEffect(e2,tp)
end
function cm.splimit(e,c,sump,sumtype,sumpos,targetp,se)
return c:IsLocation(LOCATION_EXTRA) or not c:IsRace(RACE_WARRIOR)
rsch.LimitFun(c,m)
local e1=rsef.STO(c,EVENT_SUMMON_SUCCESS,{m,0},nil,"se,th","de,dsp",nil,rsch.limitcost(m),rsop.target(cm.thfilter,"th",LOCATION_DECK),cm.thop)
local e2=rsef.RegisterClone(c,e1,"code",EVENT_SPSUMMON_SUCCESS)
local e3=rsch.DoubleTriFun(c,nil,nil,rsch.IsSet2)
end
function cm.thfilter(c)
return (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH") and c:IsAbleToHand()
end
function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.thfilter,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end
function cm.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,cm.thfilter,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
return rsch.IsSet1(c) and c:IsAbleToHand()
end
function cm.condition(e,c)
return (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH")
function cm.thop(e,tp)
rsop.SelectToHand(tp,cm.thfilter,tp,LOCATION_DECK,0,1,1,nil,{})
end
\ No newline at end of file
--叛教的掠夺骑士 IO
local m=16104214
local cm=_G["c"..m]
c16104214.rksetcode="CHURCH_KNIGHT"
if not pcall(function() require("expansions/script/c16104200") end) then require("script/c16104200") end
local m,cm=rscf.DefineCard(16104214,"CHURCH_KNIGHT")
function cm.initial_effect(c)
aux.AddCodeList(c,16104208)
c:SetUniqueOnField(1,1,m)
--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)
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_FIELD)
e4:SetCode(EFFECT_SPSUMMON_PROC)
e4:SetProperty(EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_CANNOT_DISABLE)
e4:SetRange(LOCATION_HAND)
e4:SetCondition(cm.sprcon)
e4:SetOperation(cm.sprop)
c:RegisterEffect(e4)
--indes
--local e1=Effect.CreateEffect(c)
--e1:SetType(EFFECT_TYPE_SINGLE)
--e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
--e1:SetRange(LOCATION_MZONE)
--e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
--e1:SetValue(1)
--c:RegisterEffect(e1)
--cannot target
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e2:SetRange(LOCATION_MZONE)
e2:SetCode(EFFECT_CANNOT_BE_EFFECT_TARGET)
e2:SetValue(aux.tgoval)
c:RegisterEffect(e2)
--disef and gain
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(m,0))
e3:SetCategory(CATEGORY_DISABLE+CATEGORY_ATKCHANGE+CATEGORY_DEFCHANGE)
e3:SetType(EFFECT_TYPE_QUICK_O)
e3:SetCode(EVENT_FREE_CHAIN)
e3:SetRange(LOCATION_MZONE)
e3:SetProperty(EFFECT_FLAG_CARD_TARGET)
e3:SetCountLimit(1)
e3:SetTarget(cm.distg)
e3:SetOperation(cm.disop)
c:RegisterEffect(e3)
local e1,e2=rsch.BetrayFun(c,m,16104208)
local e3=rsef.SV_CANNOT_BE_TARGET(c,"effect",aux.tgoval)
local e4=rsef.QO(c,nil,{m,0},1,"atk,def,dis","tg",LOCATION_MZONE,nil,nil,rstg.target(Card.IsFaceup,nil,0,LOCATION_MZONE),cm.op)
end
function cm.splimit(e,se,sp,st)
return se:GetHandler():IsCode(16104226)
end
function cm.spzfilter(c,tp)
return c:IsFaceup() and c:IsCode(16104208) and c:IsReleasable() and (ft>0 or c:GetSequence()<5)
end
function cm.sprcon(e,c,tp)
if c==nil then return true end
local tp=c:GetControler()
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
return ft>-1 and Duel.IsExistingMatchingCard(cm.spzfilter,tp,LOCATION_MZONE,0,1,nil,ft)
end
function cm.sprop(e,tp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g=Duel.SelectMatchingCard(tp,cm.spzfilter,tp,LOCATION_MZONE,0,1,1,nil,ft)
Duel.Release(g,REASON_COST)
end
function cm.filter1(c)
return c:IsFaceup() and not (c:IsDisabled() and c:GetAttack()==0 and c:GetDefense()==0)
end
function cm.distg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and cm.filter1(chkc) end
if chk==0 then return Duel.IsExistingTarget(cm.filter1,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SELECT)
Duel.SelectTarget(tp,cm.filter1,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_DISABLE,nil,1,tp,LOCATION_MZONE)
end
function cm.disop(e,tp,eg,ep,ev,re,r,rp)
function cm.op(e,tp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then
Duel.NegateRelatedChain(tc,RESET_TURN_SET)
local op=Duel.SelectOption(tp,aux.Stringid(m,2),aux.Stringid(m,3))
if op==0 then
local e5=Effect.CreateEffect(c)
e5:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e5:SetType(EFFECT_TYPE_SINGLE)
e5:SetCode(EFFECT_SET_ATTACK)
e5:SetReset(RESET_EVENT+RESETS_STANDARD)
e5:SetValue(0)
tc:RegisterEffect(e5)
local e4=Effect.CreateEffect(c)
e4:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e4:SetType(EFFECT_TYPE_SINGLE)
e4:SetCode(EFFECT_SET_DEFENSE)
e4:SetReset(RESET_EVENT+RESETS_STANDARD)
e4:SetValue(0)
tc:RegisterEffect(e4)
local e6=Effect.CreateEffect(c)
e6:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e6:SetType(EFFECT_TYPE_SINGLE)
e6:SetCode(EFFECT_CANNOT_ATTACK)
e6:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e6)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetRange(LOCATION_MZONE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE)
e1:SetValue(tc:GetTextAttack())
c:RegisterEffect(e1)
local tc=rscf.GetTargetCard(Card.IsFaceup)
if not tc then return end
local b1 = true
local b2 = rscf.GetFaceUpSelf(e) and not tc:IsType(TYPE_TOKEN)
local b3 = b2 and tc:IsType(TYPE_EFFECT)
local op=rsop.SelectOption(tp,b1,{m,1},b2,{m,2},b3,{m,3})
if op==1 then
local e1,e2=rscf.QuickBuff({c,tc},"atkf,deff",0,"atk~")
if rscf.GetFaceUpSelf(e) then
local e3,e4=rscf.QuickBuff(c,"atk+,def+",{tc:GetBaseAttack(),tc:GetBaseDefense()})
end
else
local code=tc:GetOriginalCodeRule()
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetCode(EFFECT_CHANGE_CODE)
e1:SetValue(code)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,2)
c:RegisterEffect(e1)
if not tc:IsType(TYPE_TRAPMONSTER) then
local cid=c:CopyEffect(code,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,2)
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e3:SetCode(EFFECT_UPDATE_DEFENSE)
e3:SetDescription(aux.Stringid(m,4))
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e3:SetCode(EVENT_PHASE+PHASE_END)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e3:SetCountLimit(1)
e3:SetRange(LOCATION_MZONE)
e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE)
e3:SetValue(tc:GetTextDefense())
c:RegisterEffect(e3)
local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetDescription(aux.Stringid(m,4))
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CLIENT_HINT)
e2:SetRange(LOCATION_MZONE)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE)
c:RegisterEffect(e2,true)
e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,2)
e3:SetLabelObject(e1)
e3:SetLabel(cid)
e3:SetOperation(cm.rstop)
c:RegisterEffect(e3)
end
if op==1 then
local code=tc:GetOriginalCodeRule()
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetCode(EFFECT_ADD_CODE)
e1:SetValue(code)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE+RESET_PHASE+PHASE_END,2)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetDescription(aux.Stringid(m,5))
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CLIENT_HINT)
e2:SetRange(LOCATION_MZONE)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE+RESET_PHASE+PHASE_END,2)
c:RegisterEffect(e2,true)
if not tc:IsType(TYPE_TRAPMONSTER) then
local cid=c:CopyEffect(code,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,2)
end
if (not (tc:IsDisabled() or tc:IsType(TYPE_NORMAL))) and Duel.SelectYesNo(tp,aux.Stringid(m,1)) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetCode(EFFECT_DISABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetCode(EFFECT_DISABLE_EFFECT)
e2:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e2)
local e5=Effect.CreateEffect(e:GetHandler())
e5:SetType(EFFECT_TYPE_SINGLE)
e5:SetCode(EFFECT_CANNOT_TRIGGER)
e5:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e5:SetRange(LOCATION_MZONE)
e5:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e5)
end
if op==3 then
local e1=rscf.QuickBuff({c,tc},"dis,dise,tri~")
end
end
end
function cm.rstop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local cid=e:GetLabel()
if cid~=0 then c:ResetEffect(cid,RESET_COPY) end
local e1=e:GetLabelObject()
e1:Reset()
Duel.HintSelection(Group.FromCards(c))
Duel.Hint(HINT_OPSELECTED,1-tp,e:GetDescription())
end
\ No newline at end of file
--叛教的异骑士 迪萨贝尔
local m=16104216
local cm=_G["c"..m]
c16104216.rksetcode="CHURCH_KNIGHT"
if not pcall(function() require("expansions/script/c16104200") end) then require("script/c16104200") end
local m,cm=rscf.DefineCard(16104216,"CHURCH_KNIGHT")
function cm.initial_effect(c)
aux.AddCodeList(c,16104212)
c:SetUniqueOnField(1,1,m)
--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)
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_FIELD)
e4:SetCode(EFFECT_SPSUMMON_PROC)
e4:SetProperty(EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_CANNOT_DISABLE)
e4:SetRange(LOCATION_HAND)
e4:SetCondition(cm.sprcon)
e4:SetOperation(cm.sprop)
c:RegisterEffect(e4)
--indes
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e1:SetRange(LOCATION_MZONE)
e1:SetCode(EFFECT_INDESTRUCTABLE_EFFECT)
e1:SetValue(1)
c:RegisterEffect(e1)
--cannot target
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e2:SetRange(LOCATION_MZONE)
e2:SetCode(EFFECT_CANNOT_BE_BATTLE_TARGET)
e2:SetValue(1)
c:RegisterEffect(e2)
--disef and gain
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(m,0))
e3:SetCategory(CATEGORY_DISABLE+CATEGORY_SPECIAL_SUMMON)
e3:SetType(EFFECT_TYPE_QUICK_O)
e3:SetCode(EVENT_CHAINING)
e3:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL)
e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1)
e3:SetCondition(cm.discon)
e3:SetTarget(cm.distg)
e3:SetOperation(cm.disop)
c:RegisterEffect(e3)
local e1,e2=rsch.BetrayFun(c,m,16104212)
local e3=rsef.SV_INDESTRUCTABLE(c,"effect")
local e4=rsef.SV_CANNOT_BE_TARGET(c,"battle")
local e5=rsef.QO(c,EVENT_CHAINING,{m,0},1,"neg","dsp,dcal",LOCATION_MZONE,rscon.negcon(0),nil,cm.negtg,cm.negop)
end
function cm.splimit(e,se,sp,st)
return se:GetHandler():IsCode(16104226)
end
function cm.spzfilter(c,ft)
return c:IsFaceup() and c:IsCode(16104212) and c:IsReleasable() and (ft>0 or c:GetSequence()<5)
end
function cm.sprcon(e,c,tp)
if c==nil then return true end
local tp=c:GetControler()
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
return ft>-1 and Duel.IsExistingMatchingCard(cm.spzfilter,tp,LOCATION_MZONE,0,1,nil,ft)
end
function cm.sprop(e,tp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g=Duel.SelectMatchingCard(tp,cm.spzfilter,tp,LOCATION_MZONE,0,1,1,nil,ft)
Duel.Release(g,REASON_COST)
end
function cm.filter1(c)
return c:IsFaceup() and not c:IsDisabled()
end
function cm.discon(e,tp,eg,ep,ev,re,r,rp)
return not e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED)
and Duel.IsChainNegatable(ev)
end
function cm.distg(e,tp,eg,ep,ev,re,r,rp,chk)
function cm.negtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
e:SetCategory(CATEGORY_NEGATE)
Duel.SetOperationInfo(0,CATEGORY_NEGATE,eg,1,0,0)
if re:GetHandler():IsRelateToEffect(re)
and not re:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED) and re:GetHandler():IsDestructable() and re:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) then
e:SetCategory(CATEGORY_SPECIAL_SUMMON)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,eg,1,0,0)
e:SetCategory(CATEGORY_NEGATE)
if re:IsActiveType(TYPE_MONSTER) and re:GetHandler():IsRelateToEffect(re) then
Duel.SetOperationInfo(0,CATEGORY_DESTROY,eg,1,0,0)
if re:GetHandler():IsDestructable() then
e:SetCategory(CATEGORY_NEGATE+CATEGORY_DESTROY+CATEGORY_SPECIAL_SUMMON)
end
end
end
function cm.disop(e,tp,eg,ep,ev,re,r,rp)
function cm.negop(e,tp,eg,ep,ev,re,r,rp)
local rc=re:GetHandler()
if Duel.NegateActivation(ev) and rc:IsRelateToEffect(re) and rc:IsType(TYPE_MONSTER) and Duel.Destroy(eg,REASON_EFFECT)~=0
and not rc:IsRelateToEffect(e) and Duel.SelectYesNo(tp,aux.Stringid(m,1)) then
Duel.SpecialSummon(re:GetHandler(),0,tp,tp,false,false,POS_FACEUP)
Duel.SpecialSummonComplete()
if not Duel.NegateActivation(ev) then return end
if rc:IsRelateToEffect(re) and re:IsActiveType(TYPE_MONSTER) and Duel.Destroy(eg,REASON_EFFECT)~=0 and not rc:IsLocation(LOCATION_HAND+LOCATION_DECK) and not rc:IsHasEffect(EFFECT_NECRO_VALLEY) and rscf.spfilter2()(rc,e,tp) and Duel.SelectYesNo(tp,aux.Stringid(m,1)) then
Duel.BreakEffect()
Duel.SpecialSummon(rc,0,tp,tp,false,false,POS_FACEUP)
end
end
\ No newline at end of file
--骑士的行军
local m=16104218
local cm=_G["c"..m]
c16104218.rksetcode="CHURCH_KNIGHT"
if not pcall(function() require("expansions/script/c16104200") end) then require("script/c16104200") end
local m,cm=rscf.DefineCard(16104218,"CHURCH_KNIGHT")
function cm.initial_effect(c)
--Activate
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_ACTIVATE)
e0:SetCode(EVENT_FREE_CHAIN)
c:RegisterEffect(e0)
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_SZONE)
e1:SetCountLimit(1,m)
e1:SetCost(cm.cost)
e1:SetTarget(cm.target)
e1:SetOperation(cm.activate)
c:RegisterEffect(e1)
--Grave
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,1))
e2:SetCategory(CATEGORY_SUMMON)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_GRAVE)
e2:SetCountLimit(1,m+1)
e2:SetCost(aux.bfgcost)
e2:SetTarget(cm.target1)
e2:SetOperation(cm.activate1)
c:RegisterEffect(e2)
Duel.AddCustomActivityCounter(m,ACTIVITY_SUMMON,cm.counterfilter)
Duel.AddCustomActivityCounter(m,ACTIVITY_SPSUMMON,cm.counterfilter1)
rsch.LimitFun(c,m)
local e1=rsef.ACT(c)
local e2=rsef.I(c,{m,0},{1,m},"se,th",nil,LOCATION_SZONE,nil,rsch.limitcost(m),rsop.target(cm.thfilter,"th",LOCATION_DECK),cm.thop)
local e3=rsef.I(c,{m,1},{1,m+100},"sum",nil,LOCATION_GRAVE,nil,aux.bfgcost,rsop.target(cm.sumfilter,"sum",LOCATION_HAND),cm.sumop)
end
function cm.counterfilter(c)
return c:IsRace(RACE_WARRIOR)
function cm.thfilter(c)
return rsch.IsSetM2(c) and c:IsAbleToHand()
end
function cm.counterfilter1(c)
return c:GetSummonLocation()~=LOCATION_EXTRA and c:IsRace(RACE_WARRIOR)
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetCustomActivityCount(m,tp,ACTIVITY_SPSUMMON)==0 end
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_OATH)
e1:SetTargetRange(1,0)
e1:SetTarget(cm.splimit)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local e2=e1:Clone()
e2:SetCode(EFFECT_CANNOT_SUMMON)
Duel.RegisterEffect(e2,tp)
end
function cm.splimit(e,c,sump,sumtype,sumpos,targetp,se)
return (not c:IsRace(RACE_WARRIOR)) or c:IsLocation(LOCATION_EXTRA)
end
function cm.filter(c)
return c.rksetcode=="CHURCH_KNIGHT" and c:IsAbleToHand() and c:IsType(TYPE_MONSTER)
end
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
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end
function cm.activate(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,cm.filter,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
function cm.thop(e,tp)
if rscf.GetSelf(e) then
rsop.SelectToHand(tp,cm.thfilter,tp,LOCATION_DECK,0,1,1,nil,{})
end
end
function cm.filter1(c)
return (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH") and c:IsSummonable(true,nil) and c:IsType(TYPE_MONSTER)
end
function cm.target1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.filter1,tp,LOCATION_HAND,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_SUMMON,nil,1,tp,LOCATION_HAND)
function cm.sumfilter(c)
return rsch.IsSet1(c) and c:IsSummonable(true,nil)
end
function cm.activate1(e,tp,eg,ep,ev,re,r,rp)
function cm.sumop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SUMMON)
local g=Duel.SelectMatchingCard(tp,cm.filter1,tp,LOCATION_HAND,0,1,1,nil)
if g:GetCount()>0 then
Duel.ConfirmCards(1-tp,g)
Duel.Summon(tp,g:GetFirst(),true,nil)
local tc=Duel.SelectMatchingCard(tp,cm.sumfilter,tp,LOCATION_HAND,0,1,1,nil):GetFirst()
if tc then
Duel.Summon(tp,tc,true,nil)
end
end
\ No newline at end of file
--直到最后一刻
local m=16104220
local cm=_G["c"..m]
c16104220.rksetcode="CHURCH_KNIGHT"
if not pcall(function() require("expansions/script/c16104200") end) then require("script/c16104200") end
local m,cm=rscf.DefineCard(16104220,"CHURCH_KNIGHT")
function cm.initial_effect(c)
c:SetUniqueOnField(1,0,m)
--Activate
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_ACTIVATE)
e0:SetCode(EVENT_FREE_CHAIN)
c:RegisterEffect(e0)
--SpecialSummon
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,1))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetRange(LOCATION_SZONE)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetCountLimit(1,m)
e2:SetTarget(cm.sptg)
e2:SetOperation(cm.spop)
c:RegisterEffect(e2)
local e5=Effect.CreateEffect(c)
e5:SetDescription(aux.Stringid(m,2))
e5:SetCategory(CATEGORY_SPECIAL_SUMMON)
e5:SetType(EFFECT_TYPE_QUICK_O)
e5:SetCode(EVENT_FREE_CHAIN)
e5:SetRange(LOCATION_SZONE)
e5:SetProperty(EFFECT_FLAG_CARD_TARGET)
e5:SetCountLimit(1,m)
e5:SetTarget(cm.sptg2)
e5:SetOperation(cm.spop2)
c:RegisterEffect(e5)
--SpecialSummon Limit
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD)
e3:SetRange(LOCATION_SZONE)
e3:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e3:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e3:SetTargetRange(1,0)
e3:SetTarget(cm.sumlimit)
c:RegisterEffect(e3)
local e4=e3:Clone()
e4:SetCode(EFFECT_CANNOT_SUMMON)
c:RegisterEffect(e4)
local e1=rsef.ACT(c)
local e2=rsef.FV_LIMIT(c,"cp",nil,cm.tg,{ LOCATION_MZONE,LOCATION_MZONE })
local e3,e4=rsef.FV_LIMIT_PLAYER(c,"sum,sp",nil,cm.tg2,{1,0})
local e5=rsef.QO(c,nil,{m,0},{1,m},"rm,sp,tk,sum,ga","tg",LOCATION_SZONE,nil,nil,rstg.target(cm.filter,nil,LOCATION_GRAVE),cm.op)
end
function cm.sumlimit(e,c,sump,sumtype,sumpos,targetp)
return not c:IsRace(RACE_WARRIOR)
end
function cm.spfilter(c)
return (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH") and c:IsAbleToRemove() and c:IsType(TYPE_MONSTER)
end
function cm.spfilter1(c,e,tp)
return (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH") and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP) and c:IsType(TYPE_MONSTER)
end
function cm.smfilter(c)
return (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH") and c:IsSummonable(true,nil)
function cm.tg(e,c)
return c:IsAttackPos() and rsch.IsSet1(c)
end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsPlayerCanSpecialSummonMonster(tp,16104222,nil,0x21,0,0,1,RACE_WARRIOR,ATTRIBUTE_LIGHT) and Duel.IsExistingMatchingCard(cm.spfilter,tp,LOCATION_GRAVE,0,1,nil) end
local g=Duel.SelectTarget(tp,cm.spfilter,tp,LOCATION_GRAVE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,0)
function cm.tg2(e,c)
return not c:IsRace(RACE_WARRIOR)
end
function cm.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
local atk,def,code=0,0,0
if tc then
atk=tc:GetAttack()
def=tc:GetDefense()
end
if not (tc:IsRelateToEffect(e) and c:IsRelateToEffect(e) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0) then return end
if Duel.IsPlayerCanSpecialSummonMonster(tp,16104222,nil,0x21,atk,def,1,RACE_WARRIOR,ATTRIBUTE_LIGHT) then
if Duel.Remove(tc,POS_FACEUP,REASON_EFFECT)~=0 then
function cm.filter(c,e,tp)
if not rsch.IsSetM1(c) then return end
local b1 = c:IsAbleToRemove() and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsPlayerCanSpecialSummonMonster(tp,16104222,0,0x4011,0,0,1,RACE_WARRIOR,ATTRIBUTE_LIGHT)
local b2 = rscf.spfilter2()(c,e,tp)
return b1 or b2
end
function cm.op(e,tp)
local c=rscf.GetSelf(e)
local tc=rscf.GetTargetCard()
if not c or not tc then return end
local b1 = tc:IsAbleToRemove() and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsPlayerCanSpecialSummonMonster(tp,16104222,0,0x4011,0,0,1,RACE_WARRIOR,ATTRIBUTE_LIGHT)
local b2 = rscf.spfilter2()(tc,e,tp)
if not b1 and not b2 then return end
local op=rsop.SelectOption(tp,b1,{m,1},b2,{m,2})
if op==1 then
if Duel.Remove(tc,POS_FACEUP,REASON_EFFECT)>0 and tc:IsLocation(LOCATION_REMOVED) then
local token=Duel.CreateToken(tp,16104222)
Duel.SpecialSummon(token,0,tp,tp,false,false,POS_FACEUP)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_SET_ATTACK)
e1:SetValue(atk)
token:RegisterEffect(e1,true)
local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_SET_DEFENSE)
e2:SetValue(def)
token:RegisterEffect(e2,true)
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetCode(EFFECT_DOUBLE_TRIBUTE)
e3:SetValue(cm.condition)
token:RegisterEffect(e3,true)
if Duel.IsExistingMatchingCard(cm.smfilter,tp,LOCATION_HAND,0,1,nil) and Duel.SelectYesNo(tp,aux.Stringid(m,3)) then
local g=Duel.SelectMatchingCard(tp,cm.smfilter,tp,LOCATION_HAND,0,1,1,nil):GetFirst()
Duel.Summon(tp,g,true,nil)
if Duel.SpecialSummon(token,0,tp,tp,false,false,POS_FACEUP)>0 then
local e1,e2=rscf.QuickBuff({c,token,true},"atkf,deff",{tc:GetBaseAttack(),tc:GetBaseDefense()})
local e3=rsch.DoubleTriFun(c,token,rsreset.est)
rsop.SelectOC({m,3},true)
rsop.SelectSolve(HINTMSG_SUMMON,tp,cm.sumfilter,tp,LOCATION_HAND,0,1,1,nil,cm.sumfun,tp)
end
end
end
end
function cm.sptg2(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingTarget(cm.spfilter1,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
local g=Duel.SelectTarget(tp,cm.spfilter1,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,0)
end
function cm.spop2(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if not (tc:IsRelateToEffect(e) and c:IsRelateToEffect(e) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and tc:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP)) then return end
if tc.rksetcode=="CHURCH_KNIGHT" then
tc:RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD-RESET_TOFIELD+RESET_PHASE+PHASE_END,0,1)
local e1_2=Effect.CreateEffect(c)
e1_2:SetType(EFFECT_TYPE_SINGLE)
e1_2:SetDescription(aux.Stringid(m,5))
e1_2:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CLIENT_HINT)
e1_2:SetRange(LOCATION_MZONE)
e1_2:SetReset(RESET_EVENT+RESETS_STANDARD-RESET_TOFIELD)
tc:RegisterEffect(e1_2,true)
else
if rssf.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP,nil,nil,"th")>0 then
local code = tc:GetOriginalCodeRule()
tc:RegisterFlagEffect(code + 100,rsreset.est,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(16104200,2))
end
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
local fid=e:GetHandler():GetFieldID()
tc:RegisterFlagEffect(m+1,RESET_EVENT+RESETS_STANDARD,0,1,fid)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_PHASE+PHASE_END)
e1:SetCountLimit(1)
e1:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE)
e1:SetLabel(fid)
e1:SetLabelObject(tc)
e1:SetCondition(cm.thacon)
e1:SetOperation(cm.thaop)
Duel.RegisterEffect(e1,tp)
end
function cm.thacon(e,tp,eg,ep,ev,re,r,rp)
local tc=e:GetLabelObject()
if tc:GetFlagEffectLabel(m+1)~=e:GetLabel() then
e:Reset()
return false
else return true end
end
end
function cm.thaop(e,tp,eg,ep,ev,re,r,rp)
Duel.SendtoHand(e:GetLabelObject(),nil,REASON_EFFECT)
function cm.sumfilter(c)
return rsch.IsSet2(c) and c:IsSummonable(true,nil)
end
function cm.condition(e,c)
return (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH")
function cm.sumfun(g,tp)
local tc=g:GetFirst()
if tc then
Duel.Summon(tp,tc,true,nil)
end
return true
end
\ No newline at end of file
--异端剿灭
local m=16104224
local cm=_G["c"..m]
c16104224.rksetcode="CHURCH_KNIGHT"
if not pcall(function() require("expansions/script/c16104200") end) then require("script/c16104200") end
local m,cm=rscf.DefineCard(16104224,"CHURCH_KNIGHT")
function cm.initial_effect(c)
--ACT
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_DESTROY+CATEGORY_CONTROL)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,m)
e1:SetCondition(cm.descon)
e1:SetTarget(cm.destg)
e1:SetOperation(cm.desop)
c:RegisterEffect(e1)
local e1=rsef.ACT(c,nil,nil,{1,m,1},"des",nil,cm.con,nil,rsop.target(cm.desfilter,"des",0,LOCATION_ONFIELD,true),cm.act)
end
function cm.descon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_MZONE,0,1,nil)
function cm.cfilter1(c)
return c:IsLevelAbove(5) and rsch.IsSet2(c) and c:IsFaceup()
end
function cm.desfilter(c)
return not (c:IsRace(RACE_WARRIOR) and c:IsLocation(LOCATION_MZONE) and c:IsFaceup())
end
function cm.desfilter1(c)
return (not c:IsRace(RACE_WARRIOR)) and c:IsFaceup()
function cm.cfilter2(c)
return c:IsFaceup() and not c:IsRace(RACE_WARRIOR)
end
function cm.con(e,tp)
return Duel.IsExistingMatchingCard(cm.cfilter1,tp,LOCATION_MZONE,0,1,nil) and Duel.IsExistingMatchingCard(cm.cfilter2,tp,0,LOCATION_MZONE,1,nil)
end
--function cm.ntrfilter(c)
--return c:IsRace(RACE_WARRIOR) and c:IsControlerCanBeChanged() and c:IsFaceup()
--end
function cm.filter(c)
return c.rksetcode=="CHURCH_KNIGHT" and c:IsFaceup() and c:IsType(TYPE_MONSTER) and c:GetLevel()>=5
end
function cm.destg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.desfilter1,tp,0,LOCATION_MZONE,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_DESTROY,nil,1,1-tp,LOCATION_ONFIELD)
function cm.desfilter(c)
return c:IsFacedown() or not c:IsRace(RACE_WARRIOR)
end
function cm.desop(e,tp,eg,ep,ev,re,r,rp)
function cm.act(e,tp)
local g=Duel.GetMatchingGroup(cm.desfilter,tp,0,LOCATION_ONFIELD,nil)
local num=g:GetCount()
if num<=0 then return end
Duel.Destroy(g,REASON_EFFECT)
--if Duel.IsExistingMatchingCard(Card.IsCode,tp,LOCATION_MZONE,0,1,nil,16104228) and Duel.IsExistingMatchingCard(cm.ntrfilter,tp,0,LOCATION_MZONE,1,nil) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.SelectYesNo(tp,aux.Stringid(m,1)) then
--local tc=Duel.SelectMatchingCard(tp,cm.ntrfilter,tp,0,LOCATION_MZONE,1,1,nil)
--Duel.GetControl(tc,tp)
--end
end
\ No newline at end of file
--前路的抉择
local m=16104226
local cm=_G["c"..m]
c16104226.rksetcode="CHURCH"
if not pcall(function() require("expansions/script/c16104200") end) then require("script/c16104200") end
local m,cm=rscf.DefineCard(16104226,"CHURCH")
function cm.initial_effect(c)
--Activate
local e0=Effect.CreateEffect(c)
e0:SetDescription(aux.Stringid(m,0))
e0:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_TOGRAVE)
e0:SetType(EFFECT_TYPE_ACTIVATE)
e0:SetCode(EVENT_FREE_CHAIN)
e0:SetCountLimit(1,m)
e0:SetTarget(cm.sptg)
e0:SetOperation(cm.spop)
c:RegisterEffect(e0)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,1))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_TOGRAVE)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,m)
e1:SetTarget(cm.sptg1)
e1:SetOperation(cm.spop1)
c:RegisterEffect(e1)
end
function cm.filter(c,e,tp)
return c:IsFaceup() and (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH")
and Duel.IsExistingMatchingCard(cm.spfilter,tp,LOCATION_DECK+LOCATION_HAND,0,1,nil,c:GetCode(),e,tp)
end
function cm.spfilter(c,code,e,tp)
return c:IsCanBeSpecialSummoned(e,0,tp,false,false) and aux.IsCodeListed(c,code) and c:IsSetCard(0xcc4)
end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.IsExistingTarget(cm.filter,tp,LOCATION_MZONE,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,tp,LOCATION_MZONE)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK+LOCATION_HAND)
end
function cm.spop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local tc=Duel.SelectMatchingCard(tp,cm.filter,tp,LOCATION_MZONE,0,1,1,nil,e,tp):GetFirst()
local code=tc:GetCode()
if Duel.SendtoGrave(tc,REASON_EFFECT)==0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg=Duel.SelectMatchingCard(tp,cm.spfilter,tp,LOCATION_DECK+LOCATION_HAND,0,1,1,nil,code,e,tp)
if sg:GetCount()>0 then
Duel.BreakEffect()
Duel.SpecialSummon(sg,0,tp,tp,false,false,POS_FACEUP)
sg:GetFirst():CompleteProcedure()
end
end
function cm.filter1(c,e,tp)
return c:IsFaceup() and c:IsSetCard(0xcc4)
and Duel.IsExistingMatchingCard(cm.spfilter1,tp,LOCATION_DECK+LOCATION_HAND,0,1,nil,c,e,tp)
end
function cm.spfilter1(c,cad,e,tp)
return c:IsCanBeSpecialSummoned(e,0,tp,false,false) and aux.IsCodeListed(cad,c:GetCode()) and (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH") and not c:IsSetCard(0xcc4)
end
function cm.sptg1(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.IsExistingTarget(cm.filter1,tp,LOCATION_MZONE,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,tp,LOCATION_MZONE)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK+LOCATION_HAND)
end
function cm.spop1(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local tc=Duel.SelectMatchingCard(tp,cm.filter1,tp,LOCATION_MZONE,0,1,1,nil,e,tp):GetFirst()
if Duel.SendtoGrave(tc,REASON_EFFECT)==0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg=Duel.SelectMatchingCard(tp,cm.spfilter1,tp,LOCATION_DECK+LOCATION_HAND,0,1,1,nil,tc,e,tp)
if sg:GetCount()>0 then
Duel.BreakEffect()
local sc=sg:GetFirst()
if sc.rksetcode=="CHURCH_KNIGHT" then
if sc:GetActivateEffect() and e:GetOperation() then
local e=sc:GetActivateEffect()
local op=e:GetOperation()
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetDescription(aux.Stringid(m,2))
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_F)
e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e1:SetOperation(op)
sc:RegisterEffect(e1)
local e3=Effect.CreateEffect(e:GetHandler())
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetDescription(aux.Stringid(m,1))
e3:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CLIENT_HINT)
e3:SetRange(LOCATION_MZONE)
e3:SetReset(RESET_EVENT+RESETS_STANDARD-RESET_TOFIELD)
sc:RegisterEffect(e3,true)
local e1=rsef.ACT(c,nil,nil,{1,m,1},"tg,sp",nil,nil,nil,rsop.target2(cm.fun,cm.tgfilter,"tg",LOCATION_MZONE),cm.act)
end
function cm.fun(g,e,tp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,rsloc.hd)
end
function cm.spfilter1(c,e,tp,mc)
return c:IsSetCard(0xcc4) and aux.IsCodeListed(c,mc:GetOriginalCodeRule()) and Duel.GetMZoneCount(tp,mc,tp)>0 and c:IsCanBeSpecialSummoned(e,0,tp,true,false)
end
function cm.spfilter2(c,e,tp,mc)
return rsch.IsSet1(c) and aux.IsCodeListed(mc,c:GetOriginalCodeRule()) and Duel.GetMZoneCount(tp,mc,tp)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function cm.tgfilter(c,e,tp)
if c:IsFacedown() or not c:IsAbleToGrave() then return false end
local b1 = rsch.IsSet1(c) and Duel.IsExistingMatchingCard(cm.spfilter1,tp,rsloc.hd,0,1,nil,e,tp,c)
local b2 = c:IsSetCard(0xcc4) and Duel.IsExistingMatchingCard(cm.spfilter2,tp,rsloc.hd,0,1,nil,e,tp,c)
return b1 or b2
end
function cm.act(e,tp)
local ct,og,tc=rsop.SelectToGrave(tp,cm.tgfilter,tp,LOCATION_MZONE,0,1,1,nil,{},e,tp)
if not tc then return end
if not tc:IsSetCard(0xcc4) then
rsop.SelectSpecialSummon(tp,cm.spfilter1,tp,rsloc.hd,0,1,1,nil,{0,tp,tp,true,false,POS_FACEUP,nil,{"cp"}},e,tp,tc)
else
local ct,og,sc=rsop.SelectSpecialSummon(tp,cm.spfilter2,tp,rsloc.hd,0,1,1,nil,{},e,tp,tc)
if sc then
local code = sc:GetOriginalCodeRule()
sc:RegisterFlagEffect(code + 100,rsreset.est,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(16104200,1))
end
end
Duel.SpecialSummon(sc,0,tp,tp,false,false,POS_FACEUP)
Duel.SpecialSummonComplete()
end
end
\ No newline at end of file
end
end
--教团的异骑士 燎煌
local m=16104228
local cm=_G["c"..m]
c16104228.rksetcode="CHURCH_KNIGHT"
if not pcall(function() require("expansions/script/c16104200") end) then require("script/c16104200") end
local m,cm=rscf.DefineCard(16104228,"CHURCH_KNIGHT")
function cm.initial_effect(c)
c:SetUniqueOnField(1,1,m)
--summon success
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_SUMMON_SUCCESS)
e1:SetOperation(cm.sumsuc)
c:RegisterEffect(e1)
local e1_1=Effect.CreateEffect(c)
e1_1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e1_1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1_1:SetOperation(cm.sumsuc1)
c:RegisterEffect(e1_1)
--a d A
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,0))
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_BATTLE_DESTROYED)
e2:SetProperty(EFFECT_FLAG_NO_TURN_RESET)
e2:SetCountLimit(1)
e2:SetRange(LOCATION_MZONE)
e2:SetCondition(cm.gacon)
e2:SetTarget(cm.gatg)
e2:SetOperation(cm.gaop)
c:RegisterEffect(e2)
--summon with 1 tribute
local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(m,2))
e4:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e4:SetType(EFFECT_TYPE_SINGLE)
e4:SetCode(EFFECT_SUMMON_PROC)
e4:SetCondition(cm.otcon)
e4:SetOperation(cm.otop)
e4:SetValue(SUMMON_TYPE_ADVANCE)
c:RegisterEffect(e4)
local e5=e4:Clone()
e5:SetCode(EFFECT_SET_PROC)
c:RegisterEffect(e5)
--summon with s/t
local e6=Effect.CreateEffect(c)
e6:SetType(EFFECT_TYPE_SINGLE)
e6:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e6:SetCode(EFFECT_ADD_EXTRA_TRIBUTE)
e6:SetTargetRange(LOCATION_SZONE,0)
e6:SetCondition(cm.otcon1)
e6:SetTarget(cm.reltarget)
e6:SetValue(POS_FACEUP_ATTACK)
c:RegisterEffect(e6)
local e1=rsch.SummonEffect(c,m,cm.op)
local e2=rsch.GainEffect(c,m)
local e3=rsef.QO(c,nil,{m,0},1,"des,dam",nil,LOCATION_MZONE,rsch.gaincon(m),nil,rsop.target(aux.TRUE,"des",0,LOCATION_ONFIELD),cm.desop)
end
function cm.otcon1(e)
return Duel.IsEnvironment(16104206,e:GetOwnerPlayer(),LOCATION_FZONE)
end
function cm.reltarget(e,c)
return c:IsFaceup() and (c:IsType(TYPE_CONTINUOUS) or c:IsType(TYPE_EQUIP))
end
function cm.otfilter(c)
return c:IsSummonType(SUMMON_TYPE_ADVANCE)
end
function cm.otcon(e,c,minc)
if c==nil then return Duel.IsExistingMatchingCard(cm.otfilter,0,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
local mg=Duel.GetMatchingGroup(cm.otfilter,0,LOCATION_MZONE,LOCATION_MZONE,nil)
return c:IsLevelAbove(7) and minc<=1 and Duel.CheckTribute(c,1,1,mg) and Duel.IsEnvironment(16104206,e:GetOwnerPlayer(),LOCATION_FZONE)
end
function cm.otop(e,tp,eg,ep,ev,re,r,rp,c)
local sg=Duel.SelectMatchingCard(tp,cm.otfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
c:SetMaterial(sg)
Duel.Release(sg,REASON_SUMMON+REASON_MATERIAL)
end
function cm.sumsuc(e,tp,eg,ep,ev,re,r,rp)
function cm.op(e,tp)
local c=e:GetHandler()
if (c:IsSummonType(SUMMON_TYPE_ADVANCE) and c:GetMaterial():IsExists(cm.adfilter,1,nil)) or not c:IsSummonType(SUMMON_TYPE_ADVANCE) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetTargetRange(0,1)
e1:SetValue(cm.aclimit)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_DISABLE)
e2:SetTargetRange(0,LOCATION_MZONE)
e2:SetTarget(cm.disable)
e2:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e2,tp)
end
if e:GetHandler():GetFlagEffect(16104206)~=0 then
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(m,0))
e3:SetCategory(CATEGORY_DESTROY+CATEGORY_DAMAGE)
e3:SetType(EFFECT_TYPE_QUICK_O)
e3:SetCode(EVENT_FREE_CHAIN)
e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1)
e3:SetTarget(cm.destg)
e3:SetOperation(cm.desop)
e3:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e3)
end
end
function cm.sumsuc1(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if e:GetHandler():GetFlagEffect(16104220)~=0 then
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(m,0))
e3:SetCategory(CATEGORY_DESTROY+CATEGORY_DAMAGE)
e3:SetType(EFFECT_TYPE_QUICK_O)
e3:SetCode(EVENT_FREE_CHAIN)
e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1)
e3:SetTarget(cm.destg)
e3:SetOperation(cm.desop)
e3:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e3)
end
local e1=rsef.FV_LIMIT({c,tp},"dis",nil,nil,{0,LOCATION_MZONE },nil,rsreset.pend)
local e2=rsef.FV_LIMIT_PLAYER({c,tp},"act",cm.val,nil,{1,1},nil,rsreset.pend)
end
function cm.adfilter(c)
return c:IsRace(RACE_WARRIOR) or c:IsType(TYPE_SPELL) or c:IsType(TYPE_TRAP)
end
function cm.aclimit(e,re,tp)
return re:GetHandler():IsOnField() and re:GetHandler():IsType(TYPE_MONSTER)
end
function cm.disable(e,c)
return c:IsType(TYPE_MONSTER)
end
function cm.gacon(e,tp,eg,ep,ev,re,r,rp)
local des=eg:GetFirst()
local rc=des:GetReasonCard()
return (not des:IsRace(RACE_WARRIOR)) and rc:IsRelateToBattle() and rc==e:GetHandler()
end
function cm.gatg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
end
function cm.gaop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) then
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,0))
e2:SetCategory(CATEGORY_DESTROY+CATEGORY_DAMAGE)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1)
e2:SetTarget(cm.destg)
e2:SetOperation(cm.desop)
e2:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(e:GetHandler())
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetDescription(aux.Stringid(m,1))
e3:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_CLIENT_HINT)
e3:SetRange(LOCATION_MZONE)
e3:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e3,true)
end
end
function cm.destg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return Duel.IsExistingMatchingCard(aux.TRUE,tp,0,LOCATION_ONFIELD,1,nil)
end
local g=Duel.GetMatchingGroup(aux.TRUE,tp,0,LOCATION_ONFIELD,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,1-tp,0)
function cm.val(e,re)
local rc = re:GetHandler()
return rc:IsType(TYPE_MONSTER) and rc:IsOnField() and rc:IsControler(1-e:GetHandlerPlayer())
end
function cm.desop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectMatchingCard(tp,aux.TRUE,tp,0,LOCATION_ONFIELD,1,1,nil)
if g:GetCount()>0 then
if g:GetFirst():IsType(TYPE_MONSTER) then
local atk=g:GetFirst():GetTextAttack()
if atk<0 then atk=0 end
if Duel.Destroy(g,REASON_EFFECT)~=0 then
Duel.Damage(1-tp,atk,REASON_EFFECT)
end
else
Duel.Destroy(g,REASON_EFFECT)
end
function cm.desop(e,tp)
local ct,og,tc=rsop.SelectDestroy(tp,aux.TRUE,tp,0,LOCATION_ONFIELD,1,1,nil,{})
if tc and tc:IsType(TYPE_MONSTER) and tc:GetBaseAttack()>0 then
Duel.Damage(1-tp,tc:GetBaseAttack(),REASON_EFFECT)
end
end
\ No newline at end of file
--终末之歌
local m=16104230
local cm=_G["c"..m]
c16104230.rksetcode="CHURCH_KNIGHT"
if not pcall(function() require("expansions/script/c16104200") end) then require("script/c16104200") end
local m,cm=rscf.DefineCard(16104230,"CHURCH_KNIGHT")
function cm.initial_effect(c)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_TOGRAVE)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,m+EFFECT_COUNT_CODE_OATH)
e1:SetTarget(cm.target)
e1:SetOperation(cm.activate)
c:RegisterEffect(e1)
--Activate
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,1))
e2:SetCategory(CATEGORY_TODECK+CATEGORY_DRAW)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetRange(LOCATION_GRAVE)
e2:SetCountLimit(1,m+1)
e2:SetTarget(cm.target1)
e2:SetOperation(cm.activate1)
c:RegisterEffect(e2)
local e1=rsef.ACT(c,nil,nil,{1,m,1},"tg",nil,nil,nil,rsop.target(cm.tgfilter,"tg",LOCATION_MZONE,0,true),cm.act)
local e2=rsef.I(c,{m,0},{1,m+100},"td,dr",nil,LOCATION_GRAVE,nil,nil,rsop.target({Card.IsAbleToDeck,"td"},{cm.tdfilter,"td",LOCATION_GRAVE+LOCATION_REMOVED }),cm.drop)
end
function cm.filter(c)
return c.rksetcode=="CHURCH_KNIGHT" and c:IsType(TYPE_MONSTER)
and c:IsAbleToGrave() and c:IsFaceup()
function cm.tgfilter(c)
return c:IsAbleToGrave() and c:IsFaceup() and rsch.IsSet1(c)
end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_MZONE,0,1,nil) end
local sg=Duel.GetMatchingGroup(cm.filter,tp,LOCATION_MZONE,0,nil)
if sg:GetCount()>0 then
local atk=sg:GetSum(Card.GetAttack)
function cm.act(e,tp)
local g=Duel.GetMatchingGroup(cm.tgfilter,tp,LOCATION_MZONE,0,nil)
if #g>0 and Duel.SendtoGrave(g,REASON_EFFECT)>0 then
local atk=Duel.GetOperatedGroup():GetSum(Card.GetBaseAttack)
for p=0,1 do
Duel.SetLP(p,math.max(0,Duel.GetLP(p)-atk))
end
end
Duel.SetOperationInfo(0,CATEGORY_RELEASE,sg,sg:GetCount(),0,0)
end
function cm.filter2(c)
if c:IsPreviousPosition(POS_FACEUP) then
return c:GetPreviousAttackOnField()
else return 0 end
function cm.tdfilter(c)
return rsch.IsSet1(c) and c:IsAbleToDeck()
end
function cm.activate(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(cm.filter,tp,LOCATION_MZONE,0,nil)
if g:GetCount()>0 and Duel.SendtoGrave(g,REASON_EFFECT)~=0 then
local og=Duel.GetOperatedGroup()
local atk=og:GetSum(cm.filter2)
local LP1=Duel.GetLP(tp)
local LP2=Duel.GetLP(1-tp)
if LP1-atk<0 then Duel.SetLP(tp,0) end
if LP2-atk<0 then Duel.SetLP(1-tp,0) end
if LP1-atk>=0 then Duel.SetLP(tp,LP1-atk) end
if LP2-atk>=0 then Duel.SetLP(1-tp,LP2-atk) end
end
end
function cm.filter1(c)
return (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH") and c:IsAbleToDeck()
end
function cm.target1(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_REMOVED+LOCATION_GRAVE) and chkc:IsControler(tp) and cm.filter1(chkc) end
if chk==0 then return Duel.IsExistingTarget(cm.filter1,tp,LOCATION_REMOVED+LOCATION_GRAVE,0,1,e:GetHandler()) and Duel.IsPlayerCanDraw(tp,1) end
Duel.SetOperationInfo(0,CATEGORY_TODECK,nil,2,0,0)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,1)
function cm.drop(e,tp)
local c=rscf.GetSelf(e)
if not c then return end
rsop.SelectSolve(HINTMSG_TODECK,tp,aux.NecroValleyFilter(cm.tdfilter),tp,LOCATION_GRAVE+LOCATION_REMOVED,0,1,2,c,cm.solvefun,c)
end
function cm.activate1(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local tg=Duel.SelectMatchingCard(tp,cm.filter1,tp,LOCATION_REMOVED+LOCATION_GRAVE,0,1,2,e:GetHandler())
if Duel.SendtoDeck(tg+e:GetHandler(),nil,2,REASON_EFFECT)~=0 then
Duel.BreakEffect()
function cm.solvefun(g,c)
g:AddCard(c)
if Duel.SendtoDeck(g,nil,2,REASON_EFFECT)>0 and Duel.GetOperatedGroup():IsExists(Card.IsLocation,1,nil,rsloc.de) then
if Duel.GetOperatedGroup():IsExists(Card.IsLocation,1,nil,LOCATION_DECK) then
Duel.ShuffleDeck(tp)
end
Duel.Draw(tp,1,REASON_EFFECT)
end
return true
end
\ No newline at end of file
--教团的圣女 让·达克
local m=16104232
local cm=_G["c"..m]
c16104232.rksetcode="CHURCH"
if not pcall(function() require("expansions/script/c16104200") end) then require("script/c16104200") end
local m,cm=rscf.DefineCard(16104232,"CHURCH")
function cm.initial_effect(c)
c:SetUniqueOnField(1,1,m)
--Sumeffect
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_SUMMON_SUCCESS)
e1:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY)
e1:SetCountLimit(1,m)
e1:SetCost(cm.cost)
e1:SetTarget(cm.target)
e1:SetOperation(cm.operation)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e2)
--to hand
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(m,1))
e3:SetCategory(CATEGORY_TOHAND)
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e3:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY)
e3:SetCode(EVENT_TO_GRAVE)
e3:SetCountLimit(1,m+1)
e3:SetCondition(cm.thcon)
e3:SetTarget(cm.thtg)
e3:SetOperation(cm.thop)
c:RegisterEffect(e3)
--double tribute
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_SINGLE)
e4:SetCode(EFFECT_DOUBLE_TRIBUTE)
e4:SetValue(cm.condition)
c:RegisterEffect(e4)
Duel.AddCustomActivityCounter(m,ACTIVITY_SUMMON,cm.counterfilter)
Duel.AddCustomActivityCounter(m,ACTIVITY_SPSUMMON,cm.counterfilter1)
end
function cm.counterfilter(c)
return c:IsRace(RACE_WARRIOR)
end
function cm.counterfilter1(c)
return c:GetSummonLocation()~=LOCATION_EXTRA and c:IsRace(RACE_WARRIOR)
end
function cm.condition(e,c)
return (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH")
end
function cm.filter(c)
return c:IsFaceup() and c:IsAbleToDeck()
local e1=rsef.STO(c,EVENT_SUMMON_SUCCESS,{m,0},{1,m},"disd","de,dsp",nil,nil,rsop.target(cm.setfilter,nil,LOCATION_DECK,0,3),cm.setop)
local e2=rsef.RegisterClone(c,e1,"code",EVENT_SPSUMMON_SUCCESS)
local e3=rsef.STO(c,EVENT_RELEASE,{m,1},{1,m+1},"th","de,dsp",cm.thcon,nil,rsop.target(cm.thfilter,"th",LOCATION_GRAVE),cm.thop)
local e4=rsch.DoubleTriFun(c)
end
function cm.setfilter(c)
return c:IsType(TYPE_SPELL) and c:IsSSetable() and (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH")
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetCustomActivityCount(m,tp,ACTIVITY_SPSUMMON)==0 and Duel.GetCustomActivityCount(m,tp,ACTIVITY_SUMMON)==0 end
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_OATH)
e1:SetTargetRange(1,0)
e1:SetTarget(cm.splimit)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local e2=e1:Clone()
e2:SetCode(EFFECT_CANNOT_SUMMON)
Duel.RegisterEffect(e2,tp)
end
function cm.splimit(e,c,sump,sumtype,sumpos,targetp,se)
return (not c:IsRace(RACE_WARRIOR)) or c:IsLocation(LOCATION_EXTRA)
return rsch.IsSetS1(c) and c:IsSSetable()
end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.setfilter,tp,LOCATION_DECK,0,3,nil) and Duel.GetLocationCount(tp,LOCATION_SZONE)>0 end
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
if not (Duel.IsExistingMatchingCard(cm.setfilter,tp,LOCATION_DECK,0,3,nil) and Duel.GetLocationCount(tp,LOCATION_SZONE)>0) then return end
local g=Duel.GetMatchingGroup(cm.setfilter,tp,LOCATION_DECK,0,nil)
if g:GetCount()>=3 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SET)
local sg=g:Select(tp,3,3,nil)
Duel.ConfirmCards(1-tp,sg)
Duel.Hint(HINT_SELECTMSG,1-tp,HINTMSG_SET)
local tg=sg:Select(1-tp,1,1,nil)
Duel.SSet(tp,tg)
Duel.ConfirmCards(1-tp,tg)
Duel.SendtoGrave(sg-tg,REASON_EFFECT)
function cm.setop(e,tp)
if Duel.IsPlayerCanSummon(tp) and Duel.IsPlayerCanAdditionalSummon(tp) and Duel.GetFlagEffect(tp,m)==0 then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetDescription(aux.Stringid(m,3))
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetTargetRange(LOCATION_HAND,0)
e1:SetCode(EFFECT_EXTRA_SUMMON_COUNT)
e1:SetValue(0x1)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local e2=e1:Clone()
e2:SetCode(EFFECT_EXTRA_SET_COUNT)
Duel.RegisterEffect(e2,tp)
Duel.RegisterFlagEffect(tp,m,RESET_PHASE+PHASE_END,0,1)
end
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetDescription(aux.Stringid(m,3))
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetTargetRange(LOCATION_HAND,0)
e1:SetCode(EFFECT_EXTRA_SUMMON_COUNT)
e1:SetValue(0x1)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local e2=e1:Clone()
e2:SetCode(EFFECT_EXTRA_SET_COUNT)
Duel.RegisterEffect(e2,tp)
Duel.RegisterFlagEffect(tp,m,RESET_PHASE+PHASE_END,0,1)
local g=Duel.GetMatchingGroup(cm.setfilter,tp,LOCATION_DECK,0,nil)
if #g<3 then return end
rshint.Select(tp,HINTMSG_SELF)
local sg=g:Select(tp,3,3,nil)
Duel.ConfirmCards(1-tp,sg)
rshint.Select(1-tp,HINTMSG_SET)
local tg=sg:Select(1-tp,1,1,nil)
Duel.HintSelection(tg)
Duel.SSet(tp,tg:GetFirst())
sg:Sub(tg)
Duel.SendtoGrave(sg,REASON_EFFECT)
end
function cm.thfilter(c)
return (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH") and c:IsAbleToHand()
function cm.thcon(e,tp)
local c=e:GetHandler()
return c:IsComplexReason(REASON_SUMMON+REASON_MATERIAL)
end
function cm.thcon(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
return e:GetHandler():GetReason()==26
function cm.thfilter(c)
if not rsch.IsSet2(c) then return false end
local b1 = c:IsAbleToHand()
local b2 = c:IsComplexType(TYPE_SPELL+TYPE_CONTINUOUS) and c:GetActivateEffect():IsActivatable(tp,true)
return b1 or b2
end
function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_GRAVE) and cm.thfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(cm.thfilter,tp,LOCATION_GRAVE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectTarget(tp,cm.thfilter,tp,LOCATION_GRAVE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,g,1,0,0)
function cm.thop(e,tp)
rsop.SelectSolve(HINTMSG_SELF,tp,aux.NecroValleyFilter(cm.thfilter),tp,LOCATION_GRAVE,0,1,1,nil,cm.solvefun,tp)
end
function cm.thop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then
if tc:IsType(TYPE_CONTINUOUS) and Duel.SelectYesNo(tp,aux.Stringid(m,2)) then
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true)
else
Duel.SendtoHand(tc,nil,REASON_EFFECT)
end
function cm.solvefun(g,tp)
local tc=g:GetFirst()
local b1 = tc:IsAbleToHand()
local b2 = tc:IsComplexType(TYPE_SPELL+TYPE_CONTINUOUS) and tc:GetActivateEffect():IsActivatable(tp,true)
local op = rsop.SelectOption(tp,b1,{m,1},b2,{m,2})
if op == 1 then
Duel.SendtoHand(tc,nil,REASON_EFFECT)
else
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true)
local te=tc:GetActivateEffect()
local tep=tc:GetControler()
local cost=te:GetCost()
if cost then cost(te,tep,eg,ep,ev,re,r,rp,1) end
end
return true
end
\ No newline at end of file
--于圣殿前起誓
local m=16104234
local cm=_G["c"..m]
c16104234.rksetcode="CHURCH"
if not pcall(function() require("expansions/script/c16104200") end) then require("script/c16104200") end
local m,cm=rscf.DefineCard(16104234,"CHURCH")
function cm.initial_effect(c)
--Activate
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_ACTIVATE)
e0:SetCode(EVENT_FREE_CHAIN)
c:RegisterEffect(e0)
--intg
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_BE_EFFECT_TARGET)
e1:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE)
e1:SetRange(LOCATION_SZONE)
e1:SetTargetRange(LOCATION_ONFIELD,0)
e1:SetTarget(cm.ntgtg)
e1:SetValue(aux.tgoval)
c:RegisterEffect(e1)
--indes
local e1_1=Effect.CreateEffect(c)
e1_1:SetType(EFFECT_TYPE_FIELD)
e1_1:SetCode(EFFECT_INDESTRUCTABLE)
e1_1:SetRange(LOCATION_SZONE)
e1_1:SetTargetRange(LOCATION_ONFIELD,0)
e1_1:SetTarget(aux.TargetBoolFunction(Card.ischurch))
e1_1:SetValue(cm.indesval)
c:RegisterEffect(e1_1)
--EFFECT_LIMIT
local e1_2=Effect.CreateEffect(c)
e1_2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1_2:SetCode(EVENT_DESTROYED)
e1_2:SetRange(LOCATION_SZONE)
e1_2:SetOperation(cm.operation)
c:RegisterEffect(e1_2)
--SpecialSummon
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,1))
e2:SetCategory(CATEGORY_LEAVE_GRAVE)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetRange(LOCATION_GRAVE)
e2:SetCountLimit(1)
e2:SetTarget(cm.sptg)
e2:SetOperation(cm.spop)
c:RegisterEffect(e2)
--SpecialSummon Limit
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD)
e3:SetRange(LOCATION_SZONE)
e3:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e3:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e3:SetTargetRange(1,0)
e3:SetTarget(cm.sumlimit)
c:RegisterEffect(e3)
local e4=e3:Clone()
e4:SetCode(EFFECT_CANNOT_SUMMON)
c:RegisterEffect(e4)
end
function Card.ischurch(c)
return (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH")
end
function cm.disfilter(c)
return (not c:IsRace(RACE_WARRIOR)) and c:IsType(TYPE_MONSTER)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local d=eg:Filter(cm.disfilter,nil)
if d==nil then return end
local tc=d:GetFirst()
while tc do
if not tc then return end
if tc:IsReason(REASON_DESTROY) and tc:IsReason(REASON_BATTLE+REASON_EFFECT)
then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CANNOT_TRIGGER)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_CLIENT_HINT)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e1)
tc=d:GetNext()
end
end
end
function cm.indesval(e,re,r,rp)
return bit.band(r,REASON_RULE+REASON_BATTLE)==0
end
function cm.ntgtg(e,c)
return c:IsFaceup() and (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH")
end
function cm.sumlimit(e,c,sump,sumtype,sumpos,targetp)
return not ((c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH") or c:IsCode(16104222))
end
function cm.tffilter(c)
return (c.rksetcode=="CHURCH_KNIGHT" or c.rksetcode=="CHURCH") and c:IsAbleToDeck()
end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0 and Duel.IsExistingMatchingCard(cm.tffilter,tp,LOCATION_GRAVE,0,1,e:GetHandler()) end
Duel.SetOperationInfo(0,CATEGORY_TODECK,nil,1,tp,LOCATION_GRAVE)
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,e:GetHandler(),1,0,0)
end
function cm.spop(e,tp,eg,ep,ev,re,r,rp)
if Duel.IsExistingMatchingCard(cm.tffilter,tp,LOCATION_GRAVE,0,1,e:GetHandler()) and e:GetHandler():IsRelateToEffect(e) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SELECT)
local tg=Duel.SelectMatchingCard(tp,cm.tffilter,tp,LOCATION_GRAVE,0,1,3,e:GetHandler())
if Duel.SendtoDeck(tg,nil,2,REASON_EFFECT)~=0 then
Duel.MoveToField(e:GetHandler(),tp,tp,LOCATION_SZONE,POS_FACEUP,true)
end
local e1=rsef.ACT(c)
local e2=rsef.FV_CANNOT_BE_TARGET(c,"effect",aux.tgoval,aux.TargetBoolFunction(rsch.IsSet1),{LOCATION_ONFIELD,0})
local e3=rsef.FV_INDESTRUCTABLE(c,"effect",1,aux.TargetBoolFunction(rsch.IsSet1),{LOCATION_ONFIELD,0})
local e4=rsef.FV_LIMIT_PLAYER(c,"act",cm.limitval,nil,{1,1})
local e5,e6=rsef.FV_LIMIT_PLAYER(c,"sp,sum",nil,cm.sptg,{1,0})
local e7=rsef.QO(c,nil,{m,0},1,"td",nil,LOCATION_GRAVE,nil,nil,rsop.target(cm.tdfilter,"td",rsloc.gr,0,1,1,c),cm.actop)
end
function cm.limitval(e,re)
local rc=re:GetHandler()
if rc:IsRace(RACE_WARRIOR) then return false end
return rc:IsStatus(STATUS_BATTLE_DESTROYED) or rc:IsComplexReason(REASON_DESTROY,true,REASON_EFFECT,REASON_BATTLE)
end
function cm.sptg(e,c)
if c:IsCode(16104222) then return false end
return not rsch.IsSet1(c)
end
function cm.tdfilter(c,e,tp)
return rsch.IsSet1(c) and c:IsAbleToDeck() and e:GetHandler():GetActivateEffect():IsActivatable(tp,true,true)
end
function cm.actop(e,tp)
local c=rscf.GetSelf(e)
if c and rsop.SelectToDeck(tp,cm.tdfilter,tp,rsloc.gr,0,1,3,c,{},e,tp)>0 then
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true)
local te=c:GetActivateEffect()
te:UseCountLimit(tp,1,true)
local tep=c:GetControler()
local cost=te:GetCost()
if cost then cost(te,tep,eg,ep,ev,re,r,rp,1) end
end
end
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
--Real Scl Version - Variable
local Version_Number=20200430
local Version_Number=20200807
local m=16199990
local vm=16199991
rsv={} --"Base Function"
......@@ -21,14 +21,18 @@ rsreset={} --"Reset Function"
rshint={} --"Hint Function"
rsloc={} --"Location Function"
rsdv="Divide_Variable"
--Info Variable
rsef.valinfo ={} --"Value for inside series, inside type etc."
rsval.valinfo ={} --"Value for inside series, inside type etc."
rscost.costinfo ={} --"Cost information, for record cost value"
rsef.targetlist ={} --"Target group list, for rstg.GetTargetAttribute"
rsop.opinfo={} --"Operation information, for record something"
rsef.relationinfo={} --"Field,Pendulum,Continous leave field"
rstg.targetlist ={} --"Target group list, for rstg.GetTargetAttribute"
rsef.attacheffect ={} --"Effect information for attach effects"
rsef.attacheffectf ={}
rsef.solveeffect ={}
rsef.baseop={}
rsop.baseop={}
rscf.synchro_material_action={} --"Custom syn material's action"
rscf.xyz_material_action={} --"Custom xyz material's action"
......@@ -55,26 +59,29 @@ rsreset.ered = RESET_EVENT+RESETS_REDIRECT
--Code Variable
rscode.Extra_Effect_Activate = m+100 --"Attach Effect"
rscode.Extra_Effect_BSolve = m+200
rscode.Extra_Effect_ASolve = m+800
rscode.Extra_Effect_BSolve = m+101
rscode.Extra_Effect_ASolve = m+102
rscode.Phase_Leave_Flag = m+200 --"Summon Flag for SummonBuff"
rscode.Extra_Synchro_Material= m+300 --"Extra Synchro Material"
rscode.Extra_Xyz_Material = m+301 --"Extra Xyz Material"
rscode.Utility_Xyz_Material = m+400 --"Utility Xyz Material"
rscode.Previous_Set_Code = m+500 --"Previous Set Code"
rscode.Synchro_Material = m+600 --"Record synchro proceudre target"
rscode.Pre_Complete_Proc = m+700 --"Previous c:CompleteProcedure"
rscode.Phase_Leave_Flag = m+300 --"Summon Flag for SummonBuff"
rscode.Extra_Synchro_Material= m+400 --"Extra Synchro Material"
rscode.Extra_Xyz_Material = m+401 --"Extra Xyz Material"
rscode.Utility_Xyz_Material = m+500 --"Utility Xyz Material"
rscode.Previous_Set_Code = m+600 --"Previous Set Code"
rscode.Synchro_Material = m+700 --"Record synchro proceudre target"
rscode.Set = m+800 --"EVENT_SET"
--Hint Message Variable
rshint.act=aux.Stringid(m,0) --"activate spell/trap"
rshint.dis=aux.Stringid(m,1) --"cards will be disable effects "
rshint.dis=aux.Stringid(38265153,3) --"cards will be disable effects "
rshint.ad=aux.Stringid(m,2) --"cards will be change Atk/Def"
rshint.rtg=aux.Stringid(48976825,0) --"return to grave"
rshint.spproc=aux.Stringid(m,4) --"SS by self produce"
rshint.negeffect=aux.Stringid(19502505,1) --"negate activation"
rshint.eq=aux.Stringid(68184115,0) --"cards will equip"
rshint.te=aux.Stringid(24094258,3) --"add to extra deck"
rshint.xyz=HINTMSG_XMATERIAL --"cards will be overlay cards"
rshint.xyz=HINTMSG_XMATERIAL --"cards will become overlay cards"
rshint.diseffect=aux.Stringid(39185163,1) --"negate effect"
rshint.negsum=aux.Stringid(m+1,1) --"negate summon"
rshint.negsp=aux.Stringid(74892653,0) --"negate special summon"
......@@ -83,12 +90,29 @@ rshint.darksynchro=aux.Stringid(m,15) --"treat as dark synchro"
rshint.choose=aux.Stringid(23912837,1) --"choose 1 effect"
rshint.epleave=aux.Stringid(m,3) --"end phase leave field"
rshint.finshcopy=aux.Stringid(43387895,1) --"reset copy effect"
rshint.act2=aux.Stringid(m,1) --"select card to activate"
rshint.tgct=aux.Stringid(83531441,2) --"select send to the GY number"
rshint.drct=aux.Stringid(m,5) --"select draw number"
--[[
rshint.isss=aux.Stringid(17535764,1) --"would you SS a monster?"
rshint.istg=aux.Stringid(62834295,2) --"would you send to GY?"
rshint.isdes=aux.Stringid(20590515,2) --"would you destroy?"
rshint.istd=aux.Stringid(m,1) --"would you send to Deck?"
rshint.isrm=aux.Stringid(93191801,2) --"would you reomve?"
rshint.isset=aux.Stringid(m,5) --"would you set?"
rshint.istf=aux.Stringid(m,6) --"would you place to field?"
rshint.isth=aux.Stringid(26118970,1) --"would you send to hand?"
rshint.isrh=aux.Stringid(31102447,2) --"would you return to hand"
rshint.isdr=aux.Stringid(3679218,1) --"would you draw?"
--]]
--Property Variable
rsflag.flaglist = { EFFECT_FLAG_CARD_TARGET,EFFECT_FLAG_PLAYER_TARGET,EFFECT_FLAG_DELAY,EFFECT_FLAG_DAMAGE_STEP,EFFECT_FLAG_DAMAGE_CAL,
EFFECT_FLAG_IGNORE_IMMUNE,EFFECT_FLAG_SET_AVAILABLE,EFFECT_FLAG_IGNORE_RANGE,EFFECT_FLAG_SINGLE_RANGE,EFFECT_FLAG_BOTH_SIDE,
EFFECT_FLAG_UNCOPYABLE,EFFECT_FLAG_CANNOT_DISABLE,EFFECT_FLAG_CANNOT_NEGATE,EFFECT_FLAG_CLIENT_HINT,EFFECT_FLAG_LIMIT_ZONE,
EFFECT_FLAG_ABSOLUTE_TARGET,EFFECT_FLAG_SPSUM_PARAM }
EFFECT_FLAG_ABSOLUTE_TARGET,EFFECT_FLAG_SPSUM_PARAM,
EFFECT_FLAG_EVENT_PLAYER }
rsflag.tg_d = EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY
rsflag.dsp_d = EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY
rsflag.dsp_tg = EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_CARD_TARGET
......@@ -110,16 +134,22 @@ rscate.neg_des = CATEGORY_NEGATE+CATEGORY_DESTROY
rscf.typelist = { TYPE_MONSTER,TYPE_NORMAL,TYPE_EFFECT,TYPE_DUAL,TYPE_UNION,TYPE_TOON,TYPE_TUNER,TYPE_RITUAL,TYPE_FUSION,TYPE_SYNCHRO,TYPE_XYZ,TYPE_LINK,TYPE_TOKEN,TYPE_PENDULUM,TYPE_SPSUMMON,TYPE_FLIP,TYPE_SPIRIT,
TYPE_SPELL,TYPE_EQUIP,TYPE_FIELD,TYPE_CONTINUOUS,TYPE_QUICKPLAY,
TYPE_TRAP,TYPE_COUNTER,TYPE_TRAPMONSTER }
rscf.extype = TYPE_FUSION+TYPE_SYNCHRO+TYPE_XYZ+TYPE_PENDULUM+TYPE_LINK
rscf.extype = TYPE_FUSION+TYPE_SYNCHRO+TYPE_XYZ+TYPE_LINK
rscf.extype_r = rscf.extype + TYPE_RITUAL
rscf.extype_np = rscf.extype - TYPE_PENDULUM
rscf.extype_p = rscf.extype + TYPE_PENDULUM
rscf.extype_rp = rscf.extype + TYPE_RITUAL + TYPE_PENDULUM
rscf.exlist = { TYPE_FUSION,TYPE_SYNCHRO,TYPE_XYZ,TYPE_LINK }
rscf.exlist_r = { TYPE_FUSION,TYPE_SYNCHRO,TYPE_XYZ,TYPE_LINK,TYPE_RITUAL }
rscf.exlist_p = { TYPE_FUSION,TYPE_SYNCHRO,TYPE_XYZ,TYPE_LINK,TYPE_PENDULUM }
rscf.exlist_rp = { TYPE_FUSION,TYPE_SYNCHRO,TYPE_XYZ,TYPE_LINK,TYPE_PENDULUM,TYPE_RITUAL }
--Location Variable
rsloc.hd=LOCATION_HAND+LOCATION_DECK
rsloc.ho=LOCATION_HAND+LOCATION_ONFIELD
rsloc.hg=LOCATION_HAND+LOCATION_GRAVE
rsloc.dg=LOCATION_DECK+LOCATION_GRAVE
rsloc.gr=LOCATION_GRAVE+LOCATION_REMOVED
rsloc.dgr=LOCATION_DECK+LOCATION_GRAVE+LOCATION_REMOVED
rsloc.hdg=LOCATION_HAND+LOCATION_DECK+LOCATION_GRAVE
rsloc.de=LOCATION_DECK+LOCATION_EXTRA
rsloc.mg=LOCATION_MZONE+LOCATION_GRAVE
......@@ -131,6 +161,7 @@ rsloc.all=0xff
--Escape Old Functions
function rsof.Escape_Old_Functions()
rsof.DefineCard = rscf.DefineCard
rscf.FilterFaceUp = rscf.fufilter
rsof.SendtoHand = rsop.SendtoHand
rsof.SendtoDeck = rsop.SendtoDeck
rsof.SendtoGrave = rsop.SendtoGrave
......@@ -141,7 +172,8 @@ function rsof.Escape_Old_Functions()
rsof.SelectOption_Page= rsop.SelectOption_Page
rsof.SelectNumber= rsop.AnnounceNumber
rsof.SelectNumber_List= rsop.AnnounceNumber_List
rsof.IsSet = rscf.DefineSet
rsof.IsSet = rscf.DefineSet
rscf.GetRelationThisCard = rscf.GetFaceUpSelf
--some card use old SummonBuff's phase leave field parterment, must fix them in their luas
rssf.SummonBuff=function(attlist,isdis,isdistig,selfleave,phaseleave)
local bufflist={}
......@@ -170,6 +202,7 @@ function rsof.Escape_Old_Functions()
end
return bufflist
end
rsop.eqop = rsop.Equip
end
--Record Author
local am=16199992
local Version_Number=20200430
--Scl
local Version_Number=20200807
#Scl
local rsdka = Dakyria
local rsdio = Diablo
local rsnr = Night_Raven
......@@ -10,12 +10,13 @@ local rsem = Eridiument
local rsxb = XB
local rsos = Oracle_Smith
local rssp = Stellar_Pearl
--local rsgd = Ghostdom_Dragon
//local rsgd = Ghostdom_Dragon
local rsed = Epic_Dragon
local rsdh = Devil_Hunter
local rsds = Dark_Souls
local rsca = Corona
--Scl - Special Mode
#Scl - Special Mode
local rssm = Special_Mode
local rssmb = Special_Mode_Change_Base_Function
local rssmt = Special_Mode_Turbo_Duel
......@@ -26,18 +27,18 @@ local rssmf = Special_Mode_Fast_Duel
local rssmm = Special_Mode_Multiple_Duel
local rssmu = Special_Mode_Universal_Duel
--Gale 1472676207
#Gale 1472676207
local rsve = Voison
local rsneov= Neons
local tfrsv = T.Fairies
local rsss = Star_Spirit
--ChiJiang 626386490
#ChiJiang 626386490
local rsnm = Nightmare
local rslf = Little_Fox
local rccv = Thermonuclear
--XiaoMi 643865567
#XiaoMi 643865567
local rssg = Sex_Gun
local rsps = Pseudo_Soul
local rsdcc = Dragon_Chess_Corps
......@@ -50,48 +51,58 @@ local rsik = Infernal_Knight
local rsvw = Virus_Wrom
local rsia = Indolent_Angel
local rsso = Simulated_Organism
local rstr = True_Ritual
--NianBao 583322404
#NianBao 583322404
local rslap = Lapin
local rskh = Karehana
--XiaoDaoHeng 1614895649
#XiaoDaoHeng 1614895649
local rslrd = Life_DeathRound_Dance
--Huang 1184387005
#Huang 1184387005
local rsts = Trinity_Sword
--Luoxing 1151483512
#Luoxing 1151483512
local rsdt = Dark_Tale
local rsod = Order
--YunZeZhun 1587361112
#YunZeZhun 1587361112
local rsphh = Phantom_Thieves_Of_Hearts
local rsgc = Guard_City
--ZhenDong
#ZhenDong
local rsfv = Fgo/Assassin
--JingJing 1772438857
#JingJing 1772438857
local rsba = BlueAngel
--Akashic 3204027606
#Akashic 3204027606
local rszg = Zogu
local rsgs = Gran_Sphere
local rsoc = Oligocene_Civilization
local rsgol = Giant_of_Light
local rssb = Space_Beasts
--HeiBai 1172777968
#HeiBai 1172777968
local rstm = Toaru_Majutsu_no_Index
--2558566212
#2558566212
local rsgod = God
#02 1164477469
local rsva = VR_Aqua
#REIKAI 2404873791
local rsch = Churck
--Set Code
--Scl
#Scl
--local = 0x1330
local Alchement_Bio = 0x3330
local Chaos_Alchemy = 0x5330
local Azure_Wing_Mercenary = 0x6330
local Azure-Wing_Mercenary = 0x6330
local Oracleoath = 0x9330
local Zrouf_Mantra = 0xa330
local Autumntale = 0xc330
......
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