Novidades

9/30/2020

CharaDa_Fox

[Lançamento] Sistema Banco/Caixa Eletrônico

 Olá galera, hoje venho trazer um FS para RP/G que talvez poderá diferenciar seu servidor se o mesmo estiver criatividade.


       Esse FS é de Banco/Caixa Eletrônico poderá ter bugs
                              Obs: A versão v.2.0 estará disponível em breve aqui.

Havia postado no fórum antigo mas foi excluído..


Código:
#include <DOF2>
#include <zcmd>
#include <cpstream>

#define PASTA_CONTAS "Banco/%s.ini"
#define DIALOG_BANCO 1001
#define DIALOG_BANCO_SALDO 2001
#define DIALOG_BANCO_SAQUE 3001
#define DIALOG_BANCO_DEPOSITO 4001

public OnFilterScriptInit()
{
 print("\n---------------------------------------------------------------");
 print(" Filterscripter Banco by LuanRosa#7777 (RosaScripter)");
 print("---------------------------------------------------------------\n");
    DisableInteriorEnterExits();
}

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

public OnPlayerSpawn(playerid) {
    new aname[MAX_PLAYER_NAME], file[80];
    GetPlayerName(playerid, aname, sizeof(aname));
    format(file, sizeof(file), PASTA_CONTAS, aname);
    if(!DOF2_FileExists(file)) {
        DOF2_CreateFile(file);
        DOF2_SetInt(file, "Saldo", 500);
        GivePlayerMoney(playerid, 300);
        DOF2_SaveFile();
    }
 return 1;
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) {
    if(newkeys == KEY_YES) {//Apertando Y
        if(IsPlayerInRangeOfPoint(playerid, 3.0, Float:x, Float:y, Float:z)) {//Menu Banco
            ShowPlayerDialog(playerid, DIALOG_BANCO, DIALOG_STYLE_LIST, "{2fcc38}Banco", "Saldo\nSacar\nDepositar\n", "Selecionar", "Cancelar");
        }
    }
 return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) {
    if(dialogid == DIALOG_BANCO) {
        switch(listitem) {
            case 0: { // Saldo
                if(response) {
                    new aname[MAX_PLAYER_NAME], file[80], string[200], Hora, Minuto, Segundo, Dia, Mes, Ano;
                    gettime(Hora, Minuto, Segundo);
                    getdate(Ano, Mes, Dia);
                    GetPlayerName(playerid, aname, sizeof(aname));
                    format(file, sizeof(file), PASTA_CONTAS, aname);
                    format(string, sizeof(string), "{FFFFFF}Banco {0fbefe}Nome Server\n\n\n{FFFFFF}Saldo em Conta {2fcc38}$%d \n\n{FFFFFF}Hora: {8de990}%02d:%02d:%02d \n\n{FFFFFF}Data: {8de990}%02d/%02d/%d", DOF2_GetInt(file, "Saldo"), Hora, Minuto, Segundo, Dia, Mes, Ano);
                    ShowPlayerDialog(playerid, DIALOG_BANCO_SALDO, DIALOG_STYLE_MSGBOX, "{FFFFFF}Extrato", string, "Sair", "");
                    return 1;
                }
            }
            case 1: { //Saque
                if(response) {
                    ShowPlayerDialog(playerid, DIALOG_BANCO_SAQUE, DIALOG_STYLE_INPUT, "{2fca38}Saque", "{FFFFFF}Digite a quantia em que você quer sacar", "Sacar", "Cancelar");
                }
            }
            case 2: { //Deposito
                if(response) {
                    ShowPlayerDialog(playerid, DIALOG_BANCO_DEPOSITO, DIALOG_STYLE_INPUT, "{2fca38}Deposito", "{FFFFFF}Digite a quantia em que você quer depositar", "Depositar", "Cancelar");
                }
            }
        }
        return 1;
    }
    if(dialogid == DIALOG_BANCO_SAQUE) {
        if(response) {
            new aname[MAX_PLAYER_NAME], file[80], string[250], Hora, Minuto, Segundo, Dia, Mes, Ano;
            gettime(Hora, Minuto, Segundo);
            getdate(Ano, Mes, Dia);
            GetPlayerName(playerid, aname, sizeof(aname));
            format(file, sizeof(file), PASTA_CONTAS, aname);
            if(strval(inputtext) == 0) return SendClientMessage(playerid, -1, "[x] {FF0000}Você tentou sacar 0 R$ de sua conta!");
            if(strval(inputtext) > DOF2_GetInt(file, "Saldo")) return SendClientMessage(playerid, -1, "[x] {FF0000}Você não possui saldo suficiente para saque desta quantia!");
            GivePlayerMoney(playerid, strval(inputtext));
            DOF2_SetInt(file, "Saldo", (DOF2_GetInt(file, "Saldo")-strval(inputtext)));
            DOF2_SaveFile();
            format(string, sizeof(string), "{FFFFFF}Banco {0fbefe}Nome Server\n\n\n{FFFFFF}Você sacou {2fcc38}$%d \n\n{FFFFFF}Saldo em Conta {2fcc38}$%d \n\n{FFFFFF}Hora: {8de990}%02d:%02d:%02d \n\n{FFFFFF}Data: {8de990}%02d/%02d/%d", strval(inputtext), DOF2_GetInt(file, "Saldo"), Hora, Minuto, Segundo, Dia, Mes, Ano);
            ShowPlayerDialog(playerid, DIALOG_BANCO_SALDO, DIALOG_STYLE_MSGBOX, "{FFFFFF}Saque", string, "Sair", "");
            return 1;
        }
        return 1;
    }
    if(dialogid == DIALOG_BANCO_DEPOSITO) {
        if(response) {
            new aname[MAX_PLAYER_NAME], file[80], string[250], Hora, Minuto, Segundo, Dia, Mes, Ano;
            gettime(Hora, Minuto, Segundo);
            getdate(Ano, Mes, Dia);
            GetPlayerName(playerid, aname, sizeof(aname));
            format(file, sizeof(file), PASTA_CONTAS, aname);
            if(strval(inputtext) == 0) return SendClientMessage(playerid, -1, "[x] {FF0000}Você tentou depositar 0 R$ em sua conta!");
            if(strval(inputtext) > GetPlayerMoney(playerid)) return SendClientMessage(playerid, -1, "[x] {FF0000}Você não possui está quantia em mãos para depositar!");
            GivePlayerMoney(playerid, -strval(inputtext));
            DOF2_SetInt(file, "Saldo", (DOF2_GetInt(file, "Saldo")+strval(inputtext)));
            DOF2_SaveFile();
            format(string, sizeof(string), "{FFFFFF}Banco {0fbefe}Nome Server\n\n\n{FFFFFF}Você depositou {2fcc38}$%d \n\n{FFFFFF}Saldo em Conta {2fcc38}$%d \n\n{FFFFFF}Hora: {8de990}%02d:%02d:%02d \n\n{FFFFFF}Data: {8de990}%02d/%02d/%d", strval(inputtext), DOF2_GetInt(file, "Saldo"), Hora, Minuto, Segundo, Dia, Mes, Ano);
            ShowPlayerDialog(playerid, DIALOG_BANCO_SALDO, DIALOG_STYLE_MSGBOX, "{FFFFFF}Deposito", string, "Sair", "");
            return 1;
        }
        return 1;
    }
 return 1;
}


Subscribe to this Blog via Email :
Previous
Next Post »