I'm using a custom counter to cycle bullet point colours in beamer:
\documentclass{beamer}
\usepackage{graphicx,color}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage{marvosym}
\newcommand{\myitem}[1]{\item[{\textcolor{#1}\Laserbeam}]}
\newcounter{myc}%[frame] <--if I uncomment [frame] it won't compile
\makeatletter
\def\newitem{
\stepcounter{myc}%
\ifnum\value{myc}=1
\myitem{red}
\else\ifnum\value{myc}=2
\myitem{green}
\else\ifnum\value{myc}=3
\myitem{blue}
\setcounter{myc}{0}
\fi\fi\fi
}
\begin{document}
\begin{frame}
\begin{itemize}
\newitem An item
\newitem Another item
\newitem Yet another item
\newitem These items...
\newitem ...are rather boring
\end{itemize}
\end{frame}
\begin{frame}
\begin{itemize}
\newitem An item on a second slide
\newitem Another item
\newitem Yet another item
\newitem These items...
\newitem ...are rather boring
\end{itemize}
\end{frame}
\end{document}
with the following result (2 slides combined in to 1 image)

However I would like the colours to reset at the start of a new frame, without having to insert \setcounter{myc}{0} after each \begin{frame} Based on this answer I thought I might be able to use \newcounter{myc}[frame], but I can't: ! LaTeX Error: No counter 'frame' defined.
So how do I reset a counter per frame?
