name: セイクリッドの流星
card_text: このカードを発動したターン、「セイクリッド」と名のついたモンスターとの戦闘で破壊されなかった相手モンスターは、ダメージステップ終了時に持ち主のデッキに戻る。
external_ids: local SETCARD_ID_0 = 0x53 --セイクリッド
  
lua: local SETCARD_ID_0 = 0x53 --セイクリッド
  local s, id, o = GetID()
  function s.initial_effect(c)
  	--
  	local e1 = Effect.CreateEffect(c)
  	e1:SetType(EFFECT_TYPE_ACTIVATE)
  	e1:SetCode(EVENT_FREE_CHAIN)
  	e1:SetTarget(s.target)
  	e1:SetOperation(s.regop)
  	c:RegisterEffect(e1)
  end
  function s.target(e, tp, eg, ep, ev, re, r, rp, chk)
  	if chk == 0 then
  		return e:IsHasType(EFFECT_TYPE_ACTIVATE)
  	end
  end
  function s.regop(e, tp, eg, ep, ev, re, r, rp)
  	local e1 = Effect.CreateEffect(e:GetHandler())
  	e1:SetType(EFFECT_TYPE_FIELD + EFFECT_TYPE_CONTINUOUS)
  	e1:SetCode(EVENT_DAMAGE_STEP_END)
  	e1:SetOperation(s.retop)
  	e1:SetReset(RESET_PHASE + PHASE_END)
  	Duel.RegisterEffect(e1, tp)
  end
  function s.retop(e, tp, eg, ep, ev, re, r, rp)
  	local a = Duel.GetAttacker()
  	local d = Duel.GetAttackTarget()
  	local g = Group.CreateGroup()
  	if a:IsSetCard(SETCARD_ID_0) and d and d:IsControler(1 - tp) and d:IsRelateToBattle() then
  		g:AddCard(d)
  	end
  	if d and d:IsSetCard(SETCARD_ID_0) and a:IsControler(1 - tp) and a:IsRelateToBattle() then
  		g:AddCard(a)
  	end
  	Duel.SendtoDeck(g, nil, SEQ_DECKSHUFFLE, REASON_EFFECT)
  end
  
  
source_text: セイクリッドの流星
  このカードを発動したターン、「セイクリッド」と名のついたモンスターとの戦闘で破壊されなかった相手モンスターは、ダメージステップ終了時に持ち主のデッキに戻る。
target_text: -- セイクリッドの流星
  local SETCARD_ID_0 = 0x53 --セイクリッド
  local s, id, o = GetID()
  function s.initial_effect(c)
  	--
  	local e1 = Effect.CreateEffect(c)
  	e1:SetType(EFFECT_TYPE_ACTIVATE)
  	e1:SetCode(EVENT_FREE_CHAIN)
  	e1:SetTarget(s.target)
  	e1:SetOperation(s.regop)
  	c:RegisterEffect(e1)
  end
  function s.target(e, tp, eg, ep, ev, re, r, rp, chk)
  	if chk == 0 then
  		return e:IsHasType(EFFECT_TYPE_ACTIVATE)
  	end
  end
  function s.regop(e, tp, eg, ep, ev, re, r, rp)
  	local e1 = Effect.CreateEffect(e:GetHandler())
  	e1:SetType(EFFECT_TYPE_FIELD + EFFECT_TYPE_CONTINUOUS)
  	e1:SetCode(EVENT_DAMAGE_STEP_END)
  	e1:SetOperation(s.retop)
  	e1:SetReset(RESET_PHASE + PHASE_END)
  	Duel.RegisterEffect(e1, tp)
  end
  function s.retop(e, tp, eg, ep, ev, re, r, rp)
  	local a = Duel.GetAttacker()
  	local d = Duel.GetAttackTarget()
  	local g = Group.CreateGroup()
  	if a:IsSetCard(SETCARD_ID_0) and d and d:IsControler(1 - tp) and d:IsRelateToBattle() then
  		g:AddCard(d)
  	end
  	if d and d:IsSetCard(SETCARD_ID_0) and a:IsControler(1 - tp) and a:IsRelateToBattle() then
  		g:AddCard(a)
  	end
  	Duel.SendtoDeck(g, nil, SEQ_DECKSHUFFLE, REASON_EFFECT)
  end
  
  