Guest User

Kleines Banksystem von KABOOM

a guest
Aug 24th, 2011
30
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 8.25 KB | None | 0 0
  1. /****************************************************************************************************/
  2. /*************************************** Banksystem by KABOOM ***************************************/
  3. /*************************************** copyright by KABOOM ****************************************/
  4. /****************************************************************************************************/
  5. //INCLUDES//
  6. #include <a_samp>
  7. #include Dini
  8. #include streamer
  9. #pragma unused strtok
  10. #define FILTERSCRIPT
  11. #if defined FILTERSCRIPT
  12. #define DIALOG_BANKMENU 3
  13. #define DIALOG_EINZAHLEN 4
  14. #define DIALOG_ABHEBEN 5
  15. #define DIALOG_KONTOSTAND 6
  16. /**********/
  17. enum Player_daten
  18. {
  19.     BankGeld
  20. }
  21. new Player[MAX_PLAYERS][Player_daten];
  22. /**********/
  23. new lvbankcp;
  24. new sfbankcp;
  25. /*************************************/
  26. public OnFilterScriptInit()
  27. {
  28.     lvbankcp = CreateDynamicCP( -23.5032,-55.3027,1003.5469 , 4.0 );
  29.     sfbankcp = CreateDynamicCP( 2310.7371,-9.1812,26.7422 , 4.0 );
  30.     return 1;
  31. }
  32.  
  33. public OnFilterScriptExit()
  34. {
  35.     return 1;
  36. }
  37.  
  38. public OnPlayerConnect(playerid)
  39. {
  40.     SendClientMessage(playerid, 0xFFFFFFFF, ">>>Dieser Server benutzt das Banksystem von KABOOM!<<<"); //Darf NICHT entfernt werden
  41.     new file[128];
  42.     new name[MAX_PLAYER_NAME];
  43.     GetPlayerName(playerid, name, sizeof(name));
  44.     format(file,sizeof(file),"%s.txt",name);
  45.     if(!fexist(file))
  46.     {
  47.         dini_Create(file);
  48.         dini_IntSet(file,"Bankgeld", Player[playerid][BankGeld]);
  49.     }
  50.     if(fexist(file))
  51.     {
  52.     Player[playerid][BankGeld] = dini_Int(file,"BankGeld");
  53.     }
  54.     return 1;
  55. }
  56.  
  57. public OnPlayerDisconnect(playerid, reason)
  58. {
  59.     new file[128];
  60.     new name[MAX_PLAYER_NAME];
  61.     GetPlayerName(playerid, name, sizeof(name));
  62.     format(file,sizeof(file),"%s.ini",name);
  63.     if(fexist(file))
  64.     {
  65.         dini_IntSet(file,"Bankgeld", Player[playerid][BankGeld]);
  66.     }
  67.     return 1;
  68. }
  69.  
  70. public OnPlayerCommandText(playerid, cmdtext[])
  71. {
  72.     if (strcmp("/lvbank", cmdtext, true, 10) == 0)
  73.     {
  74.         new string[80];
  75.         new porter[80];
  76.         if(IsPlayerInAnyVehicle(playerid))
  77.         {
  78.             new autoid = GetPlayerVehicleID(playerid);
  79.             SetVehiclePos(autoid,2172.1453,1992.8514,10.5474);
  80.             SetVehicleZAngle(autoid,270.0669);
  81.             GetPlayerName(playerid,porter,sizeof(porter));
  82.             format(string,sizeof(string),"%s portet sich zur Bank von Las Venturas![/LVBANK]",porter);
  83.             SendClientMessageToAll(0xFF7800FF,string);
  84.             return 1;
  85.         }
  86.         else
  87.         {
  88.             SetPlayerPos(playerid,2188.1160,1991.0415,10.8203);
  89.             SetPlayerFacingAngle(playerid,271.9992);
  90.             GetPlayerName(playerid,porter,sizeof(porter));
  91.             format(string,sizeof(string),"%s portet sich zur Bank von Las Venturas![/LVBANK]",porter);
  92.             SendClientMessageToAll(0xFF7800FF,string);
  93.             return 1;
  94.         }
  95.     }
  96.     if (strcmp("/lsbank", cmdtext, true, 10) == 0)
  97.     {
  98.         new string[80];
  99.         new porter[80];
  100.         if(IsPlayerInAnyVehicle(playerid))
  101.         {
  102.             new autoid = GetPlayerVehicleID(playerid);
  103.             SetVehiclePos(autoid,1358.2438,-1748.9028,13.1098);
  104.             SetVehicleZAngle(autoid,89.4782);
  105.             GetPlayerName(playerid,porter,sizeof(porter));
  106.             format(string,sizeof(string),"**TELEPORTINFO**%s portet sich zur Bank von Los Santos![/LSBANK]",porter);
  107.             SendClientMessageToAll(0xFF7800FF,string);
  108.             return 1;
  109.         }
  110.         else
  111.         {
  112.             SetPlayerPos(playerid,1352.3224,-1751.9143,13.3581);
  113.             SetPlayerFacingAngle(playerid,181.5989);
  114.             GetPlayerName(playerid,porter,sizeof(porter));
  115.             format(string,sizeof(string),"**TELEPORTINFO**%s portet sich zur Bank von Los Santos![/LSBANK]",porter);
  116.             SendClientMessageToAll(0xFF7800FF,string);
  117.             return 1;
  118.         }
  119.     }
  120.     if (strcmp("/sfbank", cmdtext, true, 10) == 0)
  121.     {
  122.         new string[80];
  123.         new porter[80];
  124.         if(IsPlayerInAnyVehicle(playerid))
  125.         {
  126.             new autoid = GetPlayerVehicleID(playerid);
  127.             SetVehiclePos(autoid,-2429.8484,515.4215,29.6568);
  128.             SetVehicleZAngle(autoid,217.6964);
  129.             GetPlayerName(playerid,porter,sizeof(porter));
  130.             format(string,sizeof(string),"%s portet sich zur Bank von San Fiero![/SFBANK]",porter);
  131.             SendClientMessageToAll(0xFF7800FF,string);
  132.             return 1;
  133.         }
  134.         else
  135.         {
  136.             SetPlayerPos(playerid,-2444.8359,504.0172,30.0922);
  137.             SetPlayerFacingAngle(playerid,89.9746);
  138.             GetPlayerName(playerid,porter,sizeof(porter));
  139.             format(string,sizeof(string),"%s portet sich zur Bank von San Fiero![/LSBANK]",porter);
  140.             SendClientMessageToAll(0xFF7800FF,string);
  141.             return 1;
  142.         }
  143.     }
  144.     return 1;
  145. }
  146.  
  147. public OnPlayerEnterDynamicCP(playerid, checkpointid)
  148. {
  149.     if(checkpointid == lvbankcp)
  150.     {
  151.         ShowPlayerDialog(playerid,DIALOG_BANKMENU,DIALOG_STYLE_LIST,"Bankmenu","Einzahlen \nAbheben \nKontostand","Wählen","Abbrechen");
  152.     }
  153.     if(checkpointid == sfbankcp)
  154.     {
  155.         ShowPlayerDialog(playerid,DIALOG_BANKMENU,DIALOG_STYLE_LIST,"Bankmenu","Einzahlen \nAbheben \nKontostand","Wählen","Abbrechen");
  156.     }
  157.     return 1;
  158. }
  159.  
  160. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  161. {
  162.     if(dialogid == DIALOG_EINZAHLEN)
  163.     {
  164.         if(response)
  165.         {
  166.             new file[128];
  167.             new string[128];
  168.             new name[MAX_PLAYER_NAME];
  169.             GetPlayerName(playerid, name, sizeof(name));
  170.             if(strlen(inputtext) == 0)
  171.             {
  172.                 format(string, sizeof string, "Kontostand: %d$\n\nGib die Summe ein die du Einzahlen moechtest:", Player[playerid][BankGeld]);
  173.                 ShowPlayerDialog(playerid, DIALOG_EINZAHLEN, DIALOG_STYLE_INPUT, "Bankmenu - Einzahlen", string, "Einzahlen", "Abbrechen");
  174.                 return 0;
  175.             }
  176.             format(file,sizeof(file),"%s.txt",name);
  177.             if(fexist(file))
  178.             {
  179.                 dini_IntSet(file,"BankGeld",strlen(inputtext));
  180.                 if(strval(inputtext)>0){
  181.                 if(GetPlayerMoney(playerid) < strval(inputtext)) return SendClientMessage(playerid, 0xFF0023FF, "Du hast nicht genug Geld auf der Hand!");
  182.                 GivePlayerMoney(playerid,-strval(inputtext));
  183.                 Player[playerid][BankGeld]+=strval(inputtext);
  184.             }
  185.           }
  186.         }
  187.     }
  188.     if(dialogid == DIALOG_ABHEBEN)
  189.     {
  190.         if(response)
  191.         {
  192.             new file[128];
  193.             new name[MAX_PLAYER_NAME];
  194.             GetPlayerName(playerid, name, sizeof(name));
  195.             if(strlen(inputtext) == 0)
  196.             {
  197.                 new string2[128];
  198.                 new name2[MAX_PLAYER_NAME];
  199.                 GetPlayerName(playerid, name2, sizeof(name2));
  200.                 format(string2, sizeof string2, "Kontostand: %d$\n\nGib die Summe ein die du Abheben moechtest:", Player[playerid][BankGeld]);
  201.                 ShowPlayerDialog(playerid, DIALOG_ABHEBEN, DIALOG_STYLE_INPUT, "Bankmenu - Abheben", string2, "Abheben", "Abbrechen");
  202.                 return 0;
  203.             }
  204.             format(file,sizeof(file),"%s.txt",name);
  205.             if(fexist(file))
  206.             {
  207.                 dini_IntSet(file,"BankGeld",strlen(inputtext));
  208.                 if(strval(inputtext)>0)
  209.                 {
  210.                 if(Player[playerid][BankGeld] < strval(inputtext)) return SendClientMessage(playerid, 0xFF0023FF, "Du hast zu wenig Geld auf der Bank!");
  211.                 GivePlayerMoney(playerid,strval(inputtext));
  212.                 Player[playerid][BankGeld]-=strval(inputtext);
  213.             }
  214.           }
  215.         }
  216.     }
  217.     if(dialogid == DIALOG_BANKMENU && response)
  218.     {
  219.  
  220.         switch(listitem)
  221.         {
  222.             case 0:
  223.             {
  224.             new string[128];
  225.             new name[MAX_PLAYER_NAME];
  226.             GetPlayerName(playerid, name, sizeof(name));
  227.             format(string, sizeof string, "Kontostand: %d$\n\nGib die Summe ein die du Einzahlen moechtest:", Player[playerid][BankGeld]);
  228.             ShowPlayerDialog(playerid, DIALOG_EINZAHLEN, DIALOG_STYLE_INPUT, "Bankmenu - Einzahlen", string, "Einzahlen", "Abbrechen");
  229.             }
  230.             case 1:
  231.             {
  232.             new string2[128];
  233.             new name2[MAX_PLAYER_NAME];
  234.             GetPlayerName(playerid, name2, sizeof(name2));
  235.             format(string2, sizeof string2, "Kontostand: %d$\n\nGib die Summe ein die du Abheben moechtest:", Player[playerid][BankGeld]);
  236.             ShowPlayerDialog(playerid, DIALOG_ABHEBEN, DIALOG_STYLE_INPUT, "Bankmenu - Abheben", string2, "Abheben", "Abbrechen");
  237.             }
  238.             case 2:
  239.             {
  240.             new name3[MAX_PLAYER_NAME];
  241.             GetPlayerName(playerid, name3, sizeof(name3));
  242.             new string3[128];
  243.             format(string3, sizeof string3, "Dein Kontostand: %d$",Player[playerid][BankGeld]);
  244.             ShowPlayerDialog(playerid,DIALOG_KONTOSTAND,DIALOG_STYLE_MSGBOX ,"Bankmenu - Kontostand",string3,"OK","Cancel");
  245.             }
  246.         }
  247.     }
  248.     return 1;
  249. }
  250. #endif
Advertisement
Add Comment
Please, Sign In to add comment