Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Includes
- #include <a_samp>
- #include <YSI\y_ini>
- #include <sscanf2>
- #include <zcmd>
- #include <streamer>
- //Define Dialogos
- #define DialogoRegistrarBanco 0
- #define DialogoLogarBanco 1
- #define DialogoMenuBanco 2
- #define DialogoDepositar 3
- #define DialogoSacar 4
- #define DialogoMudarSenhaBanco 5
- #define DialogoSaldo 6
- #define DialogoAutoLogin 7
- #define DialogoRegistradoComSucesso 8
- #define DialogoMudarSenha 9
- #define DialogoVoltarMenu 10
- #define DialogoEmprestimo 11
- #define DialogoPedirEmprestimo 12
- #define DialogoPagarEmprestimo 13
- #define DialogoStatusEmprestimo 14
- //Define Macros
- #define SCM SendClientMessage
- #define SCMA SendClientMessageToAll
- #define SPD ShowPlayerDialog
- //Define Cores
- #define Vermelho 0xFF0000FF
- #define Amarelo 0xFFFF00FF
- #define Azul 0x0000FFFF
- #define Verde 0x00FF00FF
- #define Branco 0xFFFFFFFF
- //Define Arquivo
- #define ArquivoBanco "Banco/%s.ini"
- //Enums
- enum BancoInfo
- {
- SenhaBanco,
- DinheiroBanco,
- bool:Registrado,
- bool:AutoLogin,
- Emprestado
- }
- //News
- new Banco[MAX_PLAYERS][BancoInfo];
- new Linha[200];
- //Stocks
- stock Arquivobanco(playerid)
- {
- new Arquivo[128], NomeBanco[MAX_PLAYER_NAME];
- GetPlayerName(playerid, NomeBanco, sizeof(NomeBanco));
- format(Arquivo, sizeof(Arquivo), ArquivoBanco, NomeBanco);
- return Arquivo;
- }
- //Comandos
- CMD:banco(playerid)
- {
- if(fexist(Arquivobanco(playerid)))
- {
- if(Banco[playerid][AutoLogin] == false) return SPD(playerid, DialogoLogarBanco, DIALOG_STYLE_PASSWORD, "Banco Central", "{FFFFFF}Você já Possui uma conta no Banco!\nColoque abaixo a sua senha para logar!\nVocê pode optar por logar Automáticamente no Banco ou não !", "Logar", "Cancelar");
- if(Banco[playerid][AutoLogin] == true) return SPD(playerid, DialogoMenuBanco, DIALOG_STYLE_LIST, "Banco Central", "Depositar\nSacar\nSaldo\nMudarSenha\nLogarAuto\nEmpréstimo", "Selecionar", "Cancelar");
- }
- else
- {
- SPD(playerid, DialogoRegistrarBanco, DIALOG_STYLE_PASSWORD, "Banco Central", "{FFFFFF}Você ainda não possui uma conta no banco\n{FFFFFF}Você gostaria de criar uma?\n{FF0000}Use Somentes Números !", "Registrar", "Cancelar");
- }
- return 1;
- }
- //Forwards
- forward CarregarBanco_user(playerid, name[], value[]);
- forward ChecarEmprestimo(playerid);
- //Publics
- public ChecarEmprestimo(playerid)
- {
- if(Banco[playerid][Emprestado] > 1)
- {
- format(Linha, sizeof(Linha), "[BANCO]: Você pagou o empréstimo de: R$ %d", Banco[playerid][Emprestado]);
- SCM(playerid, Vermelho, Linha);
- GivePlayerMoney(playerid, - Banco[playerid][Emprestado]);
- Banco[playerid][Emprestado] = 0;
- }
- SCMA(Verde, "[BANCO]: Todos os Empréstimos Serão Pagos Agora !!");
- return 1;
- }
- public CarregarBanco_user(playerid, name[], value[])
- {
- INI_Int("Senha", Banco[playerid][SenhaBanco]);
- INI_Int("Dinheiro", Banco[playerid][DinheiroBanco]);
- INI_Bool("Registrado", Banco[playerid][Registrado]);
- INI_Bool("AutoLogin", Banco[playerid][AutoLogin]);
- INI_Int("Emprestado", Banco[playerid][Emprestado]);
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- if(Banco[playerid][Emprestado] > 1)
- {
- format(Linha, sizeof(Linha), "[BANCO]: Você pegou emprestado R$ %d, Trate de Pagar Logo!", Banco[playerid][Emprestado]);
- SCM(playerid, Vermelho, Linha);
- }
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- new INI:FileBanco = INI_Open(Arquivobanco(playerid));
- INI_SetTag(FileBanco, "DadosBancario");
- INI_WriteInt(FileBanco, "Senha", Banco[playerid][SenhaBanco]);
- INI_WriteInt(FileBanco, "Dinheiro", Banco[playerid][DinheiroBanco]);
- INI_WriteBool(FileBanco, "Registrado", Banco[playerid][Registrado]);
- INI_WriteBool(FileBanco, "AutoLogin", Banco[playerid][AutoLogin]);
- INI_WriteInt(FileBanco, "Emprestado", Banco[playerid][Emprestado]);
- INI_Close(FileBanco);
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- switch(dialogid)
- {
- case DialogoRegistrarBanco:
- {
- if(!strval(inputtext)) return SCM(playerid, Vermelho, "[BANCO]: Use Somentes Números !");
- if(!response) return SCM(playerid, Vermelho, "[BANCO]: Você cancelou se registrar!");
- else
- {
- SPD(playerid, DialogoRegistradoComSucesso, DIALOG_STYLE_MSGBOX, "Banco Central", "{FFFFFF}Você se registrou com sucesso!\nAgora use esta mesma senha para se logar sempre!", "Ok", "");
- Banco[playerid][SenhaBanco] = strval(inputtext);
- Banco[playerid][Registrado] = true;
- new INI:FileBanco = INI_Open(Arquivobanco(playerid));
- INI_WriteInt(FileBanco, "Senha", Banco[playerid][SenhaBanco]);
- }
- SPD(playerid, DialogoLogarBanco, DIALOG_STYLE_PASSWORD, "Banco Central", "{FFFFFF}Você já Possui uma conta no Banco!\nColoque abaixo a sua senha para logar!\nVocê pode optar por logar Automáticamente no Banco ou não !", "Logar", "Cancelar");
- }
- case DialogoLogarBanco:
- {
- if(!strval(inputtext)) return SCM(playerid, Vermelho, "[BANCO]: Use Somentes Números !");
- if(!response) return SCM(playerid, Vermelho, "[BANCO]: Você cancelou se logar!");
- else
- {
- if(strcmp(inputtext, Banco[playerid][SenhaBanco], false))
- {
- INI_ParseFile(Arquivobanco(playerid),"CarregarBanco_%s", .bExtra = true, .extra = playerid);
- SPD(playerid, DialogoMenuBanco, DIALOG_STYLE_LIST, "Banco Central", "Depositar\nSacar\nSaldo\nMudarSenha\nLogarAuto\nEmpréstimo", "Selecionar", "Cancelar");
- }
- else
- {
- SPD(playerid, DialogoLogarBanco, DIALOG_STYLE_PASSWORD,"Banco Central", "{FFFFFF}Você já Possui uma conta no Banco!\n{FF0000}Você errou sua senha tente novamente!\n{FFFFFF}Use Somentes Números !", "Logar", "Cancelar");
- }
- return 1;
- }
- }
- case DialogoMenuBanco:
- {
- if(!response) return SCM(playerid, Vermelho, "[BANCO]: Você cancelou o Menu do Banco!");
- switch(listitem)
- {
- case 0:
- {
- format(Linha, sizeof(Linha), "{FFFFFF}Você possui agora em mão:{00FF00} R$ %d\nVocê possui agora no Banco: {00FF00}R$ %d\n{FFFFFF}Coloque abaixo um valor para depositar de 1 - 1000000", GetPlayerMoney(playerid), Banco[playerid][DinheiroBanco]);
- SPD(playerid, DialogoDepositar, DIALOG_STYLE_INPUT, "Banco Central", Linha, "Depositar", "Voltar");
- }
- case 1:
- {
- format(Linha, sizeof(Linha), "{FFFFFF}Você possui agora em mão:{00FF00} R$ %d\nVocê possui agora no Banco: {00FF00}R$ %d\n{FFFFFF}Coloque Abaixo um Valor para Sacar de 1 - 500000", GetPlayerMoney(playerid), Banco[playerid][DinheiroBanco]);
- SPD(playerid, DialogoSacar, DIALOG_STYLE_INPUT, "Banco Central", Linha, "Sacar", "Voltar");
- }
- case 2:
- {
- format(Linha, sizeof(Linha), "{FFFFFF}Você possui agora em mão:{00FF00} R$ %d\n{FFFFFF}Você possui agora no Banco: {00FF00}R$ %d", GetPlayerMoney(playerid), Banco[playerid][DinheiroBanco]);
- SPD(playerid, DialogoSaldo, DIALOG_STYLE_MSGBOX, "Banco Central", Linha, "Ok", "Voltar");
- }
- case 3:
- {
- SPD(playerid, DialogoMudarSenha, DIALOG_STYLE_MSGBOX, "Banco Central", "{FFFFFF}Você realmente quer mudar de senha?\nSe tiver total certeza aperte em Sim\nCuidado a escolha não pode ser alterada depois!", "Sim", "Voltar");
- }
- case 4:
- {
- SPD(playerid, DialogoAutoLogin, DIALOG_STYLE_MSGBOX, "Banco Central", "Aqui Você pode escolher se você quer ou não se logar automáticamente!\nVocê não precisará mas ficar colocando senha para se logar!", "Ativar", "Desativar");
- }
- case 5:
- {
- SPD(playerid, DialogoPedirEmprestimo, DIALOG_STYLE_LIST, "Banco Central", "Pedir Emprestimo\nPagar Emprestimo\nStatus do Emprestimo", "Selecionar", "Cancelar");
- }
- }
- }
- case DialogoDepositar:
- {
- if(!strval(inputtext)) return SCM(playerid, Vermelho, "[BANCO]: Use Apenas Números, Maiores que 0!");
- if(!response) return SPD(playerid, DialogoMenuBanco, DIALOG_STYLE_LIST, "Banco Central", "Depositar\nSacar\nSaldo\nMudarSenha\nLogarAuto\nEmpréstimo", "Selecionar", "Cancelar");
- else
- {
- if(strval(inputtext) < 0) return SPD(playerid, DialogoDepositar, DIALOG_STYLE_INPUT, "Banco Central", "{FFFFFF}Coloque Apenas Números Maiores que 0\nColoque Abaixo o Valor do Depósito!", "Depositar", "Cancelar");
- if(strval(inputtext) > GetPlayerMoney(playerid)) return SPD(playerid, DialogoDepositar, DIALOG_STYLE_INPUT, "Banco Central", "{FFFFFF}Coloque Apenas Números Maiores que 0\nColoque Abaixo o Valor do Depósito!\n{FF0000}Você não possui tudo isso!", "Depositar", "Cancelar");
- {
- Banco[playerid][DinheiroBanco] += strval(inputtext);
- GivePlayerMoney(playerid, - strval(inputtext));
- SPD(playerid, DialogoVoltarMenu, DIALOG_STYLE_MSGBOX, "Banco Central", "Transação Efetuada com sucesso!\nVocê deseja voltar ao menu?\nSe quiser voltar ao menu aperte em Voltar e se não quiser aperte Sair!", "Voltar", "Sair");
- }
- }
- }
- case DialogoSacar:
- {
- if(!strval(inputtext)) return SCM(playerid, Vermelho, "[BANCO]: Use Apenas Números, Maiores que 0!");
- if(!response) return SPD(playerid, DialogoMenuBanco, DIALOG_STYLE_LIST, "Banco Central", "Depositar\nSacar\nSaldo\nMudarSenha\nLogarAuto\nEmpréstimo", "Selecionar", "Cancelar");
- else
- {
- if(strval(inputtext) < 0) return SPD(playerid, DialogoSacar, DIALOG_STYLE_INPUT, "Banco Central", "{FFFFFF}Coloque Apenas números Maiores que 0!\nAbaixo Coloque o Valor do Saque!\n\n", "Sacar", "Cancelar");
- if(strval(inputtext) > Banco[playerid][DinheiroBanco]) return SPD(playerid, DialogoSacar, DIALOG_STYLE_INPUT, "Banco Central", "{FFFFFF}Coloque Apenas números Maiores que 0!\nAbaixo Coloque o Valor do Saque!\n{FF0000}Você não possui tudo isso!", "Sacar", "Cancelar");
- {
- Banco[playerid][DinheiroBanco] -= strval(inputtext);
- GivePlayerMoney(playerid, strval(inputtext));
- SPD(playerid, DialogoVoltarMenu, DIALOG_STYLE_MSGBOX, "Banco Central", "Transação Efetuada com sucesso!\nVocê deseja voltar ao menu?\nSe quiser voltar ao menu aperte em Voltar e se não quiser aperte Sair!", "Voltar", "Sair");
- }
- }
- }
- case DialogoSaldo:
- {
- if(response) return SPD(playerid, DialogoMenuBanco, DIALOG_STYLE_LIST, "Banco Central", "Depositar\nSacar\nSaldo\nMudarSenha\nLogarAuto\nEmpréstimo", "Selecionar", "Cancelar");
- if(!response) return SPD(playerid, DialogoMenuBanco, DIALOG_STYLE_LIST, "Banco Central", "Depositar\nSacar\nSaldo\nMudarSenha\nLogarAuto\nEmpréstimo", "Selecionar", "Cancelar");
- }
- case DialogoMudarSenha:
- {
- if(response) return SPD(playerid, DialogoMudarSenhaBanco, DIALOG_STYLE_INPUT, "Banco Central", "{FFFFFF}Você tem certeza que quer alterar sua senha?\nSe estiver certeza coloque sua senha abaixo e aperte Mudar Senha!", "Mudar Senha", "Voltar");
- if(!response) return SPD(playerid, DialogoMenuBanco, DIALOG_STYLE_LIST, "Banco Central", "Depositar\nSacar\nSaldo\nMudarSenha\nLogarAuto\nEmpréstimo", "Selecionar", "Cancelar");
- }
- case DialogoMudarSenhaBanco:
- {
- if(!strval(inputtext)) return SCM(playerid, Vermelho, "[BANCO]: Use Apenas Números, Maiores que 0!");
- if(!response) return SPD(playerid, DialogoMenuBanco, DIALOG_STYLE_LIST, "Banco Central", "Depositar\nSacar\nSaldo\nMudarSenha\nLogarAuto\nEmpréstimo", "Selecionar", "Cancelar");
- else
- {
- Banco[playerid][SenhaBanco] = strval(inputtext);
- SPD(playerid, DialogoVoltarMenu, DIALOG_STYLE_MSGBOX, "Banco Central", "Transação Efetuada com sucesso!\nVocê deseja voltar ao menu?\nSe quiser voltar ao menu aperte em Voltar e se não quiser aperte Sair!", "Voltar", "Sair");
- }
- }
- case DialogoAutoLogin:
- {
- if(response)
- {
- Banco[playerid][AutoLogin] = true;
- SPD(playerid, DialogoMenuBanco, DIALOG_STYLE_LIST, "Banco Central", "Depositar\nSacar\nSaldo\nMudarSenha\nLogarAuto\nEmpréstimo", "Selecionar", "Cancelar");
- }
- else if(!response)
- {
- Banco[playerid][AutoLogin] = false;
- SPD(playerid, DialogoMenuBanco, DIALOG_STYLE_LIST, "Banco Central", "Depositar\nSacar\nSaldo\nMudarSenha\nLogarAuto\nEmpréstimo", "Selecionar", "Cancelar");
- }
- }
- case DialogoVoltarMenu:
- {
- if(response) return SPD(playerid, DialogoMenuBanco, DIALOG_STYLE_LIST, "Banco Central", "Depositar\nSacar\nSaldo\nMudarSenha\nLogarAuto\nEmpréstimo", "Selecionar", "Cancelar");
- if(!response) return SCM(playerid, Vermelho, "[BANCO]: Você desistiu de voltar ao menu bancário!");
- }
- case DialogoEmprestimo:
- {
- if(!strval(inputtext)) return SCM(playerid, Vermelho, "[BANCO]: Use Apenas Números, Maiores que 0!");
- if(Banco[playerid][Emprestado] > 1) return SCM(playerid, Vermelho, "[BANCO]: Você já tem um empréstimo,pague-o para pedir empréstimo de novo!");
- if(!response) return SPD(playerid, DialogoMenuBanco, DIALOG_STYLE_LIST, "Banco Central", "Depositar\nSacar\nSaldo\nMudarSenha\nLogarAuto\nEmpréstimo", "Selecionar", "Cancelar");
- else
- {
- if(strval(inputtext) < 1 || strval(inputtext) > 100001) return SPD(playerid, DialogoEmprestimo, DIALOG_STYLE_LIST, "Banco Central", "Escolha um Valor maior que 1 Para pedir um empréstimo\nA Cada 1 Hora será verificado se você há dinheiro\nSe você tiver o dinheiro do Empréstimo será cobrado e retirado!\nEscolha um valor maior que 1 e menos que 100000!", "Emprestimo", "Voltar");
- Banco[playerid][Emprestado] = strval(inputtext);
- GivePlayerMoney(playerid, strval(inputtext));
- SetTimerEx("ChecarEmprestimo", 3600000, true, "i", playerid);
- }
- }
- case DialogoPedirEmprestimo:
- {
- if(!response) return SPD(playerid, DialogoMenuBanco, DIALOG_STYLE_LIST, "Banco Central", "Depositar\nSacar\nSaldo\nMudarSenha\nLogarAuto\nEmpréstimo", "Selecionar", "Cancelar");
- switch(listitem)
- {
- case 0:
- {
- SPD(playerid, DialogoEmprestimo, DIALOG_STYLE_INPUT, "Banco Central", "Escolha um Valor maior que 1 Para pedir um empréstimo\nA Cada 1 Hora será verificado se você há dinheiro\nSe você tiver o dinheiro do Empréstimo será cobrado e retirado!\nEscolha um valor maior que 1 e menos que 100000!", "Emprestimo", "Voltar");
- }
- case 1:
- {
- format(Linha, sizeof(Linha), "Você está Devendo para o Banco: R$ %d\nCaso você pague,poderá pedir outro!", Banco[playerid][Emprestado]);
- SPD(playerid, DialogoPagarEmprestimo, DIALOG_STYLE_MSGBOX, "Banco Central", Linha, "Pagar", "Voltar");
- }
- case 2:
- {
- format(Linha, sizeof(Linha), "Você está devendo para o Banco: R$ %d\nSe você não estiver endividado parabéns!", Banco[playerid][Emprestado]);
- SPD(playerid, DialogoStatusEmprestimo, DIALOG_STYLE_MSGBOX, "Banco Central", Linha, "Ok", "Voltar");
- }
- }
- }
- case DialogoStatusEmprestimo:
- {
- if(!response) return SPD(playerid, DialogoMenuBanco, DIALOG_STYLE_LIST, "Banco Central", "Depositar\nSacar\nSaldo\nMudarSenha\nLogarAuto\nEmpréstimo", "Selecionar", "Cancelar");
- }
- case DialogoPagarEmprestimo:
- {
- if(!response) return SPD(playerid, DialogoMenuBanco, DIALOG_STYLE_LIST, "Banco Central", "Depositar\nSacar\nSaldo\nMudarSenha\nLogarAuto\nEmpréstimo", "Selecionar", "Cancelar");
- else
- {
- if(Banco[playerid][Emprestado] > 1)
- {
- GivePlayerMoney(playerid, - Banco[playerid][Emprestado]);
- SCM(playerid, Vermelho, "[BANCO]: Você pagou todos os seus empréstimos parabens!");
- Banco[playerid][Emprestado] = 0;
- }
- else
- {
- SCM(playerid, Vermelho, "[BANCO]: Você não está devendo nada então não precisa pagar!");
- }
- }
- }
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement