龍の鏡
1:自分のフィールド・墓地から、ドラゴン族の融合モンスターカードによって決められた融合素材モンスターを除外し、その融合モンスター1体をEXデッキから融合召喚する。
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,
		mat_operation_code_map = {
			{ [LOCATION_REMOVED] = FusionSpell.FUSION_OPERATION_GRAVE },
			{ [0xff] = FusionSpell.FUSION_OPERATION_BANISH },
		},
		extra_target = s.extra_target,
	})
	e1:SetCategory(CATEGORY_REMOVE + CATEGORY_SPECIAL_SUMMON + CATEGORY_FUSION_SUMMON)
	c:RegisterEffect(e1)
end

function s.fusfilter(c)
	return c:IsRace(RACE_DRAGON)
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_REMOVE, nil, 1, tp, LOCATION_ONFIELD + LOCATION_GRAVE)
end


龍の鏡
1:自分のフィールド・墓地から、ドラゴン族の融合モンスターカードによって決められた融合素材モンスターを除外し、その融合モンスター1体をEXデッキから融合召喚する。
-- 龍の鏡
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,
		mat_operation_code_map = {
			{ [LOCATION_REMOVED] = FusionSpell.FUSION_OPERATION_GRAVE },
			{ [0xff] = FusionSpell.FUSION_OPERATION_BANISH },
		},
		extra_target = s.extra_target,
	})
	e1:SetCategory(CATEGORY_REMOVE + CATEGORY_SPECIAL_SUMMON + CATEGORY_FUSION_SUMMON)
	c:RegisterEffect(e1)
end

function s.fusfilter(c)
	return c:IsRace(RACE_DRAGON)
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_REMOVE, nil, 1, tp, LOCATION_ONFIELD + LOCATION_GRAVE)
end

