Advertisement
Guest User

Etch's Base Vip System

a guest
Dec 3rd, 2011
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 3.41 KB | None | 0 0
  1. #include <a_samp>
  2. #include <Dini>
  3. #include <dutils>
  4. #include <sscanf2>
  5. #define FILTERSCRIPT
  6. #if defined FILTERSCRIPT
  7. #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
  8. #define COLOR_GREEN           0x33AA33AA
  9. #define COLOR_RED             0xAA3333AA
  10. #define COLOR_YELLOW          0xFFFF00AA
  11. #define COLOR_LIGHTBLUE       0x33CCFFAA
  12. #define COLOR_ORANGE          0xFF9900AA
  13. #pragma tabsize 0
  14. #define PlayerFile              "VIP/%s.ini"
  15. public OnFilterScriptInit()
  16.     {
  17.     print("*Vip System By Etch*");
  18.     return 1;
  19.     }
  20. #endif
  21. enum PLAYER_MAIN {
  22.     pName[MAX_PLAYER_NAME],
  23.     Pip[16],
  24.     Vip_Level
  25. }
  26. new Pinfo[MAX_PLAYERS][PLAYER_MAIN];
  27. public OnPlayerConnect(playerid)
  28. {
  29.     SendClientMessage(playerid,COLOR_YELLOW,"Vip System By Etch");
  30.     new file[100],Name[MAX_PLAYER_NAME],Ip[16]; GetPlayerName(playerid,Name,sizeof(Name)); GetPlayerIp(playerid,Ip,sizeof(Ip)); format(file,sizeof(file),PlayerFile,Name);
  31.     if(!dini_Exists(file)) {
  32.         dini_Create(file);
  33.         dini_Set(file,"Name",Name);
  34.         dini_Set(file,"Ip",Ip);
  35.         dini_IntSet(file,"Vip_Level",0);
  36.     }
  37.     Pinfo[playerid][Vip_Level]                = dini_Int(file,"Vip_Level");
  38.     return 1;
  39. }
  40. public OnPlayerDisconnect(playerid, reason)
  41. {
  42.     new file[100];
  43.     format(file,sizeof(file),PlayerFile,Pinfo[playerid][pName]);
  44.     dini_Set(file,"Name",Pinfo[playerid][pName]);
  45.     dini_Set(file,"Ip",Pinfo[playerid][Pip]);
  46.     dini_IntSet(file,"Vip_Level",Pinfo[playerid][Vip_Level]);
  47.     Pinfo[playerid][Vip_Level]  = 0;
  48.     return 1;
  49. }
  50. public OnPlayerCommandText(playerid, cmdtext[])
  51. {
  52. dcmd(setvip,6,cmdtext);
  53. dcmd(viplevel,8,cmdtext);
  54. return 0;
  55. }
  56.  
  57. dcmd_setvip(playerid, params[])
  58. {
  59.     new file[100];
  60.     format(file,sizeof(file),PlayerFile,Pinfo[playerid][pName]);
  61.     new string[128],string2[128];
  62.     new giveplayerid, level;
  63.     new playername[MAX_PLAYER_NAME],idname[MAX_PLAYER_NAME];
  64.     GetPlayerName(playerid, playername, MAX_PLAYER_NAME);
  65.     GetPlayerName(playerid,idname,MAX_PLAYER_NAME);
  66.     if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, COLOR_RED, "You Have To Be Rcon Admin To Use This Command!");
  67.     if(sscanf(params, "ud", giveplayerid, level))return SendClientMessage(playerid, COLOR_RED, "Usage: /setvip [Playerid/Partname] [Level]");
  68.     else if (giveplayerid == INVALID_PLAYER_ID)return SendClientMessage(playerid, COLOR_RED, "Player Is Not Connected");
  69.     else if (level > 3)return SendClientMessage(playerid, COLOR_RED, "Maximum Vip Level Is 3");
  70.     else
  71.     {
  72.         Pinfo[giveplayerid][Vip_Level] = level;
  73.         format(string,sizeof(string),"Administrator %s Set Your Vip Level To %d",playername,level);
  74.         SendClientMessage(giveplayerid,COLOR_YELLOW,string);
  75.         format(string2,sizeof(string2),"%s Vip Level Is Now %d",idname,level);
  76.         SendClientMessageToAll(COLOR_YELLOW,string2);
  77.         dini_IntSet(file,"Vip_Level",Pinfo[playerid][Vip_Level]);
  78.     }
  79.     return 1;
  80. }
  81. dcmd_viplevel(playerid, params[])
  82. {
  83. #pragma unused params
  84. new string1[128],string2[128],string3[128];
  85. format(string1,sizeof(string1),"============================");
  86. format(string2,sizeof(string2),"Your V.I.P Level Is %d",Pinfo[playerid][Vip_Level]);
  87. format(string3,sizeof(string3),"============================");
  88. SendClientMessage(playerid,COLOR_YELLOW,string1);
  89. SendClientMessage(playerid,COLOR_YELLOW,string2);
  90. SendClientMessage(playerid,COLOR_YELLOW,string3);
  91. return 1;
  92. }
  93.  
  94.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement