Full
When this card resolves, send your entire hand to the Graveyard. Inflict 200 damage to your opponent for each card you sent to the Graveyard by this effect.
local s, id, o = GetID()
function s.initial_effect(c)
	--Activate
	local e1 = Effect.CreateEffect(c)
	e1:SetCategory(CATEGORY_DAMAGE)
	e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
	e1:SetType(EFFECT_TYPE_ACTIVATE)
	e1:SetCode(EVENT_FREE_CHAIN)
	e1:SetTarget(s.target)
	e1:SetOperation(s.activate)
	c:RegisterEffect(e1)
end
function s.target(e, tp, eg, ep, ev, re, r, rp, chk)
	if chk == 0 then
		return Duel.GetFieldGroupCount(tp, LOCATION_HAND, 0) > 0
	end
	Duel.SetTargetPlayer(1 - tp)
	local dam = Duel.GetFieldGroupCount(1 - tp, LOCATION_HAND, 0) * 200
	Duel.SetTargetParam(dam)
	Duel.SetOperationInfo(0, CATEGORY_DAMAGE, nil, 0, 1 - tp, dam)
end
function s.activate(e, tp, eg, ep, ev, re, r, rp)
	local g = Duel.GetFieldGroup(tp, LOCATION_HAND, 0)
	if Duel.SendtoGrave(g, REASON_EFFECT) > 0 then
		local og = Duel.GetOperatedGroup()
		local dam = og:FilterCount(Card.IsLocation, nil, LOCATION_GRAVE) * 200
		local p = Duel.GetChainInfo(0, CHAININFO_TARGET_PLAYER)
		Duel.Damage(p, dam, REASON_EFFECT)
	end
end


Full
When this card resolves, send your entire hand to the Graveyard. Inflict 200 damage to your opponent for each card you sent to the Graveyard by this effect.
-- Full
local s, id, o = GetID()
function s.initial_effect(c)
	--Activate
	local e1 = Effect.CreateEffect(c)
	e1:SetCategory(CATEGORY_DAMAGE)
	e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
	e1:SetType(EFFECT_TYPE_ACTIVATE)
	e1:SetCode(EVENT_FREE_CHAIN)
	e1:SetTarget(s.target)
	e1:SetOperation(s.activate)
	c:RegisterEffect(e1)
end
function s.target(e, tp, eg, ep, ev, re, r, rp, chk)
	if chk == 0 then
		return Duel.GetFieldGroupCount(tp, LOCATION_HAND, 0) > 0
	end
	Duel.SetTargetPlayer(1 - tp)
	local dam = Duel.GetFieldGroupCount(1 - tp, LOCATION_HAND, 0) * 200
	Duel.SetTargetParam(dam)
	Duel.SetOperationInfo(0, CATEGORY_DAMAGE, nil, 0, 1 - tp, dam)
end
function s.activate(e, tp, eg, ep, ev, re, r, rp)
	local g = Duel.GetFieldGroup(tp, LOCATION_HAND, 0)
	if Duel.SendtoGrave(g, REASON_EFFECT) > 0 then
		local og = Duel.GetOperatedGroup()
		local dam = og:FilterCount(Card.IsLocation, nil, LOCATION_GRAVE) * 200
		local p = Duel.GetChainInfo(0, CHAININFO_TARGET_PLAYER)
		Duel.Damage(p, dam, REASON_EFFECT)
	end
end

