Commit 858fb035 authored by TanakaKotoha's avatar TanakaKotoha

foo foo

parent 95f8fde8
...@@ -5,7 +5,7 @@ stages: ...@@ -5,7 +5,7 @@ stages:
variables: variables:
GIT_DEPTH: "1" GIT_DEPTH: "1"
LAST_UPDATE_DATE: "2020.11.9" LAST_UPDATE_DATE: "2020.11.9"
CURRENT_UPDATE_DATE: "2020.11.22" CURRENT_UPDATE_DATE: "2020.11.23"
redtext: redtext:
stage: prepare stage: prepare
......
No preview for this file type
...@@ -121,6 +121,7 @@ ...@@ -121,6 +121,7 @@
10904007 1 --灵刻使的祈愿 10904007 1 --灵刻使的祈愿
10904008 1 --灵刻使的共鸣 10904008 1 --灵刻使的共鸣
10904009 2 --灵刻使 贤者 10904009 2 --灵刻使 贤者
10904012 1 --铭灵刻使 艾米卡
10904014 1 --双生的灵刻使 10904014 1 --双生的灵刻使
10904017 1 --灵刻使的暗面 10904017 1 --灵刻使的暗面
10904020 1 --铭灵刻使 阿丽亚娜 10904020 1 --铭灵刻使 阿丽亚娜
...@@ -440,6 +441,7 @@ ...@@ -440,6 +441,7 @@
26803013 1 --无火的尘埃 26803013 1 --无火的尘埃
26803016 1 --终幕新约 26803016 1 --终幕新约
26803017 0 --终幕微风 26803017 0 --终幕微风
26803021 0 --终幕镜碎
26803022 2 --终幕空洞 26803022 2 --终幕空洞
26803023 2 --水之未眠 26803023 2 --水之未眠
26805014 0 --哥特风·杜野凛世 26805014 0 --哥特风·杜野凛世
...@@ -1085,6 +1087,8 @@ ...@@ -1085,6 +1087,8 @@
82204262 1 --灵魂锁链 82204262 1 --灵魂锁链
82204263 0 --充能棒 82204263 0 --充能棒
82204264 1 --冥界花 82204264 1 --冥界花
82206078 1 --邪界幻灵·天邪龙王
82206079 1 --邪界幻灵·咤克斯
82228497 0 --战之精灵王 盖亚 82228497 0 --战之精灵王 盖亚
82228498 0 --暗之精灵王 布莱克 82228498 0 --暗之精灵王 布莱克
82228499 1 --超能之精灵王 缪斯 82228499 1 --超能之精灵王 缪斯
......
expansions/pics/65011001.jpg

213 KB | W: | H:

expansions/pics/65011001.jpg

53 KB | W: | H:

expansions/pics/65011001.jpg
expansions/pics/65011001.jpg
expansions/pics/65011001.jpg
expansions/pics/65011001.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/65011002.jpg

208 KB | W: | H:

expansions/pics/65011002.jpg

52.5 KB | W: | H:

expansions/pics/65011002.jpg
expansions/pics/65011002.jpg
expansions/pics/65011002.jpg
expansions/pics/65011002.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/65011003.jpg

194 KB | W: | H:

expansions/pics/65011003.jpg

55.4 KB | W: | H:

expansions/pics/65011003.jpg
expansions/pics/65011003.jpg
expansions/pics/65011003.jpg
expansions/pics/65011003.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/65011004.jpg

190 KB | W: | H:

expansions/pics/65011004.jpg

50 KB | W: | H:

expansions/pics/65011004.jpg
expansions/pics/65011004.jpg
expansions/pics/65011004.jpg
expansions/pics/65011004.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/65011005.jpg

214 KB | W: | H:

expansions/pics/65011005.jpg

51.8 KB | W: | H:

expansions/pics/65011005.jpg
expansions/pics/65011005.jpg
expansions/pics/65011005.jpg
expansions/pics/65011005.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/65011006.jpg

189 KB | W: | H:

expansions/pics/65011006.jpg

56.2 KB | W: | H:

expansions/pics/65011006.jpg
expansions/pics/65011006.jpg
expansions/pics/65011006.jpg
expansions/pics/65011006.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/65011007.jpg

163 KB | W: | H:

expansions/pics/65011007.jpg

53.1 KB | W: | H:

expansions/pics/65011007.jpg
expansions/pics/65011007.jpg
expansions/pics/65011007.jpg
expansions/pics/65011007.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/65011008.jpg

186 KB | W: | H:

expansions/pics/65011008.jpg

56.5 KB | W: | H:

expansions/pics/65011008.jpg
expansions/pics/65011008.jpg
expansions/pics/65011008.jpg
expansions/pics/65011008.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/65011009.jpg

184 KB | W: | H:

expansions/pics/65011009.jpg

49.2 KB | W: | H:

expansions/pics/65011009.jpg
expansions/pics/65011009.jpg
expansions/pics/65011009.jpg
expansions/pics/65011009.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/65011010.jpg

196 KB | W: | H:

expansions/pics/65011010.jpg

55.7 KB | W: | H:

expansions/pics/65011010.jpg
expansions/pics/65011010.jpg
expansions/pics/65011010.jpg
expansions/pics/65011010.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/65011011.jpg

184 KB | W: | H:

expansions/pics/65011011.jpg

52 KB | W: | H:

expansions/pics/65011011.jpg
expansions/pics/65011011.jpg
expansions/pics/65011011.jpg
expansions/pics/65011011.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/65011012.jpg

201 KB | W: | H:

expansions/pics/65011012.jpg

53.7 KB | W: | H:

expansions/pics/65011012.jpg
expansions/pics/65011012.jpg
expansions/pics/65011012.jpg
expansions/pics/65011012.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/65011013.jpg

182 KB | W: | H:

expansions/pics/65011013.jpg

58.4 KB | W: | H:

expansions/pics/65011013.jpg
expansions/pics/65011013.jpg
expansions/pics/65011013.jpg
expansions/pics/65011013.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/65011014.jpg

181 KB | W: | H:

expansions/pics/65011014.jpg

56.4 KB | W: | H:

expansions/pics/65011014.jpg
expansions/pics/65011014.jpg
expansions/pics/65011014.jpg
expansions/pics/65011014.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/65011016.jpg

173 KB | W: | H:

expansions/pics/65011016.jpg

79 KB | W: | H:

expansions/pics/65011016.jpg
expansions/pics/65011016.jpg
expansions/pics/65011016.jpg
expansions/pics/65011016.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/65011017.jpg

40.8 KB | W: | H:

expansions/pics/65011017.jpg

61.2 KB | W: | H:

expansions/pics/65011017.jpg
expansions/pics/65011017.jpg
expansions/pics/65011017.jpg
expansions/pics/65011017.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/field/65011007.jpg

381 KB | W: | H:

expansions/pics/field/65011007.jpg

97.3 KB | W: | H:

expansions/pics/field/65011007.jpg
expansions/pics/field/65011007.jpg
expansions/pics/field/65011007.jpg
expansions/pics/field/65011007.jpg
  • 2-up
  • Swipe
  • Onion skin
