Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

No me genera alerta!!

<canvas width=" 600 " height="400"> </canvas>

<script>


    var pantalla = document.querySelector("canvas");     
    var pincel = pantalla.getContext("2d");

    pincel.fillStyle = "lightgrey";
    pincel.fillRect(0 , 0 , 600 , 400);


    var radio = 10
    var xaleatorio;
    var yaleatorio;


    function disenharCircunferencia(x , y , radio , color){

         pincel.fillStyle = color;
         pincel.beginPath();
         pincel.arc(x , y , radio , 0 , 2*Math.PI);
         pincel.fill(); 


    } 

    function limpiarPantalla(){

        pincel.clearRect(0,0,600,400);

    } 


    var x = 0

    function actualizarPantalla(){



        limpiarPantalla();
        disenharCircunferencia(x , 20 , 10);
        x++;

    } 


    function disenharObjetivo( x , y ){


    disenharCircunferencia(x, y ,radio + 20 ,"red");
    disenharCircunferencia(x,y ,radio + 10 ,"white");
    disenharCircunferencia(x,y ,radio ,"green");
}

    function sortearPosicion(maximo){ 


        return Math.floor(Math.random()*maximo)



    }

    function actualizarPantalla(){



        limpiarPantalla();
        xaleatorio = sortearPosicion(600);
        yaleatorio=  sortearPosicion(400);
        disenharObjetivo(xaleatorio , yaleatorio);
        x++;
    }

   setInterval(actualizarPantalla ,1000);

   function disparar(evento){
      var x = evento.pagex - pantalla.offsetleft;
      var y = evento.pagey - pantalla.offsetTop;

      if((x < xaleatorio + radio )&&
        (x > xaleatorio - radio)  &&
        (y < yaleatorio  + radio) &&
        (y > yaleatorio - radio) ) {

         alert("tiro Certero");
      }

   }

   pantalla.onclick = disparar;


</script>
1 respuesta

Hola Hansel

Revisa mayúsculas y minúsculas tienes escrito mal tu código por eso no capturas los valores del evento en

var x = evento.pagex - pantalla.offsetleft;

var y = evento.pagey - pantalla.offsetTop;

Así deberías escribirlos

  var x = evento.pageX - pantalla.offsetLeft;
  var y = evento.pageY - pantalla.offsetTop;

Cuéntame como te fue y avísame cualquier cosa aquí estaré para poder ayudarte

Saludos.-

Si el aporte te ayudó, marca como solucionado ✓