羅睺星辰
このカード名のカードは1ターンに1枚しか発動できない。
1:自分の手札・デッキ・フィールドのモンスターを融合素材とし、「ドラゴンテイル」融合モンスター1体を融合召喚する。
このカードの発動後、ターン終了時まで自分は融合モンスターしかEXデッキから特殊召喚できない。
local SETCARD_ID_0 = 0x1c9 --星辰(ドラゴンテイル)

local SETCARD_ID_0 = 0x1c9 --星辰(ドラゴンテイル)
local s, id, o = GetID()
function s.initial_effect(c)
	--activate
	local e1 = FusionSpell.CreateSummonEffect(c, {
		fusfilter = s.fusfilter,
		pre_select_mat_location = LOCATION_HAND | LOCATION_MZONE | LOCATION_DECK,
		stage_x_operation = s.stage_x_operation,
	})
	e1:SetCategory(CATEGORY_SPECIAL_SUMMON + CATEGORY_FUSION_SUMMON + CATEGORY_DECKDES)
	e1:SetCountLimit(1, id + EFFECT_COUNT_CODE_OATH)
	c:RegisterEffect(e1)
end

function s.fusfilter(c)
	return c:IsSetCard(SETCARD_ID_0)
end

function s.stage_x_operation(e, tc, tp, stage)
	if stage == FusionSpell.STAGE_AT_ALL_OPERATION_FINISH then
		if not e:IsHasType(EFFECT_TYPE_ACTIVATE) then
			return
		end
		local e1 = Effect.CreateEffect(e:GetHandler())
		e1:SetType(EFFECT_TYPE_FIELD)
		e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
		e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
		e1:SetTargetRange(1, 0)
		e1:SetTarget(s.splimit)
		e1:SetReset(RESET_PHASE + PHASE_END)
		Duel.RegisterEffect(e1, tp)
	end
end

function s.splimit(e, c)
	return not c:IsType(TYPE_FUSION) and c:IsLocation(LOCATION_EXTRA)
end


羅睺星辰
このカード名のカードは1ターンに1枚しか発動できない。
1:自分の手札・デッキ・フィールドのモンスターを融合素材とし、「ドラゴンテイル」融合モンスター1体を融合召喚する。
このカードの発動後、ターン終了時まで自分は融合モンスターしかEXデッキから特殊召喚できない。
-- 羅睺星辰
local SETCARD_ID_0 = 0x1c9 --星辰(ドラゴンテイル)
local s, id, o = GetID()
function s.initial_effect(c)
	--activate
	local e1 = FusionSpell.CreateSummonEffect(c, {
		fusfilter = s.fusfilter,
		pre_select_mat_location = LOCATION_HAND | LOCATION_MZONE | LOCATION_DECK,
		stage_x_operation = s.stage_x_operation,
	})
	e1:SetCategory(CATEGORY_SPECIAL_SUMMON + CATEGORY_FUSION_SUMMON + CATEGORY_DECKDES)
	e1:SetCountLimit(1, id + EFFECT_COUNT_CODE_OATH)
	c:RegisterEffect(e1)
end

function s.fusfilter(c)
	return c:IsSetCard(SETCARD_ID_0)
end

function s.stage_x_operation(e, tc, tp, stage)
	if stage == FusionSpell.STAGE_AT_ALL_OPERATION_FINISH then
		if not e:IsHasType(EFFECT_TYPE_ACTIVATE) then
			return
		end
		local e1 = Effect.CreateEffect(e:GetHandler())
		e1:SetType(EFFECT_TYPE_FIELD)
		e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
		e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
		e1:SetTargetRange(1, 0)
		e1:SetTarget(s.splimit)
		e1:SetReset(RESET_PHASE + PHASE_END)
		Duel.RegisterEffect(e1, tp)
	end
end

function s.splimit(e, c)
	return not c:IsType(TYPE_FUSION) and c:IsLocation(LOCATION_EXTRA)
end

