[Ajuda] sscanf error: System not initialised.
#1

Boa Noite galera.

To com esse probema quando digito algum comando que usa sscanf.

Eu estou com a versгo atualizada, ja vi no post principal do Y_LESS mas nao adianta ainda ta dando erro.

Alguem sabe informar oque pode ser?

Desde jб agradeзo a todos.

Obrigado.
Reply
#2

Verifica a pasta plugins se contem os arquivos da sscanf.
Abra seu server cfg e confira se tem:
plugins sscanf
Reply
#3

tem sim amigo, no console do samp aparece que o plugin foi carregado mas quando eu uso o comando, a msg de como usar o comando aparece e no console do samp-server aparece sscanf error: System not initialised.
Reply
#4

quando vocк compila seu gm aparece algum warning ?
Reply
#5

nenhuma, tudo certo.
Reply
#6

Poste um comando aqui que use o parametro s (parametro de string).. Acho que sei o que й..
Reply
#7

Unicos comandos que tem no GM:
PHP Code:
CMD:trocarsenha(playeridparams[])
{
    new 
novasenha[60], str[60];
    
GetPlayerNameplayerid NomesizeofNome ) ) ;
    
format(strsizeof(str), USERSNome ) ;
    if(
TrocarN[playerid] == 0) return SendClientMessage(playerid, -1"Voce nao pode trocar a senha sem autorizacao");
    if(
sscanf(params,"d[60]"novasenha))return SendClientMessage(playerid, -1"CMD: /trocarsenha  -> Nova Senha <-");
    
SendClientMessage(playerid, -1"Senha alterado com sucesso !");
    
DOF2_SetString(str"Senha"novasenha);
    
TrocarN[playerid] = 0;
    
DOF2_SaveFile();
    return 
1;
}
CMD:trocaremail(playeridparams[])
{
    new 
email[30], str[60];
    if(
sscanf(params"d[30]"email)) return SendClientMessage(playerid, -1,"CMD / : trocaremail [Novo Email]");
    
GetPlayerNameplayerid NomesizeofNome ) ) ;
    
format(strsizeof(str), USERSNome ) ;
    
DOF2_SetString(str,"Email"email);
    
SendClientMessage(playerid, -1," E-mail Alterado Com sucesso !");
    
DOF2_SaveFile();
    return 
1;

}
CMD:vplayeridparams[])
{
    static 
vidcor1cor2;
    if(
sscanf(params"iii"vidcor1cor2)) return SendClientMessage(playerid,-1,"Uso Correto: /criarveh [ID do Veнculo] [Cor 1] [Cor 2]");
    if(
vid 400 || vid 611) return SendClientMessage(playerid,-1,"ID de veнculo invбlido, ID de veнculos de 400 atй 611");
    static 
Float:vXFloat:vYFloat:vZFloat:vA;
    
GetPlayerPos(playerid,vX,vY,vZ);
    
GetPlayerFacingAngle(playerid,vA);
    
PutPlayerInVehicle(playerid,CreateVehicle(vid,vX,vY,vZ,vA,cor1,cor2,-1),0);
    
LinkVehicleToInterior(GetPlayerVehicleID(playerid),GetPlayerInterior(playerid));
    return 
1;

Reply
#8

Quote:
Originally Posted by GabrielDias_Invision
View Post
Unicos comandos que tem no GM:
PHP Code:
CMD:trocarsenha(playeridparams[])
{
    new 
novasenha[60], str[60];
    
GetPlayerNameplayerid NomesizeofNome ) ) ;
    
format(strsizeof(str), USERSNome ) ;
    if(
TrocarN[playerid] == 0) return SendClientMessage(playerid, -1"Voce nao pode trocar a senha sem autorizacao");
    if(
sscanf(params,"d[60]"novasenha))return SendClientMessage(playerid, -1"CMD: /trocarsenha  -> Nova Senha <-");
    
SendClientMessage(playerid, -1"Senha alterado com sucesso !");
    
DOF2_SetString(str"Senha"novasenha);
    
TrocarN[playerid] = 0;
    
DOF2_SaveFile();
    return 
1;
}
CMD:trocaremail(playeridparams[])
{
    new 
email[30], str[60];
    if(
sscanf(params"d[30]"email)) return SendClientMessage(playerid, -1,"CMD / : trocaremail [Novo Email]");
    
GetPlayerNameplayerid NomesizeofNome ) ) ;
    
format(strsizeof(str), USERSNome ) ;
    
DOF2_SetString(str,"Email"email);
    
SendClientMessage(playerid, -1," E-mail Alterado Com sucesso !");
    
