name: Chimeratech
card_text: "Cyber Dragon" + 1+ Machine monsters
  Cannot be used as Fusion Material. Must first be Special Summoned (from your Extra Deck) by sending the above cards from either field to the GY. The original ATK of this card becomes 1000 x the number of materials used for its Special Summon.
external_ids: local CARD_ID_0 = 70095154 --Cyber Dragon
  
lua: local CARD_ID_0 = 70095154 --Cyber Dragon
  local s, id, o = GetID()
  function s.initial_effect(c)
  	--fusion material
  	c:EnableReviveLimit()
  	aux.AddFusionProcCodeFunRep(c, CARD_ID_0, s.mfilter, 1, 127, true, true)
  	aux.AddContactFusionProcedure(c, s.cfilter, LOCATION_ONFIELD, LOCATION_ONFIELD, s.sprop(c))
  	--spsummon condition
  	local e1 = Effect.CreateEffect(c)
  	e1:SetType(EFFECT_TYPE_SINGLE)
  	e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE + EFFECT_FLAG_UNCOPYABLE)
  	e1:SetCode(EFFECT_SPSUMMON_CONDITION)
  	e1:SetValue(s.splimit)
  	c:RegisterEffect(e1)
  	--cannot be fusion material
  	local e3 = Effect.CreateEffect(c)
  	e3:SetType(EFFECT_TYPE_SINGLE)
  	e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE + EFFECT_FLAG_UNCOPYABLE)
  	e3:SetCode(EFFECT_CANNOT_BE_FUSION_MATERIAL)
  	e3:SetValue(1)
  	c:RegisterEffect(e3)
  end
  s.material_setcode = 0x1093
  function s.splimit(e, se, sp, st)
  	return e:GetHandler():GetLocation() ~= LOCATION_EXTRA
  end
  function s.mfilter(c)
  	return c:IsRace(RACE_MACHINE) and c:IsType(TYPE_MONSTER)
  end
  function s.cfilter(c, fc)
  	return c:IsAbleToGraveAsCost() and (c:IsControler(fc:GetControler()) or c:IsFaceup())
  end
  function s.sprop(c)
  	return function(g)
  		Duel.SendtoGrave(g, REASON_COST)
  		--spsummon condition
  		local ct = g:GetCount()
  		local e1 = Effect.CreateEffect(c)
  		e1:SetType(EFFECT_TYPE_SINGLE)
  		e1:SetCode(EFFECT_SET_BASE_ATTACK)
  		e1:SetReset(RESET_EVENT + 0xff0000)
  		e1:SetValue(ct * 1000)
  		c:RegisterEffect(e1)
  	end
  end
  
  
source_text: Chimeratech
  "Cyber Dragon" + 1+ Machine monsters
  Cannot be used as Fusion Material. Must first be Special Summoned (from your Extra Deck) by sending the above cards from either field to the GY. The original ATK of this card becomes 1000 x the number of materials used for its Special Summon.
target_text: -- Chimeratech
  local CARD_ID_0 = 70095154 --Cyber Dragon
  local s, id, o = GetID()
  function s.initial_effect(c)
  	--fusion material
  	c:EnableReviveLimit()
  	aux.AddFusionProcCodeFunRep(c, CARD_ID_0, s.mfilter, 1, 127, true, true)
  	aux.AddContactFusionProcedure(c, s.cfilter, LOCATION_ONFIELD, LOCATION_ONFIELD, s.sprop(c))
  	--spsummon condition
  	local e1 = Effect.CreateEffect(c)
  	e1:SetType(EFFECT_TYPE_SINGLE)
  	e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE + EFFECT_FLAG_UNCOPYABLE)
  	e1:SetCode(EFFECT_SPSUMMON_CONDITION)
  	e1:SetValue(s.splimit)
  	c:RegisterEffect(e1)
  	--cannot be fusion material
  	local e3 = Effect.CreateEffect(c)
  	e3:SetType(EFFECT_TYPE_SINGLE)
  	e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE + EFFECT_FLAG_UNCOPYABLE)
  	e3:SetCode(EFFECT_CANNOT_BE_FUSION_MATERIAL)
  	e3:SetValue(1)
  	c:RegisterEffect(e3)
  end
  s.material_setcode = 0x1093
  function s.splimit(e, se, sp, st)
  	return e:GetHandler():GetLocation() ~= LOCATION_EXTRA
  end
  function s.mfilter(c)
  	return c:IsRace(RACE_MACHINE) and c:IsType(TYPE_MONSTER)
  end
  function s.cfilter(c, fc)
  	return c:IsAbleToGraveAsCost() and (c:IsControler(fc:GetControler()) or c:IsFaceup())
  end
  function s.sprop(c)
  	return function(g)
  		Duel.SendtoGrave(g, REASON_COST)
  		--spsummon condition
  		local ct = g:GetCount()
  		local e1 = Effect.CreateEffect(c)
  		e1:SetType(EFFECT_TYPE_SINGLE)
  		e1:SetCode(EFFECT_SET_BASE_ATTACK)
  		e1:SetReset(RESET_EVENT + 0xff0000)
  		e1:SetValue(ct * 1000)
  		c:RegisterEffect(e1)
  	end
  end
  
  