gana dinero en Internet Foro para ganar dinero en Internet
  






Posts Tagged ‘constantes’

Los controles..

Domingo, Febrero 3rd, 2008

Hola que tal, aun sigo vivo!.. Como el crear los personajes es ardua tarea (me imagino) no quiero perder el tiempo. Me he puesto a pensar que puedo hacer sin necesidad de los gráficos y he optado por adelantar el manejo de los controles del personaje, no se si esta sea la mejor forma de llevar a cabo este primero proyecto, pero la idea es aprender.

El hecho de poder configurar los controles por parte del jugador hace que el juego tenga un muy buen punto a favor. Una de las principales circunstancias por las cuales abandonaba un juego, era por el hecho de no poder configurar sus controles, ya sea porque eran muy difíciles de manejar o porque simplemente no me gustaba la forma en que estaban dispuestos (a veces tenia que descuartizar la mano..)

Como hacerlo??

Cuando abrimos la ayuda del Blitz podemos observar un apartado que dice “Command Reference” y dentro de éste, otro que dice “scancodes”, los cuales son representaciones de las teclas pero en forma numérica (códigos).

Estos códigos representan cada una de las teclas del teclado, por ejemplo la tecla escape “Esc” tiene asignado el código ‘1′; la flecha arriba tiene asignado el código ‘200′; etc..

Y cómo se usan estos códigos?, bien, pues al ser la representación de una tecla podemos tener por ejemplo el siguiente código:

if keydown(1) then

print “Acaba de pulsar la tecla Escape”

end if

Aqui lo que decimos es: “Si aplastamos la tecla “Esc” imprima (en pantalla =) ) el texto ‘Acaba de pulsar la tecla Escape’

Ahora, que pasa si hago una variable que se llame tecla_Escape y hago lo siguiente:

tecla_Escape = 1

if keydown(tecla_Escape) then

print “Acaba de pulsar la tecla Escape”

end if

Ahora, podemos darnos cuenta de lo siguiente que es muy importante.

En primer lugar el código es mas fácil de entender.. Seguramente después de cierto tiempo tengas que revisar tu código y si te encuentras con:

if keydown(1) then

Seguramente te preguntaras ¿que era ‘1′ ??.

Pero si te ecuentras con esto:

if keydown(tecla_Escape) then

Con mucha certeza sabrás que te estas refiriendo a la tecla Escape. Ahora podemos darnos cuenta que es muy útil usar variables o constantes (Espero ya te encuentres leyendo sobre programación en basic) para definir un valor de una forma mas elegante y comprensible. Es muy recomendado utilizar un identificador (identificador es el nombre que tiene una variable o constante) que exprese claramente lo que su valor significa.

En nuestro caso ‘tecla_Escape‘ nos da a entender claramente a que nos referimos, no importa usar nombres grandes, es mejor tomarnos un poco de tiempo en escribir y entender lo que hacemos que tener variables como ‘tclE’ sobre las que luego no estemos completamente seguros que significaban..

…………………………………………………

La segunda cosa importante sobre la que nos damos cuenta es que ahora tenemos mayor flexibilidad; que pasa si por alguna razón el jugador no quiere que la tecla escape sea la que habitualmente es; es decir, desea configurar su teclado.. Digamos que el jugador desea cambiar la tecla “escape”(scancode=1) por la tecla “flecha abajo”(scancode=208), esto lo hacemos simplemente cambiando el valor de la variable tecla_Escape

tecla_Escape=208

y mantener el mismo código que ya teníamos.. es decir, ahora, al aplastar la flecha hacia abajo aparecerá el mensaje

“Acaba de pulsar la tecla Escape”

Esta es la forma en la que se va a configurar los controles en el videojuego..

Espero haber sido claro y haberme hecho entender, si no he sido claro, agradecería cualquier pregunta..

En la próxima entrada daré a conocer el código de los controles..

Saludos..