DOF2_SaveFile();
    return 
1;
}
CMD:vplayeridparams[])
{
    static 
vidcor1cor2;
    if(
sscanf(params"iii"vidcor1cor2)) return SendClientMessage(playerid,-1,"Uso Correto: /criarveh [ID do Veнculo] [Cor 1] [Cor 2]");
    if(
vid 400 || vid 611) return SendClientMessage(playerid,-1,"ID de veнculo invбlido, ID de veнculos de 400 atй 611");
    static 
Float:vXFloat:vYFloat:vZFloat:vA;
    
GetPlayerPos(playerid,vX,vY,vZ);
    
GetPlayerFacingAngle(playerid,vA);
    
PutPlayerInVehicle(playerid,CreateVehicle(vid,vX,vY,vZ,vA,cor1,cor2,-1),0);
    
LinkVehicleToInterior(GetPlayerVehicleID(playerid),GetPlayerInterior(playerid));
    return 
1;

Voce estб usando string, porйm usa o parametro de Integer

pawn Code:
d[TAMANHO]
Invez de String

pawn Code:
s[TAMANHO]
Reply
#9

Quote:
Originally Posted by HardWar
View Post
Voce estб usando string, porйm usa o parametro de Integer

pawn Code:
d[TAMANHO]
Invez de String

pawn Code:
s[TAMANHO]
Boa observaзгo.. Porem, se o tamanho esta definido na variavel nгo й necessario definir o tamanho do parametro no script do sscanf.

Meu codigo corrigido:
pawn Code:
CMD:trocarsenha(playerid, params[])
{
    new novasenha[60], str[60];
    GetPlayerName( playerid , Nome, sizeof( Nome ) ) ;
    format(str, sizeof(str), USERS, Nome ) ;
    if(TrocarN[playerid] == 0) return SendClientMessage(playerid, -1, "Voce nao pode trocar a senha sem autorizacao");
    if(sscanf(params,"s", novasenha))return SendClientMessage(playerid, -1, "CMD: /trocarsenha  -> Nova Senha <-");
    SendClientMessage(playerid, -1, "Senha alterado com sucesso !");
    DOF2_SetString(str, "Senha", novasenha);
    TrocarN[playerid] = 0;
    DOF2_SaveFile();
    return 1;
}
CMD:trocaremail(playerid, params[])
{
    new email[30], str[60];
    if(sscanf(params, "s", email)) return SendClientMessage(playerid, -1,"CMD / : trocaremail [Novo Email]");
    GetPlayerName( playerid , Nome, sizeof( Nome ) ) ;
    format(str, sizeof(str), USERS, Nome ) ;
    DOF2_SetString(str,"Email", email);
    SendClientMessage(playerid, -1," E-mail Alterado Com sucesso !");
    DOF2_SaveFile();
    return 1;

}
Reply
#10

Quote:
Originally Posted by tonisantolia
View Post
Boa observaзгo.. Porem, se o tamanho esta definido na variavel nгo й necessario definir o tamanho do parametro no script do sscanf.

Meu codigo corrigido:
pawn Code:
CMD:trocarsenha(playerid, params[])
{
    new novasenha[60], str[60];
    GetPlayerName( playerid , Nome, sizeof( Nome ) ) ;
    format(str, sizeof(str), USERS, Nome ) ;
    if(TrocarN[playerid] == 0) return SendClientMessage(playerid, -1, "Voce nao pode trocar a senha sem autorizacao");
    if(sscanf(params,"s", novasenha))return SendClientMessage(playerid, -1, "CMD: /trocarsenha  -> Nova Senha <-");
    SendClientMessage(playerid, -1, "Senha alterado com sucesso !");
    DOF2_SetString(str, "Senha", novasenha);
    TrocarN[playerid] = 0;
    DOF2_SaveFile();
    return 1;
}
CMD:trocaremail(playerid, params[])
{
    new email[30], str[60];
    if(sscanf(params, "s", email)) return SendClientMessage(playerid, -1,"CMD / : trocaremail [Novo Email]");
    GetPlayerName( playerid , Nome, sizeof( Nome ) ) ;
    format(str, sizeof(str), USERS, Nome ) ;
    DOF2_SetString(str,"Email", email);
    SendClientMessage(playerid, -1," E-mail Alterado Com sucesso !");
    DOF2_SaveFile();
    return 1;

}
Й claro que prescisa definir o tamanho juntamente com o especificador!

Veja no prуprio tуpico do plugin/include

@edit

No prуprio tуpico o autor fala sobre o erro abordado neste tуpico!

http://forum.sa-mp.com/showthread.ph...hlight=sscanf2
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)