[Ajuda] Banco bugado
#1

Galera to usando em fs de banco, mas quando uso saldo da que nгo hб nada depositado, mas na hora que deposito o dinheiro e descontando normalmente

Код:
#if defined MAX_PLAYERS
    #undef MAX_PLAYERS
#endif

#define MAX_PLAYERS 50
#define account     "%s.ini"
#define quantidade  "insira a quantidade desejada"
//------------------------------------------------
#define c1          2316.4658,-15.6762,26.7422
#define c2          2316.6191,-12.7899,26.7422
#define c3          2316.6187,-9.9513,26.7422
#define c4          2316.6208,-7.2376,26.7422
#define s1          2309.1951,-8.3039,26.7422
#define falso       "nгo estб no banco"
//------------------------------------------------

new
    nome[MAX_PLAYER_NAME],
    arquivo[28],
    paramount[50]
;

public OnFilterScriptInit()
{
    Create3DTextLabel("terminal 1\nUse /depositar /sacar ou /saldo",0x5EAF03FF,c1,50.0,0);
    Create3DTextLabel("terminal 2\nUse /depositar /sacar ou /saldo",0x5EAF03FF,c2,50.0,0);
    Create3DTextLabel("terminal 3\nUse /depositar /sacar ou /saldo",0x5EAF03FF,c3,50.0,0);
    Create3DTextLabel("terminal 4\nUse /depositar /sacar ou /saldo",0x5EAF03FF,c4,50.0,0);
    Create3DTextLabel("terminal para abrir contas bancбrias\nUse /abrirconta",0xFF0000FF,s1,50.0,0);
    return 1;
}

public OnFilterScriptExit()
{
    DOF2_Exit();
    return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if(dialogid == 666)
    {
        if(response)
        {
            if(GetPlayerMoney(playerid) < strval(inputtext)) return SendClientMessage(playerid,-1,"nгo tem tudo isso а depositar.");
            GetPlayerName(playerid,nome,24);
            format(arquivo,30,account,nome);
            DOF2_SetInt(arquivo, "grana", DOF2_GetInt(arquivo, "grana")+strval(inputtext));
            format(paramount,50,"vocк depositou R$%d",strval(inputtext));
            SendClientMessage(playerid,-1,paramount);
            GivePlayerMoney(playerid,-strval(inputtext));
            return 1;
        }
    }
    if(dialogid == 665)
    {
        if(response)
        {
            GetPlayerName(playerid,nome,24);
            format(arquivo,28,account,nome);
            SendClientMessage(playerid,-1,paramount);
            new MyMoney = DOF2_GetInt(arquivo, "grana");
            //if(GetPlayerMoney(playerid) < MyMoney) return SendClientMessage(playerid,-1,"nгo tem grana para isso.");
            if(strval(inputtext) <= MyMoney)
            {
                DOF2_SetInt(arquivo, "grana", DOF2_GetInt(arquivo, "grana")-strval(inputtext));
                GivePlayerMoney(playerid, strval(inputtext));
            }
            else return SendClientMessage(playerid,-1,"nгo possui tudo isso.");
            if(!strlen(inputtext)) return ShowPlayerDialog(playerid,665,DIALOG_STYLE_INPUT,"banco",quantidade,"ok","fechar");
        }
    }public OnPlayerCommandText(playerid, cmdtext[])
{
    if(!strcmp(cmdtext, "/depositar", true))
    {
    if(IsPlayerInRangeOfPoint(playerid,5.0,c1) || IsPlayerInRangeOfPoint(playerid,5.0,c2) || IsPlayerInRangeOfPoint(playerid,5.0,c3) || IsPlayerInRangeOfPoint(playerid,5.0,c4))
     {
    ShowPlayerDialog(playerid,666,DIALOG_STYLE_INPUT,"banco",quantidade,"ok","fechar");
    }
    else return SendClientMessage(playerid,-1,falso);
    return 1; 
    }

    if(!strcmp(cmdtext, "/banco", true))
    { 
    SetPlayerPos(playerid,2305.6309,-16.1295,26.7496);
    return 1; 
    }

    if(!strcmp(cmdtext, "/sacar", true))
    { 
    if(IsPlayerInRangeOfPoint(playerid,5.0,c1) || IsPlayerInRangeOfPoint(playerid,5.0,c2) || IsPlayerInRangeOfPoint(playerid,5.0,c3) || IsPlayerInRangeOfPoint(playerid,5.0,c4))
    {
    ShowPlayerDialog(playerid,665,DIALOG_STYLE_INPUT,"banco",quantidade,"ok","fechar");
    }
    else return SendClientMessage(playerid,-1,falso);
    return 1; 
    }


    if(!strcmp(cmdtext, "/saldo", true))
    { 
    if(IsPlayerInRangeOfPoint(playerid,5.0,c1) || IsPlayerInRangeOfPoint(playerid,5.0,c2) || IsPlayerInRangeOfPoint(playerid,5.0,c3) || IsPlayerInRangeOfPoint(playerid,5.0,c4))
    {
    GetPlayerName(playerid,nome,24);
    format(arquivo,28,account,nome);
    format(paramount,50,"vocк ainda tem depositado R$%d",DOF2_GetInt(arquivo, "grana"));
    ShowPlayerDialog(playerid,664,DIALOG_STYLE_MSGBOX,"banco",paramount,"ok","");
    }
    return 1;
    }

    return 0;
}
Botei todo o cуdigo para ficar mais facil para localizar o bug, pq ainda n achei mais vou continuar procurando
Reply
#2

Deixa eu ver se entendi
Quando vocк vai depositar й como se ele saca-se o dinheiro do banco?
Se sim, testa quando vocк vai sacar e vк se ele nгo estб depositando dai!
Se for isso й sу inverter
Reply
#3

Nгo, quando eu vou depositar ele depositar normalmente, dai eu pego e vou ver meu saldo, sу que fica saldo 0
e se tento sacar diz que nгo tem nada.
Reply
#4

Alguem pode ajudar
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)