Hola Andre, en mi caso utilice dos variables los cuales llame fuera de las funciones, una variable para el color y otra para un contador, luego monte una función que me cambiara el color e iba realizando el conteo según los el clic realizado por el usuario, y funciona tal cual al tuyo xd
<script>
var pantalla = document.querySelector("canvas");
var pincel = pantalla.getContext("2d");
pincel.fillStyle = 'grey';
pincel.fillRect(0,0,600,400);
var contar = 0;
var colorcito = 'blue';
function hacerCirculo(evento){
var x = evento.pageX - pantalla.offsetLeft;
var y = evento.pageY- pantalla.offsetTop;
pincel.fillStyle = colorcito;
pincel.beginPath();
pincel.arc(x,y,10,0,2*3.14);
pincel.fill();
console.log(x + '-' + y);
}
function cambiarColor() {
if (contar==0){
colorcito = 'red';
contar=1;
}else if(contar==1){
colorcito = 'green';
contar=2;
}else if(contar==2){
colorcito = 'blue';
contar=0;
}
}
pantalla.onclick = hacerCirculo; //no se agrega la funcion con parentesis para que la funcion arranque al hacer click
pantalla.oncontextmenu = cambiarColor;