name: ミュートリアスの産声
card_text: このカード名のカードは1ターンに1枚しか発動できない。
  1:自分・相手のメインフェイズに発動できる。
  自分のフィールド・墓地のモンスター及び除外されている自分のモンスターの中から、「ミュートリア」融合モンスターカードによって決められた融合素材モンスターを持ち主のデッキに戻し、その融合モンスター1体をEXデッキから融合召喚する。
external_ids: local SETCARD_ID_0 = 0x157 --ミュートリア
  
lua: local SETCARD_ID_0 = 0x157 --ミュートリア
  local s, id, o = GetID()
  function s.initial_effect(c)
  	--Activate
  	local e1 = FusionSpell.CreateSummonEffect(c, {
  		fusfilter = s.fusfilter,
  		pre_select_mat_location = LOCATION_MZONE | LOCATION_GRAVE | LOCATION_REMOVED,
  		extra_target = s.extra_target,
  		mat_operation_code_map = {
  			{ [LOCATION_DECK] = FusionSpell.FUSION_OPERATION_GRAVE },
  			{ [0xff] = FusionSpell.FUSION_OPERATION_SHUFFLE },
  		},
  	})
  	e1:SetCategory(CATEGORY_TODECK + CATEGORY_SPECIAL_SUMMON + CATEGORY_FUSION_SUMMON)
  	e1:SetCountLimit(1, id + EFFECT_COUNT_CODE_OATH)
  	e1:SetHintTiming(0, TIMINGS_CHECK_MONSTER + TIMING_MAIN_END)
  	e1:SetCondition(s.condition)
  	c:RegisterEffect(e1)
  end
  
  function s.condition(e, tp, eg, ep, ev, re, r, rp)
  	return Duel.GetCurrentPhase() == PHASE_MAIN1 or Duel.GetCurrentPhase() == PHASE_MAIN2
  end
  
  function s.fusfilter(c)
  	return c:IsSetCard(SETCARD_ID_0)
  end
  
  function s.extra_target(e, tp, eg, ep, ev, re, r, rp, chk)
  	if chk == 0 then
  		return true
  	end
  	Duel.SetOperationInfo(0, CATEGORY_TODECK, nil, 1, tp, LOCATION_ONFIELD + LOCATION_GRAVE + LOCATION_REMOVED)
  end
  
  
source_text: ミュートリアスの産声
  このカード名のカードは1ターンに1枚しか発動できない。
  1:自分・相手のメインフェイズに発動できる。
  自分のフィールド・墓地のモンスター及び除外されている自分のモンスターの中から、「ミュートリア」融合モンスターカードによって決められた融合素材モンスターを持ち主のデッキに戻し、その融合モンスター1体をEXデッキから融合召喚する。
target_text: -- ミュートリアスの産声
  local SETCARD_ID_0 = 0x157 --ミュートリア
  local s, id, o = GetID()
  function s.initial_effect(c)
  	--Activate
  	local e1 = FusionSpell.CreateSummonEffect(c, {
  		fusfilter = s.fusfilter,
  		pre_select_mat_location = LOCATION_MZONE | LOCATION_GRAVE | LOCATION_REMOVED,
  		extra_target = s.extra_target,
  		mat_operation_code_map = {
  			{ [LOCATION_DECK] = FusionSpell.FUSION_OPERATION_GRAVE },
  			{ [0xff] = FusionSpell.FUSION_OPERATION_SHUFFLE },
  		},
  	})
  	e1:SetCategory(CATEGORY_TODECK + CATEGORY_SPECIAL_SUMMON + CATEGORY_FUSION_SUMMON)
  	e1:SetCountLimit(1, id + EFFECT_COUNT_CODE_OATH)
  	e1:SetHintTiming(0, TIMINGS_CHECK_MONSTER + TIMING_MAIN_END)
  	e1:SetCondition(s.condition)
  	c:RegisterEffect(e1)
  end
  
  function s.condition(e, tp, eg, ep, ev, re, r, rp)
  	return Duel.GetCurrentPhase() == PHASE_MAIN1 or Duel.GetCurrentPhase() == PHASE_MAIN2
  end
  
  function s.fusfilter(c)
  	return c:IsSetCard(SETCARD_ID_0)
  end
  
  function s.extra_target(e, tp, eg, ep, ev, re, r, rp, chk)
  	if chk == 0 then
  		return true
  	end
  	Duel.SetOperationInfo(0, CATEGORY_TODECK, nil, 1, tp, LOCATION_ONFIELD + LOCATION_GRAVE + LOCATION_REMOVED)
  end
  
  