SA-MP Forums Archive
[Ayuda] Mъltiples errores raros - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: [Ayuda] Mъltiples errores raros (/showthread.php?tid=239481)



[Ayuda] Mъltiples errores raros - Lunnatiicz - 13.03.2011

A unas pocas horas de empezar a scriptear el servidor roleplay me doy a la tarea de terminar mis scripts pendientes, pero surgen errores "raros" de unos, aquн se los presento y me dicen cuбl es el problema.

P.D Nunca se habнan presentado :S

Primer error
Код:
C:\Users\Lunna\Documents\Descargas\samp03csvr_win32\filterscripts\dead.pwn(138) : error 004: function "OnPlayerUpdate" is not implemented
pawn Код:
public OnPlayerDisconnect(playerid, reason)
{
             
    /*new string[256];
    GetPlayerName(playerid, sendername, sizeof(sendername));
    switch(reason)
    {
        case 0:
        {
            format(string, sizeof(string), "%s ha salido del servidor! (Crash)", sendername);
            SendClientMessageToAll(0xBBBBBBAA, string);
        }
        case 1:
        {
            format(string, sizeof(string), "%s ha salido del servidor! (Salio)", sendername);
            SendClientMessageToAll(0xBBBBBBAA, string);
        }
        case 2:
        {
            format(string, sizeof(string), "%s ha salido del servidor! (Expulsado)", sendername);
            SendClientMessageToAll(0xBBBBBBAA, string);
        }
 }*/

    OnPlayerUpdate(playerid);//Linea del error
    AccountInfo[playerid][aLogged] = 0;
    register[playerid] = 0;
    login[playerid] = 0;
    Advertido[playerid] = 0;
    return 1;
}
El segъndo error
Код:
C:\Users\Lunna\Documents\Descargas\samp03csvr_win32\filterscripts\dead.pwn(199) : error 079: inconsistent return types (array & non-array)
El script

pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    //si esta bloqueado
    if(AccountInfo[playerid][aBloqueado] == 1)
    {
        SendClientMessage(playerid,COLOR_ADMIN, "* Estas bloqeado y no puedes usar comandos");
        return 1;
    }

Todos los errores juntos

Код:
C:\Users\Lunna\Documents\Descargas\samp03csvr_win32\filterscripts\dead.pwn(138) : error 004: function "OnPlayerUpdate" is not implemented
C:\Users\Lunna\Documents\Descargas\samp03csvr_win32\filterscripts\dead.pwn(199) : error 079: inconsistent return types (array & non-array)
C:\Users\Lunna\Documents\Descargas\samp03csvr_win32\filterscripts\dead.pwn(210) : error 017: undefined symbol "strtok"
C:\Users\Lunna\Documents\Descargas\samp03csvr_win32\filterscripts\dead.pwn(210) : error 033: array must be indexed (variable "cmd")
C:\Users\Lunna\Documents\Descargas\samp03csvr_win32\filterscripts\dead.pwn(215) : error 017: undefined symbol "string"
C:\Users\Lunna\Documents\Descargas\samp03csvr_win32\filterscripts\dead.pwn(215) : error 017: undefined symbol "string"
C:\Users\Lunna\Documents\Descargas\samp03csvr_win32\filterscripts\dead.pwn(215) : error 029: invalid expression, assumed zero
C:\Users\Lunna\Documents\Descargas\samp03csvr_win32\filterscripts\dead.pwn(215) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


8 Errors.
El script y las lнneas marcadas

pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    //si esta bloqueado
    if(AccountInfo[playerid][aBloqueado] == 1)
    {
        SendClientMessage(playerid,COLOR_ADMIN, "* Estas bloqeado y no puedes usar comandos");
        return 1;//Linea 199 Error arrays
    }
    //new
    new cmd[256];
    new giveplayerid, idx;
    new giveplayer[MAX_PLAYER_NAME];

    //imprime en el log al usar un comando
    GetPlayerName(playerid, sendername, sizeof(sendername));
    printf("[Comando] %s [ID: %d]: %s",sendername,playerid,cmdtext);

    cmd = strtok(cmdtext, idx);//Siguientes 2 errores de strtok

    //comando de jugador normal
    if (strcmp("/stats", cmdtext, true, 10) == 0)
    {
        format(string,sizeof(string),"Muertes: %d - Asesinatos: %d",AccountInfo[playerid][aMuertes],AccountInfo[playerid][aAsesinatos]);//Linea de los errores restantes
        SendClientMessage(playerid,COLOR_WHITE,string);
        return 1;
    }
P.D Si tengo strtok definido al final

pawn Код:
strtok(const string[], &index)
{
    new length = strlen(string);
    while ((index < length) && (string[index] <= ' '))
    {
        index++;
    }

    new offset = index;
    new result[20];
    while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
    {
        result[index - offset] = string[index];
        index++;
    }
    result[index - offset] = EOS;
    return result;
}
Emm, ayuda? xD



