[Ajuda] Comando nгo estб funcionando.
#1

Bom oque acontece й o seguinte, o comando tem a funcionalidade abaixo:
/banco conta abrir [ senha da conta ]

Porйm funciona tudo certo atй a parte senha, se o player nгo digitar nenhuma senha aparece a mensagem de erro.
Mas se ele digitar tudo certo, nгo executa oque estб abaixo. Ou seja, nгo cria a conta do player.
A pasta jб estб criada na scriptfiles.

O erro estб no cуdigo abaixo:
PHP код:
if(sscanf(params"s[50]s[50]s[50]"contafuncaosenha)) return SendClientMessage(playerid, -1"[ ERRO ] {FF0000}use: /banco conta abrir [senha da conta]"); 
Eu retirei o cуdigo acima e a conta do player foi criada, porйm a senha nгo estб sendo setada no arquivo do player.


Alguйm tem alguma soluзгo?

PHP код:
CMD:banco(playeridparams[])
{
    new 
senha[50], aname[MAX_PLAYER_NAME], string[124], file[255], conta[50], funcao[50];
    
GetPlayerName(playeridanamesizeof(aname));
    if(
sscanf(params"s[50]s[50]"contafuncao)) return SendClientMessage(playerid, -1"[ ERRO ] {FF0000}use: /banco conta [abrir, senha, depositar, sacar, saldo]");
    if(!
IsPlayerConnected(playerid)) return SendClientMessage(playerid, -1"[ ERRO ] {FF0000}Vocк nгo estб conectado!");
    
format(filesizeof(file), PASTA_CONTASaname);
    if(
strcmp(funcao"abrir"true) == 0)
    {
        
printf("Entrei em %s"params);
        if(
sscanf(params"s[50]s[50]s[50]"contafuncaosenha)) return SendClientMessage(playerid, -1"[ ERRO ] {FF0000}use: /banco conta abrir [senha da conta]");
        print(
"Passei dois");
        
dini_Create(file);
        
dini_IntSet(file"Saldo"200);
        
dini_Set(file"Senha"senha);
        
GivePlayerMoney(playerid, -200);
        
format(stringsizeof(string), "[BANCO] %s sua conta foi aberta com sucesso, seu saldo atual й de: %d"anamedini_Int(file"Saldo"));
        
SendClientMessage(playerid0x00FF00AAstring);
        return 
1;
    }
    else if(
strcmp(funcao"senha"true) == 0)
    {
    }
    else if(
strcmp(funcao"depositar"true) == 0)
    {
    }
    else if(
strcmp(funcao"sacar"true) == 0)
    {
    }
    else if(
strcmp(funcao"saldo"true) == 0)
    {
    }
    return 
1;



Print do painel:


Log:
Код:
Loaded log file: "server_log.txt".
----------

SA-MP Dedicated Server
----------------------
v0.3z, ©2005-2014 SA-MP Team

[20:23:40] 
[20:23:40] Server Plugins
[20:23:40] --------------
[20:23:40]  Loading plugin: sscanf.dll
[20:23:40] 

[20:23:40]  ===============================

[20:23:40]       sscanf plugin loaded.     

[20:23:40]          Version:  2.8.1        

[20:23:40]    © 2012 Alex "******" Cole  

[20:23:40]  ===============================

[20:23:40]   Loaded.
[20:23:40]  Loaded 1 plugins.

[20:23:40] 
[20:23:40] Filterscripts
[20:23:40] ---------------
[20:23:40]   Loading filterscript 'td.amx'...
[20:23:40] 
--------------------------------------
[20:23:40]  Text Draw Editor 1.0RC2 by Zamaroht for SA-MP 0.3 Loaded.
[20:23:40] --------------------------------------

[20:23:40]   Loaded 1 filterscripts.

[20:23:40] 
-----------------------------------
[20:23:40]  Bradoks programaзхes entretenimento 
[20:23:40] -----------------------------------

[20:23:40] Number of vehicle models: 0
[20:23:41] Incoming connection: 127.0.0.1:50850
[20:23:41] [join] Bradoks_. has joined the server (0:127.0.0.1)
[20:23:48] Entrei em conta abrir
Reply
#2

Alguйm?
Reply
#3

Entrou em conta abrir, mas o passei 2 nгo estб sendo printado?
Reply
#4

Tente assim:
pawn Код:
if(strfind(funcao, "abrir", true) != -1)
    {
        printf("Entrei em %s", params);
        if(sscanf(funcao, "s[50]s[50]",funcao, senha)) return SendClientMessage(playerid, -1, "[ ERRO ] {FF0000}use: /banco conta abrir [senha da conta]");
        print("Passei dois");
        dini_Create(file);
        dini_IntSet(file, "Saldo", 200);
        dini_Set(file, "Senha", senha);
        GivePlayerMoney(playerid, -200);
        format(string, sizeof(string), "[BANCO] %s sua conta foi aberta com sucesso, seu saldo atual й de: %d", aname, dini_Int(file, "Saldo"));
        SendClientMessage(playerid, 0x00FF00AA, string);
        return 1;
    }
Reply
#5

Quote:
Originally Posted by MultiKill
Посмотреть сообщение
Tente assim:
pawn Код:
if(strfind(funcao, "abrir", true) != -1)
    {
        printf("Entrei em %s", params);
        if(sscanf(funcao, "s[50]s[50]",funcao, senha)) return SendClientMessage(playerid, -1, "[ ERRO ] {FF0000}use: /banco conta abrir [senha da conta]");
        print("Passei dois");
        dini_Create(file);
        dini_IntSet(file, "Saldo", 200);
        dini_Set(file, "Senha", senha);
        GivePlayerMoney(playerid, -200);
        format(string, sizeof(string), "[BANCO] %s sua conta foi aberta com sucesso, seu saldo atual й de: %d", aname, dini_Int(file, "Saldo"));
        SendClientMessage(playerid, 0x00FF00AA, string);
        return 1;
    }
Funcionou, valeu brother.
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)