Advertisement
Chip7

[FS] FilterScript Sistema de Banco (Completo)

Aug 17th, 2012
1,752
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 15.76 KB | None | 0 0
  1. /*VISITE NOSSO SITE: http://www.sampknd.com/
  2.   SAMP KND MELHOR BLOG DE SAMP DO BRASIL
  3. */
  4.  
  5. #include a_samp
  6. #include DOF2
  7. #include zcmd
  8.  
  9. #define conta       "Banco\\%s.ini"
  10. #define quantidade  "insira a quantidade desejada"
  11.  
  12. #define DDEPOSITO   666 //dialog deposito
  13. #define DSAQUE      665 //dialog saque
  14. #define DSENHAL     664 //dialog senha login
  15. #define MENUBP      663 //menu bancario pronto
  16. #define DSENHAR     662 //dialog senha registro
  17. #define MENUBR      661 //menu bancario registro
  18. #define BDEL        660 //banco delete
  19. #define SENHA       659 //mudar senha
  20. #define DTRANS      658 //dialog transferencia
  21.  
  22. #define coord1          2316.4658,-15.6762,26.7422
  23. #define coord2          2316.6191,-12.7899,26.7422
  24. #define coord3          2316.6187,-9.9513,26.7422
  25. #define coord4          2316.6208,-7.2376,26.7422
  26. #define g1              2309.9907,-2.3623,26.7422
  27. //------------------------------------------------
  28.  
  29.  
  30. new nome[MAX_PLAYER_NAME];
  31. new b_file[28];
  32. new strt[50];
  33. new bool:mudou[MAX_PLAYERS];
  34.  
  35. public OnFilterScriptInit()
  36. {
  37.     CreateObject(1491, 2311.1999511719, 0.20000000298023, 25.700000762939, 0, 0, 270);
  38.     CreateObject(1714, 2318.5, -15.300000190735, 25.700000762939, 0, 0, 274);
  39.     CreateObject(1714, 2318.6000976563, -12.800000190735, 25.700000762939, 0, 0, 269.9951171875);
  40.     CreateObject(1714, 2318.5, -7.3000001907349, 25.700000762939, 0, 0, 269.99450683594);
  41.     CreateObject(1724, 2309.3999023438, -7, 25.700000762939, 0, 0, 290);
  42.     CreateObject(1724, 2309.8000488281, -8.8000001907349, 25.700000762939, 0, 0, 239.9951171875);
  43.     CreateObject(1724, 2309.3000488281, -0.69999998807907, 25.700000762939, 0, 0, 289.9951171875);
  44.     CreateObject(1724, 2309.8000488281, -2.9000000953674, 25.700000762939, 0, 0, 239.99084472656);
  45.     CreateObject(2066, 2320.3000488281, -16.5, 25.700000762939, 0, 0, 270);
  46.     CreateObject(2424, 2305.6999511719, -12.39999961853, 25.700000762939, 0, 0, 0);
  47.     CreateObject(2424, 2306.6000976563, -12.39999961853, 25.700000762939, 0, 0, 0);
  48.     CreateObject(2424, 2307.5, -12.39999961853, 25.700000762939, 0, 0, 0);
  49.     CreateObject(2424, 2308.3999023438, -12.39999961853, 25.700000762939, 0, 0, 0);
  50.     CreateObject(2424, 2309.3000488281, -12.39999961853, 25.700000762939, 0, 0, 0);
  51.     CreateObject(2424, 2310.1999511719, -12.39999961853, 25.700000762939, 0, 0, 0);
  52.     CreateObject(2424, 2311.1000976563, -12.39999961853, 25.700000762939, 0, 0, 0);
  53.     CreateObject(2424, 2312, -12.39999961853, 25.700000762939, 0, 0, 0);
  54.     CreateObject(2424, 2312.8999023438, -12.39999961853, 25.700000762939, 0, 0, 0);
  55.     CreateObject(2424, 2313.3999023438, -12.39999961853, 25.700000762939, 0, 0, 0);
  56.     CreateObject(2424, 2313.5, -12.300000190735, 25.700000762939, 0, 0, 90);
  57.     CreateObject(2424, 2313.5, -11.39999961853, 25.700000762939, 0, 0, 90);
  58.     CreateObject(2424, 2313.5, -10.60000038147, 25.700000762939, 0, 0, 90);
  59.     CreateObject(2424, 2313, -10.5, 25.700000762939, 0, 0, 180);
  60.     CreateObject(15038, 2313.6999511719, -9.6999998092651, 26.39999961853, 0, 0, 0);
  61.     CreateObject(2424, 2312.8000488281, -10.89999961853, 25.700000762939, 0, 0, 270);
  62.     CreateObject(2424, 2311.8999023438, -11.699999809265, 25.700000762939, 0, 0, 180);
  63.     CreateObject(2424, 2311, -11.699999809265, 25.700000762939, 0, 0, 179.99450683594);
  64.     CreateObject(2424, 2310.1000976563, -11.699999809265, 25.700000762939, 0, 0, 179.99450683594);
  65.     CreateObject(2424, 2309.1999511719, -11.699999809265, 25.700000762939, 0, 0, 179.99450683594);
  66.     CreateObject(2424, 2308.3000488281, -11.699999809265, 25.700000762939, 0, 0, 179.99450683594);
  67.     CreateObject(2424, 2307.3999023438, -11.699999809265, 25.700000762939, 0, 0, 179.99450683594);
  68.     CreateObject(2424, 2306.5, -11.699999809265, 25.700000762939, 0, 0, 179.99450683594);
  69.     CreateObject(2424, 2305.6000976563, -11.699999809265, 25.700000762939, 0, 0, 179.99450683594);
  70.     CreateObject(15038, 2312.1000976563, -10.10000038147, 26.39999961853, 0, 0, 0);
  71.     CreateObject(2610, 2320.3999023438, -15.89999961853, 26.60000038147, 0, 0, 270);
  72.     CreateObject(2610, 2320.3999023438, -15.39999961853, 26.60000038147, 0, 0, 270);
  73.     CreateObject(2000, 2320.1999511719, -14.89999961853, 25.700000762939, 0, 0, 270);
  74.     CreateObject(2164, 2320.6999511719, -13.39999961853, 25.700000762939, 0, 0, 270);
  75.     CreateObject(2191, 2320.3000488281, -11.89999961853, 25.700000762939, 0, 0, 270);
  76.     CreateObject(2163, 2320.6999511719, -10.10000038147, 25.799999237061, 0, 0, 270);
  77.     CreateObject(2163, 2317, -17.5, 25.700000762939, 0, 0, 181.75);
  78.     CreateObject(2163, 2305.5, -5.8000001907349, 25.700000762939, 0, 0, 91.746826171875);
  79.     CreateObject(2201, 2305.8000488281, -5.5, 26.60000038147, 0, 0, 0);
  80.     CreateObject(2164, 2305.3999023438, -4, 25.700000762939, 0, 0, 90);
  81.     CreateObject(2164, 2320.8000488281, -8.3000001907349, 25.700000762939, 0, 0, 270);
  82.     CreateObject(1724, 2311.8000488281, -6.5, 25.700000762939, 0, 0, 89.9951171875);
  83.     CreateObject(1724, 2311.8000488281, -5.0999999046326, 25.700000762939, 0, 0, 89.994506835938);
  84.     CreateObject(1724, 2311.8000488281, -3.5999999046326, 25.700000762939, 0, 0, 89.994506835938);
  85.     CreateObject(2315, 2313.5, -4.0999999046326, 25.700000762939, 0, 0, 270);
  86.     CreateObject(2852, 2313.5, -5.5999999046326, 26.200000762939, 0, 0, 0);
  87.     CreateObject(2855, 2313.3000488281, -4.0999999046326, 26.200000762939, 0, 0, 0);
  88.     CreateObject(2855, 2313.6999511719, -4.5999999046326, 26.200000762939, 0, 0, 320);
  89.     CreateObject(16377, 2313.5, -17.299999237061, 26.700000762939, 0, 0, 0);
  90.     CreateObject(2894, 2310.5, -12.10000038147, 26.89999961853, 0, 0, 0);
  91.     CreateObject(2289, 2305.3999023438, -10.60000038147, 27.60000038147, 0, 0, 90);
  92.     CreateObject(2282, 2308.6999511719, -0.30000001192093, 27.5, 0, 0, 0);
  93.     CreateObject(2270, 2310.5, -0.40000000596046, 27.299999237061, 0, 0, 0);
  94.     CreateObject(2267, 2307, 0.20000000298023, 27.700000762939, 0, 0, 0);
  95.     CreateObject(2262, 2305.8999023438, -1.5, 27.39999961853, 0, 0, 90);
  96.     CreateObject(2261, 2305.8999023438, -3.7000000476837, 27.60000038147, 0, 0, 80);
  97.     CreateObject(2257, 2309.6000976563, -17.60000038147, 28.10000038147, 0, 0, 180);
  98.     Create3DTextLabel("terminal 1\nUse /bancomenu",0x5EAF03FF,coord1,50.0,0);
  99.     Create3DTextLabel("terminal 2\nUse /bancomenu",0x5EAF03FF,coord2,50.0,0);
  100.     Create3DTextLabel("terminal 3\nUse /bancomenu",0x5EAF03FF,coord3,50.0,0);
  101.     Create3DTextLabel("terminal 4\nUse /bancomenu",0x5EAF03FF,coord4,50.0,0);
  102.     Create3DTextLabel("Sala do gerente\nUse /infobanco",0x5AF03FF,g1,50.0,0);
  103.     return 1;
  104. }
  105. public OnPlayerConnect(playerid)
  106. {
  107.     GetPlayerName(playerid,nome,sizeof nome);
  108.     format(b_file,sizeof b_file,conta,nome);
  109.     if(!fexist(b_file))
  110.     {
  111.         DOF2_CreateFile(b_file);
  112.         DOF2_SetInt(b_file,"dinheiro",0);
  113.         DOF2_SaveFile();
  114.     }
  115.     return 1;
  116. }
  117.  
  118. public OnPlayerDisconnect(playerid)
  119. {
  120.     return 1;
  121. }
  122.    
  123. public OnFilterScriptExit()
  124. {
  125.     DOF2_Exit();
  126.     return 1;
  127. }
  128.  
  129. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  130. {
  131.     GetPlayerName(playerid,nome,24);
  132.     if(dialogid == DDEPOSITO)
  133.     {
  134.         if(response)
  135.         {
  136.             format(b_file,sizeof b_file,conta,nome);
  137.             if(GetPlayerMoney(playerid) < strval(inputtext)) return SendClientMessage(playerid,-1,"não tem tudo isso à depositar.");
  138.             format(strt,50,"você depositou R$%d.",strval(inputtext));
  139.             DOF2_SetInt(b_file, "dinheiro", strval(inputtext)+DOF2_GetInt(b_file,"dinheiro"));
  140.             DOF2_SaveFile();
  141.             SendClientMessage(playerid,-1,strt);
  142.             GivePlayerMoney(playerid,-strval(inputtext));
  143.             ShowPlayerDialog(playerid,MENUBP,DIALOG_STYLE_LIST,"Menu bancário","Depósito\nSaque\nSaldo","Ok","Fechar");
  144.             return 1;
  145.         }
  146.         return 1;
  147.     }
  148.     if(dialogid == DSAQUE)
  149.     {
  150.         format(b_file,sizeof b_file,conta,nome);
  151.         if(response)
  152.         {
  153.             if(strval(inputtext) <= DOF2_GetInt(b_file,"dinheiro"))
  154.             {
  155.                 format(strt,sizeof strt,"Você sacou R$%d, mas tem depositado R$%d",strval(inputtext),DOF2_GetInt(b_file,"dinheiro")-strval(inputtext));
  156.                 DOF2_SetInt(b_file, "dinheiro",DOF2_GetInt(b_file,"dinheiro")-strval(inputtext));
  157.                 SendClientMessage(playerid,-1,strt);
  158.                 DOF2_SaveFile();
  159.                 GivePlayerMoney(playerid, strval(inputtext));
  160.                 ShowPlayerDialog(playerid,MENUBP,DIALOG_STYLE_LIST,"Menu bancário","Depósito\nSaque\nSaldo","Ok","Fechar");
  161.             }
  162.             else
  163.             {
  164.                 SendClientMessage(playerid,-1,"não possui tudo isso.");
  165.                 ShowPlayerDialog(playerid,MENUBP,DIALOG_STYLE_LIST,"Menu bancário","Depósito\nSaque\nSaldo","Ok","Fechar");
  166.             }
  167.             return 1;
  168.         }
  169.         return 1;
  170.     }
  171.     if(dialogid == MENUBP)
  172.     {
  173.         if(response)
  174.         {
  175.  
  176.             if(listitem == 0) return ShowPlayerDialog(playerid,DDEPOSITO,DIALOG_STYLE_INPUT,"banco",quantidade,"ok","fechar");
  177.             if(listitem == 1) return ShowPlayerDialog(playerid,DSAQUE,DIALOG_STYLE_INPUT,"banco",quantidade,"ok","fechar");
  178.             if(listitem == 2)
  179.             {
  180.                 format(b_file,sizeof b_file,conta,nome);
  181.                 format(strt,50,"você ainda tem depositado R$%d",DOF2_GetInt(b_file,"dinheiro"));
  182.                 ShowPlayerDialog(playerid,664,DIALOG_STYLE_MSGBOX,"banco",strt,"ok","");
  183.                 return 1;
  184.             }
  185.             return 1;
  186.         }
  187.         return 1;
  188.     }
  189.     if(dialogid == MENUBR)
  190.     {
  191.         format(b_file,sizeof b_file,conta,nome);
  192.         if(response)
  193.         {
  194.             if(listitem == 0)
  195.             {
  196.                 if(DOF2_GetBool(b_file,"registro bancario") == false) return ShowPlayerDialog(playerid,DSENHAR,DIALOG_STYLE_INPUT,"Menu bancário","escolha sua senha bancária, pois sem ela você não poderá usar o banco!","Ok","Fechar");
  197.                 else return SendClientMessage(playerid,-1,"Você já tem uma conta no banco!");
  198.             }
  199.             if(listitem == 1)
  200.             {
  201.                 if(DOF2_GetBool(b_file,"registro bancario") == true) return ShowPlayerDialog(playerid,BDEL,DIALOG_STYLE_INPUT,"Menu bancário","Digite sua senha para desativar sua conta bancária.","Ok","Fechar");
  202.                 else return SendClientMessage(playerid,-1,"Você não possui uma conta para poder desativar!");
  203.             }
  204.             if(listitem == 2)
  205.             {
  206.                if(DOF2_GetBool(b_file,"registro bancario") == true) return ShowPlayerDialog(playerid,SENHA,DIALOG_STYLE_INPUT,"Menu bancário","Mude sua senha aqui, primeiro digite sua senha antiga, depois a nova!","Ok","Fechar");
  207.                else { SendClientMessage(playerid,-1,"Você não tem uma conta para poder mudar a senha."); }
  208.                return 1;
  209.             }
  210.             return 1;
  211.         }
  212.     }
  213.     if(dialogid == BDEL)
  214.     {
  215.         if(response)
  216.         {
  217.             format(b_file,sizeof b_file,conta,nome);
  218.             if(strcmp(inputtext,DOF2_GetString(b_file,"senha bancaria"),true) == 0)
  219.             {
  220.                 format(strt,sizeof strt,"Seu dinheiro foi devolvido. (R$%d)",DOF2_GetInt(b_file,"dinheiro"));
  221.                 DOF2_SetBool(b_file,"registro bancario",false);
  222.                 DOF2_SetString(b_file,"senha bancaria","conta desativada pelo usuario.");
  223.                 GivePlayerMoney(playerid,DOF2_GetInt(b_file,"dinheiro"));
  224.                 DOF2_SetInt(b_file,"dinheiro",0);
  225.                 DOF2_SaveFile();
  226.                 GivePlayerMoney(playerid,-50);
  227.                 SendClientMessage(playerid,-1,strt);
  228.                 SendClientMessage(playerid,-1,"Uma taxa de R$50,00 foi cobrada para desativar sua conta.");
  229.                 return 1;
  230.             }
  231.             else return ShowPlayerDialog(playerid,BDEL,DIALOG_STYLE_INPUT,"Menu bancário","Senha errada, tente outra vez.","Ok","Fechar");
  232.         }
  233.         return 1;
  234.     }
  235.     if(dialogid == DSENHAR)
  236.     {
  237.         format(b_file,sizeof b_file,conta,nome);
  238.         if(response)
  239.         {
  240.             new string[35];
  241.             format(string,sizeof string,"Sua senha é: %s",inputtext);
  242.             if(!strlen(inputtext)) return ShowPlayerDialog(playerid,DSENHAR,DIALOG_STYLE_INPUT,"Menu bancário","Digite uma senha. (letras e numeros)","Ok","Fechar");
  243.             DOF2_SetString(b_file,"senha bancaria",inputtext);
  244.             DOF2_SetBool(b_file,"registro bancario",true);
  245.             DOF2_SaveFile();
  246.             SendClientMessage(playerid,-1,string);
  247.             return 1;
  248.         }
  249.         return 1;
  250.     }
  251.     if(dialogid == DSENHAL)
  252.     {
  253.         if(response)
  254.         {
  255.             format(b_file,sizeof b_file,conta,nome);
  256.             if(strcmp(inputtext,DOF2_GetString(b_file,"senha bancaria"),true) == 0) { ShowPlayerDialog(playerid,MENUBP,DIALOG_STYLE_LIST,"Menu bancário","Depósito\nSaque\nSaldo","Ok","Fechar"); }
  257.             else {SendClientMessage(playerid,-1,"Senha errada!");}
  258.             return 1;
  259.         }
  260.         return 1;
  261.     }
  262.     if(dialogid == SENHA)
  263.     {
  264.         new strs[30];
  265.         format(b_file,sizeof b_file,conta,nome);
  266.         if(response)
  267.         {
  268.             if(mudou[playerid] == false)
  269.             {
  270.                 if(strcmp(inputtext,DOF2_GetString(b_file,"senha bancaria"),true) == 0)
  271.                 {
  272.                     ShowPlayerDialog(playerid,SENHA,DIALOG_STYLE_INPUT,"Menu bancário","Insira sua nova senha bancária(nao se esqueça dela por nada!)","Ok","Fechar");
  273.                     mudou[playerid] = true;
  274.                 }
  275.                 else { ShowPlayerDialog(playerid,SENHA,DIALOG_STYLE_INPUT,"Menu bancário","Senha errada, tente outra vez.","Ok","Fechar"); }
  276.                 return 1;
  277.             }
  278.             if(mudou[playerid] == true)
  279.             {
  280.                 if(strcmp(inputtext,DOF2_GetString(b_file,"senha bancaria"),true) == 0) return ShowPlayerDialog(playerid,SENHA,DIALOG_STYLE_INPUT,"Menu bancário","Sua nova senha é igual a antiga.\n\n\nDigite outra senha!","Ok","Fechar");
  281.                 if(strlen(inputtext) < 0 || strlen(inputtext) > 20) return ShowPlayerDialog(playerid,SENHA,DIALOG_STYLE_INPUT,"Menu bancário","Sua senha nao pode ter menos de 1 digito nem mais de 20.","Ok","Fechar");
  282.                 format(strs,sizeof strs,"Sua nova senha é: %s",inputtext);
  283.                 DOF2_SetString(b_file,"senha bancaria",inputtext);
  284.                 DOF2_SaveFile();
  285.                 SendClientMessage(playerid,-1,strs);
  286.                 mudou[playerid] = false;
  287.             }
  288.             return 1;
  289.         }
  290.         return 1;
  291.     }
  292.     return 1;
  293. }
  294.  
  295. CMD:bancomenu(playerid,params[])
  296. {
  297.     GetPlayerName(playerid,nome,24);
  298.     format(b_file,sizeof b_file,conta,nome);
  299.     if(IsPlayerInRangeOfPoint(playerid,5.0,coord1) || IsPlayerInRangeOfPoint(playerid,5.0,coord2) || IsPlayerInRangeOfPoint(playerid,5.0,coord3) || IsPlayerInRangeOfPoint(playerid,5.0,coord4))
  300.     {
  301.         if(DOF2_GetBool(b_file,"registro bancario") == true) return ShowPlayerDialog(playerid,DSENHAL,DIALOG_STYLE_INPUT,"Menu bancário","Digite sua senha para acessar o banco de dados bancário.","Ok","Fechar");
  302.         else SendClientMessage(playerid,-1,"Crie uma conta no banco para poder acessar os seus dados bancários.");
  303.     }
  304.     else SendClientMessage(playerid,-1,"Você não está no banco!");
  305.     return 1;
  306. }
  307.  
  308. CMD:infobanco(playerid,params[])
  309. {
  310.     if(IsPlayerInRangeOfPoint(playerid,5.0,2309.9907,-2.3623,26.7422)) return ShowPlayerDialog(playerid,MENUBR,DIALOG_STYLE_LIST,"Menu bancário","Criar conta bancária\nDeletar conta bancária\nMudar senha","Ok","Fechar");
  311.     else { SendClientMessage(playerid,-1,"Você não está na sala do gerente!"); }
  312.     return 1;
  313. }
  314.  
  315. CMD:banco(playerid,params[]) return SetPlayerPos(playerid,2305.6309,-16.1295,26.7496);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement