Jakwob-WG

JCredits v1.0

Jan 6th, 2015
307
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 3.45 KB | None | 0 0
  1. #include <a_samp>
  2. #include <zcmd>
  3. #include <sscanf2>
  4.  
  5. enum PlayerInfo
  6. {
  7.     Credits
  8. }
  9. new pInfo[MAX_PLAYERS][PlayerInfo];
  10. new Credit_Timer[MAX_PLAYERS];
  11. new PlayerText:CreditTD;
  12. new
  13.     bool:CreditShowing[MAX_PLAYERS];
  14.  
  15. forward CreditTimer(playerid);
  16.  
  17. public OnFilterScriptInit()
  18. {
  19.     print("--------------------\n");
  20.     print("  Jcredits Loaded!  \n");
  21.     print("--------------------\n");
  22.     return 1;
  23. }
  24.  
  25. public OnFilterScriptExit()
  26. {
  27.     print("--------------------\n");
  28.     print(" Jcredits Unloaded! \n");
  29.     print("--------------------\n");
  30.     return 1;
  31. }
  32.  
  33. public OnPlayerConnect(playerid)
  34. {
  35.     Credit_Timer[playerid] = SetTimerEx("CreditTimer", 600000, true, "i", playerid);
  36.     pInfo[playerid][Credits] = 0;
  37.  
  38.     new str[128];
  39.     format(str, sizeof str, "Credits %d", pInfo[playerid][Credits]);
  40.     CreditTD = CreatePlayerTextDraw(playerid,543.000000, 100.000000, str);
  41.     PlayerTextDrawAlignment(playerid,CreditTD, 2);
  42.     PlayerTextDrawBackgroundColor(playerid,CreditTD, 255);
  43.     PlayerTextDrawFont(playerid,CreditTD, 3);
  44.     PlayerTextDrawLetterSize(playerid,CreditTD, 0.490000, 2.000000);
  45.     PlayerTextDrawColor(playerid,CreditTD, -260370433);
  46.     PlayerTextDrawSetOutline(playerid,CreditTD, 1);
  47.     PlayerTextDrawSetProportional(playerid,CreditTD, 1);
  48.     PlayerTextDrawSetSelectable(playerid,CreditTD, 0);
  49.     CreditShowing[playerid] = true;
  50.     return 1;
  51. }
  52.  
  53. public OnPlayerDisconnect(playerid, reason)
  54. {
  55.     KillTimer(Credit_Timer[playerid]);
  56.     pInfo[playerid][Credits] = 0;
  57.     PlayerTextDrawDestroy(playerid,CreditTD);
  58.     CreditShowing[playerid] = false;
  59.     return 1;
  60. }
  61.  
  62. public OnPlayerSpawn(playerid)
  63. {
  64.     PlayerTextDrawShow(playerid,CreditTD);
  65.     CreditShowing[playerid] = true;
  66.     SendClientMessage(playerid, -1, "[Jakwob Credits Filterscript]");
  67.     SendClientMessage(playerid, -1, "Player Commands: /credits /sendcredits /hidecredits");
  68.     return 1;
  69. }
  70.  
  71. public OnPlayerDeath(playerid, killerid, reason)
  72. {
  73.     PlayerTextDrawHide(playerid,CreditTD);
  74.     CreditShowing[playerid] = false;
  75.     return 1;
  76. }
  77.  
  78. public CreditTimer(playerid)
  79. {
  80.     pInfo[playerid][Credits] += 10;
  81.     SendClientMessage(playerid, -1, "You have been given 100 credits from the server");
  82.     printf("%s Recieve 10 Credits", GetName(playerid));
  83.     return 1;
  84. }
  85.  
  86. CMD:credits(playerid, params[])
  87. {
  88.     new str[128];
  89.     format(str, sizeof str, "You have %d Credits", pInfo[playerid][Credits]);
  90.     SendClientMessage(playerid, -1, str);
  91.     return 1;
  92. }
  93.  
  94. CMD:sendcredits(playerid, params[])
  95. {
  96.     new ID, ammount, str[128];
  97.     if(sscanf(params, "ui", ID, ammount)) return SendClientMessage(playerid, -1, "Usage: /sendcredits <playerid> <ammount>");
  98.     if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, -1, "Error: Player Not Connected");
  99.     if(pInfo[playerid][Credits] < ammount) return SendClientMessage(playerid, -1, "Error: You do not have enough credits");
  100.     {
  101.         pInfo[playerid][Credits] += ammount;
  102.         format(str, sizeof str, "You have given %s %d credits", GetName(ID), ammount);
  103.         SendClientMessage(playerid, -1, str);
  104.         format(str, sizeof str, "%s has given you %d credits", GetName(playerid), ammount);
  105.         SendClientMessage(ID, -1, str);
  106.     }
  107.     return 1;
  108. }
  109.  
  110. CMD:hidecredits(playerid, params[])
  111. {
  112.     if(CreditShowing[playerid] == true)
  113.     {
  114.         PlayerTextDrawHide(playerid,CreditTD);
  115.         CreditShowing[playerid] = false;
  116.     }
  117.     else
  118.     {
  119.         PlayerTextDrawShow(playerid,CreditTD);
  120.         CreditShowing[playerid] = true;
  121.     }
  122.     return 1;
  123. }
  124.  
  125. stock GetName(playerid)
  126. {
  127.     new name[24];
  128.     GetPlayerName(playerid, name, sizeof name);
  129.     return name;
  130. }
Advertisement
Add Comment
Please, Sign In to add comment