Hasta ahora, usamos 2 numeros para calcular la posicion donde dibujar el fantasma, podemos ver que IZQ y ARR, y usamos un ciclo con un incrementador dentro para que los dibuje en otro lugar.
En éste caso haremos que el mouse nos brinde esos números de forma interactiva y así la forma se dibujará en un lugar distinto de la pantalla.
Las variables reservadas mousex y mousey se llenan automáticamente con los valores del dispositivo, en éste caso usaré un PRINT para visualizar ambos valores en un bucle infinito:
Gráficos Rápidos
Ahora haremos un circulo en la posicion de mousex y mousey, con un tamaño 3, al mover el mouse, veremos que va dibujando pequeños circulos, como si fuera un pncel.
Pero puede que si lo hacemos muy grande o ponemos varias formas dentro del bucle, el sistema tarde en dibujarlos, para eso existe FASTGRAPHICS y REFRESH. Cuando hacemos animaciones o juegos, indicamos al programa con el primero que precalcule todos los graficos y con REFRESH es cuando pondra el dibujo directo desde la memoria eliminando los molestos parpadeos.
Cambiando Colores
De esta forma, usaremos CASE para identificar que hay dentro de a que llenamos con KEY en la linea 5 de siguiente ejercicio:
tecla 1 : color red
tecla 2 : color blue
tecla 3 : color green
tecla 4 : color orange
tecla 0 : color clear
Podemos mejorar nuestro programa de dibujo cambiando el tamaño de pincel con 2 teclas, que podrian ser Q y W (achicar pincel y agrandar pincel), tomamos el codigo correspondiente de ésta página de la documentación de Basic256. Para este caso, los codigos de tecla son: 81 y 87. Usamos la variable PINCEL para indicar el tamaño del circulo (tercer numero), y lo incrementamos de a 5 en cinco PINCEL=PINCEL+5 y achicamo con PINCEL=PINCEL-5
Necesitaba un poco mas de espacio para dibujar, por lo tanto el comando GRAPHSIZE nos permite indicar 2 numeros, uno de ancho y otro de alto de pantalla gráfica, en este casi 700x700 pixels se indica asi: GRAPHSIZE 700 , 700
Codigo Completo de la Clase
CLG FASTGRAPHICS GRAPHSIZE 800, 700 PINCEL=5 WHILE TRUE CIRCLE MOUSEX, MOUSEY, PINCEL a = key BEGIN CASE CASE a = 48 COLOR CLEAR CASE a = 49 COLOR RED CASE a = 50 COLOR BLUE CASE a = 51 COLOR GREEN CASE a = 52 COLOR ORANGE CASE a = 81 PINCEL=PINCEL-5 #AGRANDA EL PINCEL CASE a = 87 PINCEL=PINCEL+5 #ACHICA EL PINCEL ENDCASE REFRESH