[Ajuda] FS de Cartгo
#1

Bom eu sou novato em pawn e queria que voces me ajudassem nesse meu prjeto de CArtao de Credito eu fiz inspirado em um outro que era conjunto a um banco mas como quero acrescentar ao meu GM ficaria ruim 2 bancos :S
ele ta com 6 Errors e n sei retira-los se puderem me ajudar ta em Dini pq sou novato e so sei usar essa linguagem

pawn Код:
#define FILTERSCRIPT
#include <a_samp>
#include <dini>

enum pInfo
{
    pCredito,
    pGasto,
    pTipoCartao,
    pCartao,
    pSenha,
};
new Playerindo[MAX_PLAYERS][pInfo];
forward CartaoLog(string[]);
forward CarregarCartao(playerid);
forward SalvarCartao(playerid);
forward CCartao(playerid);

//Coordenadas da Loja de Cartхes : 2754.7600,-1400.6884,39.3734
#define CartaoX 2754.7600
#define CartaoY -1400.6884
#define CartaoZ 39.3734
#define BRANCO 0xFFFFFFAA
#define AZUL 0x33CCFFAA
#define VERDE 0x9EC73DAA
#define VERDE_CLARO 0x9ACD32AA
#define VERMELHO 0xAA3333AA
#define AMARELO 0xFFFF00AA
//----------------------- • Cartгo e Crйdito •--------------
new PlayerInfo[MAX_PLAYERS][pInfo];
new chosenpid;
new LocalCartao(playerid);
forward LocalCartao(playerid);
forward CartaoLog(string[]);

#define DIALOG_CCARTAO 500
#define DIALOG_GASTOS 501
#define DIALOG_TIPO 502
#define DIALOG_CREDITO 503
#define DIALOG_PAGAR 504
#define DIALOG_DELETAR 505
#define DIALOG_SENHA 506
#if defined FILTERSCRIPT

public OnFilterScriptInit()
{
    print("\n--------------------------------------");
    print(" Sistema de Cartao de Creditos");
    print(" Editado por Guilherme./iKratos_xD");
    print(" Feito por Marcello_Fusion");
    print("----------------------------------------\n");
    CreatePickup(1219,1,CartaoX,CartaoY,CartaoZ,0);
    Create3DTextLabel("Banco Itau",0x9ACD32AA,CartaoX,CartaoY,CartaoZ,10,0,0);
    return 1;
}

public OnFilterScriptExit()
{
    return 1;
}
#endif

public OnPlayerConnect(playerid)
{
    PlayerInfo[playerid][pGasto] = 0;
    PlayerInfo[playerid][pCredito] = 0;
    PlayerInfo[playerid][pTipoCartao] = 0;
    PlayerInfo[playerid][pCartao] = 0;
    PlayerInfo[playerid][pSenha] = 0;
    CarregarCartao(playerid);
    return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    return 1;
}

public CarregarCartao(playerid)
{
    new string2[64];
    new playername2[MAX_PLAYER_NAME];
    GetPlayerName(playerid, playername2, sizeof(playername2));
    format(string2, sizeof(string2), "Cartao/%s.ini", playername2);
    if (dini_Exists(string2))
    {
        PlayerInfo[playerid][pGasto] = dini_Int(string2,"Gasto");
        PlayerInfo[playerid][pCredito] = dini_Int(string2,"Credito");
        PlayerInfo[playerid][pTipoCartao] = dini_Int(string2,"Tipo");
        PlayerInfo[playerid][pCartao] = dini_Int(string2,"Cartao");
        PlayerInfo[playerid][pSenha] = dini_Int(string2,"Senha");
        format(string2, sizeof(string2), "• Seu Cartгo Estб Ativado, %s.",playername2);
        SendClientMessage(playerid, BRANCO, string2);
    }
    return 1;
}

