Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: WMKILLER en Febrero 21, 2019, 09:04:54 PM

Título: Error de asignacion de strings (RESUELTO)
Publicado por: WMKILLER en Febrero 21, 2019, 09:04:54 PM
hola, resulta que tengo un problema, estoy creando un sistema de inicio de secion como en una red social, y resulta que tengo que guardar unos strings en un archivo .ini cuando se crea la cuenta (nombre y contraseña), hasta alli todo bien, pero cuando necesito comprobar lo que escribio el jugador en ese momento con los de los archivos no me deja asignarle el valor de los strings del archivo guardado a unas variables locales de comprovacion que crea cuando se da clic en el boton para iniciar secion

es algo asi:

en el obj_iniciar _secion/evento step:
[gml]
if mouse_check_button(mb_left)
{
    if (mouse_x >= x && mouse_x <= x+100) && (mouse_y >= y && mouse_y <= y+40)  //verifica si se presiono el boton para iniciar
    {
        usernamev = "";              //  <--- aqui crea 2 variables lovales para comprobar
        passwordv = "";              //  <--- si la cuenta esta creada y es la correcta
       
       
        ini_open("useraccount.ini"); // abre el archivo creado "useraccount.ini"
       
        usernamev = ini_read_string("account" , "User" , usernamev = "");   // aqui asigna a las variables de comprovacion los
        passwordv = ini_read_string("account" , "Pass" , passwordv = "");   // strings que estan en el archivo para comprovarlos.
        ini_close();
       
        if (global.username == usernamev) && (global.password == passwordv)  // si las variables globales puestas son iguales a las de comprovacion         
        {                                                                    // entonces cierra el archivo .ini y va a la room donde empieza a jugar.       
            room_goto(rm_ingame);    // <--- lleva al jugador a otra room
        }
        else                                                 // sino entonces dibuja un texto que dice que no hay cuenta creada
        {                                                    // y que crees una cuenta nueva.
            draw_text(x,y+50,"Error, cuenta no creada");     //  <---
            draw_text(x,y+70,"Por favor, cree una cuenta");  //  <---
        }
        ini_close();
    }
}[/gml]

el error dice que en la funcion ini_read_string(); tanto en la de username como en la de password me dice tipo incorrecto de argumentos, no se que podra ser, ya revise todo por errores de logica y errores de sintaxis, por favor necesito ayuda, muchas gracias por ver.

PD: trabajo en Game Maker Studio 1 Master Collection
Título: Re:Error de asignacion de strings
Publicado por: Johann en Febrero 22, 2019, 01:36:37 AM
Precisamente, porque no estas usando bien los argumentos de la función, el ultimo argumento, que es la respuesta por defecto de la funcion debe ser solamente el string vacio, la asignacion a la variable ya la tienes.

No es:
[gml]
usernamev = ini_read_string("account" , "User" , usernamev = "");   // aqui asigna a las variables de comprobación los
passwordv = ini_read_string("account" , "Pass" , passwordv = "");   // strings que están en el archivo para comprobarlos.
[/gml]

Debe ser
[gml]
usernamev = ini_read_string("account" , "User" , "");   // aqui asigna a las variables de comprobación los
passwordv = ini_read_string("account" , "Pass" , "");   // strings que están en el archivo para comprobarlos.
[/gml]
Título: Re:Error de asignacion de strings
Publicado por: WMKILLER en Febrero 22, 2019, 01:59:43 AM
Cita de: Johann en Febrero 22, 2019, 01:36:37 AM
Precisamente, porque no estas usando bien los argumentos de la función, el ultimo argumento, que es la respuesta por defecto de la funcion debe ser solamente el string vacio, la asignacion a la variable ya la tienes.

No es:
[gml]
usernamev = ini_read_string("account" , "User" , usernamev = "");   // aqui asigna a las variables de comprobación los
passwordv = ini_read_string("account" , "Pass" , passwordv = "");   // strings que están en el archivo para comprobarlos.
[/gml]

Debe ser
[gml]
usernamev = ini_read_string("account" , "User" , "");   // aqui asigna a las variables de comprobación los
passwordv = ini_read_string("account" , "Pass" , "");   // strings que están en el archivo para comprobarlos.
[/gml]

GRACIAS, MUCHISIMAS GRACIAS ENSERIO :D