Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Config
- #define BANCO_NOME "Banco do Brasil"
- //Colors
- #define YELLOW 0xF7CA18FF
- //Dialogs
- #define DIALOG_BANCO_POS_NOVASENHA 11
- #define DIALOG_BANCO_NOVASENHA 10
- #define DIALOG_BANCO_POS_DEPOSITO 9
- #define DIALOG_BANCO_DEPOSITO 8
- #define DIALOG_BANCO_POS_SAQUE 7
- #define DIALOG_BANCO_SAQUE 6
- #define DIALOG_BANCO_CONTA 5
- #define DIALOG_BANCO_MESSAGEM 4
- #define DIALOG_BANCO_CADASTRO 3
- #define DIALOG_BANCO_AUTENTICACAO 2
- #define DIALOG_BANCO 1
- new DB:db;
- new int:balance, int:saque, int:deposit;
- stock initBanco() {
- db = db_open("server.db");
- if((db = db_open("server.db")) == DB: 0) {
- print("[SQLite] Não foi possível conectar ao \"server.db\"");
- } else {
- print("[SQLite] Conectado ao \"server.db\" com sucesso");
- db_query(db, "PRAGMA synchronous = OFF");
- db_query(db,"CREATE TABLE IF NOT EXISTS banco (id INTEGER PRIMARY KEY AUTOINCREMENT, nick VARCHAR(24), password VARCHAR(129), balance INTEGER DEFAULT 0 NOT NULL)");
- }
- return 1;
- }
- stock getPlayerName(playerid)
- {
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name, MAX_PLAYER_NAME);
- return name;
- }
- stock acessBank(playerid) {
- static query[98],DBResult:result, string[218];
- format(query, sizeof(query), "SELECT password FROM `banco` WHERE `nick`='%q'", getPlayerName(playerid));
- result = db_query(db,query);
- if(db_num_rows(result) == 0) {
- format(string, sizeof(string), "{F7CA18}%s\n\n{BDC3C7}Boas vindas ao {F7CA18}%s\n\n{BDC3C7}Não encontramos nenhum cadastro com seu nome\nDigite uma senha abaixo e você terá sua conta criada em nosso banco.", BANCO_NOME, BANCO_NOME);
- ShowPlayerDialog(playerid, DIALOG_BANCO_CADASTRO, DIALOG_STYLE_PASSWORD, "{BDC3C7}Abrindo uma conta",string, "Abrir conta", "Fechar");
- } else {
- format(string, sizeof(string), "{F7CA18}%s\n\n{BDC3C7}Boas vindas ao {F7CA18}%s\n\n{BDC3C7}Para acessar o Painel Bancário digite sua senha:",BANCO_NOME, BANCO_NOME);
- ShowPlayerDialog(playerid, DIALOG_BANCO_AUTENTICACAO, DIALOG_STYLE_PASSWORD, "{BDC3C7}Autenticação",string, "Acessar", "Fechar");
- }
- db_free_result(result);
- return 1;
- }
- stock Banco_OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) {
- if(dialogid == DIALOG_BANCO_POS_SAQUE) {
- if(response) {
- ShowPlayerDialog(playerid, DIALOG_BANCO, DIALOG_STYLE_LIST, "Painel Bancário", "Conta\nSacar\nDepositar\nMudar Senha", "Acessar", "Sair");
- }
- return 1;
- }
- if(dialogid == DIALOG_BANCO_POS_DEPOSITO) {
- if(response) {
- ShowPlayerDialog(playerid, DIALOG_BANCO, DIALOG_STYLE_LIST, "Painel Bancário", "Conta\nSacar\nDepositar\nMudar Senha", "Acessar", "Sair");
- }
- return 1;
- }
- if(dialogid == DIALOG_BANCO_CONTA) {
- if(response) {
- ShowPlayerDialog(playerid, DIALOG_BANCO, DIALOG_STYLE_LIST, "Painel Bancário", "Conta\nSacar\nDepositar\nMudar Senha", "Acessar", "Sair");
- }
- return 1;
- }
- if(dialogid == DIALOG_BANCO_NOVASENHA) {
- if(response) {
- new query[128], string[128];
- format(query, sizeof query, "UPDATE `banco` SET `password`='%s' WHERE `nick`='%q'", inputtext, getPlayerName(playerid));
- db_query(db, query);
- format(string, sizeof(string), "{F7CA18}%s\n{663399}Senha alterada com sucesso!\n\n{BDC3C7}Sua nova senha é {F7CA18}%s\n\n{BDC3C7}Grave bem sua senha.", BANCO_NOME, inputtext);
- ShowPlayerDialog(playerid, DIALOG_BANCO_POS_NOVASENHA, DIALOG_STYLE_MSGBOX, "{BDC3C7}Senha alterada",string,"Ok","");
- } else {
- ShowPlayerDialog(playerid, DIALOG_BANCO, DIALOG_STYLE_LIST, "Painel Bancário", "Conta\nSacar\nDepositar\nMudar Senha", "Acessar", "Sair");
- }
- return 1;
- }
- if(dialogid == DIALOG_BANCO_SAQUE) {
- if(response) {
- new string[218], query[98], value[10], DBResult:result;
- format(query, sizeof(query), "SELECT balance FROM `banco` WHERE `nick` = '%q'",getPlayerName(playerid));
- result = db_query(db,query);
- db_get_field_assoc(result, "balance", value, 10);
- balance = strval(value);
- saque = strval(inputtext);
- if(balance < saque) {
- format(string, sizeof(string), "{F7CA18}%s\n{BDC3C7}Operação: {663399}Saque\n\n{BDC3C7}Impossível realizar o saque, dinheiro inexistente.\nDigite valores adequados á serem sacados.", BANCO_NOME);
- ShowPlayerDialog(playerid, DIALOG_BANCO_SAQUE, DIALOG_STYLE_INPUT, "{BDC3C7}Conta Bancária",string,"Sacar","Fechar");
- } else {
- new new__balance = balance - saque;
- format(query, sizeof query, "UPDATE `banco` SET `balance`='%d' WHERE `nick`='%q'", new__balance, getPlayerName(playerid));
- db_query(db, query);
- format(string, sizeof(string), "{F7CA18}%s\n{663399}Saque realizado com sucesso!\n\n{BDC3C7}Saldo Atual: {87D37C}R$%d\n{BDC3C7}Valor Sacado: {87D37C}R$%d", BANCO_NOME, new__balance, saque);
- ShowPlayerDialog(playerid, DIALOG_BANCO_POS_SAQUE, DIALOG_STYLE_MSGBOX, "{BDC3C7}Pós Saque",string,"Ok","");
- GivePlayerMoney(playerid, saque);
- }
- } else {
- ShowPlayerDialog(playerid, DIALOG_BANCO, DIALOG_STYLE_LIST, "Painel Bancário", "Conta\nSacar\nDepositar\nMudar Senha", "Acessar", "Sair");
- }
- return 1;
- }
- if(dialogid == DIALOG_BANCO_DEPOSITO) {
- if(response) {
- new string[328], query[98], value[10], DBResult:result;
- format(query, sizeof(query), "SELECT balance FROM `banco` WHERE `nick` = '%q'",getPlayerName(playerid));
- result = db_query(db,query);
- db_get_field_assoc(result, "balance", value, 10);
- balance = strval(value);
- deposit = strval(inputtext);
- if(GetPlayerMoney(playerid) < deposit) {
- format(string, sizeof(string), "{F7CA18}%s\n{BDC3C7}Operação: {663399}Depositar\n\n{BDC3C7}Impossível realizar o deposito, dinheiro inexistente.\nDigite valores adequados á serem sacados.", BANCO_NOME);
- ShowPlayerDialog(playerid, DIALOG_BANCO_DEPOSITO, DIALOG_STYLE_INPUT, "{BDC3C7}Conta Bancária",string,"Depositar","Fechar");
- } else {
- new new__balance = balance + deposit;
- format(query, sizeof query, "UPDATE `banco` SET `balance`='%d' WHERE `nick`='%q'", new__balance, getPlayerName(playerid));
- db_query(db, query);
- format(string, sizeof(string), "{F7CA18}%s\n{663399}Deposito realizado com sucesso!\n\n{BDC3C7}Saldo Atual: {87D37C}R$%d\n{BDC3C7}Valor Depositado: {87D37C}R$%d", BANCO_NOME, new__balance, deposit);
- ShowPlayerDialog(playerid, DIALOG_BANCO_POS_DEPOSITO, DIALOG_STYLE_MSGBOX, "{BDC3C7}Pós Deposito",string,"Ok","");
- GivePlayerMoney(playerid, -deposit);
- }
- } else {
- ShowPlayerDialog(playerid, DIALOG_BANCO, DIALOG_STYLE_LIST, "Painel Bancário", "Conta\nSacar\nDepositar\nMudar Senha", "Acessar", "Sair");
- }
- return 1;
- }
- if(dialogid == DIALOG_BANCO_AUTENTICACAO) {
- if(response) {
- new query[98], DBResult:result;
- format(query, sizeof(query), "SELECT balance FROM `banco` WHERE `nick` = '%q' AND `password` = '%q'", getPlayerName(playerid), inputtext);
- result = db_query(db, query);
- if(db_num_rows(result) == 0) {
- new string[218];
- format(string, sizeof(string), "{F7CA18}%s\n\n{BDC3C7}Boas vindas ao {F7CA18}%s\n\n{BDC3C7}Para acessar o Painel Bancário digite sua senha\n\n{F03434}SENHA INVÁLIDA, TENTE NOVAMENTE", BANCO_NOME, BANCO_NOME);
- ShowPlayerDialog(playerid, DIALOG_BANCO_AUTENTICACAO, DIALOG_STYLE_PASSWORD,"{BDC3C7}Autenticação", string, "Acessar", "Fechar");
- } else {
- ShowPlayerDialog(playerid, DIALOG_BANCO, DIALOG_STYLE_LIST, "Painel Bancário", "Conta\nSacar\nDepositar\nMudar Senha", "Acessar", "Sair");
- }
- } else {
- new string[80];
- format(string, sizeof(string), "%s agradece sua presença, tenha um bom dia.", BANCO_NOME);
- SendClientMessage(playerid, YELLOW, string);
- }
- return 1;
- }
- if(dialogid == DIALOG_BANCO_CADASTRO) {
- if(response) {
- new query[98], string[128];
- format(query, sizeof query, "INSERT INTO `banco` (`nick`,`password`) VALUES ('%s','%s')", getPlayerName(playerid), inputtext);
- db_free_result(db_query(db, query));
- format(string, sizeof(string), "{F7CA18}%s\n\n{BDC3C7}Boas vindas ao {F7CA18}%s\n\n{BDC3C7}Sua conta foi criada com sucesso", BANCO_NOME, BANCO_NOME);
- ShowPlayerDialog(playerid, DIALOG_BANCO_MESSAGEM, DIALOG_STYLE_MSGBOX, "{BDC3C7}Mensagem",string, "Fechar", "");
- } else {
- new string[80];
- format(string, sizeof(string), "%s agradece sua presença, tenha um bom dia.", BANCO_NOME);
- SendClientMessage(playerid, YELLOW, string);
- }
- return 1;
- }
- if(dialogid == DIALOG_BANCO) {
- if(response) {
- switch(listitem) {
- case 0: {//Conta
- new string[128], query[98], value[10], DBResult:result;
- format(query, sizeof(query), "SELECT balance FROM `banco` WHERE `nick` = '%q'",getPlayerName(playerid));
- result = db_query(db,query);
- db_get_field_assoc(result, "balance", value, 10);
- balance = strval(value);
- format(string, sizeof(string), "{F7CA18}%s\n\n\t{BDC3C7}Extrato da conta corrente\n\nSaldo: {87D37C}R$%d", BANCO_NOME, balance);
- ShowPlayerDialog(playerid, DIALOG_BANCO_CONTA, DIALOG_STYLE_MSGBOX, "{BDC3C7}Conta Bancária",string,"Fechar","");
- }
- case 1: {//Sacar
- new string[128], query[98], value[10], DBResult:result;
- format(query, sizeof(query), "SELECT balance FROM `banco` WHERE `nick` = '%q'",getPlayerName(playerid));
- result = db_query(db,query);
- db_get_field_assoc(result, "balance", value, 10);
- balance = strval(value);
- format(string, sizeof(string), "{F7CA18}%s\n{BDC3C7}Operação: {663399}Saque", BANCO_NOME);
- ShowPlayerDialog(playerid, DIALOG_BANCO_SAQUE, DIALOG_STYLE_INPUT, "{BDC3C7}Conta Bancária",string,"Sacar","Fechar");
- }
- case 2: {//Depositar
- new string[148];
- format(string, sizeof(string), "{F7CA18}%s\n{BDC3C7}Operação: {663399}Depositar", BANCO_NOME);
- ShowPlayerDialog(playerid, DIALOG_BANCO_DEPOSITO, DIALOG_STYLE_INPUT, "{BDC3C7}Conta Bancária",string,"Depositar","Fechar");
- }
- case 3:{//Mudar Senha
- new string[248];
- format(string, sizeof(string), "{F7CA18}%s\n{663399}Atenção ao mudar sua senha bancária!\n\n{1BA39C}Anote-a em um lugar seguro.\nColoque uma senha que ninguém conhece.\nNunca mostre á ninguém.\n\n{BDC3C7}Digite sua nova senha abaixo:", BANCO_NOME);
- ShowPlayerDialog(playerid, DIALOG_BANCO_NOVASENHA, DIALOG_STYLE_PASSWORD, "{BDC3C7}Mudar Senha",string,"Mudar","Fechar");
- }
- }
- } else {
- new string[80];
- format(string, sizeof(string), "%s agradece sua presença, tenha um bom dia.", BANCO_NOME);
- SendClientMessage(playerid, YELLOW, string);
- }
- return 1;
- }
- return 0;
- }
- COMMAND:banco(playerid){
- acessBank(playerid);
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement