Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- dBank System - v2.0 [ Adicionado Sistema de Empréstimo. ]
- Créditos:
- dPlaYer_ - Por Criar o FilterScript,
- Synchr0 / Larceny - Ajudar em alguns códigos,
- paulor - gName
- **** COMANDOS ****
- /criarconta /entrarconta /banco /senhabanco
- /emprestimo /cancelarempr /infoempr /sacarempr /pagarempr
- **** COMANDOS ****
- Criado por dPlaYer_ ajuda de Syncrh0
- Não esqueça de criar pasta : " Banco " nas scriptfiles do seu servidor.
- */
- #include <a_samp>
- #include <DOF2>
- #include <zcmd>
- #define FC:%0(%1) forward %0(%1);public %0(%1)
- #define gName(%0) (GetPlayerName(%0, pXs, 24), pXs)
- #define DIALOGID 900
- #define DIALOGID1 901
- #define DIALOGV 902
- #define DIALOGID2 903
- #define DIALOGID3 904
- #define DIALOGID4 905
- #define DIALOGID5 906
- #define DIALOGID6 907
- #define DIALOG_E 908
- #define DIALOG_E1 909
- #define DIRETORIOB "Banco/%s.ini"
- #define VERMELHO 0xFF0000AA
- new pXs[24] , bool:LogadoB[MAX_PLAYERS], bool:SenhaB[MAX_PLAYERS];
- public OnFilterScriptInit()
- {
- return 1;
- }
- public OnFilterScriptExit()
- {
- DOF2_Exit();
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- LogadoB[playerid] = false;
- CobrarEmprestimo(playerid);
- return 1;
- }
- public OnPlayerDisconnect(playerid)
- {
- LogadoB[playerid] = false;
- return 1;
- }
- FC:CobrarEmprestimo(playerid)
- {
- new banco[80];
- format(banco, sizeof(banco), DIRETORIOB, gName(playerid));
- if(DOF2_GetInt(banco, "TemEmprestimo") == 1 && DOF2_GetInt(banco, "QuantiaEmprestimo") > 0)
- {
- if(GetPVarInt(playerid, "CobrarEmprestimo") > GetTickCount())
- {
- DOF2_SetInt(banco, "Saldo", -4000);
- format(banco, sizeof(banco), "* Foi descontado 4Mil R$ De Empréstimo da sua Conta Bancária.");
- SendClientMessage(playerid, -1, banco);
- }
- }
- else if(DOF2_GetInt(banco, "TemEmprestimo") == 0 && DOF2_GetInt(banco, "QuantiaEmprestimo") < 1)
- {
- if(GetPVarInt(playerid, "CobrarEmprestimo") > GetTickCount())
- {
- DOF2_SetInt(banco, "Saldo", -4000);
- }
- }
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- new banco[190], extrato[250], ano, mes, dia, hora, minuto, segundo;
- format(banco, sizeof(banco), DIRETORIOB, gName(playerid));
- if(dialogid == DIALOG_E)
- {
- if(response)
- {
- new demp = strval(inputtext);
- if(!DOF2_FileExists(banco)) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você ainda não tem uma conta bancária.");
- if(!LogadoB[playerid]) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você precisa logar em sua conta bancária.");
- if(DOF2_GetInt(banco, "TemEmprestimo") == 1) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você deve quitar suas dívidas no empréstimo antes de pedir outro.");
- if(strval(inputtext) < 5000 && strval(inputtext) > 50000) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você só pode fazer um empréstimo acima de 5Mil e Abaixo de 50Mil.");
- GivePlayerMoney(playerid, demp);
- format(extrato, sizeof(extrato), "[ dBank - Info ] Você fez um empréstimo de %dR$ , O Empréstimo será cobrado a cada 60 Minutos em um valor de 4MilR$ Descontados na Conta Bancária.", demp);
- DOF2_SetInt(banco, "TemEmprestimo", 1);
- DOF2_SetInt(banco, "TaPago", 0);
- DOF2_SetInt(banco, "QuantiaEmprestimo", demp);
- SetPVarInt( playerid, "CobrarEmprestimo", GetTickCount() + 10 * 60 );
- SendClientMessage(playerid, -1, extrato);
- }
- }
- if(dialogid == DIALOGID2)
- {
- if(response)
- {
- new dinheiro = strval(inputtext);
- if(!DOF2_FileExists(banco)) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você ainda não tem uma conta bancária.");
- if(!LogadoB[playerid]) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você precisa logar em sua conta bancária.");
- if(GetPlayerMoney(playerid) < dinheiro || dinheiro <= 0) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Quantia Inválida.");
- if(dinheiro > 10000000) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você só pode depositar no máximo até 10 milhões!");
- GivePlayerMoney(playerid, -dinheiro);
- new quantidade = DOF2_GetInt(banco, "Saldo");
- DOF2_SetInt(banco, "Saldo", quantidade + dinheiro);
- getdate(ano, mes, dia);
- gettime(hora, minuto, segundo);
- new saldo = DOF2_GetInt(banco, "Saldo");
- format(extrato, sizeof(extrato), "** {FF8C00}dBank{FFFAFA} System - {FF8C00}Contas Bancárias {FFFAFA}**\n -- Extrato Bancário --\nNome do Usuário: %s\nSaldo Atual: %dR$\nSaldo No Empréstimo: %dR$\nHora: %d:%d:%d\nData: %d/%d/%d", gName(playerid), saldo, DOF2_GetInt(banco, "QuantiaEmprestimo"), DOF2_GetInt(banco, "QuantiaEmprestimo"), hora, minuto, segundo, dia, mes, ano);
- ShowPlayerDialog(playerid, 200, DIALOG_STYLE_MSGBOX, "Sistema 24 / 7", extrato, "Fechar", "");
- }
- }
- else if(dialogid == DIALOGID3)
- {
- if(response)
- {
- new dinheiro = strval(inputtext);
- if(!DOF2_FileExists(banco)) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você ainda não tem uma conta bancária.");
- if(!LogadoB[playerid]) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você precisa logar em sua conta bancária.");
- if(strfind(inputtext, "-", true) != -1) return SendClientMessage(playerid, VERMELHO ,"[ dBank - Info ] Valor invalido.");
- new saldo = DOF2_GetInt(banco, "Saldo");
- if(saldo < dinheiro || dinheiro <= 0) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Quantia Inválida.");
- GivePlayerMoney(playerid, dinheiro);
- new quantidade = DOF2_GetInt(banco, "Saldo");
- DOF2_SetInt(banco, "Saldo", quantidade - dinheiro);
- getdate(ano, mes, dia);
- gettime(hora, minuto, segundo);
- format(extrato, sizeof(extrato), "** {FF8C00}dBank{FFFAFA} System - {FF8C00}Contas Bancárias {FFFAFA}**\n -- Extrato Bancário --\nNome do Usuário: %s\nSaldo Atual: %dR$\nSaldo No Empréstimo: %dR$\nHora: %d:%d:%d\nData: %d/%d/%d", gName(playerid), quantidade, DOF2_GetInt(banco, "QuantiaEmprestimo"), hora, minuto, segundo, dia, mes, ano);
- DOF2_SaveFile();
- ShowPlayerDialog(playerid, 200, DIALOG_STYLE_MSGBOX, "Sistema 24 / 7", extrato, "Fechar", "");
- }
- }
- else if(dialogid == DIALOG_E1)
- {
- if(response)
- {
- new dinheiro = strval(inputtext);
- if(!DOF2_FileExists(banco)) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você ainda não tem uma conta bancária.");
- if(!LogadoB[playerid]) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você precisa logar em sua conta bancária.");
- if(strfind(inputtext, "-", true) != -1) return SendClientMessage(playerid, VERMELHO ,"[ dBank - Info ] Valor invalido.");
- new saldo = DOF2_GetInt(banco, "QuantiaEmprestimo");
- if(saldo < dinheiro && dinheiro <= 0) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Quantia Inválida.");
- GivePlayerMoney(playerid, dinheiro);
- new quantidade = DOF2_GetInt(banco, "QuantiaEmprestimo");
- DOF2_SetInt(banco, "QuantiaEmprestimo", quantidade - dinheiro);
- getdate(ano, mes, dia);
- gettime(hora, minuto, segundo);
- format(extrato, sizeof(extrato), "** {FF8C00}dBank{FFFAFA} System - {FF8C00}Contas Bancárias {FFFAFA}**\n -- Extrato Bancário 'Emprestimo' --\nNome do Usuário: %s\nSaldo No Empréstimo: %dR$\nHora: %d:%d:%d\nData: %d/%d/%d", gName(playerid), DOF2_GetInt(banco, "QuantiaEmprestimo"), hora, minuto, segundo, dia, mes, ano);
- DOF2_SaveFile();
- ShowPlayerDialog(playerid, 200, DIALOG_STYLE_MSGBOX, "Sistema 24 / 7", extrato, "Fechar", "");
- }
- }
- else if(dialogid == DIALOGID5)
- {
- if(response)
- {
- getdate(ano, mes, dia);
- gettime(hora, minuto, segundo);
- new saldo = DOF2_GetInt(banco, "Saldo");
- format(extrato, sizeof(extrato), "** {FF8C00}dBank{FFFAFA} System - {FF8C00}Contas Bancárias {FFFAFA}**\n -- Extrato Bancário --\nNome do Usuário: %s\nSaldo Atual: %dR$\nSaldo No Empréstimo: %dR$\nHora: %d:%d:%d\nData: %d/%d/%d", gName(playerid), saldo , DOF2_GetInt(banco, "QuantiaEmprestimo"), hora, minuto, segundo, dia, mes, ano);
- ShowPlayerDialog(playerid, 200, DIALOG_STYLE_MSGBOX, "Sistema 24 / 7", extrato, "Fechar", "");
- }
- else
- {
- format(banco, sizeof(banco), "\n -- Transação Bancária --\n\n{FF8C00}Nome {FFFAFA}De {FF8C00}Usuário{FFFAFA}: %s\n\nQual transação você deseja realizar:", gName(playerid));
- ShowPlayerDialog(playerid, DIALOGID6, DIALOG_STYLE_MSGBOX, "Sistema 24 / 7", banco, "Depositar", "Sacar");
- }
- }
- else if(dialogid == DIALOGID6)
- {
- if(response)
- {
- format(banco, sizeof(banco), "** {FF8C00}dBank{FFFAFA} System - {FF8C00}Contas Bancárias {FFFAFA}**\n -- Deposito Bancário --\n\n{FF8C00}Nome {FFFAFA}De {FF8C00}Usuário{FFFAFA}: %s\n\nInsira a quantia que deseja depositar:", gName(playerid));
- ShowPlayerDialog(playerid, DIALOGID2, DIALOG_STYLE_INPUT, "Sistema 24 / 7", banco, "Depositar", "Cancelar");
- }
- else
- {
- format(banco, sizeof(banco), "** {FF8C00}dBank{FFFAFA} System - {FF8C00}Contas Bancárias {FFFAFA}**\n -- Saque Bancário --\n\n{FF8C00}Nome {FFFAFA}De {FF8C00}Usuário{FFFAFA}: %s\n\nInsira a quantia que deseja sacar:", gName(playerid));
- ShowPlayerDialog(playerid, DIALOGID3, DIALOG_STYLE_INPUT, "Sistema 24 / 7", banco, "Sacar", "Cancelar");
- }
- }
- else if(dialogid == DIALOGID4)
- {
- if(response)
- {
- if(strlen(inputtext))
- {
- DOF2_CreateFile(banco);
- DOF2_SetString(banco, "Senha", inputtext);
- DOF2_SetInt(banco, "Saldo", 0);
- format(banco, sizeof(banco), "[ dBank - Info ] Sua conta bancária foi criada com sucesso! - Senha : %s", inputtext);
- SendClientMessage(playerid, -1, banco);
- PlayerPlaySound(playerid, 1057, 0.0, 0.0, 10.0);
- LogadoB[playerid] = true;
- DOF2_SaveFile();
- }
- else
- {
- format(banco, sizeof(banco), "Não deixe o campo Em Branco!\n\n{FF8C00}Nome {FFFAFA}De {FF8C00}Usuário{FFFAFA}: %s\n\nInsira uma senha para prosseguir:", gName(playerid));
- ShowPlayerDialog(playerid, DIALOGV, DIALOG_STYLE_INPUT, "Sistema 24 / 7", banco, "Criar", "Cancelar");
- }
- }
- }
- else if(dialogid == DIALOGID)
- {
- if(response)
- {
- if(strlen(inputtext))
- {
- new acesso[150];
- acesso = DOF2_GetString(banco, "Senha");
- if(strcmp(inputtext, acesso, true) == 0)
- {
- SendClientMessage(playerid, -1, "[ dBank - Info ] Sua conta bancária foi carregada com sucesso!");
- PlayerPlaySound(playerid, 1057, 0.0, 0.0, 10.0);
- LogadoB[playerid] = true;
- if(SenhaB[playerid] == true)
- {
- format(banco, sizeof(banco), "{FF8C00}Nome {FFFAFA}De {FF8C00}Usuário{FFFAFA}: %s\n\nInsira sua nova senha bancária:", gName(playerid));
- ShowPlayerDialog(playerid, DIALOGID1, DIALOG_STYLE_INPUT, "Conta", banco, "Confirmar", "Cancelar");
- SenhaB[playerid] = false;
- }
- }
- else
- {
- format(banco, sizeof(banco), "Senha Incorreta!\n\n{FF8C00}Nome {FFFAFA}De {FF8C00}Usuário{FFFAFA}: %s\n\nInsira sua senha bancária:", gName(playerid));
- ShowPlayerDialog(playerid, DIALOGID, DIALOG_STYLE_INPUT, "Sistema 24 / 7", banco, "Entrar", "Cancelar");
- SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Senha Incorreta.");
- }
- }
- else
- {
- format(banco, sizeof(banco), "Não deixe o campo em branco!\n\n{FF8C00}Nome {FFFAFA}De {FF8C00}Usuário{FFFAFA}: %s\n\nInsira sua senha para prosseguir:", gName(playerid));
- ShowPlayerDialog(playerid, DIALOGV, DIALOG_STYLE_INPUT, "Sistema 24 / 7", banco, "Entrar", "Cancelar");
- }
- }
- }
- else if(dialogid == DIALOGID1)
- {
- if(response)
- {
- format(banco, sizeof(banco), "* %s Sua senha bancária foi alterada para : '%s' Guarde-a.", gName(playerid), inputtext);
- SendClientMessage(playerid, VERMELHO, banco);
- }
- }
- return 1;
- }
- CMD:comandosb(playerid)
- {
- ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Comandos", "/criarconta /entrarconta /banco /senhabanco /emprestimo /cancelarempr /infoempr /sacarempr /pagarempr", "Fechar", "");
- return 1;
- }
- CMD:pagarempr(playerid)
- {
- new sTr[40];
- format(sTr, sizeof(sTr), DIRETORIOB , gName(playerid));
- if(!DOF2_GetInt(sTr, "TemEmprestimo")) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você não tem um empréstimo feito para cancelar.");
- if(GetPlayerMoney(playerid) > DOF2_GetInt(sTr, "QuantiaEmprestimo")) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você não tem um dinheiro maior que seu empréstimo. Só assim poderá paga-lo.");
- DOF2_SetInt(sTr, "QuantiaEmprestimo", 0);
- DOF2_SetInt(sTr, "TemEmprestimo", 0);
- SetPVarInt(playerid, "CobrarEmprestimo", 0);
- DOF2_SetInt(sTr, "TaPago", 1);
- SendClientMessage(playerid, -1, "[ dBank - Info ] Empréstimo Pago.");
- return 1;
- }
- CMD:sacarempr(playerid)
- {
- new string[202];
- if(!LogadoB[playerid]) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você já está logado em sua conta bancária.");
- format(string, sizeof(string), DIRETORIOB , gName(playerid));
- if(!DOF2_FileExists(string)) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você não tem uma conta no banco, Para criar uma: /criarconta");
- format(string, sizeof(string), "** {FF8C00}dBank{FFFAFA} System - {FF8C00}Contas Bancárias {FFFAFA}**\n -- Saque Bancário * Empréstimo * --\n\n{FF8C00}Nome {FFFAFA}De {FF8C00}Usuário{FFFAFA}: %s\n\nInsira a quantia que deseja sacar:", gName(playerid));
- ShowPlayerDialog(playerid, DIALOG_E1, DIALOG_STYLE_INPUT, "Sistema 24 / 7", string, "Sacar", "Cancelar");
- return 1;
- }
- CMD:infoempr(playerid)
- {
- SendClientMessage(playerid, -1, "Para fazer um empréstimo você não precisa de dinheiro, use o /emprestimo e depois digite a quantia a receber, será cobrado 4Mil reais.");
- SendClientMessage(playerid, -1, "Valores de empréstimos entre 5.000 e 50.000 * O Dinheiro é colocado em seu jogador na hora. *");
- SendClientMessage(playerid, -1, "Para cancelar um empréstimo use: /cancelarempr");
- return 1;
- }
- CMD:cancelarempr(playerid)
- {
- new sTr[40];
- format(sTr, sizeof(sTr), DIRETORIOB , gName(playerid));
- if(!DOF2_GetInt(sTr, "TemEmprestimo")) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você não tem um empréstimo feito para cancelar.");
- if(DOF2_GetInt(sTr, "QuantiaEmprestimo") > 15000) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você não pode cancelar um valor de um empréstimo alto.");
- DOF2_SetInt(sTr, "QuantiaEmprestimo", 0);
- DOF2_SetInt(sTr, "TemEmprestimo", 0);
- SetPVarInt(playerid, "CobrarEmprestimo", 0);
- SendClientMessage(playerid, -1, "[ dBank - Info ] Empréstimo Cancelado.");
- return 1;
- }
- CMD:emprestimo(playerid)
- {
- new sTBanco[270];
- if(!LogadoB[playerid]) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você precisa logar em sua conta bancária.");
- format(sTBanco, sizeof(sTBanco), DIRETORIOB , gName(playerid));
- if(!DOF2_FileExists(sTBanco)) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você não tem uma conta no banco, Para criar uma: /criarconta");
- format(sTBanco, sizeof(sTBanco), "** {FF8C00}dBank{FFFAFA} System - {FF8C00}Contas Bancárias {FFFAFA}**\n\n{FF8C00}Nome {FFFAFA}De {FF8C00}Usuário{FFFAFA}: %s\n\n[ Para obter informações sobre o empréstimo use: /infoempr ]\nDigite a quantia que você deseja pedir de empréstimo:", gName(playerid));
- ShowPlayerDialog(playerid, DIALOG_E, DIALOG_STYLE_INPUT, "Sistema 24 / 7", sTBanco, "Pedir", "Cancelar");
- return 1;
- }
- CMD:criarconta(playerid)
- {
- new sTBanco[170];
- format(sTBanco, sizeof(sTBanco), DIRETORIOB , gName(playerid));
- if(DOF2_FileExists(sTBanco)) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você não pode criar duas contas no banco, para acessar a sua normalmente use: /entrarconta");
- format(sTBanco, sizeof(sTBanco), "** {FF8C00}dBank{FFFAFA} System - {FF8C00}Contas Bancárias {FFFAFA}**\n\n{FF8C00}Nome {FFFAFA}De {FF8C00}Usuário{FFFAFA}: %s\nInsira uma Senha Bancária para Continuar:", gName(playerid));
- ShowPlayerDialog(playerid, DIALOGID4, DIALOG_STYLE_INPUT, "Sistema 24 / 7", sTBanco, "Criar", "Cancelar");
- return 1;
- }
- CMD:entrarconta(playerid)
- {
- new sTBanco[170];
- if(LogadoB[playerid] == true) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você já está logado em sua conta bancária.");
- format(sTBanco, sizeof(sTBanco), DIRETORIOB , gName(playerid));
- if(!DOF2_FileExists(sTBanco)) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você não tem uma conta no banco, Para criar uma: /criarconta");
- format(sTBanco, sizeof(sTBanco), "** {FF8C00}dBank{FFFAFA} System - {FF8C00}Contas Bancárias {FFFAFA}**\n\n{FF8C00}Nome {FFFAFA}De {FF8C00}Usuário{FFFAFA}: %s\n\nInsira sua senha bancária:", gName(playerid));
- ShowPlayerDialog(playerid, DIALOGID, DIALOG_STYLE_INPUT, "Sistema 24 / 7", sTBanco, "Entrar", "Cancelar");
- return 1;
- }
- CMD:banco(playerid)
- {
- new sTBanco[170];
- if(!LogadoB[playerid]) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você precisa logar em sua conta bancária.");
- format(sTBanco, sizeof(sTBanco), DIRETORIOB , gName(playerid));
- if(!DOF2_FileExists(sTBanco)) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você não tem conta bancária, para criar: /criarconta");
- format(sTBanco, sizeof(sTBanco), "** {FF8C00}dBank{FFFAFA} System - {FF8C00}Contas Bancárias {FFFAFA}**\n{FF8C00}Nome {FFFAFA}De {FF8C00}Usuário{FFFAFA}: %s\n\nQual operação você deseja fazer?", gName(playerid));
- ShowPlayerDialog(playerid, DIALOGID5, DIALOG_STYLE_MSGBOX, "Banco", sTBanco, "Saldo", "Transação");
- return 1;
- }
- CMD:senhabanco(playerid)
- {
- new sTBanco[170];
- if(!LogadoB[playerid]) return SendClientMessage(playerid, VERMELHO, "[ dBank - Info ] Você precisa logar em sua conta bancária.");
- format(sTBanco, sizeof(sTBanco), "** {FF8C00}dBank{FFFAFA} System - {FF8C00}Contas Bancárias {FFFAFA}**\n{FF8C00}Nome {FFFAFA}De {FF8C00}Usuário{FFFAFA}: %s\nInsira sua senha antiga para continuar:", gName(playerid));
- ShowPlayerDialog(playerid, DIALOGID, DIALOG_STYLE_INPUT, "Sistema 24 / 7", sTBanco, "Confirmar", "Cancelar");
- SenhaB[playerid] = true;
- return 1;
- }
Add Comment
Please, Sign In to add comment