buen dia, doy solucion al reto con mi pequeña explicacion.
<canvas width="600" height="400"> </canvas>
<script>
var pantalla = document.querySelector("canvas");
var pincel = pantalla.getContext("2d");
pincel.fillStyle = "grey";
pincel.fillRect(0,0,600,400);
//se crea la variable array con los colores
var colores = ["blue", "red", "green"];
//se crea una variable con un inicializador
var colorActual = 0;
function dibujarCirculo(evento){
var x = evento.pageX - pantalla.offsetLeft;
var y = evento.pageY - pantalla.offsetTop;
//damos color al circulo llamando el color que tenemos en nuestra variable colores y la posicion que inicializamos
//esta ira aumentando cada vez que el if dentro de la funcion alterarColor es true.
pincel.fillStyle = colores[colorActual];
pincel.beginPath();
pincel.arc(x,y,10,0,2*3.14);
pincel.fill();
console.log(x + "," + y);
}
//onclick = al clickizquierdo
pantalla.onclick = dibujarCirculo;
//funcion alterarColor
function alterarColor() {
//contador para ir aumnetando y poder cambiar de posicion al color red o green
colorActual ++;
//si el contador es mayor o igual que el tamañano de colores entonces iniciamos de nuevo en el color blue
if (colorActual >= colores.length) {
colorActual = 0;
}
alert(colorActual);
return false;
}
//oncontextmenu = al click derecho
pantalla.oncontextmenu = alterarColor;
</script>