Re: [Ayuda] Mъltiples errores raros - murdoxix - 13.03.2011

En ves de:
pawn Код:
OnPlayerUpdate(playerid);
Pone:
pawn Код:
OnPlayerUpdateEx(playerid);



Respuesta: [Ayuda] Mъltiples errores raros - Code8976Man - 13.03.2011

Tienes el

pawn Код:
public OnPlayerUpdate(playerid)
Y onplayercommandtext agrega new string[128];


Respuesta: [Ayuda] Mъltiples errores raros - Lunnatiicz - 13.03.2011

Si tengo el callback xd por lуgica no lo puse :P

Alejandro, no me funciono asd xd Buen intento

codeman, lo del string no es problema xd eso lo sabнa, pero lo demas no se porque si pongo el new me aparecen 1000 errores de arrays S:


Re: Respuesta: [Ayuda] Mъltiples errores raros - murdoxix - 13.03.2011

Quote:
Originally Posted by Lunnatiicz
Посмотреть сообщение
Alejandro, no me funciono asd xd Buen intento
Jaja, era de esperar -_-! Es que en mi server no tengo ninguno como el tuyo.. tengo como el que te pase (aunque no se ni para que sirven)


Respuesta: [Ayuda] Mъltiples errores raros - Code8976Man - 13.03.2011

Puede ser que sea un error de llaves o algo y hace que al compilar diga estupideces


Respuesta: [Ayuda] Mъltiples errores raros - Lunnatiicz - 13.03.2011

Quote:
Originally Posted by Code8976Man
Посмотреть сообщение
Puede ser que sea un error de llaves o algo y hace que al compilar diga estupideces
Eso mismo estaba pensando, pero checa

pawn Код:
forward OnPlayerUpdate(playerid);
public OnPlayerUpdate(playerid)
{
    if(IsPlayerConnected(playerid))
    {
        if(AccountInfo[playerid][aLogged] == 1)
        {
            new string3[128];
            new playername3[MAX_PLAYER_NAME];
            GetPlayerName(playerid, playername3, sizeof(playername3));
            format(string3, sizeof(string3), ACCOUNTS_FOLDER, playername3);
            new ip[20];
            GetPlayerIp(playerid,ip,sizeof(ip));
            new File: hFile = fopen(string3, io_write);
            if (hFile)
            {
                new var[128];
                format(var, 128, "Password=%s\n", AccountInfo[playerid][aPassword]);fwrite(hFile, var);
                format(var, 128, "IP=%s\n",ip);fwrite(hFile, var);
                format(var, 128, "Admin=%d\n", AccountInfo[playerid][aAdmin]);fwrite(hFile, var);
                format(var, 128, "Muertes=%d\n", AccountInfo[playerid][aMuertes]);fwrite(hFile, var);
                format(var, 128, "Asesinatos=%d\n", AccountInfo[playerid][aAsesinatos]);fwrite(hFile, var);
                format(var, 128, "Dinero=%d\n",GetPlayerMoney(playerid));fwrite(hFile, var);
                format(var, 128, "Carcel=%d\n", AccountInfo[playerid][aCarcel]);fwrite(hFile, var);
                format(var, 128, "TiempoCarcel=%d\n", AccountInfo[playerid][aTiempoCarcel]);fwrite(hFile, var);
                format(var, 128, "Bloqueado=%d\n", AccountInfo[playerid][aBloqueado]);fwrite(hFile, var);
                format(var, 128, "Silencio=%d\n", AccountInfo[playerid][aSilencio]);fwrite(hFile, var);
                fclose(hFile);
            }
        }
    }
    return 1;
}



Respuesta: [Ayuda] Mъltiples errores raros - [J]ulian - 13.03.2011

Para llamar a un CallBack es esta funciуn: https://sampwiki.blast.hk/wiki/CallRemoteFunction. Creo.


Un saludo!


Respuesta: [Ayuda] Mъltiples errores raros - Lunnatiicz - 13.03.2011

Quote:
Originally Posted by [J]ulian
Посмотреть сообщение
Para llamar a un CallBack es esta funciуn: https://sampwiki.blast.hk/wiki/CallRemoteFunction. Creo.


Un saludo!
Anteriormente no tenнa ese error, lo que hace es solo guardar las stats al desconectarse, pero como decia, anteriormente no me pasaba D:


Respuesta: [Ayuda] Mъltiples errores raros - Code8976Man - 13.03.2011

Quote:
Originally Posted by [J]ulian
Посмотреть сообщение
Para llamar a un CallBack es esta funciуn: https://sampwiki.blast.hk/wiki/CallRemoteFunction. Creo.


Un saludo!
Que diferencia hay entre:

OnPlayerUpdate(playerid);

CallRemoteFunction("OnPlayerUpdate", "i", playerid)

їEficiencia?