public SalvarCartao(playerid)
{
    if(IsPlayerConnected(playerid))
    {
        new string3[64];
        new playername3[MAX_PLAYER_NAME];
        GetPlayerName(playerid, playername3, sizeof(playername3));
        format(string3, sizeof(string3), "Cartao/%s.ini", playername3);
        dini_IntSet(string3, "Gasto",PlayerInfo[playerid][pGasto]);
        dini_IntSet(string3, "Credito",PlayerInfo[playerid][pCredito]);
        dini_IntSet(string3, "Tipo",PlayerInfo[playerid][pTipoCartao]);
        dini_IntSet(string3, "Cartao",PlayerInfo[playerid][pCartao]);
        dini_IntSet(string3, "Senha",PlayerInfo[playerid][pSenha]);
    }
    return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
    new string[256];
    new cmd[256];
    new logstring[128];
    new year, month,day;
    getdate(year, month, day);
    new sendername[MAX_PLAYER_NAME];
    GetPlayerName(playerid, sendername, sizeof(sendername));
    new ftext[56];
    new btext[56];
    if(PlayerInfo[playerid][pTipoCartao] == 1)
    { ftext = "Bronze"; btext = "R$10000";}
    else if(PlayerInfo[playerid][pTipoCartao] == 2)
    { ftext = "Prata"; btext = "R$15000"; }
    else if(PlayerInfo[playerid][pTipoCartao] == 3)
    { ftext = "Platina"; btext = "R$30000";}
    else if(PlayerInfo[playerid][pTipoCartao] >= 4)
    { ftext = "Ouro"; btext = "R$50000";}

    //-----------------------------------Cmds do Cartгo :D----------------------------------------
    if(strcmp(cmd, "/ajudacartao", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pCartao] == 0)
            {
                SendClientMessage(playerid,0xFF0000AA,"|$| Vocк nгo possui Cartгo de Crйdito.");
                return 1;
            }
            else
            {
                SendClientMessage(playerid,0xFF0000AA,"|$| Cartгo [BVC] |$|");
                SendClientMessage(playerid,0xFF0000AA,"|$| /pegarcartao /deletarcartao /melhorarcartao|$|");
                SendClientMessage(playerid,0xFF0000AA,"|$| /usarcartao /pc(/pagarconta) /precoscartao|$|");

            }
        }
        return 1;
    }
    if(strcmp(cmd, "/creditoscartao", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            SendClientMessage(playerid,0xFF0000AA,"|$| Cartгo de Crйdito|$|");
            SendClientMessage(playerid,0xFF0000AA,"|$| Feito por: Guilherme.|$|");
        }
        return 1;
    }
    if(strcmp(cmd, "/cartao", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(LocalCartao(playerid))
            {
                if(PlayerInfo[playerid][pCartao] == 0)
                {
                    SendClientMessage(playerid,0xFF0000AA,"|$| Vocк nгo possui um Cartгo de Crйdito|$|");
                    return 1;
                }
                format(string,sizeof(string),"Olб %s\nDigite sua senha abaixo pra continuar:.",sendername);
                ShowPlayerDialog(playerid, DIALOG_SENHA, DIALOG_STYLE_INPUT, "Senha", string, "Continuar", "Sair");
            }
            else
            {
                return SendClientMessage(playerid,VERDE,"|x| Vocк nгo estб na Agencia de Cartхes");
            }
        }
        return 1;

    }
    if(strcmp(cmd, "/emprestimo", true)==0 || strcmp(cmd, "/bemp", true)==0)
    {
        if(IsPlayerInRangeOfPoint(playerid, 15.0,CartaoX,CartaoY,CartaoZ))
        {
            if(PlayerInfo[playerid][pCartao] == 0)
            {
                SendClientMessage(playerid,0x0080FFAA,"|$| Vocк nгo possui um Cartгo. [/pegarcartao]|$|");
                return 1;
            }
            if(PlayerInfo[playerid][pGasto] > 0)
            {
                SendClientMessage(playerid,0x0080FFAA,"|$| Vocк jб estб devendo, pague primeiro!|$|");
                return 1;
            }
            if(PlayerInfo[playerid][pTipoCartao] < 4)
            {
            SendClientMessage(playerid,0x0080FFAA,"Melhore seu cartao e Podera Pegar mais dinheiro!");
            }
            format(string, sizeof(string), "Cartao de %s\nVocк pode Pegar emprestimo de atй %s\nDigite abaixo o valor do emprestimo:", ftext,btext);
            ShowPlayerDialog(playerid, DIALOG_CREDITO, DIALOG_STYLE_INPUT, "|BVC Cartoes| - Emprestimo", string, "OK", "Cancelar");
            return 1;
        }
        else
        {
        SendClientMessage(playerid,0x0080FFAA,"|$| Vocк nгo esta na BVC Cartхes!|$|");
        }

    }
    if(strcmp(cmd, "/pagarconta", true)==0 || strcmp(cmd, "/pc", true)==0)
    {
        if(IsPlayerInRangeOfPoint(playerid, 15.0,CartaoX,CartaoY,CartaoZ))
        {
            if(PlayerInfo[playerid][pCartao] == 0)
            {
                SendClientMessage(playerid,0x0080FFAA,"|$| Vocк nгo possui um Cartгo de Crйdito [/Pegarcartao]|$|");
                return 1;
            }
            if(PlayerInfo[playerid][pGasto] == 0)
            {
                SendClientMessage(playerid,0x0080FFAA,"|$| Vocк nгo possui um emprestimo!|$|");
                return 1;
            }
            else
            {
                new emp = PlayerInfo[playerid][pGasto];
                GetPlayerMoney(playerid) = GetPlayerGrana(playerid);
                GetPlayerGrana(playerid, -emp);
                PlayerInfo[playerid][pGasto] = 0;
                SalvarCartao(playerid);
            }
            return 1;
        }

    }
    if(strcmp(cmd, "/pegarcartao", true)==0 || strcmp(cmd, "/pegarc", true)==0)
    {
        if(IsPlayerInRangeOfPoint(playerid, 15.0,CartaoX,CartaoY,CartaoZ))
        {
            if(PlayerInfo[playerid][pCartao] == 1)
            {
                SendClientMessage(playerid,0x0080FFAA,"|$| Vocк jб possui um Cartгo de Crйdito |$|");
                return 1;
            }
            ShowPlayerDialog(playerid, DIALOG_CCARTAO, DIALOG_STYLE_MSGBOX, "BVC Cartхes - Cartгo", "Bem Vindo a BVC Cartхes\n aqui voce ira poder criar sua conta do Cartгo\nDeseja cria seu Cartгo Agora?", "Sim", "Nгo");
            return 1;
        }

    }
    if(strcmp(cmd, "/deletarconta", true) == 0)
    {
        if(IsPlayerInRangeOfPoint(playerid, 15.0,CartaoX,CartaoY,CartaoZ))
        {
            if(PlayerInfo[playerid][pGasto] > 0)
            {
                SendClientMessage(playerid,0x0080FFAA,"|$| Vocк Possui uma Conta no Cartгo nao-paga use [/pc]|$|");
                return 1;
            }
            format(string, sizeof(string), "|$| Cartгo %d Deletado |$|", PlayerInfo[playerid][pTipoCartao]);
            SendClientMessage(playerid, AZUL, string);
            PlayerInfo[playerid][pCartao] = 0;
            PlayerInfo[playerid][pSenha] = 0;
            PlayerInfo[playerid][pTipoCartao] = 0;
            PlayerInfo[playerid][pGasto = 0;
            format(logstring, sizeof(logstring), "%s deletou seu Cartгo(%d-%d-%d)", sendername, month, day, year);
            CartaoLog(logstring);
            SalvarCartao(playerid);
            return 1;
        }
        else
        {
            return SendClientMessage(playerid,VERDE,"Vocк nгo esta no BVC Cartхes!");
        }
    }
    if(strcmp(cmd, "/melhorarcartao", true) == 0)
    {
        if(IsPlayerInRangeOfPoint(playerid, 15.0,CartaoX,CartaoY,CartaoZ))
        {
            if(PlayerInfo[playerid][pTipoCartao] == 1 )
            {
                GetPlayerMoney(playerid); = GetPlayerGrana(playerid);
                GetPlayerGrana(playerid, 10000);
                PlayerInfo[playerid][pTipoCartao] = 2;
                format(string, sizeof(string),"|$| Vocк melhorou seu Cartгo! [Cartгo %s]", ftext);
                SendClientMessage(playerid, AZUL, string);
                format(string, sizeof(string),"|$| Novo limite para emprestimo! [Emprestimo Maximo %s]", btext);
                SendClientMessage(playerid, AZUL, string);
                SalvarCartao(playerid);
                format(logstring, sizeof(logstring), "%s melhorou sua conta para %d(%d-%d-%d)", sendername, PlayerInfo[playerid][pTipoCartao], month, day, year);
                CartaoLog(logstring);
                return 1;
            }
            else if(PlayerInfo[playerid][pTipoCartao] == 2)
            {
                GetPlayerMoney(playerid); = GetPlayerGrana(playerid);
                GetPlayerGrana(playerid, 10000);
                PlayerInfo[playerid][pTipoCartao] = 3;
                format(string, sizeof(string),"|$| Vocк melhorou sua conta! [Cartгo %s]", ftext);
                SendClientMessage(playerid, AZUL, string);
                format(string, sizeof(string),"|$| Novo limite para emprestimo! [Emprestimo Maximo %s]", btext);
                SendClientMessage(playerid, AZUL, string);
                SalvarBanco(playerid);
                format(logstring, sizeof(logstring), "%s melhorou sua conta para %d(%d-%d-%d)", sendername, PlayerInfo[playerid][pTipoCartao], month, day, year);
                BancoLog(logstring);
                return 1;
            }
            else if(PlayerInfo[playerid][pTipoCartao] == 3 && PlayerInfo[playerid][pSaldoBanco] > 1250)
            {
                GetPlayerMoney(playerid); = GetPlayerGrana(playerid);
                GetPlayerGrana(playerid, 10000);
                PlayerInfo[playerid][pTipoCartao] = 4;
                format(string, sizeof(string),"|$| Vocк melhorou sua conta! [Cartгo %s]", ftext);
                SendClientMessage(playerid, AZUL, string);
                format(string, sizeof(string),"|$| Novo limite para emprestimo! [Emprestimo Maximo %s]", btext);
                SendClientMessage(playerid, AZUL, string);
                SalvarBanco(playerid);
                format(logstring, sizeof(logstring), "%s melhorou sua conta para %d(%d-%d-%d)", sendername, PlayerInfo[playerid][pTipoCartao], month, day, year);
                BancoLog(logstring);
                return 1;
            }
            else if(PlayerInfo[playerid][pTipoCartao] > 4)
            {
                format(string, sizeof(string),"|$| Vocк ja tem o melhor cartгo disponнvel![Cartгo %s]", ftext);
                SendClientMessage(playerid, AZUL, string);
                return 1;
        }
        else
        {
            return SendClientMessage(playerid,VERDE,"Vocк nгo esta na BVC Cartхes!");
        }
    }
    return 0;
}
stock LocalCartao(playerid)
{
    if(IsPlayerInRangeOfPoint(playerid,10.0,CartaoX,CartaoY,CartaoZ)) // LS
    {
        return 1;
    }
    else
    {
        return 0;
    }

}
desde jб agradeзo.
Reply
#2

Cade o Erro?
Reply
#3

Me desculpe
aqui os erros

pawn Код:
C:\Users\Guilherme\Desktop\CARTAO.pwn(32) : error 001: expected token: ";", but found "("
C:\Users\Guilherme\Desktop\CARTAO.pwn(33) : error 021: symbol already defined: "LocalCartao"
C:\Users\Guilherme\Desktop\CARTAO.pwn(166) : error 012: invalid function call, not a valid address
C:\Users\Guilherme\Desktop\CARTAO.pwn(166) : warning 215: expression has no effect
C:\Users\Guilherme\Desktop\CARTAO.pwn(166) : error 001: expected token: ";", but found ")"
C:\Users\Guilherme\Desktop\CARTAO.pwn(166) : error 029: invalid expression, assumed zero
C:\Users\Guilherme\Desktop\CARTAO.pwn(166) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664          Copyright (c) 1997-2006, ITB CompuPhase


6 Errors.
Reply
#4

pawn Код:
new LocalCartao(playerid);
Retire isto (LocalCartao й uma stock nгo uma variavel.)
lol
Reply
#5

Retirei agr fico assim os Errors

pawn Код:
C:\Users\Guilherme\Desktop\CARTAO.pwn(165) : error 004: function "LocalCartao" is not implemented
C:\Users\Guilherme\Desktop\CARTAO.pwn(228) : error 022: must be lvalue (non-constant)
C:\Users\Guilherme\Desktop\CARTAO.pwn(228) : error 017: undefined symbol "GetPlayerGrana"
C:\Users\Guilherme\Desktop\CARTAO.pwn(229) : error 017: undefined symbol "GetPlayerGrana"
C:\Users\Guilherme\Desktop\CARTAO.pwn(265) : error 022: must be lvalue (non-constant)
C:\Users\Guilherme\Desktop\CARTAO.pwn(265) : warning 215: expression has no effect
C:\Users\Guilherme\Desktop\CARTAO.pwn(267) : error 004: function "CartaoLog" is not implemented
C:\Users\Guilherme\Desktop\CARTAO.pwn(282) : error 029: invalid expression, assumed zero
C:\Users\Guilherme\Desktop\CARTAO.pwn(282) : error 017: undefined symbol "GetPlayerGrana"
C:\Users\Guilherme\Desktop\CARTAO.pwn(283) : error 017: undefined symbol "GetPlayerGrana"
C:\Users\Guilherme\Desktop\CARTAO.pwn(291) : error 004: function "CartaoLog" is not implemented
C:\Users\Guilherme\Desktop\CARTAO.pwn(296) : error 029: invalid expression, assumed zero
C:\Users\Guilherme\Desktop\CARTAO.pwn(296) : error 017: undefined symbol "GetPlayerGrana"
C:\Users\Guilherme\Desktop\CARTAO.pwn(297) : error 017: undefined symbol "GetPlayerGrana"
C:\Users\Guilherme\Desktop\CARTAO.pwn(303) : error 017: undefined symbol "SalvarBanco"
C:\Users\Guilherme\Desktop\CARTAO.pwn(305) : error 017: undefined symbol "BancoLog"
C:\Users\Guilherme\Desktop\CARTAO.pwn(308) : error 017: undefined symbol "pSaldoBanco"
C:\Users\Guilherme\Desktop\CARTAO.pwn(310) : error 029: invalid expression, assumed zero
C:\Users\Guilherme\Desktop\CARTAO.pwn(310) : error 017: undefined symbol "GetPlayerGrana"
C:\Users\Guilherme\Desktop\CARTAO.pwn(311) : error 017: undefined symbol "GetPlayerGrana"
C:\Users\Guilherme\Desktop\CARTAO.pwn(317) : error 017: undefined symbol "SalvarBanco"
C:\Users\Guilherme\Desktop\CARTAO.pwn(319) : error 017: undefined symbol "BancoLog"
C:\Users\Guilherme\Desktop\CARTAO.pwn(328) : warning 217: loose indentation
C:\Users\Guilherme\Desktop\CARTAO.pwn(333) : warning 217: loose indentation
C:\Users\Guilherme\Desktop\CARTAO.pwn(335) : warning 217: loose indentation
C:\Users\Guilherme\Desktop\CARTAO.pwn(335) : error 029: invalid expression, assumed zero
C:\Users\Guilherme\Desktop\CARTAO.pwn(335) : error 004: function "LocalCartao" is not implemented
C:\Users\Guilherme\Desktop\CARTAO.pwn(348) : error 030: compound statement not closed at the end of file (started at line 114)
Pawn compiler 3.2.3664          Copyright (c) 1997-2006, ITB CompuPhase


24 Errors.
Reply
#6

pawn Код:
new LocalCartao[MAX_PLAYERS];
Reply
#7

Agora ta dando

pawn Код:
C:\Users\Guilherme\Desktop\CARTAO.pwn(33) : error 021: symbol already defined: "LocalCartao"
C:\Users\Guilherme\Desktop\CARTAO.pwn(166) : error 012: invalid function call, not a valid address
C:\Users\Guilherme\Desktop\CARTAO.pwn(166) : warning 215: expression has no effect
C:\Users\Guilherme\Desktop\CARTAO.pwn(166) : error 001: expected token: ";", but found ")"
C:\Users\Guilherme\Desktop\CARTAO.pwn(166) : error 029: invalid expression, assumed zero
C:\Users\Guilherme\Desktop\CARTAO.pwn(166) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664          Copyright (c) 1997-2006, ITB CompuPhase


5 Errors.
Apaguei a Forward LocalCArtao e fico com 4 Errors

pawn Код:
C:\Users\Guilherme\Desktop\CARTAO.pwn(165) : error 012: invalid function call, not a valid address
C:\Users\Guilherme\Desktop\CARTAO.pwn(165) : warning 215: expression has no effect
C:\Users\Guilherme\Desktop\CARTAO.pwn(165) : error 001: expected token: ";", but found ")"
C:\Users\Guilherme\Desktop\CARTAO.pwn(165) : error 029: invalid expression, assumed zero
C:\Users\Guilherme\Desktop\CARTAO.pwn(165) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664          Copyright (c) 1997-2006, ITB CompuPhase


4 Errors.
Linhas de Erro:
Comeзa na 161 termina na 180
pawn Код:
if(strcmp(cmd, "/cartao", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(LocalCartao(playerid))
            {
                if(PlayerInfo[playerid][pCartao] == 0)
                {
                    SendClientMessage(playerid,0xFF0000AA,"|$| Vocк nгo possui um Cartгo de Crйdito|$|");
                    return 1;
                }
                format(string,sizeof(string),"Olб %s\nDigite sua senha abaixo pra continuar:.",sendername);
                ShowPlayerDialog(playerid, DIALOG_SENHA, DIALOG_STYLE_INPUT, "Senha", string, "Continuar", "Sair");
            }
            else
            {
                return SendClientMessage(playerid,VERDE,"|x| Vocк nгo estб na Agencia de Cartхes");
            }
        }
        return 1;
Reply
#8

1єerro simbolo ja definido deve ter 2 desse procure e apage 1 o numero 166 posta o codigo do erro ae'
Reply
#9

Ja postei acima a linha do erro , e obrigado por estar me ajudando ae
Reply
#10

tenta por no luga da stock localcartao uma public eu acho que deve pega cria a forward + com outro nome se n vai da simbolo ja definido por causa do
pawn Код:
new LocalCartao[MAX_PLAYER];
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)