Abril 28, 2019, 06:56:29 PM Ultima modificación: Octubre 19, 2019, 04:32:55 PM por Markus

  • Nombre del creador: Markus
  • Breve descripción de su función: Permite enviar mensajes a la consola (show_debug_message()) permitiendo agregar argumentos al string del mensaje.
  • Versión GM utilizada:   Game Maker: Studio 2
  • Código del Script:

    Argumentos

    • mensaje: es un string con el mensaje a imprimir, cada '%s' que contenga se reemplazará con los argumentos entregados.
    • argumentos: puede ser un número o un string. También puede ser un arreglo con números y/o strings.

    Código
    [gml]
    //console_log(mensaje, argumentos);
    ///@param mensaje
    ///@param argumentos
    var mensaje   = argument[0];
    var argumentos = argument[1];

    if (is_array(argumentos))
    {
       for (var i = 0; i < array_length_1d(argumentos); i++)
       {
          var value = is_real(argumentos) ? string(argumentos) : argumentos;
          mensaje = string_replace(mensaje, "%s", value);
       }
    }
    else
    {
       var value = is_real(argumentos) ? string(argumentos) : argumentos;
       mensaje = string_replace(mensaje, "%s", value);
    }
    show_debug_message(mensaje);
    [/gml]

    Ejemplo con 1 argumento
    [gml]
    var nombre = "Pedrito";
    console_log("Hola, mi nombre es %s y soy feliz.", nombre);
    [/gml]
    Resultado: Hola, mi nombre es Pedrito y soy feliz.

    Ejemplo con un arreglo como argumento
    [gml]
    var nombre = "Pedrito";
    var edad = 12;
    console_log("Hola, mi nombre es %s y tengo %s años.", [nombre, edad] );
    [/gml]
    O también
    [gml]
    var datos = ["Pedrito" , 12];
    console_log("Hola, mi nombre es %s y tengo %s años.", datos);
    [/gml]
    Resultado de los dos anteriores: Hola, mi nombre es Pedrito y tengo 12 años.

Vota nuestro proyecto en Steam Greenlight:

Estudios Naicura Ltda

yo uso mucho el show_debug_message, para mandar un string donde no se si se esta ejecutando cierta parte del codigo, supongo que este scritpts es para ver las variables o los valores internos, aunque para eso tenemos el modo debug, de cualquier manera me parece que con algunas modificaciones se pudiera usar hasta para mandar textos o dialogos en el evento draw.
Es Mejor No Saber Porque Funciona, Que Saber El Porque No Funciona...
Tienes alguna duda con "Game Design" o de videojuegos en general, contactamente mas facil en twitter @pavulzavala

Cita de: somnus en Abril 29, 2019, 01:59:33 AM
yo uso mucho el show_debug_message, para mandar un string donde no se si se esta ejecutando cierta parte del codigo, supongo que este scritpts es para ver las variables o los valores internos, aunque para eso tenemos el modo debug, de cualquier manera me parece que con algunas modificaciones se pudiera usar hasta para mandar textos o dialogos en el evento draw.

Yo también lo uso mucho para evaluar código y por lo mismo a veces imprimo las variables involucradas para revisar que todo vaya según lo planeado. Así que creé este script por comodidad. Al última línea se puede reemplazar por "return mensaje;" y el script devolvería un string con el log en vez de enviarlo directamente a la consola, así podrias usarlo en el evento Draw.
Vota nuestro proyecto en Steam Greenlight:

Estudios Naicura Ltda