[Ayuda] Mъltiples errores raros
#1

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
Reply
#2

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

Tienes el

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

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:
Reply
#5

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)
Reply
#6

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

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;
}
Reply
#8

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


Un saludo!
Reply
#9

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:
Reply
#10

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?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)