Cómo crear una consola de depuración con comandos personalizados, que se puedan agregar o quitar. Un comando especial para mostrar todos los comandos disponibles con sus descripciones. Uso de diccionarios para guardar cada comando. Algunas configuraciones de UI para que se vea “linda”. Uso de “delegate” y “Dictionary” para manipular y almacenar funciones respectivamente. Evitar errores utilizando “try-catch-finally”.

Buenas!

Vamos a ver cómo crear una consola para nuestros juegos, para poder ingresar comandos como “godMode” y que nuestro personaje no muera nunca. La idea es que también podamos mandar todo el tema de prints y errores para esa parte, ya que así nos es más fácil ver los errores que están incluso en la build de nuestro juego. Empecemos!

La primera parte es todo el tema visual utilizando la UI de Unity. Hagamos primero la parte visual, antes de empezar con la programación. La idea es también mostrar unos conceptos de UI que se pueden aplicar para darle algunos toques copados propios de la consola.

 

 

Dentro de lo posible traten de ir haciendo los ejercicios para ir tomando el ritmo de los distintos componentes en Unity. El ejercicio de abrir y cerrar la consola parece una boludez pero tiene algunas cositas a tener en cuenta. Quizás si lo resuelven de la primer manera que se les ocurre les pase que la consola se oculte pero no vuelva a abrirse.

Resolvamos el ejercicio:

 

 

Ahora que tenemos lo básico de una consola, vamos a empezar a registrar nuestros propios comandos, para que podamos utilizarlos en cualquier juego. Recuerden que la idea es que esto sirva para aplicar a cualquier juego, y no solamente a uno en particular.

Aprovechamos para ver un poco los delegados y diccionarios, que son bastante útiles muchas veces:

 

 

Ahora que ya podemos registrar comandos, es momento de ejecutarlos. La idea, por el momento, es que no chequeemos nada, sólo ejecutar un comando que, en principio, vamos a escribir bien (para evitar errores), y luego vamos a ver cómo prevenirnos cuando el usuario lo escribe mal, y darle un mensaje de error. Vamos a terminar con un ejercicio, para que puedan practicar lo visto hasta el momento.

 

 

 

Llegamos al final!

Ahora que nuestra consola ya ejecuta comandos y es funcional, nos queda prevenir errores, y darle algunos pulidos adicionales, como que nos muestre todos los comandos con una descripción al escribir “Help”, que no importe si escribimos los comandos en mayúscula o minúscula y cosas por el estilo. A ver qué sale!

 

 

Y terminamos!

Espero que después de hacerlo les haya quedado la sensación de que se puede mejorar mucho más, porque la verdad es que sólo mostré el pie de cómo hacerla según mi criterio. Principalmente presten atención a “según mi criterio“, ya que muchas de las cosas las hago de una manera según mi experiencia o para explicar algún tema en particular, no necesariamente porque sea una ley que se programe de esa manera o que en la industria funcione así. Cada post tiene sólo una perspectiva y una miniatura respecto a la cantidad de cosas que se pueden escribir sobre cada tema.

Cualquier cosa, pregunten!

Saludos.