[AYUDA] Codigo de propiedades
#1

Solucionado, muchas gracias.
Reply
#2

El mбximo de de un texto en un dialogo es de 4096 y veo tu tienes new PropString[120000]
Reply
#3

Lo baje a 4096 y el error sigue.
Reply
#4

Quote:
Originally Posted by Hork
Посмотреть сообщение
Lo baje a 4096 y el error sigue.
Lo que estб diciendo es que ya superaste los 4096 de un diбlogo, aunque le subas solo te muestra hasta esa cantidad >.>
Reply
#5

Y como podria hacerlo para que me muestre todas las propiedades? He visto dialogos del mismo tipo (style_list) con muchisimos items.
Reply
#6

Quote:
Originally Posted by Hork
Посмотреть сообщение
Y como podria hacerlo para que me muestre todas las propiedades? He visto dialogos del mismo tipo (style_list) con muchisimos items.
Porque los items no usan tantos carбcteres por lнneas como el tuyo -.-

Usa DIALOG_STYLE_TABLIST_HEADERS para ahorrar espacios con valor, produce y propietarios
Reply
#7

pawn Код:
dcmd_propiedades(playerid,params[]) {
#pragma unused params
new PropString[4096],MensajeProps[128];
strcat(PropString, "Nombre\tValor\tProduce\tPropietario\n");
for(new idcasa; idcasa < CantidadPropiedades; idcasa++)
{
format(MensajeProps,128,"{FDEE00}%s\t{FFFFFF}$%d\t$%d\t{00FFFF}%s\n",Propiedades[idcasa][Nombre], Propiedades[idcasa][Valor], Propiedades[idcasa][Produce], Propiedades[idcasa][Propietario]);
strcat(PropString,MensajeProps);
ShowPlayerDialog(playerid,ListaProps,DIALOG_STYLE_TABLIST_HEADERS,"Propiedades",PropString,"Aceptar","");
}
return 1;
}
Reply
#8

Quote:
Originally Posted by lucesita
Посмотреть сообщение
pawn Код:
dcmd_propiedades(playerid,params[]) {
#pragma unused params
new PropString[4096],MensajeProps[128];
strcat(PropString, "Nombre\tValor\tProduce\tPropietario\n");
for(new idcasa; idcasa < CantidadPropiedades; idcasa++)
{
format(MensajeProps,128,"{FDEE00}%s\t{FFFFFF}$%d\t$%d\t{00FFFF}%s\n",Propiedades[idcasa][Nombre], Propiedades[idcasa][Valor], Propiedades[idcasa][Produce], Propiedades[idcasa][Propietario]);
strcat(PropString,MensajeProps);
ShowPlayerDialog(playerid,ListaProps,DIALOG_STYLE_TABLIST_HEADERS,"Propiedades",PropString,"Aceptar","");
}
return 1;
}
Muchas gracias, solucionado!
Reply
#9

Quote:
Originally Posted by lucesita
Посмотреть сообщение
pawn Код:
dcmd_propiedades(playerid,params[]) {
#pragma unused params
new PropString[4096],MensajeProps[128];
strcat(PropString, "Nombre\tValor\tProduce\tPropietario\n");
for(new idcasa; idcasa < CantidadPropiedades; idcasa++)
{
format(MensajeProps,128,"{FDEE00}%s\t{FFFFFF}$%d\t$%d\t{00FFFF}%s\n",Propiedades[idcasa][Nombre], Propiedades[idcasa][Valor], Propiedades[idcasa][Produce], Propiedades[idcasa][Propietario]);
strcat(PropString,MensajeProps);
ShowPlayerDialog(playerid,ListaProps,DIALOG_STYLE_TABLIST_HEADERS,"Propiedades",PropString,"Aceptar","");
}
return 1;
}
Tiene dos fallas eso.
  • La linea de "ShowPlayerDialog" deberia ir afuera del bucle. Estas mostrado el dialogo una y otra vez. Y nomas tienes que mostrarlo una sola vez.
  • Si no hay ninguna propiedad, el comando no hara nada. Y el primer "strcat" se ejecutara de okis.
Deberia quedar asi (o algo similar):
pawn Код:
dcmd_propiedades(playerid,params[])
{
    #pragma unused params
    new PropString[4096], MensajeProps[128], bool:initialize = false;
    for(new idcasa; idcasa < CantidadPropiedades; idcasa++)
    {
        format(MensajeProps,128,"{FDEE00}%s\t{FFFFFF}$%d\t$%d\t{00FFFF}%s\n",Propiedades[idcasa][Nombre], Propiedades[idcasa][Valor], Propiedades[idcasa][Produce], Propiedades[idcasa][Propietario]);
        strcat(PropString,MensajeProps);

        initialize = true;
    }

    if(initialize)
    {
        strins(PropString, "Nombre\tValor\tProduce\tPropietario\n", 0);
        ShowPlayerDialog(playerid,ListaProps,DIALOG_STYLE_TABLIST_HEADERS,"Propiedades",PropString,"Aceptar","");
    }
    else
    {
        SendClientMessage(playerid, -1, "No se encontro nungun propiedad!");
    }
    return 1;
}
Y por cierto, actualiza a ZCMD o a cualquier otro procesador de comandos que utiliza el CallLocalFunction. :/

Saludos.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)