[DUDA] Nose que pasa aca..
#1

Bueno miren esque yo estoy haciendo un panel de control de usuario en mi server, i le tengo una opcion para poner el nombre del jugador, lo que sucede esque al escribir en el dialog el nombre se me cambia a (por ejemplo si mi nombre es carlos) me sale "c[" y nada mas, este es el codigo que tengo para el dialog

pawn Код:
if(dialogid == DIALOG_IDS+15) // Nombre de Usuario
    {
        if(response == 1)
        {
            if(strlen(inputtext) > 0)
            {
                AccountInfo[playerid][Nombre] = inputtext[0];
            }
            else
            {
                SendClientMessage(playerid, COLOR_ROJO, "[ ! ] Debes escribir algo");
            }
        }
        else
        {
            OnPlayerOpenDialog(playerid, 2, 1); // Configuracion General
        }
        return 1;
    }
Como puedo lograr que me cambie bien el nombre y que se me guarde en la base de datos? :P
Reply
#2

Podes usar strval, o bien, strmid:
pawn Код:
if(dialogid == DIALOG_IDS+15) // Nombre de Usuario
    {
        if(response == 1)
        {
            if(strlen(inputtext) > 0)
            {
                strmid(AccountInfo[playerid][Nombre], inputtext, 0, strlen(inputtext), 255); // strmid: aca quedarнa el nombre que inserte en el dialog seteando la variable Nombre.
            }
            else
            {
                SendClientMessage(playerid, COLOR_ROJO, "[ ! ] Debes escribir algo");
            }
        }
        else
        {
            OnPlayerOpenDialog(playerid, 2, 1); // Configuracion General
        }
        return 1;
    }
EDIT: Agrego otra forma, vos proba la de arriba primero igual.

pawn Код:
if(dialogid == DIALOG_IDS+15) // Nombre de Usuario
    {
        if(response == 1)
        {
            if(strlen(inputtext) > 0)
            {
                new nombre = strval(inputtext);
                AccountInfo[playerid][Nombre] = nombre; // para asigar nъmeros conviene.
            }
            else
            {
                SendClientMessage(playerid, COLOR_ROJO, "[ ! ] Debes escribir algo");
            }
        }
        else
        {
            OnPlayerOpenDialog(playerid, 2, 1); // Configuracion General
        }
        return 1;
    }
Reply
#3

TiNCh010, de la segunda forma le va a dar error, no puedes asignar el valor de una variable integer a un array
Reply
#4

Muy bueno, gracias, el primero me funciono a la perfeccion c: gracias por tu ayuda n.n

Edit: D: encontre un bug, al poner mi nombre mis stats cambian aqui un ejemplo de lo que sucedio

pawn Код:
Nombre=caca
Frase=97
Correo=ca
Muertes=97
Asesinatos=0
Premium=0
AdminLvl=0
Color=
Grupo=0
Dinero=0
Spawn=0
Idioma=0
aca otro ejemplo -.-

pawn Код:
Pass=contrasenia
Nombre=Nombre de Prueba
Frase=111
Correo=mbre de Prueba
Muertes=98
Asesinatos=114
Premium=101
AdminLvl=32
Color=de Prueba
Grupo=101
Dinero=32
Spawn=80
Idioma=114
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)