--园野迷踪 魔女之旅
function c33502801.initial_effect(c)
--
c:EnableReviveLimit()
aux.AddCodeList(c,33502800)
--
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(33502801,0))
e1:SetCategory(CATEGORY_SEARCH+CATEGORY_TOHAND+CATEGORY_TODECK)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_HAND)
e1:SetCountLimit(1,33502801)
e1:SetCost(c33502801.cost1)
e1:SetTarget(c33502801.tg1)
e1:SetOperation(c33502801.op1)
c:RegisterEffect(e1)
--
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(33502801,1))
e2:SetCategory(CATEGORY_TOHAND+CATEGORY_TODECK)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetCode(EVENT_SPSUMMON_SUCCESS)
e2:SetCondition(c33502801.con2)
e2:SetTarget(c33502801.tg2)
e2:SetOperation(c33502801.op2)
c:RegisterEffect(e2)
--
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_INDESTRUCTABLE_EFFECT)
e3:SetRange(LOCATION_SZONE)
e3:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE)
e3:SetValue(1)
e3:SetTarget(c33502801.tg3)
e3:SetCondition(c33502801.con3)
c:RegisterEffect(e3)
--
end
--
function c33502801.cost1(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return c:IsLocation(LOCATION_HAND)
and Duel.GetLocationCount(tp,LOCATION_SZONE)>0
and not c:IsForbidden() end
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true)
local e1_1=Effect.CreateEffect(c)
e1_1:SetType(EFFECT_TYPE_SINGLE)
e1_1:SetCode(EFFECT_CHANGE_TYPE)
e1_1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1_1:SetValue(TYPE_SPELL+TYPE_CONTINUOUS)
e1_1:SetReset(RESET_EVENT+RESETS_STANDARD-RESET_TURN_SET)
c:RegisterEffect(e1_1)
end
--
function c33502801.tfilter1(c)
return aux.IsCodeListed(c,33502800) and c:IsAbleToHand()
end
function c33502801.tg1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c33502801.tfilter1,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
Duel.SetOperationInfo(0,CATEGORY_TODECK,nil,1,tp,LOCATION_HAND)
end
--
function c33502801.op1(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local lg=Duel.SelectMatchingCard(tp,c33502801.tfilter1,tp,LOCATION_DECK,0,1,1,nil)
if lg:GetCount()>0 and Duel.SendtoHand(lg,nil,REASON_EFFECT)>0 then
Duel.ConfirmCards(1-tp,lg)
Duel.ShuffleHand(tp)
if Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,LOCATION_HAND,0,1,nil) then
Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local sg=Duel.SelectMatchingCard(tp,Card.IsAbleToDeck,tp,LOCATION_HAND,0,1,1,nil)
Duel.SendtoDeck(sg,nil,2,REASON_EFFECT)
end
end
end
--
function c33502801.con2(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_RITUAL)
end
--
function c33502801.tg2(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAbleToHand,tp,0,LOCATION_MZONE,1,nil) end
local sg=Duel.GetMatchingGroup(Card.IsAbleToHand,tp,0,LOCATION_MZONE,nil)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,sg,sg:GetCount(),0,0)
end
--
function c33502801.op2(e,tp,eg,ep,ev,re,r,rp)
local sg=Duel.GetMatchingGroup(Card.IsAbleToHand,tp,0,LOCATION_MZONE,nil)
if Duel.SendtoHand(sg,nil,REASON_EFFECT)>0 then
local ct1=Duel.GetFieldGroupCount(tp,LOCATION_HAND,0)
local ct2=Duel.GetFieldGroupCount(tp,0,LOCATION_HAND)
local ct=ct2-ct1
if ct>0 then
Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local sg=Duel.SelectMatchingCard(1-tp,Card.IsAbleToDeck,1-tp,LOCATION_HAND,0,ct,ct,nil)
if sg:GetCount()<1 then return end
Duel.SendtoDeck(sg,nil,2,REASON_EFFECT)
end
end
end
--
function c33502801.con3(e)
local c=e:GetHandler()
return c:IsType(TYPE_SPELL) and c:IsType(TYPE_CONTINUOUS)
end
--
function c33502801.tg3(e,c)
return e:GetHandler():GetColumnGroup():IsContains(c)
end
--
--落雪暮樱 魔女之旅
function c33502802.initial_effect(c)
--
c:EnableReviveLimit()
aux.AddCodeList(c,33502800)
--
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(33502802,0))
e1:SetCategory(CATEGORY_SEARCH+CATEGORY_TOHAND+CATEGORY_TODECK)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_HAND)
e1:SetCountLimit(1,33502802)
e1:SetCost(c33502802.cost1)
e1:SetTarget(c33502802.tg1)
e1:SetOperation(c33502802.op1)
c:RegisterEffect(e1)
--
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(33502802,1))
e2:SetCategory(CATEGORY_TOEXTRA+CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetCode(EVENT_SPSUMMON_SUCCESS)
e2:SetCondition(c33502802.con2)
e2:SetTarget(c33502802.tg2)
e2:SetOperation(c33502802.op2)
c:RegisterEffect(e2)
--
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_CANNOT_TO_DECK)
e3:SetRange(LOCATION_SZONE)
e3:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e3:SetTargetRange(0,1)
e3:SetTarget(function(e,c) return c:IsOnField() end)
e3:SetCondition(c33502802.con3)
c:RegisterEffect(e3)
--
end
--
function c33502802.cost1(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return c:IsLocation(LOCATION_HAND)
and Duel.GetLocationCount(tp,LOCATION_SZONE)>0
and not c:IsForbidden() end
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true)
local e1_1=Effect.CreateEffect(c)
e1_1:SetType(EFFECT_TYPE_SINGLE)
e1_1:SetCode(EFFECT_CHANGE_TYPE)
e1_1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1_1:SetValue(TYPE_SPELL+TYPE_CONTINUOUS)
e1_1:SetReset(RESET_EVENT+RESETS_STANDARD-RESET_TURN_SET)
c:RegisterEffect(e1_1)
end
--
function c33502802.tfilter1(c)
return aux.IsCodeListed(c,33502800) and c:IsAbleToHand()
end
function c33502802.tg1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c33502802.tfilter1,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
Duel.SetOperationInfo(0,CATEGORY_TODECK,nil,1,tp,LOCATION_HAND)
end
--
function c33502802.op1(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local lg=Duel.SelectMatchingCard(tp,c33502802.tfilter1,tp,LOCATION_DECK,0,1,1,nil)
if lg:GetCount()>0 and Duel.SendtoHand(lg,nil,REASON_EFFECT)>0 then
Duel.ConfirmCards(1-tp,lg)
Duel.ShuffleHand(tp)
if Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,LOCATION_HAND,0,1,nil) then
Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local sg=Duel.SelectMatchingCard(tp,Card.IsAbleToDeck,tp,LOCATION_HAND,0,1,1,nil)
Duel.SendtoDeck(sg,nil,2,REASON_EFFECT)
end
end
end
--
function c33502802.con2(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_RITUAL)
end
--
function c33502802.tfilter2(c)
return c:IsType(TYPE_SYNCHRO+TYPE_XYZ+TYPE_FUSION+TYPE_LINK) and c:IsAbleToExtra()
end
function c33502802.tg2(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c33502802.tfilter2,tp,0,LOCATION_MZONE,1,nil) end
local sg=Duel.GetMatchingGroup(c33502802.tfilter2,tp,0,LOCATION_MZONE,nil)
Duel.SetOperationInfo(0,CATEGORY_TOEXTRA,sg,sg:GetCount(),0,0)
end
--
function c33502802.ofilter2(c,e,tp)
return c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c33502802.op2(e,tp,eg,ep,ev,re,r,rp)
local sg=Duel.GetMatchingGroup(c33502802.tfilter2,tp,0,LOCATION_MZONE,nil)
if sg:GetCount()<1 then return end
Duel.DisableShuffleCheck()
if Duel.SendtoDeck(sg,tp,2,REASON_EFFECT)>0 then
if Duel.GetFieldGroupCount(tp,0,LOCATION_MZONE)>0 and Duel.IsExistingMatchingCard(c33502802.ofilter2,tp,LOCATION_EXTRA,0,1,nil,e,tp) then
Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg=Duel.SelectMatchingCard(tp,c33502802.ofilter2,tp,LOCATION_EXTRA,0,1,1,nil,e,tp)
if sg:GetCount()<1 then return end
Duel.SpecialSummon(sg:GetFirst(),0,tp,tp,false,false,POS_FACEUP)
end
end
end
--
function c33502802.con3(e)
local c=e:GetHandler()
return c:IsType(TYPE_SPELL) and c:IsType(TYPE_CONTINUOUS)
end
--
--幻蓝花海 魔女之旅
function c33502803.initial_effect(c)
--
c:EnableReviveLimit()
aux.AddCodeList(c,33502800)
--
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(33502803,0))
e1:SetCategory(CATEGORY_SEARCH+CATEGORY_TOHAND+CATEGORY_TODECK)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_HAND)
e1:SetCountLimit(1,33502803)
e1:SetCost(c33502803.cost1)
e1:SetTarget(c33502803.tg1)
e1:SetOperation(c33502803.op1)
c:RegisterEffect(e1)
--
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(33502803,1))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_TOEXTRA+CATEGORY_TODECK)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetCode(EVENT_SPSUMMON_SUCCESS)
e2:SetCondition(c33502803.con2)
e2:SetTarget(c33502803.tg2)
e2:SetOperation(c33502803.op2)
c:RegisterEffect(e2)
--
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_CANNOT_REMOVE)
e3:SetRange(LOCATION_SZONE)
e3:SetTargetRange(0,LOCATION_GRAVE)
e3:SetCondition(c33502803.con3)
c:RegisterEffect(e3)
--
end
--
function c33502803.cost1(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return c:IsLocation(LOCATION_HAND)
and Duel.GetLocationCount(tp,LOCATION_SZONE)>0
and not c:IsForbidden() end
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true)
local e1_1=Effect.CreateEffect(c)
e1_1:SetType(EFFECT_TYPE_SINGLE)
e1_1:SetCode(EFFECT_CHANGE_TYPE)
e1_1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1_1:SetValue(TYPE_SPELL+TYPE_CONTINUOUS)
e1_1:SetReset(RESET_EVENT+RESETS_STANDARD-RESET_TURN_SET)
c:RegisterEffect(e1_1)
end
--
function c33502803.tfilter1(c)
return aux.IsCodeListed(c,33502800) and c:IsAbleToHand()
end
function c33502803.tg1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c33502803.tfilter1,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
Duel.SetOperationInfo(0,CATEGORY_TODECK,nil,1,tp,LOCATION_HAND)
end
--
function c33502803.op1(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local lg=Duel.SelectMatchingCard(tp,c33502803.tfilter1,tp,LOCATION_DECK,0,1,1,nil)
if lg:GetCount()>0 and Duel.SendtoHand(lg,nil,REASON_EFFECT)>0 then
Duel.ConfirmCards(1-tp,lg)
Duel.ShuffleHand(tp)
if Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,LOCATION_HAND,0,1,nil) then
Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local sg=Duel.SelectMatchingCard(tp,Card.IsAbleToDeck,tp,LOCATION_HAND,0,1,1,nil)
Duel.SendtoDeck(sg,nil,2,REASON_EFFECT)
end
end
end
--
function c33502803.con2(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_RITUAL)
end
--
function c33502803.tg2(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c33502803.ofilter2,tp,0,LOCATION_EXTRA,1,nil,e,1-tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,1-tp,LOCATION_EXTRA)
end
--
function c33502803.ofilter2(c,e,tp)
return c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c33502803.ofilter2_1(c)
return c:IsType(TYPE_LINK) or (c:IsType(TYPE_PENDULUM) and c:IsFaceup())
end
function c33502803.ofilter2_4(c)
return c:IsAbleToExtra() and c:IsType(TYPE_SYNCHRO+TYPE_XYZ+TYPE_FUSION+TYPE_LINK)
end
function c33502803.op2(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
--
local ft=Duel.GetUsableMZoneCount(1-tp)
local ft1=Duel.GetLocationCountFromEx(1-tp,1-tp,nil,TYPE_PENDULUM)
--
local mg=Duel.GetMatchingGroup(c33502803.ofilter2,1-tp,LOCATION_EXTRA,0,nil,e,tp)
if mg:GetCount()<1 then return end
--
local ng=Group.CreateGroup()
ng:Merge(mg)
local cg=ng:Filter(c33502803.ofilter2_1,nil)
if cg:GetCount()>0 then
ng:Sub(cg)
ft1=math.min(ft1,cg:GetCount())
if ng and ng:GetCount()>0 then
ft=math.min(ft,ng:GetCount()+ft1)
else
ft=math.min(ft,ft1)
end
else
ft=math.min(ft,mg:GetCount())
end
--
local ect=c29724053 and Duel.IsPlayerAffectedByEffect(1-tp,29724053) and c29724053[1-tp]
if ect and ect<ft then ft=ect end
if Duel.IsPlayerAffectedByEffect(1-tp,59822133) then
if ft1>0 then ft1=1 end
ft=1
end
--
local sg=mg:SelectSubGroup(1-tp,c33502803.SPCheck,false,ft,ft,ft,ft1)
if sg:GetCount()<0 then return end
--
local fid=c:GetFieldID()
local lg=Group.CreateGroup()
local ag=sg:Filter(c33502803.ofilter2_1,nil)
lg:Merge(sg)
if ag:GetCount()>0 then
lg:Sub(ag)
local ac=ag:GetFirst()
while ac do
Duel.SpecialSummonStep(ac,0,1-tp,1-tp,false,false,POS_FACEUP)
local e2_1=Effect.CreateEffect(c)
e2_1:SetType(EFFECT_TYPE_SINGLE)
e2_1:SetCode(EFFECT_DISABLE)
e2_1:SetReset(RESET_EVENT+RESETS_STANDARD)
ac:RegisterEffect(e2_1,true)
local e2_2=e2_1:Clone()
e2_2:SetCode(EFFECT_DISABLE_EFFECT)
ac:RegisterEffect(e2_2,true)
ac:RegisterFlagEffect(33502803,RESET_EVENT+RESETS_STANDARD,0,1,fid)
ac=ag:GetNext()
end
end
local sc=lg:GetFirst()
while sc do
Duel.SpecialSummonStep(sc,0,1-tp,1-tp,false,false,POS_FACEUP)
local e2_1=Effect.CreateEffect(c)
e2_1:SetType(EFFECT_TYPE_SINGLE)
e2_1:SetCode(EFFECT_DISABLE)
e2_1:SetReset(RESET_EVENT+RESETS_STANDARD)
sc:RegisterEffect(e2_1,true)
local e2_2=e2_1:Clone()
e2_2:SetCode(EFFECT_DISABLE_EFFECT)
sc:RegisterEffect(e2_2,true)
sc:RegisterFlagEffect(33502803,RESET_EVENT+RESETS_STANDARD,0,1,fid)
sc=lg:GetNext()
end
Duel.SpecialSummonComplete()
--
sg:KeepAlive()
local e2_3=Effect.CreateEffect(c)
e2_3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2_3:SetCode(EVENT_PHASE+PHASE_END)
e2_3:SetCountLimit(1)
e2_3:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE)
e2_3:SetLabel(fid)
e2_3:SetLabelObject(sg)
e2_3:SetCondition(c33502803.con2_3)
e2_3:SetOperation(c33502803.op2_3)
Duel.RegisterEffect(e2_3,tp)
--
if Duel.GetFieldGroupCount(tp,0,LOCATION_EXTRA)>0 then
local og=Duel.GetMatchingGroup(Card.IsAbleToRemove,tp,0,LOCATION_EXTRA,nil)
if og:GetCount()<1 then return end
Duel.BreakEffect()
if Duel.Remove(og,POS_FACEUP,REASON_EFFECT)>0 then
local fg=Duel.GetOperatedGroup()
local vg=fg:Filter(c33502803.ofilter2_4,nil)
if vg:GetCount()<1 then return end
Duel.DisableShuffleCheck()
Duel.SendtoDeck(vg,tp,2,REASON_EFFECT)
end
end
--
end
--
function c33502803.SPCheckFilter(c)
return c:IsType(TYPE_LINK) or (c:IsType(TYPE_PENDULUM) and c:IsFaceup())
end
function c33502803.SPCheck(sg,ft,ft1)
return sg:FilterCount(c33502803.SPCheckFilter,nil)<=ft1 and sg:GetCount()==ft
end
--
function c33502803.cfilter2_3(c,fid)
return c:GetFlagEffectLabel(33502803)==fid
end
function c33502803.con2_3(e,tp,eg,ep,ev,re,r,rp)
local g=e:GetLabelObject()
if not g:IsExists(c33502803.cfilter2_3,1,nil,e:GetLabel()) then
g:DeleteGroup()
e:Reset()
return false
else return true end
end
function c33502803.op2_3(e,tp,eg,ep,ev,re,r,rp)
local g=e:GetLabelObject()
local tg=g:Filter(c33502803.cfilter2_3,nil,e:GetLabel())
Duel.DisableShuffleCheck()
Duel.SendtoDeck(tg,nil,2,REASON_EFFECT)
end
--
function c33502803.con3(e)
local c=e:GetHandler()
return c:IsType(TYPE_SPELL) and c:IsType(TYPE_CONTINUOUS)
end
--
--无言红枫 魔女之旅
function c33502804.initial_effect(c)
--
c:EnableReviveLimit()
aux.AddCodeList(c,33502800)
--
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(33502804,0))
e1:SetCategory(CATEGORY_SEARCH+CATEGORY_TOHAND+CATEGORY_TODECK)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_HAND)
e1:SetCountLimit(1,33502804)
e1:SetCost(c33502804.cost1)
e1:SetTarget(c33502804.tg1)
e1:SetOperation(c33502804.op1)
c:RegisterEffect(e1)
--
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(33502804,1))
e2:SetCategory(CATEGORY_TODECK+CATEGORY_ATKCHANGE)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetCode(EVENT_SPSUMMON_SUCCESS)
e2:SetCondition(c33502804.con2)
e2:SetTarget(c33502804.tg2)
e2:SetOperation(c33502804.op2)
c:RegisterEffect(e2)
--
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e3:SetCode(EVENT_CHAINING)
e3:SetRange(LOCATION_SZONE)
e3:SetCondition(c33502804.con3)
e3:SetOperation(c33502804.op3)
c:RegisterEffect(e3)
--
end
--
function c33502804.cost1(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return c:IsLocation(LOCATION_HAND)
and Duel.GetLocationCount(tp,LOCATION_SZONE)>0
and not c:IsForbidden() end
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEUP,true)
local e1_1=Effect.CreateEffect(c)
e1_1:SetType(EFFECT_TYPE_SINGLE)
e1_1:SetCode(EFFECT_CHANGE_TYPE)
e1_1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1_1:SetValue(TYPE_SPELL+TYPE_CONTINUOUS)
e1_1:SetReset(RESET_EVENT+RESETS_STANDARD-RESET_TURN_SET)
c:RegisterEffect(e1_1)
end
--
function c33502804.tfilter1(c)
return aux.IsCodeListed(c,33502800) and c:IsAbleToHand()
end
function c33502804.tg1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c33502804.tfilter1,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
Duel.SetOperationInfo(0,CATEGORY_TODECK,nil,1,tp,LOCATION_HAND)
end
--
function c33502804.op1(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local lg=Duel.SelectMatchingCard(tp,c33502804.tfilter1,tp,LOCATION_DECK,0,1,1,nil)
if lg:GetCount()>0 and Duel.SendtoHand(lg,nil,REASON_EFFECT)>0 then
Duel.ConfirmCards(1-tp,lg)
Duel.ShuffleHand(tp)
if Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,LOCATION_HAND,0,1,nil) then
Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local sg=Duel.SelectMatchingCard(tp,Card.IsAbleToDeck,tp,LOCATION_HAND,0,1,1,nil)
Duel.SendtoDeck(sg,nil,2,REASON_EFFECT)
end
end
end
--
function c33502804.con2(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_RITUAL)
end
--
function c33502804.tg2(e,tp,eg,ep,ev,re,r,rp,chk)
local sg=Group.CreateGroup()
if chk==0 then
if Duel.GetFieldGroupCount(tp,0,LOCATION_DECK)<3 then return false end
sg=Duel.GetDecktopGroup(1-tp,3)
return sg:FilterCount(Card.IsAbleToDeck,nil)==3
end
Duel.SetOperationInfo(0,CATEGORY_TODECK,sg,sg:GetCount(),0,0)
end
--
function c33502804.op2(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if Duel.GetFieldGroupCount(tp,0,LOCATION_DECK)<3 then return end
local sg=Duel.GetDecktopGroup(1-tp,3)
if Duel.SendtoDeck(sg,tp,2,REASON_EFFECT)>0 then
if c:IsFaceup() and c:IsRelateToEffect(e) then
Duel.BreakEffect()
local e2_1=Effect.CreateEffect(c)
e2_1:SetType(EFFECT_TYPE_SINGLE)
e2_1:SetCode(EFFECT_UPDATE_ATTACK)
e2_1:SetValue(800)
e2_1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e2_1)
local e2_2=Effect.CreateEffect(c)
e2_2:SetType(EFFECT_TYPE_SINGLE)
e2_2:SetCode(EFFECT_IMMUNE_EFFECT)
e2_2:SetValue(c33502804.efilter2_2)
e2_2:SetReset(RESET_EVENT+0x1fe0000+RESET_PHASE+PHASE_END)
c:RegisterEffect(e2_2)
end
end
end
function c33502804.efilter2_2(e,re)
return re:GetOwner()~=e:GetOwner()
end
--
function c33502804.con3(e)
local c=e:GetHandler()
return c:IsType(TYPE_SPELL) and c:IsType(TYPE_CONTINUOUS)
end
--
function c33502804.op3(e,tp,eg,ep,ev,re,r,rp)
Duel.SetChainLimit(aux.FALSE)
end
--
--魔女之旅·归忆碎片
function c33502810.initial_effect(c)
--
aux.AddCodeList(c,33502800)
aux.AddCodeList(c,75640050)
--
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetCode(EFFECT_TRAP_ACT_IN_HAND)
e0:SetCondition(c33502810.handcon)
c:RegisterEffect(e0)
--
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetHintTiming(0,TIMING_END_PHASE)
c:RegisterEffect(e1)
--
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(33502810,0))
e2:SetCategory(CATEGORY_TOGRAVE)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetRange(LOCATION_SZONE)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetHintTiming(0,TIMING_END_PHASE)
e2:SetCountLimit(1)
e2:SetTarget(c33502810.tg2)
e2:SetOperation(c33502810.op2)
c:RegisterEffect(e2)
--
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(33502810,1))
e3:SetCategory(CATEGORY_SEARCH+CATEGORY_TOHAND)
e3:SetType(EFFECT_TYPE_QUICK_O)
e3:SetRange(LOCATION_SZONE)
e3:SetCode(EVENT_FREE_CHAIN)
e3:SetHintTiming(0,TIMING_END_PHASE)
e3:SetCountLimit(1,33502810)
e3:SetLabel(0)
e3:SetCost(c33502810.cost3)
e3:SetTarget(c33502810.tg3)
e3:SetOperation(c33502810.op3)
c:RegisterEffect(e3)
--
end
--
function c33502810.handcon(e)
return Duel.GetFieldGroupCount(e:GetHandlerPlayer(),0,LOCATION_EXTRA)<1
end
--
function c33502810.tfilter1_1(c,rc)
return c:GetRitualLevel(rc)>=rc:GetLevel()
end
function c33502810.tfilter1_2(c)
return aux.IsCodeListed(c,33502800) and c:IsType(TYPE_SPELL) and c:IsType(TYPE_CONTINUOUS) and c:IsAbleToGrave()
end
function c33502810.tfilter1(c,e,tp,mg)
if bit.band(c:GetType(),0x81)~=0x81
or not aux.IsCodeListed(c,33502800)
or not c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_RITUAL,tp,false,true) then return false end
local lg=mg:Filter(Card.IsCanBeRitualMaterial,c,c)
return mg:IsExists(c33502810.tfilter1_1,1,nil,c)
or Duel.IsExistingMatchingCard(c33502810.tfilter1_2,tp,LOCATION_SZONE,0,1,nil)
end
function c33502810.CheckFilter(c)
return c:IsAbleToGrave() and c:IsCode(33502800)
end
function c33502810.tg2(e,tp,eg,ep,ev,re,r,rp,chk)
local mg=Duel.GetRitualMaterial(tp)
if chk==0 then return Duel.IsExistingMatchingCard(c33502810.CheckFilter,tp,LOCATION_DECK,0,1,nil)
and Duel.IsExistingMatchingCard(c33502810.tfilter1,tp,LOCATION_HAND,0,1,nil,e,tp,mg) end
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,tp,LOCATION_DECK)
end
--
function c33502810.ofilter1(c,e,tp,mg,tc)
local b1=c:IsLocation(LOCATION_MZONE+LOCATION_HAND)
and c:GetRitualLevel(tc)>=tc:GetLevel()
local b2=c:IsLocation(LOCATION_SZONE)
and aux.IsCodeListed(c,33502800) and c:IsType(TYPE_SPELL) and c:IsType(TYPE_CONTINUOUS) and c:IsAbleToGrave()
return (b1 or b2) and Duel.GetMZoneCount(tp,c)>0
end
function c33502810.op2(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,c33502810.CheckFilter,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()<1 then return end
if Duel.SendtoGrave(g,REASON_EFFECT)<1 then return end
local mg=Duel.GetRitualMaterial(tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg=Duel.SelectMatchingCard(tp,c33502810.tfilter1,tp,LOCATION_HAND,0,1,1,nil,e,tp,mg)
if sg:GetCount()>0 then
local tc=sg:GetFirst()
mg=mg:Filter(Card.IsCanBeRitualMaterial,tc,tc)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local lg=Duel.SelectMatchingCard(tp,c33502810.ofilter1,tp,LOCATION_ONFIELD+LOCATION_HAND,0,1,1,tc,e,tp,mg,tc)
if lg:GetCount()<1 then return end
tc:SetMaterial(lg)
local lc=lg:GetFirst()
local ng=Group.CreateGroup()
while lc do
if lc:IsType(TYPE_MONSTER) then ng:AddCard(lc) end
lc=lg:GetNext()
end
if ng:GetCount()>0 then
lg:Sub(ng)
Duel.ReleaseRitualMaterial(ng)
end
if lg:GetCount()>0 then
Duel.SendtoGrave(lg,REASON_EFFECT)
end
Duel.BreakEffect()
Duel.SpecialSummon(tc,SUMMON_TYPE_RITUAL,tp,tp,false,true,POS_FACEUP)
tc:CompleteProcedure()
local e1_1=Effect.CreateEffect(e:GetHandler())
e1_1:SetType(EFFECT_TYPE_SINGLE)
e1_1:SetCode(EFFECT_CHANGE_CODE)
e1_1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1_1:SetValue(75640050)
e1_1:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e1_1)
end
end
--
function c33502810.cost3(e,tp,eg,ep,ev,re,r,rp,chk)
e:SetLabel(100)
if chk==0 then return true end
end
--
function c33502810.tfilter3_1(c,tp)
return aux.IsCodeListed(c,33502800) and c:IsType(TYPE_SPELL) and c:IsType(TYPE_CONTINUOUS) and c:IsAbleToHandAsCost()
and Duel.IsExistingMatchingCard(c33502810.tfilter3_2,tp,LOCATION_DECK,0,1,nil,c)
end
function c33502810.tfilter3_2(c,tc)
return aux.IsCodeListed(c,33502800) and c:IsAbleToHand() and c:IsType(TYPE_MONSTER) and c:IsType(TYPE_RITUAL) and not c:IsCode(tc:GetCode())
end
function c33502810.tg3(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
if e:GetLabel()~=100 then return false end
e:SetLabel(0)
return Duel.IsExistingMatchingCard(c33502810.tfilter3_1,tp,LOCATION_SZONE,0,1,nil,tp)
end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RTOHAND)
local sg=Duel.SelectMatchingCard(tp,c33502810.tfilter3_1,tp,LOCATION_SZONE,0,1,1,nil,tp)
local tc=sg:GetFirst()
Duel.SendtoHand(tc,nil,REASON_COST)
Duel.SetTargetCard(tc)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end
--
function c33502810.op3(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c33502810.tfilter3_2,tp,LOCATION_DECK,0,1,1,nil,tc)
if g:GetCount()<1 then return end
if Duel.SendtoHand(g,nil,REASON_EFFECT)<1 then return end
Duel.ConfirmCards(1-tp,g)
if c:GetOriginalCode()==33502801 then
local e3_3=Effect.CreateEffect(c)
e3_3:SetDescription(aux.Stringid(33502801,2))
e3_3:SetProperty(EFFECT_FLAG_CLIENT_HINT)
e3_3:SetType(EFFECT_TYPE_FIELD)
e3_3:SetCode(EFFECT_INDESTRUCTABLE_EFFECT)
e3_3:SetRange(LOCATION_SZONE)
e3_3:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE)
e3_3:SetValue(1)
e3_3:SetTarget(c33502810.tg3_3)
e3_3:SetReset(RESET_EVENT+0x1fe0000)
c:RegisterEffect(e3_3)
end
if c:GetOriginalCode()==33502802 then
local e3_4=Effect.CreateEffect(c)
e3_4:SetDescription(aux.Stringid(33502801,3))
e3_4:SetProperty(EFFECT_FLAG_CLIENT_HINT)
e3_4:SetType(EFFECT_TYPE_FIELD)
e3_4:SetCode(EFFECT_CANNOT_TO_DECK)
e3_4:SetRange(LOCATION_SZONE)
e3_4:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e3_4:SetTargetRange(0,1)
e3_4:SetTarget(function(e,c) return c:IsOnField() end)
e3_4:SetReset(RESET_EVENT+0x1fe0000)
c:RegisterEffect(e3_4)
end
if c:GetOriginalCode()==33502803 then
local e3_5=Effect.CreateEffect(c)
e3_5:SetDescription(aux.Stringid(33502801,4))
e3_5:SetProperty(EFFECT_FLAG_CLIENT_HINT)
e3_5:SetType(EFFECT_TYPE_FIELD)
e3_5:SetCode(EFFECT_CANNOT_REMOVE)
e3_5:SetRange(LOCATION_SZONE)
e3_5:SetTargetRange(0,LOCATION_GRAVE)
e3_5:SetReset(RESET_EVENT+0x1fe0000)
c:RegisterEffect(e3_5)
end
if c:GetOriginalCode()==33502804 then
local e3_6=Effect.CreateEffect(c)
e3_6:SetDescription(aux.Stringid(33502801,5))
e3_6:SetProperty(EFFECT_FLAG_CLIENT_HINT)
e3_6:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e3_6:SetCode(EVENT_CHAINING)
e3_6:SetRange(LOCATION_SZONE)
e3_6:SetOperation(c33502810.op3_6)
e3_6:SetReset(RESET_EVENT+0x1fe0000)
c:RegisterEffect(e3_6)
end
end
function c33502810.tg3_3(e,c)
return e:GetHandler():GetColumnGroup():IsContains(c)
end
function c33502810.op3_6(e,tp,eg,ep,ev,re,r,rp)
Duel.SetChainLimit(aux.FALSE)
end
--
--以斯拉的暗幕 黑帘计划 --时终流的溯行者
if not pcall(function() require("expansions/script/c65010000") end) then require("script/c65010000") end function c65011001.initial_effect(c)
local m,cm=rscf.DefineCard(65011001,"Israel") --tograve
if rsisr then return end local e1=Effect.CreateEffect(c)
rsisr = cm e1:SetCategory(CATEGORY_SEARCH+CATEGORY_TOHAND)
rscf.DefineSet(rsisr,"Israel") e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
function rsisr.spfilter(c,e,tp) e1:SetCode(EVENT_TO_GRAVE)
return c:IsCanBeSpecialSummoned(e,0,1-tp,false,false) and Duel.GetLocationCount(1-tp,LOCATION_MZONE)>0 e1:SetCountLimit(1,65011001)
end e1:SetCondition(c65011001.thcon)
function rsisr.spop(g,tp,pos) e1:SetTarget(c65011001.thtg)
pos = pos or POS_FACEUP e1:SetOperation(c65011001.thop)
return rssf.SpecialSummon(g,0,1-tp,1-tp,false,false,pos,nil,{"leave",LOCATION_REMOVED }) c:RegisterEffect(e1)
end --discard
function rsisr.spops(e,tp) local e2=Effect.CreateEffect(c)
rsisr.drawlimit(e,tp) e2:SetCategory(CATEGORY_SEARCH+CATEGORY_TOHAND)
local c=rscf.GetSelf(e) e2:SetType(EFFECT_TYPE_IGNITION)
return not c and 0 or rsisr.spop(c,tp) e2:SetRange(LOCATION_HAND)
e2:SetCountLimit(1,65011001)
e2:SetCost(c65011001.discost)
e2:SetTarget(c65011001.distg)
e2:SetOperation(c65011001.disop)
c:RegisterEffect(e2)
end end
function rsisr.drawlimit(e,tp,reset) function c65011001.counterfilter(c)
reset = reset or rsreset.pend return not (c:IsLevelBelow(6) and c:IsType(TYPE_FUSION))
local e1=rsef.FV_LIMIT_PLAYER({e:GetHandler(),tp},"dr",nil,nil,{1,0},nil,reset)
return e1
end end
function rsisr.exlcon(e) function c65011001.thcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(cm.exlfilter,e:GetHandlerPlayer(),LOCATION_MZONE,0,1,nil) return e:GetHandler():IsReason(REASON_EFFECT)
end end
function cm.exlfilter(c) function c65011001.thfilter(c)
return c:IsFaceup() and rsisr.IsSet(c) and c:IsType(TYPE_LINK) return c:IsSetCard(0x3da2) and c:IsAbleToHand()
end end
----------------------------------- function c65011001.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
function cm.initial_effect(c) if chk==0 then return Duel.IsExistingMatchingCard(c65011001.thfilter,tp,LOCATION_DECK,0,1,nil) end
local e1=rsef.ACT(c,nil,nil,{1,m,1},"sp",nil,nil,nil,rsop.target(cm.aspfilter,"sp",LOCATION_DECK),cm.act) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
local e2=rsef.I(c,{m,0},{1,m+100},nil,nil,LOCATION_SZONE,rscon.excard2(rsisr.IsSet,LOCATION_MZONE,LOCATION_MZONE),rscost.cost(cm.rmcfilter,"rm",LOCATION_GRAVE),nil,cm.rmop)
local e3=rsef.RegisterOPTurn(c,e2,cm.quickcon)
end end
function cm.aspfilter(c,e,tp) function c65011001.thop(e,tp,eg,ep,ev,re,r,rp)
return rsisr.spfilter(c,e,tp) and rsisr.IsSet(c) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c65011001.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
end end
function cm.quickcon(e,tp)
return Duel.IsExistingMatchingCard(cm.qfilter,tp,LOCATION_MZONE,0,1,nil) function c65011001.discost(e,tp,eg,ep,ev,re,r,rp,chk)
end if chk==0 then return e:GetHandler():IsDiscardable() end
function cm.qfilter(c) Duel.SendtoGrave(e:GetHandler(),REASON_COST+REASON_DISCARD)
local mat=c:GetMaterial()
return c:IsFaceup() and rsisr.IsSet(c) and c:IsType(TYPE_LINK) and #mat>=3
end
function cm.rmcfilter(c)
return rsisr.IsSetM(c) and c:IsAbleToRemoveAsCost()
end
function cm.rmop(e,tp)
local e1=rsef.FV_REDIRECT({e:GetHandler(),tp},"tg",LOCATION_REMOVED,cm.rmtg,{0xff,0xff},nil,rsreset.pend)
end end
function cm.rmtg(e,c) function c65011001.disfilter(c)
return c:GetOwner()~=e:GetHandlerPlayer() return c:IsSetCard(0x46) and c:IsType(TYPE_SPELL) and c:IsAbleToHand()
end end
function cm.act(e,tp) function c65011001.distg(e,tp,eg,ep,ev,re,r,rp,chk)
if not rscf.GetSelf(e) then return end if chk==0 then return Duel.IsExistingMatchingCard(c65011001.disfilter,tp,LOCATION_DECK,0,1,nil) end
rsop.SelectSolve(HINTMSG_SPSUMMON,tp,rsisr.spfilter,tp,LOCATION_DECK,0,1,1,nil,cm.spfun,e,tp) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
rsisr.drawlimit(e,tp)
end end
function cm.spfun(g,e,tp) function c65011001.disop(e,tp,eg,ep,ev,re,r,rp)
Duel.ConfirmCards(1-tp,g) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
Duel.SpecialSummon(g,0,1-tp,1-tp,false,false,POS_FACEUP) local g=Duel.SelectMatchingCard(tp,c65011001.disfilter,tp,LOCATION_DECK,0,1,1,nil)
return true if g:GetCount()>0 and Duel.SendtoHand(g,nil,REASON_EFFECT)~=0 then
Duel.ConfirmCards(1-tp,g)
local tc=g:GetFirst()
if not tc:IsSetCard(0x3da2) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetTargetRange(1,0)
e1:SetTarget(c65011001.aclimit)
e1:SetLabel(tc:GetCode())
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
end
end
end end
function c65011001.aclimit(e,re,tp)
return re:GetHandler():IsCode(e:GetLabel())
end
\ No newline at end of file
--以斯拉的复仇 天帝之怒 --时终塔的幽禁者
if not pcall(function() require("expansions/script/c65011001") end) then require("script/c65011001") end function c65011002.initial_effect(c)
local m,cm=rscf.DefineCard(65011002,"Israel") --tograve
function cm.initial_effect(c) local e1=Effect.CreateEffect(c)
local e1=rsef.ACT(c,nil,nil,{1,m,1},nil,"tg",nil,nil,rstg.target(rscf.fufilter(rsisr.IsSet),nil,LOCATION_MZONE,LOCATION_MZONE),cm.act) e1:SetCategory(CATEGORY_SEARCH+CATEGORY_TOGRAVE)
local e2=rsef.FTO(c,EVENT_PHASE+PHASE_BATTLE_START,nil,{1,m+100},"th",nil,LOCATION_SZONE,rscon.turno,nil,rsop.target(cm.thfilter,"th",LOCATION_MZONE,LOCATION_MZONE),cm.thop) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
local e5=rsef.RegisterClone(c,e2,"code",EVENT_PHASE+PHASE_END) e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
local e3=rsef.FV_LIMIT_PLAYER(c,"act",cm.actlimit,nil,{1,0},cm.acon) e1:SetCode(EVENT_TO_GRAVE)
local e4=rsef.FV_LIMIT_PLAYER(c,"act",cm.actlimit,nil,{0,1},cm.acon2) e1:SetCountLimit(1,65011002)
end e1:SetCondition(c65011002.thcon)
function cm.actlimit(e,re) e1:SetTarget(c65011002.thtg)
return re:GetHandler():IsLocation(LOCATION_MZONE) e1:SetOperation(c65011002.thop)
end c:RegisterEffect(e1)
function cm.acon(e,tp) --discard
return rscon.excard2(rsisr.IsSet,LOCATION_MZONE)(e,tp) local e2=Effect.CreateEffect(c)
end e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
function cm.acon2(e,tp) e2:SetType(EFFECT_TYPE_IGNITION)
return rscon.excard2(rsisr.IsSet,0,LOCATION_MZONE)(e,tp) e2:SetRange(LOCATION_HAND)
end e2:SetCountLimit(1,65011002)
function cm.thfilter(c) e2:SetCost(c65011002.discost)
return Duel.IsPlayerCanSendtoHand(c:GetControler(),c) and c:IsFaceup() and not rsisr.IsSet(c) e2:SetTarget(c65011002.distg)
end e2:SetOperation(c65011002.disop)
function cm.thop(e,tp) c:RegisterEffect(e2)
local c=rscf.GetSelf(e) end
if not c then return end function c65011002.thcon(e,tp,eg,ep,ev,re,r,rp)
for p=0,1 do return e:GetHandler():IsReason(REASON_EFFECT)
local g=Duel.GetMatchingGroup(cm.thfilter,p,LOCATION_MZONE,0,nil) end
local tg=g:GetMaxGroup(Card.GetAttack) function c65011002.thfilter(c)
if #tg>0 then return c:IsSetCard(0x3da2) and c:IsAbleToGrave()
rsgf.SelectToHand(tg,p,aux.TRUE,1,1,nil,{ nil,REASON_RULE }) end
end function c65011002.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c65011002.thfilter,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,tp,LOCATION_DECK)
end
function c65011002.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,c65011002.thfilter,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()>0 then
Duel.SendtoGrave(g,REASON_EFFECT)
end end
end end
function cm.act(e,tp)
local c=rscf.GetSelf(e) function c65011002.discost(e,tp,eg,ep,ev,re,r,rp,chk)
local tc=rscf.GetTargetCard() if chk==0 then return e:GetHandler():IsDiscardable() end
if not c or not tc then return end Duel.SendtoGrave(e:GetHandler(),REASON_COST+REASON_DISCARD)
local e1,e2=rsef.SV_LIMIT({c,tc},"ress,resns",nil,nil,rsreset.est)
local e3,e4,e5,e6=rsef.SV_CANNOT_BE_MATERIAL({c,tc},"fus,syn,xyz,link",nil,nil,rsreset.est)
end end
function c65011002.disfilter(c,e,tp)
return c:IsSetCard(0x3da2) and c:IsType(TYPE_MONSTER) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c65011002.distg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c65011002.disfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_GRAVE)
end
function c65011002.disop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
local ct=2
if Duel.IsPlayerAffectedByEffect(tp,59822133) or Duel.GetLocationCount(tp,LOCATION_MZONE)==1 then ct=1 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c65011002.disfilter,tp,LOCATION_GRAVE,0,1,ct,nil,e,tp)
if g:GetCount()>0 then
Duel.HintSelection(g)
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
end
\ No newline at end of file
--以斯拉的任性 方舟行动 --时终语的沉迷者
if not pcall(function() require("expansions/script/c65011001") end) then require("script/c65011001") end function c65011003.initial_effect(c)
local m,cm=rscf.DefineCard(65011003,"Israel") --tograve
function cm.initial_effect(c) local e1=Effect.CreateEffect(c)
local e1=rsef.ACT(c,nil,nil,{1,m,1},"se,th") e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetOperation(cm.act) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
local e2=rsef.I(c,{m,0},{1,m+100},nil,nil,LOCATION_SZONE,cm.lcon,rscost.cost(cm.cfilter,"tg",LOCATION_DECK),nil,cm.lop) e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP)
local e3,e4=rsef.FV_LIMIT(c,"dis,atk",nil,cm.tg,{ LOCATION_MZONE,LOCATION_MZONE }) e1:SetCode(EVENT_TO_GRAVE)
if cm.switch then return end e1:SetCountLimit(1,65011003)
cm.switch = true e1:SetCondition(c65011003.thcon)
local e5=rsef.FC({c,0},EVENT_SPSUMMON_SUCCESS,nil,nil,nil,nil,cm.regcon,cm.regop) e1:SetTarget(c65011003.thtg)
end e1:SetOperation(c65011003.thop)
function cm.matfilter(c) c:RegisterEffect(e1)
local mat=c:GetMaterial() --discard
return c:GetSummonType()&(SUMMON_TYPE_FUSION+SUMMON_TYPE_SYNCHRO+SUMMON_TYPE_XYZ+SUMMON_TYPE_LINK)~=0 and c:GetSummonLocation()==LOCATION_EXTRA and mat and mat:IsExists(cm.matfilter2,1,nil) local e2=Effect.CreateEffect(c)
end e2:SetCategory(CATEGORY_TOGRAVE+CATEGORY_DRAW)
function cm.matfilter2(c) e2:SetType(EFFECT_TYPE_IGNITION)
return rsisr.IsPreSet(c) and c:GetPreviousControler()~=c:GetOwner() e2:SetRange(LOCATION_HAND)
e2:SetCountLimit(1,65011003)
e2:SetCost(c65011003.discost)
e2:SetTarget(c65011003.distg)
e2:SetOperation(c65011003.disop)
c:RegisterEffect(e2)
end end
function cm.regcon(e,tp,eg) function c65011003.thcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(cm.matfilter,1,nil) return e:GetHandler():IsReason(REASON_EFFECT)
end end
function cm.regop(e,tp,eg) function c65011003.filter(c,e,tp)
local rg=eg:Filter(cm.matfilter,nil) return Duel.IsExistingMatchingCard(c65011003.spfilter,tp,LOCATION_DECK,0,1,nil,e,tp,c:GetAttribute()) and Duel.GetMZoneCount(tp)>0
for tc in aux.Next(rg) do
tc:RegisterFlagEffect(m+100,rsreset.est,0,1)
end
end end
function cm.tg(e,c) function c65011003.spfilter(c,e,tp,att)
if rsisr.IsSet(c) and c:GetOwner()~=c:GetControler() then return true end return c:IsSetCard(0x3da2) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and not c:IsAttribute(att)
return c:GetFlagEffect(m+100)>0
end
function cm.cfilter(c)
return c:IsAbleToGraveAsCost() and rsisr.IsSetM(c)
end end
function cm.lcon(e,tp) function c65011003.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
return e:GetHandler():GetFlagEffect(m)<=0 if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c65011003.filter(chkc,e,tp) end
if chk==0 then return Duel.IsExistingTarget(c65011003.filter,tp,LOCATION_MZONE,0,1,nil,e,tp) end
Duel.SelectTarget(tp,c65011003.filter,tp,LOCATION_MZONE,0,1,1,nil,e,tp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK)
end end
function cm.lop(e,tp) function c65011003.thop(e,tp,eg,ep,ev,re,r,rp)
local c=rscf.GetSelf(e) local tc=Duel.GetFirstTarget()
if not c then return end if not tc:IsRelateToEffect(e) or Duel.GetLocationCount(tp,LOCATION_MZONE)<1 then return end
local e1=Effect.CreateEffect(c) local g=Duel.SelectMatchingCard(tp,c65011003.spfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp,tc:GetAttribute())
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) if g:GetCount()>0 then
e1:SetCode(EVENT_CHAINING) Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
e1:SetOperation(cm.chainop)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
end
function cm.chainop(e,tp,eg,ep,ev,re,r,rp)
local rc=re:GetHandler()
if re:IsActiveType(TYPE_MONSTER) and rsisr.IsSetM(rc) and rc:IsType(TYPE_LINK) and ep==tp then
Duel.SetChainLimit(cm.chainlm)
end end
end end
function cm.chainlm(e,rp,tp)
return tp==rp function c65011003.discost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsDiscardable() end
Duel.SendtoGrave(e:GetHandler(),REASON_COST+REASON_DISCARD)
end
function c65011003.disfilter(c)
return c:IsSetCard(0x3da2) and c:IsAbleToGrave()
end end
function cm.thfilter(c) function c65011003.distg(e,tp,eg,ep,ev,re,r,rp,chk)
return rsisr.IsSetM(c) and c:IsAbleToHand() if chk==0 then return Duel.IsExistingMatchingCard(c65011003.disfilter,tp,LOCATION_HAND,0,1,nil) and Duel.IsPlayerCanDraw(tp,2) end
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,tp,LOCATION_HAND)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,2)
end end
function cm.act(e,tp) function c65011003.disop(e,tp,eg,ep,ev,re,r,rp)
local c=rscf.GetSelf(e) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
if not c then return end local g=Duel.SelectMatchingCard(tp,c65011003.disfilter,tp,LOCATION_HAND,0,1,1,nil)
rsop.SelectOC(rshint.wth) if g:GetCount()>0 then
local ct,og,tc=rsop.SelectToHand(tp,cm.thfilter,tp,LOCATION_DECK,0,1,1,nil,{}) if Duel.SendtoGrave(g,REASON_EFFECT)~=0 then
if tc and tc:IsLocation(LOCATION_HAND) then Duel.Draw(tp,2,REASON_EFFECT)
c:RegisterFlagEffect(m,rsreset.est_pend,0,1) end
end end
end end
\ No newline at end of file
--以斯拉的激斗 六日鏖战 --时终夜的坠落者
if not pcall(function() require("expansions/script/c65011001") end) then require("script/c65011001") end function c65011004.initial_effect(c)
local m,cm=rscf.DefineCard(65011004,"Israel") --tograve
function cm.initial_effect(c) local e1=Effect.CreateEffect(c)
local e1=rsef.ACT(c,nil,nil,{1,m,1}) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
local e2=rsef.FV_INDESTRUCTABLE(c,"ct",rsval.indct("effect"),cm.tg,{LOCATION_ONFIELD,0}) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
--negate e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
local e3=Effect.CreateEffect(c) e1:SetCode(EVENT_TO_GRAVE)
e3:SetDescription(rshint.neg) e1:SetCountLimit(1,65011004)
e3:SetCategory(CATEGORY_NEGATE+CATEGORY_DESTROY) e1:SetCondition(c65011004.thcon)
e3:SetType(EFFECT_TYPE_QUICK_O) e1:SetTarget(c65011004.thtg)
e3:SetProperty(EFFECT_FLAG_DAMAGE_STEP) e1:SetOperation(c65011004.thop)
e3:SetCode(EVENT_CHAINING) c:RegisterEffect(e1)
e3:SetRange(LOCATION_MZONE) --discard
e3:SetCountLimit(1,m+100) local e2=Effect.CreateEffect(c)
e3:SetCondition(cm.negcon) e2:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_FUSION_SUMMON)
e3:SetTarget(cm.negtg) e2:SetType(EFFECT_TYPE_QUICK_O)
e3:SetOperation(cm.negop) e2:SetCode(EVENT_FREE_CHAIN)
c:RegisterEffect(e3) e2:SetRange(LOCATION_HAND)
local e4=rsef.FC(c,EVENT_BE_MATERIAL,nil,nil,nil,LOCATION_SZONE,cm.regcon,cm.regop) e2:SetCountLimit(1,65011004)
e2:SetCost(c65011004.discost)
e2:SetTarget(c65011004.distg)
e2:SetOperation(c65011004.disop)
c:RegisterEffect(e2)
end end
function cm.regcon(e,tp,eg,ep,ev,re,r,rp) function c65011004.thcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(cm.cfilter2,1,nil) and r & (REASON_FUSION+REASON_SYNCHRO+REASON_XYZ+REASON_LINK) ~=0 return e:GetHandler():IsReason(REASON_EFFECT)
end end
function cm.cfilter2(c) function c65011004.thfilter(c,e,tp)
local rc=c:GetReasonCard() return c:IsSetCard(0x3da2) and c:IsType(TYPE_MONSTER) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
return rc:GetSummonLocation()==LOCATION_EXTRA and c:GetOwner()~=c:GetPreviousControler() and rsisr.IsPreSet(c)
end end
function cm.regop(e,tp,eg) function c65011004.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() if chk==0 then return Duel.IsExistingMatchingCard(c65011004.thfilter,tp,LOCATION_HAND+LOCATION_GRAVE,0,1,nil,e,tp) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 end
local rg=eg:Filter(cm.cfilter2,nil) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND+LOCATION_GRAVE)
for tc in aux.Next(rg) do
local rc=tc:GetReasonCard()
if rc:GetFlagEffect(m)<=0 then
rc:RegisterFlagEffect(m,rsreset.est,0,1)
local e1=rsef.STF(rc,EVENT_SPSUMMON_SUCCESS,nil,nil,"rm","cd",nil,nil,rsop.target(aux.TRUE,"rm"),cm.rmop,rsreset.est)
if not rc:IsType(TYPE_EFFECT) then
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_ADD_TYPE)
e2:SetValue(TYPE_EFFECT)
e2:SetReset(RESET_EVENT+RESETS_STANDARD)
rc:RegisterEffect(e2,true)
end
end
end
end end
function cm.rmop(e,tp) function c65011004.thop(e,tp,eg,ep,ev,re,r,rp)
local c=rscf.GetSelf(e) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
if c then local g=Duel.SelectMatchingCard(tp,c65011004.thfilter,tp,LOCATION_HAND+LOCATION_GRAVE,0,1,1,nil,e,tp)
rshint.Card(m) if g:GetCount()>0 then
Duel.Remove(c,POS_FACEUP,REASON_EFFECT) Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end end
end
function cm.tg(e,c)
return rsisr.IsSet(c) and c~=e:GetHandler()
end end
function cm.negcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() function c65011004.discost(e,tp,eg,ep,ev,re,r,rp,chk)
return rp~=tp and not c:IsStatus(STATUS_BATTLE_DESTROYED) and Duel.IsChainNegatable(ev) and Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_MZONE,0,1,nil) if chk==0 then return e:GetHandler():IsDiscardable() end
Duel.SendtoGrave(e:GetHandler(),REASON_COST+REASON_DISCARD)
end end
function cm.cfilter(c) function c65011004.filter1(c,e)
return c:IsFaceup() and rsisr.IsSet(c) and c:IsType(TYPE_LINK) return not c:IsImmuneToEffect(e)
end end
function cm.desfilter(c) function c65011004.filter2(c,e,tp,m,f,chkf)
return c:IsType(TYPE_MONSTER) and c:IsAttribute(ATTRIBUTE_FIRE) and not c:IsStatus(STATUS_BATTLE_DESTROYED) return c:IsType(TYPE_FUSION) and (not f or f(c))
and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_FUSION,tp,false,false) and c:CheckFusionMaterial(m,nil,chkf) and c:IsSetCard(0x33da2)
end end
function cm.negtg(e,tp,eg,ep,ev,re,r,rp,chk) function c65011004.distg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then
Duel.SetOperationInfo(0,CATEGORY_NEGATE,eg,1,0,0) local chkf=tp
local g=Duel.GetFieldGroup(tp,0,LOCATION_MZONE) local mg1=Duel.GetFusionMaterial(tp):Filter(aux.TRUE,e:GetHandler())
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,0,0,0) local res=Duel.IsExistingMatchingCard(c65011004.filter2,tp,LOCATION_EXTRA,0,1,nil,e,tp,mg1,nil,chkf)
if not res then
local ce=Duel.GetChainMaterial(tp)
if ce~=nil then
local fgroup=ce:GetTarget()
local mg2=fgroup(ce,e,tp)
local mf=ce:GetValue()
res=Duel.IsExistingMatchingCard(c65011004.filter2,tp,LOCATION_EXTRA,0,1,nil,e,tp,mg2,mf,chkf)
end
end
return res
end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA)
end end
function cm.negop(e,tp,eg,ep,ev,re,r,rp) function c65011004.disop(e,tp,eg,ep,ev,re,r,rp)
if Duel.NegateActivation(ev) then local chkf=tp
rsop.SelectOC("des") local mg1=Duel.GetFusionMaterial(tp):Filter(c65011004.filter1,nil,e)
rsop.SelectDestroy(tp,aux.TRUE,tp,0,LOCATION_MZONE,1,1,nil,{}) local sg1=Duel.GetMatchingGroup(c65011004.filter2,tp,LOCATION_EXTRA,0,nil,e,tp,mg1,nil,chkf)
local mg2=nil
local sg2=nil
local ce=Duel.GetChainMaterial(tp)
if ce~=nil then
local fgroup=ce:GetTarget()
mg2=fgroup(ce,e,tp)
local mf=ce:GetValue()
sg2=Duel.GetMatchingGroup(c65011004.filter2,tp,LOCATION_EXTRA,0,nil,e,tp,mg2,mf,chkf)
end
if sg1:GetCount()>0 or (sg2~=nil and sg2:GetCount()>0) then
local sg=sg1:Clone()
if sg2 then sg:Merge(sg2) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local tg=sg:Select(tp,1,1,nil)
local tc=tg:GetFirst()
if sg1:IsContains(tc) and (sg2==nil or not sg2:IsContains(tc) or not Duel.SelectYesNo(tp,ce:GetDescription())) then
local mat1=Duel.SelectFusionMaterial(tp,tc,mg1,nil,chkf)
tc:SetMaterial(mat1)
Duel.SendtoGrave(mat1,REASON_EFFECT+REASON_MATERIAL+REASON_FUSION)
Duel.BreakEffect()
Duel.SpecialSummon(tc,SUMMON_TYPE_FUSION,tp,tp,false,false,POS_FACEUP)
else
local mat2=Duel.SelectFusionMaterial(tp,tc,mg2,nil,chkf)
local fop=ce:GetOperation()
fop(ce,e,tp,tc,mat2)
end
tc:CompleteProcedure()
end end
end end
\ No newline at end of file
--无民之国 以斯拉艾尔 --时终咒的封闭者
if not pcall(function() require("expansions/script/c65011001") end) then require("script/c65011001") end function c65011005.initial_effect(c)
local m,cm=rscf.DefineCard(65011005,"Israel") --tograve
function cm.initial_effect(c) local e1=Effect.CreateEffect(c)
local e1=rsef.ACT(c) e1:SetCategory(CATEGORY_TOHAND)
local e2=rsef.FV_CANNOT_BE_TARGET(c,"effect",aux.tgoval,cm.tg,{LOCATION_ONFIELD,LOCATION_ONFIELD },cm.con) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
local e3=rsef.RegisterClone(c,e2,"val",aux.tgsval,"con",cm.con2) e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
local e4=rsef.I(c,{m,0},{1,m},nil,"tg",LOCATION_SZONE,cm.setcon,nil,rstg.target(rscf.fufilter(rsisr.IsSet),nil,LOCATION_MZONE,LOCATION_MZONE),cm.limitop) e1:SetCode(EVENT_TO_GRAVE)
local e5=rsef.I(c,"set",{1,m},nil,nil,LOCATION_SZONE,cm.setcon,nil,rsop.target(cm.setfilter,nil,LOCATION_DECK),cm.setop) e1:SetCountLimit(1,65011005)
if cm.switch then return end e1:SetCondition(c65011005.thcon)
cm.switch = true e1:SetTarget(c65011005.thtg)
local ge1=rsef.FC({c,0},EVENT_SPSUMMON_SUCCESS) e1:SetOperation(c65011005.thop)
ge1:SetOperation(cm.regop) c:RegisterEffect(e1)
end --discard
function cm.setcon(e,tp) local e2=Effect.CreateEffect(c)
return Duel.GetFlagEffect(1-tp,m)>0 e2:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_FUSION_SUMMON)
end e2:SetType(EFFECT_TYPE_IGNITION)
function cm.setfilter(c) e2:SetRange(LOCATION_HAND)
return rsisr.IsSet(c) and c:IsSSetable() and c:IsType(TYPE_CONTINUOUS) e2:SetCountLimit(1,65011005)
end e2:SetCost(c65011005.discost)
function cm.setop(e,tp) e2:SetTarget(c65011005.distg)
if not rscf.GetSelf(e) then return end e2:SetOperation(c65011005.disop)
rsop.SelectSSet(tp,cm.setfilter,tp,LOCATION_DECK,0,1,1,nil,{}) c:RegisterEffect(e2)
end end
function cm.limitop(e,tp) function c65011005.thcon(e,tp,eg,ep,ev,re,r,rp)
local c=rscf.GetSelf(e) return e:GetHandler():IsReason(REASON_EFFECT)
local tc=rscf.GetTargetCard(Card.IsFaceup) end
if not c or not tc then return end function c65011005.thfilter(c)
local e1,e2,e3,e4=rsef.SV_CANNOT_BE_MATERIAL({c,tc},"fus,syn,xyz,link",nil,nil,{rsreset.est_pend+RESET_OPPO_TURN,Duel.GetTurnPlayer()==tp and 1 or 2}) return c:IsSetCard(0x3da2) and c:IsAbleToHand()
end end
function cm.regop(e,tp,eg) function c65011005.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
for tc in aux.Next(eg) do if chk==0 then return Duel.IsExistingMatchingCard(c65011005.thfilter,tp,LOCATION_GRAVE,0,2,nil) end
if tc:IsFaceup() and rsisr.IsSet(tc) then Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,2,tp,LOCATION_GRAVE)
Duel.RegisterFlagEffect(tc:GetSummonPlayer(),m,rsreset.pend,0,1) end
end function c65011005.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c65011005.thfilter,tp,LOCATION_GRAVE,0,2,2,nil)
if g:GetCount()>0 then
Duel.SendtoHand(g,tp,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end end
end end
function cm.con(e,tp)
return Duel.IsExistingMatchingCard(cm.cfilter,tp,0,LOCATION_MZONE,1,nil) function c65011005.discost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsDiscardable() end
Duel.SendtoGrave(e:GetHandler(),REASON_COST+REASON_DISCARD)
end
function c65011005.filter0(c)
return c:IsType(TYPE_MONSTER) and c:IsCanBeFusionMaterial() and c:IsAbleToGrave()
end
function c65011005.filter1(c,e)
return not c:IsImmuneToEffect(e)
end
function c65011005.filter2(c,e,tp,m,f,chkf)
return c:IsType(TYPE_FUSION) and c:IsSetCard(0x3da2) and (not f or f(c))
and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_FUSION,tp,false,false) and c:CheckFusionMaterial(m,nil,chkf)
end end
function cm.con2(e,tp) function c65011005.filter3(c,e)
return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_MZONE,0,1,nil) return c:IsOnField() and not c:IsImmuneToEffect(e)
end end
function cm.tg(e,c) function c65011005.cfilter(c)
return c~=e:GetHandler() return c:GetSummonLocation()==LOCATION_EXTRA
end end
function cm.cfilter(c)
return rsisr.IsSet(c) and c:IsFaceup() and c:GetOwner()~=c:GetControler() function c65011005.distg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
local chkf=tp
local mg1=Duel.GetFusionMaterial(tp):Filter(Card.IsOnField,nil)
if Duel.IsExistingMatchingCard(c65011005.cfilter,tp,0,LOCATION_MZONE,1,nil) then
local mg2=Duel.GetMatchingGroup(c65011005.filter0,tp,0,LOCATION_MZONE,nil)
mg1:Merge(mg2)
end
local res=Duel.IsExistingMatchingCard(c65011005.filter2,tp,LOCATION_EXTRA,0,1,nil,e,tp,mg1,nil,chkf)
if not res then
local ce=Duel.GetChainMaterial(tp)
if ce~=nil then
local fgroup=ce:GetTarget()
local mg3=fgroup(ce,e,tp)
local mf=ce:GetValue()
res=Duel.IsExistingMatchingCard(c65011005.filter2,tp,LOCATION_EXTRA,0,1,nil,e,tp,mg3,mf,chkf)
end
end
return res
end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA)
end
function c65011005.disop(e,tp,eg,ep,ev,re,r,rp)
local chkf=tp
local mg1=Duel.GetFusionMaterial(tp):Filter(c65011005.filter3,nil,e)
if Duel.IsExistingMatchingCard(c65011005.cfilter,tp,0,LOCATION_MZONE,1,nil) then
local mg2=Duel.GetMatchingGroup(c65011005.filter0,tp,0,LOCATION_MZONE,nil)
mg1:Merge(mg2)
end
local sg1=Duel.GetMatchingGroup(c65011005.filter2,tp,LOCATION_EXTRA,0,nil,e,tp,mg1,nil,chkf)
local mg3=nil
local sg2=nil
local ce=Duel.GetChainMaterial(tp)
if ce~=nil then
local fgroup=ce:GetTarget()
mg3=fgroup(ce,e,tp)
local mf=ce:GetValue()
sg2=Duel.GetMatchingGroup(c65011005.filter2,tp,LOCATION_EXTRA,0,nil,e,tp,mg3,mf,chkf)
end
if sg1:GetCount()>0 or (sg2~=nil and sg2:GetCount()>0) then
local sg=sg1:Clone()
if sg2 then sg:Merge(sg2) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local tg=sg:Select(tp,1,1,nil)
local tc=tg:GetFirst()
if sg1:IsContains(tc) and (sg2==nil or not sg2:IsContains(tc) or not Duel.SelectYesNo(tp,ce:GetDescription())) then
local mat1=Duel.SelectFusionMaterial(tp,tc,mg1,nil,chkf)
tc:SetMaterial(mat1)
Duel.SendtoGrave(mat1,REASON_EFFECT+REASON_MATERIAL+REASON_FUSION)
Duel.BreakEffect()
Duel.SpecialSummon(tc,SUMMON_TYPE_FUSION,tp,tp,false,false,POS_FACEUP)
else
local mat2=Duel.SelectFusionMaterial(tp,tc,mg3,nil,chkf)
local fop=ce:GetOperation()
fop(ce,e,tp,tc,mat2)
end
tc:CompleteProcedure()
end
end end
\ No newline at end of file
--以斯拉的裁决 异域追凶 --时终间的伫立者
if not pcall(function() require("expansions/script/c65011001") end) then require("script/c65011001") end function c65011006.initial_effect(c)
local m,cm=rscf.DefineCard(65011006,"Israel") --tograve
function cm.initial_effect(c) local e1=Effect.CreateEffect(c)
local e1=rsef.ACT(c,nil,nil,{1,m,1},"tg") e1:SetCategory(CATEGORY_SEARCH+CATEGORY_TOGRAVE+CATEGORY_SPECIAL_SUMMON)
e1:SetOperation(cm.act) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
local e2=rsef.I(c,nil,{1,m+100},"des,sp","tg",LOCATION_SZONE,cm.descon,rscost.cost(1,"dish"),rstg.target2(cm.fun,aux.TRUE,"des",LOCATION_ONFIELD,LOCATION_ONFIELD),cm.desop) e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
--direct attack e1:SetCode(EVENT_TO_GRAVE)
local e3=Effect.CreateEffect(c) e1:SetCountLimit(1,65011006)
e3:SetType(EFFECT_TYPE_FIELD) e1:SetCondition(c65011006.thcon)
e3:SetCode(EFFECT_DIRECT_ATTACK) e1:SetTarget(c65011006.thtg)
e3:SetRange(LOCATION_SZONE) e1:SetOperation(c65011006.thop)
e3:SetTargetRange(LOCATION_MZONE,0) c:RegisterEffect(e1)
e3:SetCondition(cm.dcon) --discard
c:RegisterEffect(e3) local e2=Effect.CreateEffect(c)
end e2:SetCategory(CATEGORY_TODECK+CATEGORY_DRAW)
function cm.dcon(e,tp) e2:SetType(EFFECT_TYPE_IGNITION)
return not Duel.IsExistingMatchingCard(cm.cfilter,tp,0,LOCATION_MZONE,1,nil) e2:SetRange(LOCATION_HAND)
end e2:SetCountLimit(1,65011006)
function cm.cfilter(c) e2:SetCost(c65011006.discost)
return c:IsFacedown() or rsisr.IsSet(c) e2:SetTarget(c65011006.distg)
end e2:SetOperation(c65011006.disop)
function cm.tgfilter(c) c:RegisterEffect(e2)
return rsisr.IsSetM(c) and c:IsAbleToGrave()
end
function cm.act(e,tp)
local c=rscf.GetSelf(e)
if not c then return end
rsop.SelectOC("tg")
local ct,og,tc=rsop.SelectToGrave(tp,cm.tgfilter,tp,LOCATION_DECK,0,1,1,nil,{})
if tc and tc:IsLocation(LOCATION_GRAVE) then
c:RegisterFlagEffect(m,rsreset.est_pend,0,1)
end
end
function cm.descon(e,tp)
return e:GetHandler():GetFlagEffect(m)==0
end end
function cm.fun(g,e,tp) function c65011006.thcon(e,tp,eg,ep,ev,re,r,rp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,0,tp,LOCATION_GRAVE) return e:GetHandler():IsReason(REASON_EFFECT)
end end
function cm.desop(e,tp) function c65011006.thfilter(c)
local c=rscf.GetSelf(e) return c:IsSetCard(0x3da2) and c:IsAbleToGrave()
local tc=rscf.GetTargetCard() end
if not c then return end function c65011006.spfilter(c,e,tp)
local e1=Effect.CreateEffect(c) return c:IsSetCard(0x3da2) and c:IsType(TYPE_MONSTER) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
e1:SetType(EFFECT_TYPE_FIELD) end
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_OATH) function c65011006.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON) if chk==0 then return Duel.IsExistingMatchingCard(c65011006.thfilter,tp,LOCATION_HAND,0,1,nil) and Duel.IsExistingMatchingCard(c65011006.spfilter,tp,LOCATION_DECK,0,1,nil,e,tp) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 end
e1:SetReset(RESET_PHASE+PHASE_END) Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,tp,LOCATION_HAND)
e1:SetTargetRange(1,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK)
e1:SetTarget(cm.splimit) end
Duel.RegisterEffect(e1,tp) function c65011006.thop(e,tp,eg,ep,ev,re,r,rp)
if tc and Duel.Destroy(tc,REASON_EFFECT)>0 then if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
rsop.SelectOC("sp",true) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
rsop.SelectSpecialSummon(tp,aux.NecroValleyFilter(rscf.spfilter2(rsisr.IsSet)),tp,LOCATION_GRAVE,0,1,1,nil,{},e,tp) local g=Duel.SelectMatchingCard(tp,c65011006.thfilter,tp,LOCATION_HAND,0,1,1,nil)
if g:GetCount()>0 then
if Duel.SendtoGrave(g,REASON_EFFECT)~=0 then
local sg=Duel.SelectMatchingCard(tp,c65011006.spfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp)
if sg:GetCount()>0 then
Duel.SpecialSummon(sg,0,tp,tp,false,false,POS_FACEUP)
end
end
end end
end end
function cm.splimit(e,c,sump,sumtype,sumpos,targetp,se)
return not rsisr.IsSet(c) function c65011006.discost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsDiscardable() end
Duel.SendtoGrave(e:GetHandler(),REASON_COST+REASON_DISCARD)
end
function c65011006.disfilter(c,e,tp)
return c:IsSetCard(0x3da2) and c:IsAbleToDeck()
end
function c65011006.distg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c65011006.disfilter,tp,LOCATION_GRAVE,0,3,nil) and Duel.IsPlayerCanDraw(tp,1) end
Duel.SetOperationInfo(0,CATEGORY_TODECK,nil,3,tp,LOCATION_GRAVE)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,1)
end
function c65011006.disop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local g=Duel.SelectMatchingCard(tp,c65011006.disfilter,tp,LOCATION_GRAVE,0,3,3,nil,e,tp)
if g:GetCount()>0 then
Duel.HintSelection(g)
Duel.SendtoDeck(g,nil,2,REASON_EFFECT)
Duel.ShuffleDeck(tp)
Duel.Draw(tp,1,REASON_EFFECT)
end
end end
\ No newline at end of file
--以斯拉的策略 远交近攻 --时终结
if not pcall(function() require("expansions/script/c65011001") end) then require("script/c65011001") end function c65011007.initial_effect(c)
local m,cm=rscf.DefineCard(65011007,"Israel") --Activate
function cm.initial_effect(c) local e0=Effect.CreateEffect(c)
local e1=rsef.ACT(c) e0:SetType(EFFECT_TYPE_ACTIVATE)
local e2=rsef.QO(c,nil,{m,0},{1,m},nil,"tg",LOCATION_SZONE,nil,nil,rstg.target(cm.mvfilter,nil,LOCATION_MZONE),cm.mvop) e0:SetCode(EVENT_FREE_CHAIN)
local e3=rsef.QO(c,nil,"dis",{1,m+100},"dis,atk,des","tg",LOCATION_SZONE,rscon.excard2(rsisr.IsSet,LOCATION_MZONE),nil,rstg.target(Card.IsFaceup,"dis",0,LOCATION_MZONE),cm.disop) c:RegisterEffect(e0)
end --tohand
function cm.disop(e,tp)
local c=rscf.GetSelf(e)
local tc=rscf.GetTargetCard()
if not c or not tc then return end
local atk=tc:GetAttack()
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetDescription(aux.Stringid(65011007,0))
e1:SetCode(EFFECT_SET_ATTACK_FINAL) e1:SetCategory(CATEGORY_TOHAND)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e1:SetValue(math.ceil(atk/2)) e1:SetProperty(EFFECT_FLAG_DELAY)
tc:RegisterEffect(e1) e1:SetCode(EVENT_SPSUMMON_SUCCESS)
Duel.NegateRelatedChain(tc,RESET_TURN_SET) e1:SetRange(LOCATION_FZONE)
local e2=Effect.CreateEffect(c) e1:SetCondition(c65011007.thcon)
e2:SetType(EFFECT_TYPE_SINGLE) e1:SetCost(c65011007.thcost)
e2:SetCode(EFFECT_DISABLE) e1:SetTarget(c65011007.thtg1)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e1:SetOperation(c65011007.thop1)
tc:RegisterEffect(e2) c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e2:SetDescription(aux.Stringid(65011007,1))
e2:SetTarget(c65011007.thtg2)
e2:SetOperation(c65011007.thop2)
c:RegisterEffect(e2)
--activate
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE) e3:SetDescription(65011007,2)
e3:SetCode(EFFECT_DISABLE_EFFECT) e3:SetCategory(CATEGORY_DISABLE)
e3:SetValue(RESET_TURN_SET) e3:SetType(EFFECT_TYPE_QUICK_O)
e3:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e3:SetRange(LOCATION_FZONE)
tc:RegisterEffect(e3) e3:SetCode(EVENT_FREE_CHAIN)
if tc:IsImmuneToEffect(e) or not rsisr.exlcon(e) then return end e3:SetProperty(EFFECT_FLAG_CARD_TARGET)
rsop.SelectOC("des",true) e3:SetCountLimit(1,65011007)
rsop.SelectDestroy(tp,Card.IsFaceup,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,nil,{}) e3:SetTarget(c65011007.target)
end e3:SetOperation(c65011007.activate)
function cm.mvfilter(c,e,tp) c:RegisterEffect(e3)
return c:IsFaceup() and rsisr.IsSet(c) and Duel.GetLocationCount(tp,LOCATION_MZONE,PLAYER_NONE,0)>0 end
end
function cm.mvop(e,tp,eg,ep,ev,re,r,rp) function c65011007.chanfilter(c)
local c=rscf.GetSelf(e) return c:IsFaceup() and c:IsType(TYPE_FUSION) and not c:IsDisabled()
local tc=rscf.GetTargetCard() end
if not c or not tc or not tc:IsControler(tp) then return end
if Duel.GetLocationCount(tp,LOCATION_MZONE,PLAYER_NONE,0)>0 then function c65011007.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOZONE) if chkc then return chkc:IsLocation(LOCATION_MZONE) and c65011007.chanfilter(chkc) end
local s=Duel.SelectDisableField(tp,1,LOCATION_MZONE,0,0) if chk==0 then return Duel.IsExistingTarget(c65011007.chanfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
local nseq=math.log(s,2) local g=Duel.SelectTarget(tp,c65011007.chanfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.MoveSequence(tc,nseq) end
function c65011007.activate(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then
Duel.NegateRelatedChain(tc,RESET_TURN_SET)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_DISABLE)
e1:SetReset(RESET_EVENT+0x1fe0000+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_DISABLE_EFFECT)
e2:SetValue(RESET_TURN_SET)
e2:SetReset(RESET_EVENT+0x1fe0000+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e2)
end end
local e1,e2=rsef.SV_INDESTRUCTABLE({c,tc},"effect,battle",nil,nil,rsreset.est_pend) end
function c65011007.thcofil(c)
return c:IsFaceup() and c:IsType(TYPE_FUSION) and c:IsSummonType(SUMMON_TYPE_FUSION)
end
function c65011007.thcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(c65011007.thcofil,1,nil)
end
function c65011007.thcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
Duel.Hint(HINT_OPSELECTED,1-tp,e:GetDescription())
e:GetHandler():RegisterFlagEffect(65011007,RESET_CHAIN,0,1)
end
function c65011007.thfilter2(c)
return c:IsSetCard(0x3da2) and c:IsAbleToHand()
end
function c65011007.thfilter1(c)
return bit.band(c:GetReason(),0x40008)==0x40008 and c:IsType(TYPE_MONSTER) and c:IsAbleToHand()
end
function c65011007.thtg1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsSetCard,tp,LOCATION_HAND,0,1,nil,0x3da2) and Duel.IsExistingMatchingCard(c65011007.thfilter1,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,nil) and e:GetHandler():GetFlagEffect(65011007)==0 end
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,tp,LOCATION_HAND)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,0,LOCATION_GRAVE)
end
function c65011007.thtg2(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c65011007.thfilter2,tp,LOCATION_DECK,0,1,nil) and e:GetHandler():GetFlagEffect(65011007)==0 end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,0,LOCATION_DECK)
end
function c65011007.thop1(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local sg=Duel.SelectMatchingCard(tp,Card.IsSetCard,tp,LOCATION_HAND,0,1,1,nil,0x3da2)
if Duel.SendtoGrave(sg,REASON_EFFECT)~=0 then
Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c65011007.thfilter1,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,1,nil)
if g:GetCount()>0 then
Duel.SendtoHand(g,tp,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
end
end
function c65011007.thop2(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c65011007.thfilter2,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()>0 then
Duel.SendtoHand(g,tp,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
end end
\ No newline at end of file
--以斯拉的尖兵 梅尔卡巴 --时线的缔合
if not pcall(function() require("expansions/script/c65011001") end) then require("script/c65011001") end function c65011008.initial_effect(c)
local m,cm=rscf.DefineCard(65011008,"Israel") --activate
function cm.initial_effect(c) local e1=Effect.CreateEffect(c)
local e1=rsef.I(c,"tg",{1,m},"tg,des",nil,LOCATION_HAND,nil,rscost.cost(0,"dish"),rsop.target(cm.tgfilter,"tg",LOCATION_DECK),cm.tgop) e1:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_FUSION_SUMMON)
--Negate e1:SetType(EFFECT_TYPE_ACTIVATE)
local e4=Effect.CreateEffect(c) e1:SetCode(EVENT_FREE_CHAIN)
e4:SetDescription(rshint.neg) e1:SetCountLimit(1,65011008)
e4:SetCategory(CATEGORY_NEGATE+CATEGORY_DESTROY+CATEGORY_SPECIAL_SUMMON) e1:SetTarget(c65011008.distg)
e4:SetType(EFFECT_TYPE_QUICK_O) e1:SetOperation(c65011008.disop)
e4:SetCode(EVENT_CHAINING) c:RegisterEffect(e1)
e4:SetRange(LOCATION_GRAVE) --bfg
e4:SetCountLimit(1,m) local e2=Effect.CreateEffect(c)
e4:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL) e2:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e4:SetCondition(cm.condition) e2:SetType(EFFECT_TYPE_IGNITION)
e4:SetTarget(cm.target) e2:SetRange(LOCATION_GRAVE)
e4:SetOperation(cm.operation) e2:SetCountLimit(1,65011008)
c:RegisterEffect(e4) e2:SetCost(aux.bfgcost)
end e2:SetTarget(c65011008.target)
function cm.tgfilter(c) e2:SetOperation(c65011008.activate)
return c:IsAbleToGrave() and rsisr.IsSet(c) c:RegisterEffect(e2)
end end
function cm.tgop(e,tp) function c65011008.filfilter0(c)
local ct,og,tc=rsop.SelectToGrave(tp,cm.tgfilter,tp,LOCATION_DECK,0,1,1,nil,{}) return c:IsType(TYPE_MONSTER) and c:IsCanBeFusionMaterial() and c:IsAbleToGrave()
if tc and tc:IsLocation(LOCATION_GRAVE) then
rsop.SelectOC("des",true)
rsop.SelectDestroy(tp,cm.desfilter,tp,0,LOCATION_ONFIELD,1,1,nil,{})
end
end end
function cm.desfilter(c) function c65011008.filfilter1(c,e)
return c:IsFaceup() and rsisr.IsSet(c) return not c:IsImmuneToEffect(e)
end end
function cm.condition(e,tp,eg,ep,ev,re,r,rp) function c65011008.filfilter2(c,e,tp,m,f,chkf)
local loc=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_LEVEL) return c:IsType(TYPE_FUSION) and c:IsSetCard(0x3da2) and (not f or f(c))
return rp~=tp and re:IsActiveType(TYPE_MONSTER) and loc & LOCATION_ONFIELD ~=0 and Duel.IsChainNegatable(ev) and rsisr.exlcon(e) and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_FUSION,tp,false,false) and c:CheckFusionMaterial(m,nil,chkf)
end end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() function c65011008.cfilter(c)
if chk==0 then return rsisr.spfilter(c,e,tp) end return c:GetSummonLocation()==LOCATION_EXTRA
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,c,1,0,0) end
Duel.SetOperationInfo(0,CATEGORY_NEGATE,eg,1,0,0) function c65011008.distg(e,tp,eg,ep,ev,re,r,rp,chk)
if re:GetHandler():IsDestructable() and re:GetHandler():IsRelateToEffect(re) then if chk==0 then
Duel.SetOperationInfo(0,CATEGORY_DESTROY,eg,1,0,0) local chkf=tp
local mg1=Duel.GetFusionMaterial(tp)
local mg2=Duel.GetMatchingGroup(c65011008.filfilter0,tp,0,LOCATION_MZONE,nil)
mg1:Merge(mg2)
local res=Duel.IsExistingMatchingCard(c65011008.filfilter2,tp,LOCATION_EXTRA,0,1,nil,e,tp,mg1,nil,chkf)
if not res then
local ce=Duel.GetChainMaterial(tp)
if ce~=nil then
local fgroup=ce:GetTarget()
local mg3=fgroup(ce,e,tp)
local mf=ce:GetValue()
res=Duel.IsExistingMatchingCard(c65011008.filfilter2,tp,LOCATION_EXTRA,0,1,nil,e,tp,mg3,mf,chkf)
end
end
return res
end end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA)
end end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
if rsisr.spops(e,tp)>0 and Duel.NegateActivation(ev) and re:GetHandler():IsRelateToEffect(re) then function c65011008.disop(e,tp,eg,ep,ev,re,r,rp)
Duel.Destroy(eg,REASON_EFFECT) local chkf=tp
local mg1=Duel.GetFusionMaterial(tp):Filter(c65011008.filfilter1,nil,e)
local mg2=Duel.GetMatchingGroup(c65011008.filfilter0,tp,0,LOCATION_MZONE,nil)
mg1:Merge(mg2)
local sg1=Duel.GetMatchingGroup(c65011008.filfilter2,tp,LOCATION_EXTRA,0,nil,e,tp,mg1,nil,chkf)
local mg3=nil
local sg2=nil
local ce=Duel.GetChainMaterial(tp)
if ce~=nil then
local fgroup=ce:GetTarget()
mg3=fgroup(ce,e,tp)
local mf=ce:GetValue()
sg2=Duel.GetMatchingGroup(c65011008.filfilter2,tp,LOCATION_EXTRA,0,nil,e,tp,mg3,mf,chkf)
end
if sg1:GetCount()>0 or (sg2~=nil and sg2:GetCount()>0) then
local sg=sg1:Clone()
if sg2 then sg:Merge(sg2) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local tg=sg:Select(tp,1,1,nil)
local tc=tg:GetFirst()
if sg1:IsContains(tc) and (sg2==nil or not sg2:IsContains(tc) or not Duel.SelectYesNo(tp,ce:GetDescription())) then
local mat1=Duel.SelectFusionMaterial(tp,tc,mg1,nil,chkf)
tc:SetMaterial(mat1)
Duel.SendtoGrave(mat1,REASON_EFFECT+REASON_MATERIAL+REASON_FUSION)
Duel.BreakEffect()
Duel.SpecialSummon(tc,SUMMON_TYPE_FUSION,tp,tp,false,false,POS_FACEUP)
else
local mat2=Duel.SelectFusionMaterial(tp,tc,mg3,nil,chkf)
local fop=ce:GetOperation()
fop(ce,e,tp,tc,mat2)
end
tc:CompleteProcedure()
end end
end end
function c65011008.filter1(c,tp)
return Duel.IsExistingMatchingCard(c65011008.filter2,tp,LOCATION_DECK,0,1,nil,c) and c:IsSetCard(0x3da2)
end
function c65011008.filter2(c,fc)
return aux.IsCodeListed(fc,c:GetCode()) and c:IsAbleToHand()
end
function c65011008.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c65011008.filter1,tp,LOCATION_EXTRA,0,1,nil,tp) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end
function c65011008.activate(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONFIRM)
local cg=Duel.SelectMatchingCard(tp,c65011008.filter1,tp,LOCATION_EXTRA,0,1,1,nil,tp)
if cg:GetCount()==0 then return end
Duel.ConfirmCards(1-tp,cg)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(c65011008.filter2),tp,LOCATION_DECK,0,1,1,nil,cg:GetFirst())
local tc=g:GetFirst()
if not tc then return end
if Duel.SendtoHand(tc,nil,REASON_EFFECT)~=0 and tc:IsLocation(LOCATION_HAND) then
Duel.ConfirmCards(1-tp,tc)
end
end
\ No newline at end of file
--以斯拉的斥候 乌兹 --时终的溯行
if not pcall(function() require("expansions/script/c65011001") end) then require("script/c65011001") end function c65011009.initial_effect(c)
local m,cm=rscf.DefineCard(65011009,"Israel") --activate
function cm.initial_effect(c) local e1=Effect.CreateEffect(c)
local e1=rsef.I(c,"tg",{1,m},"tg",nil,LOCATION_HAND,nil,rscost.cost(0,"dish"),rsop.target(cm.tgfilter,"tg",LOCATION_DECK),cm.tgop) e1:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_CONTROL+CATEGORY_DISABLE)
local e2=rsef.I(c,"tg",{1,m},"tg,sp","tg",LOCATION_GRAVE,nil,nil,rstg.target({cm.tgfilter2,"tg",0,LOCATION_ONFIELD },rsop.list(rsisr.spfilter,"sp")),cm.tgop2) e1:SetType(EFFECT_TYPE_ACTIVATE)
local e3=rsef.RegisterOPTurn(c,e2,rsisr.exlcon) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCountLimit(1,65011009)
e1:SetTarget(c65011009.target)
e1:SetOperation(c65011009.activate)
c:RegisterEffect(e1)
--tohand
local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_SEARCH+CATEGORY_TOHAND)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_GRAVE)
e2:SetCountLimit(1,65011009)
e2:SetCost(aux.bfgcost)
e2:SetTarget(c65011009.thtg)
e2:SetOperation(c65011009.thop)
c:RegisterEffect(e2)
end end
function cm.tgfilter(c)
return c:IsAbleToGrave() and rsisr.IsSet(c) function c65011009.thfilter(c)
end return c:IsSetCard(0x3da2) and c:IsAbleToHand()
function cm.tgop(e,tp)
rsop.SelectToGrave(tp,cm.tgfilter,tp,LOCATION_DECK,0,1,1,nil,{})
end end
function cm.tgfilter2(c) function c65011009.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
return c:IsAbleToGrave() and c:IsType(TYPE_SPELL+TYPE_TRAP) if chk==0 then return Duel.IsExistingMatchingCard(c65011009.thfilter,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK+LOCATION_GRAVE)
end end
function cm.tgop2(e,tp) function c65011009.thop(e,tp,eg,ep,ev,re,r,rp)
local tc=rscf.GetTargetCard() Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
if rsisr.spops(e,tp)>0 and tc then local g=Duel.SelectMatchingCard(tp,c65011009.thfilter,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,1,nil)
Duel.SendtoGrave(tc,REASON_EFFECT) if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end end
end
function c65011009.chanfilter(c)
return c:IsFaceup() and c:IsType(TYPE_FUSION) and c:IsSetCard(0x3da2) and c:IsControlerCanBeChanged()
end
function c65011009.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c65011009.chanfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c65011009.chanfilter,tp,LOCATION_MZONE,0,1,nil) and Duel.GetLocationCount(1-tp,LOCATION_MZONE)>0 end
local g=Duel.SelectTarget(tp,c65011009.chanfilter,tp,LOCATION_MZONE,0,1,1,nil)
end
function c65011009.activate(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(1-tp,LOCATION_MZONE)<=0 then return end
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if not (tc:IsRelateToEffect(e) and tc:IsFaceup()) then return end
local mg=tc:GetMaterial()
local ct=mg:GetCount()
local sumtype=tc:GetSummonType()
if tc:IsRelateToEffect(e) then
Duel.NegateRelatedChain(tc,RESET_TURN_SET)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_DISABLE)
e1:SetReset(RESET_EVENT+0x1fe0000)
tc:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_DISABLE_EFFECT)
e2:SetValue(RESET_TURN_SET)
e2:SetReset(RESET_EVENT+0x1fe0000)
tc:RegisterEffect(e2)
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetCode(EFFECT_CANNOT_DISEFFECT)
e3:SetReset(RESET_EVENT+0x1fe0000)
tc:RegisterEffect(e3)
Duel.BreakEffect()
if Duel.GetControl(tc,1-tp) and bit.band(sumtype,SUMMON_TYPE_FUSION)==SUMMON_TYPE_FUSION
and ct>0 and ct<=Duel.GetLocationCount(tp,LOCATION_MZONE)
and mg:FilterCount(aux.NecroValleyFilter(c65011009.mgfilter),nil,e,tp,tc,mg)==ct
and not Duel.IsPlayerAffectedByEffect(tp,59822133)
and Duel.SelectYesNo(tp,aux.Stringid(65011009,0)) then
Duel.BreakEffect()
Duel.SpecialSummon(mg,0,tp,tp,false,false,POS_FACEUP)
end
end
end
function c65011009.mgfilter(c,e,tp,fusc,mg)
return c:IsLocation(LOCATION_GRAVE)
and bit.band(c:GetReason(),0x40008)==0x40008 and c:GetReasonCard()==fusc
and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
and fusc:CheckFusionMaterial(mg,c)
end end
\ No newline at end of file
--以斯拉的督师 加利尔 --时终结 圣杯
if not pcall(function() require("expansions/script/c65011001") end) then require("script/c65011001") end function c65011010.initial_effect(c)
local m,cm=rscf.DefineCard(65011010,"Israel") c:EnableReviveLimit()
function cm.initial_effect(c) aux.AddCodeList(c,65011003,65011004)
local e1=rsef.I(c,"se",{1,m},"se,th",nil,LOCATION_MZONE,nil,nil,rsop.target(cm.thfilter,"th",LOCATION_DECK),cm.thop) aux.AddFusionProcFun2(c,aux.TRUE,aux.TRUE,true)
local e2=rsef.I(c,"sp",{1,m+100},"sp",nil,LOCATION_GRAVE,nil,nil,rsop.target(rsisr.spfilter,"sp"),rsisr.spops) --spsummon condition
end local e1=Effect.CreateEffect(c)
function cm.thfilter(c) e1:SetType(EFFECT_TYPE_SINGLE)
return c:IsAbleToHand() and rsisr.IsSet(c) and c:IsType(TYPE_CONTINUOUS) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
end e1:SetCode(EFFECT_SPSUMMON_CONDITION)
function cm.thop(e,tp) e1:SetValue(aux.fuslimit)
local ct,og,tc=rsop.SelectToHand(tp,cm.thfilter,tp,LOCATION_DECK,0,1,1,nil,{}) c:RegisterEffect(e1)
if not tc then return end --Recover
local e1=rsef.FC({e:GetHandler(),tp},EVENT_CHAINING,nil,nil,nil,nil,nil,cm.regop,rsreset.pend) local e2=Effect.CreateEffect(c)
e1:SetLabel(tc:GetCode()) e2:SetCategory(CATEGORY_SEARCH+CATEGORY_TOGRAVE+CATEGORY_RECOVER)
end e2:SetType(EFFECT_TYPE_QUICK_O)
function cm.regop(e,tp,eg,ep,ev,re,r,rp) e2:SetCode(EVENT_FREE_CHAIN)
local code=e:GetLabel() e2:SetRange(LOCATION_MZONE)
local code1,code2=Duel.GetChainInfo(0,CHAININFO_TRIGGERING_CODE,CHAININFO_TRIGGERING_CODE2) e2:SetCountLimit(1,65011010)
if (code1 and code1==code) or (code2 and code2==code) then e2:SetTarget(c65011010.rectg)
local e1=Effect.CreateEffect(e:GetHandler()) e2:SetOperation(c65011010.recop)
e1:SetType(EFFECT_TYPE_FIELD) c:RegisterEffect(e2)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET) --not have bones
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON) local e4=Effect.CreateEffect(c)
e1:SetTargetRange(1,0) e4:SetType(EFFECT_TYPE_SINGLE)
e1:SetTarget(cm.splimit) e4:SetCode(EFFECT_SET_ATTACK)
e1:SetReset(RESET_PHASE+PHASE_END) e4:SetRange(LOCATION_MZONE)
Duel.RegisterEffect(e1,tp) e4:SetCondition(c65011010.notcon)
e4:SetValue(0)
c:RegisterEffect(e4)
local e5=e4:Clone()
e5:SetCode(EFFECT_SET_DEFENSE)
c:RegisterEffect(e5)
local e12=Effect.CreateEffect(c)
e12:SetType(EFFECT_TYPE_SINGLE)
e12:SetCode(EFFECT_CANNOT_TRIGGER)
e12:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e12:SetRange(LOCATION_MZONE)
e12:SetCondition(c65011010.notcon)
c:RegisterEffect(e12)
--not have souls
local e14=Effect.CreateEffect(c)
e14:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e14:SetRange(LOCATION_MZONE)
e14:SetCode(EVENT_PHASE+PHASE_STANDBY)
e14:SetCountLimit(1)
e14:SetCondition(c65011010.notcon)
e14:SetOperation(c65011010.notsoulop)
c:RegisterEffect(e14)
--Check
local e15=Effect.CreateEffect(c)
e15:SetType(EFFECT_TYPE_SINGLE)
e15:SetCode(EFFECT_MATERIAL_CHECK)
e15:SetValue(c65011010.valcheck)
e15:SetLabelObject(e4)
c:RegisterEffect(e15)
local e16=e15:Clone()
e16:SetLabelObject(e5)
c:RegisterEffect(e16)
local e23=e15:Clone()
e23:SetLabelObject(e12)
c:RegisterEffect(e23)
local e24=e15:Clone()
e24:SetValue(c65011010.valcheck2)
e24:SetLabelObject(e14)
c:RegisterEffect(e24)
local e26=e24:Clone()
e26:SetLabelObject(e2)
c:RegisterEffect(e26)
end
function c65011010.recfilter(c)
return c:IsSetCard(0x3da2) and c:IsAbleToGrave()
end
function c65011010.rectg(e,tp,eg,ep,ev,re,r,rp,chk)
local flag=e:GetLabel()
if chk==0 then return Duel.IsExistingMatchingCard(c65011010.recfilter,tp,LOCATION_DECK+LOCATION_HAND,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,tp,LOCATION_DECK+LOCATION_HAND)
if bit.band(flag,0x1)~=0 and Duel.GetTurnPlayer()==tp then
e:SetCategory(CATEGORY_TOGRAVE+CATEGORY_SEARCH+CATEGORY_TOHAND)
end
end
function c65011010.recop(e,tp,eg,ep,ev,re,r,rp)
local flag=e:GetLabel()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,c65011010.recfilter,tp,LOCATION_DECK+LOCATION_HAND,0,1,1,nil)
if g:GetCount()>0 then
if Duel.SendtoGrave(g,REASON_EFFECT)~=0 and Duel.Recover(tp,1500,REASON_EFFECT)~=0 then
if bit.band(flag,0x1)~=0 and Duel.IsExistingMatchingCard(c65011010.thfilter2,tp,LOCATION_DECK,0,1,nil) and Duel.GetTurnPlayer()==tp and Duel.SelectYesNo(tp,aux.Stringid(65011010,0)) then
local g=Duel.SelectMatchingCard(tp,c65011010.thfilter,tp,LOCATION_DECK,0,1,1,nil)
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
end
end
end
function c65011010.thfilter(c)
return c:IsSetCard(0x3da2) and c:IsAbleToHand()
end
function c65011010.notcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local flag=e:GetLabel()
return bit.band(flag,0x1)==0 or not c:IsSummonType(SUMMON_TYPE_FUSION)
end
function c65011010.notsoulop(e,tp,eg,ep,ev,re,r,rp)
local cp=e:GetHandler():GetOwner()
Duel.Hint(HINT_CARD,0,65011010)
local lp=Duel.GetLP(cp)
if lp<4000 then
lp=0
else
lp=lp-4000
end end
Duel.SetLP(cp,lp)
end
function c65011010.lvfilter(c,fc)
return c:IsCode(65011003) or c:CheckFusionSubstitute(fc)
end end
function cm.splimit(e,c) function c65011010.lvfilter2(c,fc)
return not rsisr.IsSet(c) and c:IsLocation(LOCATION_EXTRA) return c:IsCode(65011004) or c:CheckFusionSubstitute(fc)
end end
function c65011010.valcheck(e,c)
local g=c:GetMaterial()
local flag=0
if g:GetCount()==2 then
local lv=0
local lg1=g:Filter(c65011010.lvfilter,nil,c)
local lg2=g:Filter(Card.IsRace,nil,RACE_SPELLCASTER)
if lg1:GetCount()>0 then
flag=0x1
end
end
e:GetLabelObject():SetLabel(flag)
end
function c65011010.valcheck2(e,c)
local g=c:GetMaterial()
local flag=0
if g:GetCount()==2 then
local lv=0
local lg1=g:Filter(c65011010.lvfilter2,nil,c)
local lg2=g:Filter(Card.IsRace,nil,RACE_SPELLCASTER)
if lg1:GetCount()>0 then
flag=0x1
end
end
e:GetLabelObject():SetLabel(flag)
end
\ No newline at end of file
--以斯拉的前锋 尼盖夫 --时终结 宝剑
if not pcall(function() require("expansions/script/c65011001") end) then require("script/c65011001") end function c65011011.initial_effect(c)
local m,cm=rscf.DefineCard(65011011,"Israel") c:EnableReviveLimit()
function cm.initial_effect(c) aux.AddCodeList(c,65011001,65011002)
local e1=rsef.I(c,"tg",{1,m},"tg,sp",nil,LOCATION_HAND,nil,rscost.cost(0,"dish"),rsop.target2(cm.fun,cm.tgfilter,"tg",LOCATION_DECK),cm.tgop) aux.AddFusionProcFun2(c,aux.TRUE,aux.TRUE,true)
local e2=rsef.I(c,"sp",{1,m+100},"sp",nil,LOCATION_GRAVE,nil,nil,rsop.target(rsisr.spfilter,"sp"),rsisr.spops) --spsummon condition
end local e1=Effect.CreateEffect(c)
function cm.tgfilter(c) e1:SetType(EFFECT_TYPE_SINGLE)
return c:IsAbleToGrave() and rsisr.IsSet(c) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
end e1:SetCode(EFFECT_SPSUMMON_CONDITION)
function cm.fun(g,e,tp) e1:SetValue(aux.fuslimit)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,0,tp,rsloc.dg) c:RegisterEffect(e1)
end --eee
function cm.tgop(e,tp) local e2=Effect.CreateEffect(c)
local e1=Effect.CreateEffect(e:GetHandler()) e2:SetCategory(CATEGORY_TOGRAVE)
e1:SetType(EFFECT_TYPE_FIELD) e2:SetType(EFFECT_TYPE_QUICK_O)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e2:SetRange(LOCATION_MZONE)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON) e2:SetCode(EVENT_FREE_CHAIN)
e1:SetTargetRange(1,0) e2:SetCountLimit(1,65011011)
e1:SetTarget(cm.splimit) e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetReset(RESET_PHASE+PHASE_END) e2:SetTarget(c65011011.tgtg)
Duel.RegisterEffect(e1,tp) e2:SetOperation(c65011011.tgop)
local ct,og,tc=rsop.SelectToGrave(tp,cm.tgfilter,tp,LOCATION_DECK,0,1,1,nil,{}) c:RegisterEffect(e2)
if tc and tc:IsLocation(LOCATION_GRAVE) and rscon.excard2(rsisr.IsSet,0,LOCATION_MZONE)(e,tp) then --not have bones
rsop.SelectOC("sp",true) local e4=Effect.CreateEffect(c)
rsop.SelectSpecialSummon(tp,aux.NecroValleyFilter(rscf.spfilter2(rsisr.IsSet)),tp,rsloc.dg,0,1,1,nil,{},e,tp) e4:SetType(EFFECT_TYPE_SINGLE)
e4:SetCode(EFFECT_SET_ATTACK)
e4:SetRange(LOCATION_MZONE)
e4:SetCondition(c65011011.notcon)
e4:SetValue(0)
c:RegisterEffect(e4)
local e5=e4:Clone()
e5:SetCode(EFFECT_SET_DEFENSE)
c:RegisterEffect(e5)
local e12=Effect.CreateEffect(c)
e12:SetType(EFFECT_TYPE_SINGLE)
e12:SetCode(EFFECT_CANNOT_TRIGGER)
e12:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e12:SetRange(LOCATION_MZONE)
e12:SetCondition(c65011011.notcon)
c:RegisterEffect(e12)
--not have souls
local e14=Effect.CreateEffect(c)
e14:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e14:SetRange(LOCATION_MZONE)
e14:SetCode(EVENT_ADJUST)
e14:SetCondition(c65011011.notcon)
e14:SetOperation(c65011011.notsoulop)
c:RegisterEffect(e14)
--Check
local e15=Effect.CreateEffect(c)
e15:SetType(EFFECT_TYPE_SINGLE)
e15:SetCode(EFFECT_MATERIAL_CHECK)
e15:SetValue(c65011011.valcheck)
e15:SetLabelObject(e4)
c:RegisterEffect(e15)
local e16=e15:Clone()
e16:SetLabelObject(e5)
c:RegisterEffect(e16)
local e23=e15:Clone()
e23:SetLabelObject(e12)
c:RegisterEffect(e23)
local e24=e15:Clone()
e24:SetValue(c65011011.valcheck2)
e24:SetLabelObject(e14)
c:RegisterEffect(e24)
local e26=e24:Clone()
e26:SetLabelObject(e2)
c:RegisterEffect(e26)
end
function c65011011.tgtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local flag=e:GetLabel()
if chkc then return chkc:IsOnField() end
if chk==0 then return Duel.IsExistingTarget(aux.TRUE,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectTarget(tp,aux.TRUE,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,g,1,tp,LOCATION_ONFIELD)
if bit.band(flag,0x1)~=0 and Duel.GetTurnPlayer()==tp then
e:SetCategory(CATEGORY_TOGRAVE+CATEGORY_SEARCH+CATEGORY_SPECIAL_SUMMON)
end
end
function c65011011.tgop(e,tp,eg,ep,ev,re,r,rp)
local flag=e:GetLabel()
local tc=Duel.GetFirstTarget()
local c=e:GetHandler()
if tc:IsRelateToEffect(e) then
Duel.SendtoGrave(tc,REASON_EFFECT)
if bit.band(flag,0x1)~=0 and Duel.IsExistingMatchingCard(c65011011.spfil,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,nil,e,tp) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.GetTurnPlayer()==tp and Duel.SelectYesNo(tp,aux.Stringid(65011011,0)) then
local sg=Duel.SelectMatchingCard(tp,c65011011.spfil,tp,LOCATION_DECK,0,1,1,nil,e,tp)
Duel.SpecialSummon(sg,0,tp,tp,false,false,POS_FACEUP)
end
end
end
function c65011011.spfil(c,e,tp)
return c:IsSetCard(0x3da2) and c:IsType(TYPE_MONSTER) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c65011011.notcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local flag=e:GetLabel()
return bit.band(flag,0x1)==0 or not c:IsSummonType(SUMMON_TYPE_FUSION)
end
function c65011011.notsoulop(e,tp,eg,ep,ev,re,r,rp)
local cp=e:GetHandler():GetOwner()
local phase=Duel.GetCurrentPhase()
if (phase==PHASE_DAMAGE and not Duel.IsDamageCalculated()) or phase==PHASE_DAMAGE_CAL then return end
local g1=Duel.GetMatchingGroup(Card.IsFaceup,cp,LOCATION_ONFIELD,0,e:GetHandler())
if g1:GetCount()>0 then
Duel.Remove(g1,POS_FACEDOWN,REASON_EFFECT)
Duel.Readjust()
end
end
function c65011011.lvfilter(c,fc)
return c:IsCode(65011002) or c:CheckFusionSubstitute(fc)
end
function c65011011.lvfilter2(c,fc)
return c:IsCode(65011001) or c:CheckFusionSubstitute(fc)
end
function c65011011.valcheck(e,c)
local g=c:GetMaterial()
local flag=0
if g:GetCount()==2 then
local lv=0
local lg1=g:Filter(c65011011.lvfilter,nil,c)
local lg2=g:Filter(Card.IsRace,nil,RACE_SPELLCASTER)
if lg1:GetCount()>0 then
flag=0x1
end
end
e:GetLabelObject():SetLabel(flag)
end
function c65011011.valcheck2(e,c)
local g=c:GetMaterial()
local flag=0
if g:GetCount()==2 then
local lv=0
local lg1=g:Filter(c65011011.lvfilter2,nil,c)
local lg2=g:Filter(Card.IsRace,nil,RACE_SPELLCASTER)
if lg1:GetCount()>0 then
flag=0x1
end
end end
e:GetLabelObject():SetLabel(flag)
end end
function cm.splimit(e,c)
return not rsisr.IsSet(c)
end
\ No newline at end of file
--以斯拉的后卫 爱恩多姆 --时终结 星币
if not pcall(function() require("expansions/script/c65011001") end) then require("script/c65011001") end function c65011012.initial_effect(c)
local m,cm=rscf.DefineCard(65011012,"Israel") c:EnableReviveLimit()
function cm.initial_effect(c) aux.AddCodeList(c,65011001,65011006)
local e1=rsef.I(c,"tg",{1,m},"tg,sp",nil,LOCATION_HAND,nil,rscost.cost(0,"dish"),rsop.target2(cm.fun,cm.tgfilter,"tg",LOCATION_DECK),cm.tgop) aux.AddFusionProcFun2(c,aux.TRUE,aux.TRUE,true)
local e2=rsef.I(c,"sp",{1,m+100},"sp",nil,LOCATION_GRAVE,nil,nil,rsop.target(rsisr.spfilter,"sp"),rsisr.spops) --spsummon condition
end local e1=Effect.CreateEffect(c)
function cm.tgfilter(c) e1:SetType(EFFECT_TYPE_SINGLE)
return c:IsAbleToGrave() and rsisr.IsSet(c) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
end e1:SetCode(EFFECT_SPSUMMON_CONDITION)
function cm.fun(g,e,tp) e1:SetValue(aux.fuslimit)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,0,tp,rsloc.hd) c:RegisterEffect(e1)
end --atkup
function cm.tgop(e,tp) local e2=Effect.CreateEffect(c)
local e1=Effect.CreateEffect(e:GetHandler()) e2:SetDescription(aux.Stringid(65011012,0))
e1:SetType(EFFECT_TYPE_FIELD) e2:SetCategory(CATEGORY_ATKCHANGE)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e2:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON) e2:SetCode(EVENT_FREE_CHAIN)
e1:SetTargetRange(1,0) e2:SetRange(LOCATION_MZONE)
e1:SetTarget(cm.splimit) e2:SetCountLimit(1,65011012)
e1:SetReset(RESET_PHASE+PHASE_END) e2:SetTarget(c65011012.atktg)
Duel.RegisterEffect(e1,tp) e2:SetOperation(c65011012.atkop)
local ct,og,tc=rsop.SelectToGrave(tp,cm.tgfilter,tp,LOCATION_DECK,0,1,1,nil,{}) c:RegisterEffect(e2)
if tc and tc:IsLocation(LOCATION_GRAVE) and rscon.excard2(rsisr.IsSet,0,LOCATION_MZONE)(e,tp) then --not have bones
rsop.SelectOC("sp",true) local e4=Effect.CreateEffect(c)
rsop.SelectSpecialSummon(tp,rscf.spfilter2(rsisr.IsSet),tp,rsloc.hd,0,1,1,nil,{},e,tp) e4:SetType(EFFECT_TYPE_SINGLE)
e4:SetCode(EFFECT_SET_ATTACK)
e4:SetRange(LOCATION_MZONE)
e4:SetCondition(c65011012.notcon)
e4:SetValue(0)
c:RegisterEffect(e4)
local e5=e4:Clone()
e5:SetCode(EFFECT_SET_DEFENSE)
c:RegisterEffect(e5)
local e12=Effect.CreateEffect(c)
e12:SetType(EFFECT_TYPE_SINGLE)
e12:SetCode(EFFECT_CANNOT_TRIGGER)
e12:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e12:SetRange(LOCATION_MZONE)
e12:SetCondition(c65011012.notcon)
c:RegisterEffect(e12)
--activate cost
local e13=Effect.CreateEffect(c)
e13:SetType(EFFECT_TYPE_FIELD)
e13:SetCode(EFFECT_ACTIVATE_COST)
e13:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e13:SetTargetRange(1,1)
e13:SetRange(LOCATION_MZONE)
e13:SetCondition(c65011012.notcon)
e13:SetTarget(c65011012.actarget)
e13:SetCost(c65011012.costchk)
e13:SetOperation(c65011012.costop)
c:RegisterEffect(e13)
--Check
local e15=Effect.CreateEffect(c)
e15:SetType(EFFECT_TYPE_SINGLE)
e15:SetCode(EFFECT_MATERIAL_CHECK)
e15:SetValue(c65011012.valcheck)
e15:SetLabelObject(e4)
c:RegisterEffect(e15)
local e16=e15:Clone()
e16:SetLabelObject(e5)
c:RegisterEffect(e16)
local e23=e15:Clone()
e23:SetLabelObject(e12)
c:RegisterEffect(e23)
local e24=e15:Clone()
e24:SetValue(c65011012.valcheck2)
e24:SetLabelObject(e13)
c:RegisterEffect(e24)
local e26=e24:Clone()
e26:SetLabelObject(e2)
c:RegisterEffect(e26)
end
function c65011012.recfilter(c)
return c:IsSetCard(0x3da2) and c:IsFaceup()
end
function c65011012.atktg(e,tp,eg,ep,ev,re,r,rp,chk)
local flag=e:GetLabel()
if chk==0 then return Duel.IsExistingMatchingCard(c65011012.recfilter,tp,LOCATION_MZONE,0,1,nil) end
if bit.band(flag,0x1)~=0 and Duel.GetTurnPlayer()==tp then
e:SetCategory(CATEGORY_TOGRAVE+CATEGORY_SEARCH+CATEGORY_TOHAND)
end
end
function c65011012.atkop(e,tp,eg,ep,ev,re,r,rp)
local flag=e:GetLabel()
local g=Duel.GetMatchingGroup(c65011012.recfilter,tp,LOCATION_MZONE,0,nil)
local tc=g:GetFirst()
while tc do
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetReset(RESET_EVENT+0x1fe0000+RESET_PHASE+PHASE_END)
e1:SetValue(500)
tc:RegisterEffect(e1)
tc=g:GetNext()
end
if bit.band(flag,0x1)~=0 and Duel.IsExistingMatchingCard(c65011012.thfilter,tp,LOCATION_GRAVE,0,1,nil) and Duel.GetTurnPlayer()==tp and Duel.SelectYesNo(tp,aux.Stringid(65011012,0)) then
local g=Duel.SelectMatchingCard(tp,c65011012.thfilter,tp,LOCATION_GRAVE,0,1,1,nil)
Duel.HintSelection(g)
local gc=g:GetFirst()
local sg=Duel.SelectMatchingCard(tp,Card.IsCode,tp,LOCATION_DECK,0,1,1,nil,gc:GetCode())
if sg:GetCount()>0 then
if Duel.SelectYesNo(tp,aux.Stringid(65011012,2)) then
Duel.SendtoHand(sg,tp,REASON_EFFECT)
Duel.ConfirmCards(1-tp,sg)
else
Duel.SendtoGrave(sg,REASON_EFFECT)
end
end
end
end
function c65011012.thfilter(c)
local code=c:GetCode()
return c:IsLocation(LOCATION_GRAVE) and Duel.IsExistingMatchingCard(c65011012.thfilter2,tp,LOCATION_DECK,0,1,nil,code) and c:IsSetCard(0x3da2)
end
function c65011012.thfilter2(c,code)
return c:IsCode(code) and (c:IsAbleToHand() or c:IsAbleToGrave())
end
function c65011012.notcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local flag=e:GetLabel()
return bit.band(flag,0x1)==0 or not c:IsSummonType(SUMMON_TYPE_FUSION)
end
function c65011012.lvfilter(c,fc)
return c:IsCode(65011001) or c:CheckFusionSubstitute(fc)
end
function c65011012.lvfilter2(c,fc)
return c:IsCode(65011006) or c:CheckFusionSubstitute(fc)
end
function c65011012.valcheck(e,c)
local g=c:GetMaterial()
local flag=0
if g:GetCount()==2 then
local lv=0
local lg1=g:Filter(c65011012.lvfilter,nil,c)
local lg2=g:Filter(Card.IsRace,nil,RACE_SPELLCASTER)
if lg1:GetCount()>0 then
flag=0x1
end
end
e:GetLabelObject():SetLabel(flag)
end
function c65011012.valcheck2(e,c)
local g=c:GetMaterial()
local flag=0
if g:GetCount()==2 then
local lv=0
local lg1=g:Filter(c65011012.lvfilter2,nil,c)
local lg2=g:Filter(Card.IsRace,nil,RACE_SPELLCASTER)
if lg1:GetCount()>0 then
flag=0x1
end
end end
e:GetLabelObject():SetLabel(flag)
end
function c65011012.filter(c)
return c:IsFaceup() and c:IsAttackPos()
end
function c65011012.actarget(e,te,tp)
local c=te:GetHandler()
return c:GetControler()==e:GetHandler():GetOwner()
end
function c65011012.costchk(e,te,tp)
return Duel.IsExistingMatchingCard(Card.IsAbleToGraveAsCost,tp,LOCATION_HAND,0,1,te:GetHandler())
end end
function cm.splimit(e,c) function c65011012.costop(e,tp,eg,ep,ev,re,r,rp)
return not rsisr.IsSet(c) Duel.Hint(HINT_CARD,0,65011012)
Duel.DiscardHand(tp,Card.IsAbleToGraveAsCost,1,1,REASON_COST,nil)
end end
\ No newline at end of file
This diff is collapsed.
--以斯拉的海龙 萨尔 --时终焉 阿卡纳
if not pcall(function() require("expansions/script/c65011001") end) then require("script/c65011001") end function c65011014.initial_effect(c)
local m,cm=rscf.DefineCard(65011014,"Israel") --link summon
function cm.initial_effect(c) aux.AddLinkProcedure(c,nil,2,2,c65011014.lcheck)
local e1=rsef.I(c,"tg",{1,m},"tg,sp",nil,LOCATION_HAND,nil,rscost.cost(0,"dish"),rsop.target2(cm.fun,cm.tgfilter,"tg",LOCATION_DECK),cm.tgop) c:EnableReviveLimit()
local e2=rsef.I(c,"sp",{1,m+100},"sp",nil,LOCATION_GRAVE,nil,nil,rsop.target(cm.spfilter,"sp"),cm.spop) --tohand
end local e1=Effect.CreateEffect(c)
function cm.tgfilter(c) e1:SetCategory(CATEGORY_TOHAND)
return c:IsAbleToGrave() and rsisr.IsSet(c) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
end e1:SetProperty(EFFECT_FLAG_DELAY)
function cm.fun(g,e,tp) e1:SetCode(EVENT_SPSUMMON_SUCCESS)
local c=e:GetHandler() e1:SetCountLimit(1,65011024)
if c:IsLocation(rsloc.gr) and c:IsReason(REASON_COST+REASON_DISCARD) then e1:SetCondition(c65011014.thcon)
Duel.SetTargetCard(c) e1:SetTarget(c65011014.thtg)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,c,0,0,0) e1:SetOperation(c65011014.thop)
end c:RegisterEffect(e1)
--cos
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(65011024,0))
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetCountLimit(1,65011014)
e2:SetRange(LOCATION_MZONE)
e2:SetTarget(c65011014.costg)
e2:SetOperation(c65011014.cosoperation)
c:RegisterEffect(e2)
end end
function cm.tgop(e,tp) function c65011014.lcheck(g)
local c=e:GetHandler() return g:GetClassCount(Card.GetLinkRace)==1
local ct,og,tc=rsop.SelectToGrave(tp,cm.tgfilter,tp,LOCATION_DECK,0,1,1,nil,{}) end
if tc and tc:IsLocation(LOCATION_GRAVE) and rscon.excard2(rsisr.IsSet,0,LOCATION_MZONE)(e,tp) and c:IsRelateToEffect(e) and rscf.spfilter2()(c,e,tp) and rsop.SelectYesNo(tp,"sp") then function c65011014.thcon(e,tp,eg,ep,ev,re,r,rp)
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP) return e:GetHandler():IsSummonType(SUMMON_TYPE_LINK)
end end
function c65011014.thfilter(c)
return c:IsSetCard(0x3da2) and c:IsAbleToHand()
end end
function cm.spfilter(c,e,tp) function c65011014.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
return c:IsCanBeSpecialSummoned(e,0,1-tp,1-tp,false,false,POS_FACEUP_DEFENSE) and Duel.GetLocationCount(1-tp,LOCATION_MZONE)>0 if chk==0 then return Duel.IsExistingMatchingCard(c65011014.thfilter,tp,LOCATION_GRAVE,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_GRAVE)
end end
function cm.spop(e,tp) function c65011014.thop(e,tp,eg,ep,ev,re,r,rp)
rsisr.drawlimit(e,tp) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local c=rscf.GetSelf(e) local g=Duel.SelectMatchingCard(tp,c65011014.thfilter,tp,LOCATION_GRAVE,0,1,1,nil)
if c and rsisr.spop(e,tp,POS_FACEUP_DEFENSE)>0 then if g:GetCount()>0 then
rsop.SelectOC("sp",true) Duel.SendtoHand(g,tp,REASON_EFFECT)
rsop.SelectSpecialSummon(tp,aux.NecroValleyFilter(rscf.spfilter2(rsisr.IsSet)),tp,rsloc.dg,0,1,1,nil,{},e,tp) Duel.ConfirmCards(1-tp,g)
end end
end end
function c65011014.filter2(c,fc)
if not c:IsAbleToGraveAsCost() then return false end
return aux.IsCodeListed(fc,c:GetCode())
end
function c65011014.filter1(c,tp)
return Duel.IsExistingMatchingCard(c65011014.filter2,tp,LOCATION_DECK,0,1,nil,c)
end
function c65011014.costg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c65011014.filter1,tp,LOCATION_EXTRA,0,1,nil,tp) end
end
function c65011014.cosoperation(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONFIRM)
local g=Duel.SelectMatchingCard(tp,c65011014.filter1,tp,LOCATION_EXTRA,0,1,1,nil,tp)
Duel.ConfirmCards(1-tp,g)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local cg=Duel.SelectMatchingCard(tp,c65011014.filter2,tp,LOCATION_DECK,0,1,1,nil,g:GetFirst())
Duel.SendtoGrave(cg,REASON_EFFECT)
local code=cg:GetFirst():GetCode()
local c=e:GetHandler()
if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CHANGE_CODE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetReset(RESET_EVENT+0x1fe0000+RESET_PHASE+PHASE_END)
e1:SetValue(code)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(65011014,1))
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_PHASE+PHASE_END)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e2:SetCountLimit(1)
e2:SetRange(LOCATION_MZONE)
e2:SetReset(RESET_EVENT+0x1fe0000+RESET_PHASE+PHASE_END)
e2:SetLabelObject(e1)
e2:SetOperation(c65011014.rstop)
c:RegisterEffect(e2)
end
function c65011014.rstop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
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
--以斯拉的领主 涅塔尼亚胡
if not pcall(function() require("expansions/script/c65011001") end) then require("script/c65011001") end
local m,cm=rscf.DefineCard(65011015,"Israel")
function cm.initial_effect(c)
c:EnableReviveLimit()
--link
local e0=Effect.CreateEffect(c)
e0:SetDescription(1166)
e0:SetType(EFFECT_TYPE_FIELD)
e0:SetCode(EFFECT_SPSUMMON_PROC)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetRange(LOCATION_EXTRA)
e0:SetCondition(cm.LinkCondition(cm.lfilter,1,5))
e0:SetTarget(cm.LinkTarget(cm.lfilter,1,5))
e0:SetOperation(Auxiliary.LinkOperation(cm.lfilter,1,5))
e0:SetValue(SUMMON_TYPE_LINK)
c:RegisterEffect(e0)
--splimit
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetCondition(cm.regcon)
e1:SetOperation(cm.regop)
c:RegisterEffect(e1)
--act
local e2=rsef.STO(c,EVENT_SPSUMMON_SUCCESS,"act",nil,nil,"de",rscon.sumtype("link"),nil,rsop.target(cm.actfilter,nil,LOCATION_DECK),cm.actop)
if cm.switch then return end
cm.switch = true
local ge1=rsef.FC({c,0},EVENT_SPSUMMON_SUCCESS)
ge1:SetOperation(cm.regop2)
end
function cm.actfilter(c,e,tp)
return rsisr.IsSet(c) and c:IsType(TYPE_CONTINUOUS) and c:GetActivateEffect():IsActivatable(tp,true,true) and e:GetHandler():GetLinkedGroupCount()>0
end
function cm.actop(e,tp)
local c=rscf.GetFaceUpSelf(e)
if not c then return end
local ct=c:GetLinkedGroupCount()
if ct==0 then return end
local ft=Duel.GetLocationCount(tp,LOCATION_SZONE)
ct = math.min(ft,ct)
rsop.SelectSolve("act",tp,cm.actfilter,tp,LOCATION_DECK,0,1,ct,nil,cm.actfun,e,tp)
end
function cm.actfun(g,e,tp)
for tc in aux.Next(g) do
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
function cm.regop2(e,tp,eg)
for p=0,1 do
if eg:IsExists(cm.spcfilter,1,nil,p) and Duel.GetFlagEffect(1-p,m)<4 then
Duel.RegisterFlagEffect(1-p,m,rsreset.pend,0,1)
end
end
end
function cm.spcfilter(c,p)
return c:IsFaceup() and rsisr.IsSet(c) and c:GetSummonPlayer()==p
end
function cm.lfilter(c)
return rsisr.IsLinkSet(c) and not c:IsLinkType(TYPE_LINK)
end
function cm.LinkCondition(f,minc,maxc,gf)
return function(e,c,og,lmat,min,max)
if c==nil then return true end
if c:IsType(TYPE_PENDULUM) and c:IsFaceup() then return false end
local minc=minc
local maxc=maxc-Duel.GetFlagEffect(tp,m)
if min then
if min>minc then minc=min end
if max<maxc then maxc=max end
if minc>maxc then return false end
end
local tp=c:GetControler()
local mg=nil
if og then
mg=og:Filter(Auxiliary.LConditionFilter,nil,f,c)
else
mg=Auxiliary.GetLinkMaterials(tp,f,c)
end
if lmat~=nil then
if not Auxiliary.LConditionFilter(lmat,f,c) then return false end
mg:AddCard(lmat)
end
local fg=Auxiliary.GetMustMaterialGroup(tp,EFFECT_MUST_BE_LMATERIAL)
if fg:IsExists(Auxiliary.MustMaterialCounterFilter,1,nil,mg) then return false end
Duel.SetSelectedCard(fg)
return mg:CheckSubGroup(cm.LCheckGoal,minc,maxc,tp,c,gf,lmat)
end
end
function cm.LCheckGoal(sg,tp,lc,gf,lmat)
return sg:CheckWithSumEqual(Auxiliary.GetLinkCount,lc:GetLink()-Duel.GetFlagEffect(tp,m),#sg,#sg)
and Duel.GetLocationCountFromEx(tp,tp,sg,lc)>0 and (not gf or gf(sg))
and not sg:IsExists(Auxiliary.LUncompatibilityFilter,1,nil,sg,lc,tp)
and (not lmat or sg:IsContains(lmat))
end
function cm.LinkTarget(f,minc,maxc,gf)
return function(e,tp,eg,ep,ev,re,r,rp,chk,c,og,lmat,min,max)
local minc=minc
local maxc=maxc-Duel.GetFlagEffect(tp,m)
if min then
if min>minc then minc=min end
if max<maxc then maxc=max end
if minc>maxc then return false end
end
local mg=nil
if og then
mg=og:Filter(Auxiliary.LConditionFilter,nil,f,c)
else
mg=Auxiliary.GetLinkMaterials(tp,f,c)
end
if lmat~=nil then
if not Auxiliary.LConditionFilter(lmat,f,c) then return false end
mg:AddCard(lmat)
end
local fg=Auxiliary.GetMustMaterialGroup(tp,EFFECT_MUST_BE_LMATERIAL)
Duel.SetSelectedCard(fg)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_LMATERIAL)
local cancel=Duel.IsSummonCancelable()
local sg=mg:SelectSubGroup(tp,cm.LCheckGoal,cancel,minc,maxc,tp,c,gf,lmat)
if sg then
sg:KeepAlive()
e:SetLabelObject(sg)
return true
else return false end
end
end
function cm.regcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_LINK)
end
function cm.regop(e,tp,eg,ep,ev,re,r,rp)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetTargetRange(1,0)
e1:SetReset(RESET_PHASE+PHASE_END)
e1:SetTarget(cm.splimit)
Duel.RegisterEffect(e1,tp)
end
function cm.splimit(e,c,sump,sumtype,sumpos,targetp,se)
return c:IsCode(m) and bit.band(sumtype,SUMMON_TYPE_LINK)==SUMMON_TYPE_LINK
end
\ No newline at end of file
--以斯拉的天使 加布里埃尔 --酒红之阿莉西娅
if not pcall(function() require("expansions/script/c65011001") end) then require("script/c65011001") end function c65011016.initial_effect(c)
local m,cm=rscf.DefineCard(65011016,"Israel") c:EnableReviveLimit()
function cm.initial_effect(c) --special summon rule
rscf.SetSummonCondition(c,false,aux.FALSE) local e0=Effect.CreateEffect(c)
aux.AddFusionProcFunRep(c,rsisr.IsFusSet,2,false) e0:SetType(EFFECT_TYPE_FIELD)
aux.AddContactFusionProcedure(c,Card.IsReleasable,LOCATION_MZONE,0,Duel.Release,REASON_COST+REASON_MATERIAL) e0:SetCode(EFFECT_SPSUMMON_PROC)
local e1=rsef.STO(c,EVENT_SPSUMMON_SUCCESS,"act",{1,m},nil,"de",nil,nil,rsop.target(cm.actfilter,nil,LOCATION_DECK),cm.actop) e0:SetProperty(EFFECT_FLAG_UNCOPYABLE)
local e2=rsef.I(c,"des",{1,m},"des","tg",LOCATION_MZONE,nil,rscost.reglabel(100),cm.destg,cm.desop) e0:SetRange(LOCATION_EXTRA)
end e0:SetCondition(c65011016.sprcon)
function cm.actfilter(c,e,tp) e0:SetOperation(c65011016.sprop)
return rsisr.IsSet(c) and c:IsComplexType(TYPE_SPELL,true,TYPE_CONTINUOUS,TYPE_FIELD) and c:GetActivateEffect():IsActivatable(tp,true,true) c:RegisterEffect(e0)
end --spsum
function cm.actop(e,tp) local e1=Effect.CreateEffect(c)
rsop.SelectMoveToField_Activate(tp,cm.actfilter,tp,LOCATION_DECK,0,1,1,nil,{},e,tp) e1:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_TOKEN)
end e1:SetType(EFFECT_TYPE_IGNITION)
function cm.cfilter(c) e1:SetRange(LOCATION_MZONE)
return c:IsFaceup() and rsisr.IsSetS(c) and c:IsAbleToGraveAsCost() e1:SetCountLimit(1,65011016)
end e1:SetCost(c65011016.spdcost)
function cm.gcheck(g,e,tp) e1:SetTarget(c65011016.spdtg)
local eg=Group.CreateGroup() e1:SetOperation(c65011016.spdop)
for tc in aux.Next(g) do c:RegisterEffect(e1)
eg:Merge(tc:GetEquipGroup()) end
end function c65011016.sprfilter(c)
eg:Merge(g) return c:IsFaceup() and c:IsAbleToGraveAsCost()
return Duel.IsExistingTarget(aux.TRUE,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,#g,eg) end
function c65011016.sprfilter1(c,tp,g,sc)
local lv=c:GetLevel()
return c:IsType(TYPE_TUNER) and g:IsExists(c65011016.sprfilter2,1,c,tp,c,sc,lv)
end
function c65011016.sprfilter2(c,tp,mc,sc,lv)
local sg=Group.FromCards(c,mc)
return c:GetLevel()==lv-1 and c:GetOriginalLevel()>0
and Duel.GetLocationCountFromEx(tp,tp,sg,sc)>0
end
function c65011016.sprcon(e,c)
if c==nil then return true end
local tp=c:GetControler()
local g=Duel.GetMatchingGroup(c65011016.sprfilter,tp,LOCATION_MZONE,0,nil)
return g:IsExists(c65011016.sprfilter1,1,nil,tp,g,c)
end end
function cm.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c65011016.sprop(e,tp,eg,ep,ev,re,r,rp,c)
local tg=Duel.GetMatchingGroup(cm.cfilter,tp,LOCATION_ONFIELD,0,nil) local g=Duel.GetMatchingGroup(c65011016.sprfilter,tp,LOCATION_MZONE,0,nil)
if chkc then return chkc:IsOnField() end Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
if chk==0 then local g1=g:FilterSelect(tp,c65011016.sprfilter1,1,1,nil,tp,g,c)
local mc=g1:GetFirst()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g2=g:FilterSelect(tp,c65011016.sprfilter2,1,1,mc,tp,mc,c,mc:GetLevel())
g1:Merge(g2)
Duel.SendtoGrave(g1,REASON_COST)
end
function c65011016.cosfil(c)
return c:IsType(TYPE_SYNCHRO) and c:IsLevelAbove(2)
end
function c65011016.spdcost(e,t,ep,ev,re,r,rp,chk)
e:SetLabel(100)
return true
end
function c65011016.spdtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
if e:GetLabel()~=100 then return false end if e:GetLabel()~=100 then return false end
e:SetLabel(0) e:SetLabel(0)
return tg:CheckSubGroup(cm.gcheck,1,2,tp) return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(c65011016.cosfil,tp,LOCATION_EXTRA,0,1,nil)
and Duel.IsPlayerCanSpecialSummonMonster(tp,65011017,0,0x4011,0,0,1,RACE_FAIRY,ATTRIBUTE_DARK,POS_FACEUP,tp)
end
local rg=Duel.SelectMatchingCard(tp,c65011016.cosfil,tp,LOCATION_EXTRA,0,1,1,nil)
local tc=rg:GetFirst()
local lv=tc:GetLevel()
Duel.ConfirmCards(1-tp,tc)
Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,0,0)
e:SetLabel(lv)
end
function c65011016.spdop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local lve=e:GetLabel()
local lv=lve-1
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
if not Duel.IsPlayerCanSpecialSummonMonster(tp,65011017,0,0x4011,0,0,1,RACE_FAIRY,ATTRIBUTE_DARK,POS_FACEUP,tp) then return end
if c:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CHANGE_LEVEL)
e1:SetValue(lv)
e1:SetReset(RESET_EVENT+0x1fe0000+RESET_PHASE+PHASE_END)
c:RegisterEffect(e1)
Duel.BreakEffect()
local token=Duel.CreateToken(tp,65011017)
if Duel.SpecialSummonStep(token,0,tp,tp,false,false,POS_FACEUP) then
--cannot link
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e3:SetCode(EFFECT_CANNOT_BE_LINK_MATERIAL)
e3:SetReset(RESET_EVENT+0x1fe0000)
e3:SetValue(1)
token:RegisterEffect(e3)
end
Duel.SpecialSummonComplete()
end end
rshint.Select(tp,"tg")
local tg2=tg:SelectSubGroup(tp,cm.gcheck,false,1,2,tp)
local ct=Duel.SendtoGrave(tg2,REASON_COST)
rshint.Select(tp,"des")
local dg=Duel.SelectTarget(tp,aux.TRUE,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,ct,ct,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,dg,#dg,0,0)
end
function cm.desop(e,tp)
local tg=rsgf.GetTargetGroup()
Duel.Destroy(tg,REASON_EFFECT)
end end
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment