28/03/2022 19:07
Bom pessoal eu estou tendo um problema na hora de pegar dados e tambem salvar com DOF2.
Bom toda vez que essa função é chamada:
aparece esse erro:
quando o player abre a textdraw ele gera o arquivo com o seguinte codigo:
Bom eu ja to a bastante tempo tentando algumas formas de resolver isso mais nada da certo.
Bom toda vez que essa função é chamada:
Código PHP:
linha 5432: if(strcmp(DOF2::GetString(WhatsFile(playerid), "PlayerNum0"), "Nenhum", false))
Citar:[debug] Run time error 4: "Array index out of bounds"
[debug] Attempted to read/write array element at index 256 in array of size 256
[debug] AMX backtrace:
[debug] #0 00003518 in DOF2_ParseFile (file[]=@001968b4 "/Server/Log/Mensagens/zBL4CK_.ini", extraid=-1, bool:callback=false) at C:\Users\USER\Desktop\Paste\Arquivos\SA-MP\Servidor\server\pawno\include\DOF2.inc:1134
[debug] #1 000021c0 in DOF2_GetStringEx (file[]=@001968b4 "/Server/Log/Mensagens/zBL4CK_.ini", key[]=@001928a8 "PlayerNum0", result[]=@001d6470 "", size=128, tag[]=@001968b0 "") at C:\Users\USER\Desktop\Paste\Arquivos\SA-MP\Servidor\server\pawno\include\DOF2.inc:698
[debug] #2 0000205c in DOF2_GetString (file[]=@001968b4 "/Server/Log/Mensagens/zBL4CK_.ini", key[]=@001928a8 "PlayerNum0", tag[]=@001968b0 "") at C:\Users\USER\Desktop\Paste\Arquivos\SA-MP\Servidor\server\pawno\include\DOF2.inc:685
[debug] #3 000a84ac in public OnPlayerClickDynamicTextdraw (playerid=0, PlayerText:playertextid=234) at c:\Users\USER\Desktop\Server\filterscripts\Msg.pwn:5432
quando o player abre a textdraw ele gera o arquivo com o seguinte codigo:
Código PHP:
//topo da gm
stock WhatsFile(playerid) {
new wppfile[54];
format(wppfile, 54, "/Server/Log/Mensagens/%s.ini", GetPlayerNameEx(playerid));
return wppfile;
}
if(playertextid == Menu[playerid][7]) { //botao msg
if(!DOF2::FileExists(WhatsFile(playerid))) {
new File:whats = fopen(WhatsFile(playerid), io_write);
new strfmt[55], fmt2[55], b = -1;
for(new i; i < 21; ++i) {
for(new a; a < 21; ++a) {
if(a == 0) {
++b;
format(fmt2, 55, "NumeroP%d = Nenhum\nPlayerNum%d = Nenhum\n", b, b); fwrite(whats, fmt2);
}
format(strfmt, 55, "Num%dMsg%d = _\nHora%dMsg%d = _\nPlayer%dMsg%d = true\n", i, a, i, a, i, a); fwrite(whats, strfmt);
}
if(i == 20) fclose(whats);
}
}
}
Bom eu ja to a bastante tempo tentando algumas formas de resolver isso mais nada da certo.