Yowie
If this card is Summoned (and no other cards): You can activate this effect; your opponent skips their next Draw Phase. You can only Special Summon once, the turn you activate this effect. You can only use this effect of "Yowie" once per Duel.
local s, id, o = GetID()
function s.initial_effect(c)
	Duel.EnableGlobalFlag(GLOBALFLAG_SPSUMMON_COUNT)
	--Draw Phase Skip
	local e1 = Effect.CreateEffect(c)
	e1:SetDescription(aux.Stringid(id, 0))
	e1:SetType(EFFECT_TYPE_FIELD + EFFECT_TYPE_TRIGGER_O)
	e1:SetProperty(EFFECT_FLAG_DELAY)
	e1:SetCode(EVENT_SUMMON_SUCCESS)
	e1:SetRange(LOCATION_MZONE)
	e1:SetCountLimit(1, id + EFFECT_COUNT_CODE_DUEL)
	e1:SetCost(s.cost)
	e1:SetCondition(s.condition)
	e1:SetTarget(s.target)
	e1:SetOperation(s.activate)
	c:RegisterEffect(e1)
	local e2 = e1:Clone()
	e2:SetCode(EVENT_FLIP_SUMMON_SUCCESS)
	c:RegisterEffect(e2)
	local e3 = e1:Clone()
	e3:SetCode(EVENT_SPSUMMON_SUCCESS)
	c:RegisterEffect(e3)
end
function s.cost(e, tp, eg, ep, ev, re, r, rp, chk)
	local c = e:GetHandler()
	local sp = Duel.GetActivityCount(tp, ACTIVITY_SPSUMMON)
	if chk == 0 then
		return sp <= 1
	end
	if sp == 0 then
		local e1 = Effect.CreateEffect(c)
		e1:SetType(EFFECT_TYPE_FIELD)
		e1:SetCode(EFFECT_SPSUMMON_COUNT_LIMIT)
		e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET + EFFECT_FLAG_OATH)
		e1:SetTargetRange(1, 0)
		e1:SetValue(1)
		e1:SetReset(RESET_PHASE + PHASE_END)
		Duel.RegisterEffect(e1, tp)
	else
		local e1 = Effect.CreateEffect(c)
		e1:SetType(EFFECT_TYPE_FIELD)
		e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET + EFFECT_FLAG_OATH)
		e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
		e1:SetTargetRange(1, 0)
		e1:SetReset(RESET_PHASE + PHASE_END)
		Duel.RegisterEffect(e1, tp)
	end
end
function s.condition(e, tp, eg, ep, ev, re, r, rp)
	return eg:GetCount() == 1 and eg:IsContains(e:GetHandler())
end
function s.target(e, tp, eg, ep, ev, re, r, rp, chk)
	if chk == 0 then
		return not Duel.IsPlayerAffectedByEffect(1 - tp, EFFECT_SKIP_DP)
	end
end
function s.activate(e, tp, eg, ep, ev, re, r, rp)
	local e1 = Effect.CreateEffect(e:GetHandler())
	e1:SetType(EFFECT_TYPE_FIELD)
	e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
	e1:SetTargetRange(0, 1)
	e1:SetCode(EFFECT_SKIP_DP)
	if Duel.GetTurnPlayer() == tp then
		e1:SetReset(RESET_PHASE + PHASE_END + RESET_OPPO_TURN, 1)
	else
		e1:SetReset(RESET_PHASE + PHASE_END + RESET_OPPO_TURN, 2)
	end
	Duel.RegisterEffect(e1, tp)
end


Yowie
If this card is Summoned (and no other cards): You can activate this effect; your opponent skips their next Draw Phase. You can only Special Summon once, the turn you activate this effect. You can only use this effect of "Yowie" once per Duel.
-- Yowie
local s, id, o = GetID()
function s.initial_effect(c)
	Duel.EnableGlobalFlag(GLOBALFLAG_SPSUMMON_COUNT)
	--Draw Phase Skip
	local e1 = Effect.CreateEffect(c)
	e1:SetDescription(aux.Stringid(id, 0))
	e1:SetType(EFFECT_TYPE_FIELD + EFFECT_TYPE_TRIGGER_O)
	e1:SetProperty(EFFECT_FLAG_DELAY)
	e1:SetCode(EVENT_SUMMON_SUCCESS)
	e1:SetRange(LOCATION_MZONE)
	e1:SetCountLimit(1, id + EFFECT_COUNT_CODE_DUEL)
	e1:SetCost(s.cost)
	e1:SetCondition(s.condition)
	e1:SetTarget(s.target)
	e1:SetOperation(s.activate)
	c:RegisterEffect(e1)
	local e2 = e1:Clone()
	e2:SetCode(EVENT_FLIP_SUMMON_SUCCESS)
	c:RegisterEffect(e2)
	local e3 = e1:Clone()
	e3:SetCode(EVENT_SPSUMMON_SUCCESS)
	c:RegisterEffect(e3)
end
function s.cost(e, tp, eg, ep, ev, re, r, rp, chk)
	local c = e:GetHandler()
	local sp = Duel.GetActivityCount(tp, ACTIVITY_SPSUMMON)
	if chk == 0 then
		return sp <= 1
	end
	if sp == 0 then
		local e1 = Effect.CreateEffect(c)
		e1:SetType(EFFECT_TYPE_FIELD)
		e1:SetCode(EFFECT_SPSUMMON_COUNT_LIMIT)
		e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET + EFFECT_FLAG_OATH)
		e1:SetTargetRange(1, 0)
		e1:SetValue(1)
		e1:SetReset(RESET_PHASE + PHASE_END)
		Duel.RegisterEffect(e1, tp)
	else
		local e1 = Effect.CreateEffect(c)
		e1:SetType(EFFECT_TYPE_FIELD)
		e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET + EFFECT_FLAG_OATH)
		e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
		e1:SetTargetRange(1, 0)
		e1:SetReset(RESET_PHASE + PHASE_END)
		Duel.RegisterEffect(e1, tp)
	end
end
function s.condition(e, tp, eg, ep, ev, re, r, rp)
	return eg:GetCount() == 1 and eg:IsContains(e:GetHandler())
end
function s.target(e, tp, eg, ep, ev, re, r, rp, chk)
	if chk == 0 then
		return not Duel.IsPlayerAffectedByEffect(1 - tp, EFFECT_SKIP_DP)
	end
end
function s.activate(e, tp, eg, ep, ev, re, r, rp)
	local e1 = Effect.CreateEffect(e:GetHandler())
	e1:SetType(EFFECT_TYPE_FIELD)
	e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
	e1:SetTargetRange(0, 1)
	e1:SetCode(EFFECT_SKIP_DP)
	if Duel.GetTurnPlayer() == tp then
		e1:SetReset(RESET_PHASE + PHASE_END + RESET_OPPO_TURN, 1)
	else
		e1:SetReset(RESET_PHASE + PHASE_END + RESET_OPPO_TURN, 2)
	end
	Duel.RegisterEffect(e1, tp)
end

