Cyberdark
Fusion Summon 1 "Cyberdark Dragon" from your Extra Deck, by shuffling 1 each of "Cyberdark Horn", "Cyberdark Edge", and "Cyberdark Keel" from your hand, field, and/or GY, into the Deck, as Fusion Material.
local CARD_ID_0 = 40418351 --Cyberdark Dragon
local CARD_ID_1 = 41230939 --Cyberdark Horn
local CARD_ID_2 = 77625948 --Cyberdark Edge
local CARD_ID_3 = 3019642 --Cyberdark Keel

local CARD_ID_0 = 40418351 --Cyberdark Dragon
local CARD_ID_1 = 41230939 --Cyberdark Horn
local CARD_ID_2 = 77625948 --Cyberdark Edge
local CARD_ID_3 = 3019642 --Cyberdark Keel
local s, id, o = GetID()
function s.initial_effect(c)
	aux.AddCodeList(c, CARD_ID_1, CARD_ID_2, CARD_ID_3, CARD_ID_0)
	--Activate
	local e1 = FusionSpell.CreateSummonEffect(c, {
		fusfilter = s.fusfilter,
		matfilter = s.matfilter,
		pre_select_mat_location = LOCATION_HAND | LOCATION_ONFIELD | LOCATION_GRAVE,
		mat_operation_code_map = {
			{ [LOCATION_DECK] = FusionSpell.FUSION_OPERATION_GRAVE },
			{ [0xff] = FusionSpell.FUSION_OPERATION_SHUFFLE },
		},
		extra_target = s.extra_target,
	})
	e1:SetCategory(CATEGORY_TODECK + CATEGORY_SPECIAL_SUMMON + CATEGORY_FUSION_SUMMON)
	c:RegisterEffect(e1)
end

function s.fusfilter(c)
	return c:IsCode(CARD_ID_0) --- 鎧黒竜-サイバー・ダーク・ドラゴン
end

function s.matfilter(c)
	--- material must be one of this name
	return c:IsFusionCode(CARD_ID_1, CARD_ID_2, CARD_ID_3)
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_HAND)
end


Cyberdark
Fusion Summon 1 "Cyberdark Dragon" from your Extra Deck, by shuffling 1 each of "Cyberdark Horn", "Cyberdark Edge", and "Cyberdark Keel" from your hand, field, and/or GY, into the Deck, as Fusion Material.
-- Cyberdark
local CARD_ID_0 = 40418351 --Cyberdark Dragon
local CARD_ID_1 = 41230939 --Cyberdark Horn
local CARD_ID_2 = 77625948 --Cyberdark Edge
local CARD_ID_3 = 3019642 --Cyberdark Keel
local s, id, o = GetID()
function s.initial_effect(c)
	aux.AddCodeList(c, CARD_ID_1, CARD_ID_2, CARD_ID_3, CARD_ID_0)
	--Activate
	local e1 = FusionSpell.CreateSummonEffect(c, {
		fusfilter = s.fusfilter,
		matfilter = s.matfilter,
		pre_select_mat_location = LOCATION_HAND | LOCATION_ONFIELD | LOCATION_GRAVE,
		mat_operation_code_map = {
			{ [LOCATION_DECK] = FusionSpell.FUSION_OPERATION_GRAVE },
			{ [0xff] = FusionSpell.FUSION_OPERATION_SHUFFLE },
		},
		extra_target = s.extra_target,
	})
	e1:SetCategory(CATEGORY_TODECK + CATEGORY_SPECIAL_SUMMON + CATEGORY_FUSION_SUMMON)
	c:RegisterEffect(e1)
end

function s.fusfilter(c)
	return c:IsCode(CARD_ID_0) --- 鎧黒竜-サイバー・ダーク・ドラゴン
end

function s.matfilter(c)
	--- material must be one of this name
	return c:IsFusionCode(CARD_ID_1, CARD_ID_2, CARD_ID_3)
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_HAND)
end

