Advertisement
Guest User

Vip

a guest
Aug 2nd, 2012
1,229
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.60 KB | None | 0 0
  1. #define FILTERSCRIPT
  2. //Credits to samp
  3. #include <a_samp>
  4. //Credits to Zeex for zcmd
  5. #include <zcmd>
  6. //Credits to Y_Less for foreach
  7. #include <foreach>
  8. //Credits to Y_Less for sscanf
  9. #include <sscanf2>
  10. #include <dini>
  11. //Credits to me folor colors
  12. #include <Colors>
  13.  
  14.  
  15. #define MAX_VIP 3
  16. #define PlayerFile "Vip/%s.ini"
  17.  
  18. #pragma tabsize 0
  19.  
  20. enum dData
  21. {
  22. Vip
  23. }
  24. new PlayerInfo[MAX_PLAYERS][dData];
  25.  
  26. public OnFilterScriptInit()
  27. {
  28. print("\n--------------------------------------");
  29. print("Vip system loaded!");
  30. print("--------------------------------------\n");
  31. return 1;
  32. }
  33.  
  34. public OnFilterScriptExit()
  35. {
  36. return 1;
  37. }
  38.  
  39. public OnPlayerConnect(playerid)
  40. {
  41. new file[256], name[MAX_PLAYER_NAME];
  42. GetPlayerName(playerid,name,sizeof(name));
  43. format(file,sizeof(file),PlayerFile,name);
  44.  
  45. if(!dini_Exists(file) )
  46. {
  47. dini_Create(file);
  48. dini_Set(file,"Name",name);
  49. dini_IntSet(file,"Vip",0);
  50. PlayerInfo[playerid][Vip] = 0;
  51. SendClientMessage(playerid,COLOR_RED,"Your vip level is 0; !");
  52. }
  53. else
  54. {
  55. PlayerInfo[playerid][Vip] = dini_Int(file,"Vip");
  56.  
  57. new string[256];
  58. format(string,sizeof(string),"Your vip level is %d",PlayerInfo[playerid][Vip]);
  59. SendClientMessage(playerid,COLOR_GREEN,string);
  60. }
  61. return 1;
  62. }
  63.  
  64. public OnPlayerDisconnect(playerid, reason)
  65. {
  66. new file[256], name[MAX_PLAYER_NAME];
  67. GetPlayerName(playerid,name,sizeof(name));
  68. format(file,sizeof(file),PlayerFile,name);
  69. if(dini_Exists(file) )
  70. {
  71. dini_IntSet(file,"Vip",PlayerInfo[playerid][Vip]);
  72. }
  73. return 1;
  74. }
  75.  
  76. public OnPlayerSpawn(playerid)
  77. {
  78. return 1;
  79. }
  80.  
  81. public OnPlayerDeath(playerid, killerid, reason)
  82. {
  83. return 1;
  84. }
  85.  
  86. public OnPlayerText(playerid, text[])
  87. {
  88. if(text[0] == '!' )
  89. {
  90. if(PlayerInfo[playerid][Vip] > 0)
  91. {
  92. new name[MAX_PLAYER_NAME];
  93. GetPlayerName(playerid,name,sizeof(name));
  94. new string[256];
  95. format(string,sizeof(string),"Vip -- %s ( rank: %d): %s",name,PlayerInfo[playerid][Vip],text[0]);
  96. MessageToVips(COLOR_GREEN,string);
  97. return 0;
  98. }
  99. }
  100. return 1;
  101. }
  102.  
  103. public OnPlayerCommandText(playerid, cmdtext[])
  104. {
  105. return 0;
  106. }
  107.  
  108. CMD:setvip(playerid,params[])
  109. {
  110. new id, level;
  111. if(sscanf(params,"ud",id,level) ) return SendClientMessage(playerid,COLOR_RED,"USUAGE: /setvip [id][ level]");
  112. if(!IsPlayerAdmin(playerid) ) return SendClientMessage(playerid,COLOR_RED,"You are not an admin!");
  113. if(level > MAX_VIP) return SendClientMessage(playerid,COLOR_RED,"Invalid Level");
  114. if(!IsPlayerConnected(id) ) return SendClientMessage(playerid,COLOR_RED,"Player is not connected");
  115. else
  116. {
  117. new name[MAX_PLAYER_NAME], playername[MAX_PLAYER_NAME];
  118. GetPlayerName(playerid,name,sizeof(name));
  119. GetPlayerName(id,playername,sizeof(playername));
  120.  
  121. new fstring[256], zstring[256];
  122.  
  123. format(fstring,sizeof(fstring),"Administrator %s maked you V.I.P level %d",name,level);
  124. format(zstring,sizeof(zstring),"You maked %s level %d",playername,level);
  125.  
  126. SendClientMessage(playerid,COLOR_RED,zstring);
  127. SendClientMessage(id,COLOR_RED,fstring);
  128.  
  129. PlayerInfo[id][Vip] = level;
  130. }
  131. return 1;
  132. }
  133.  
  134. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  135. {
  136. return 1;
  137. }
  138.  
  139. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  140. {
  141. return 1;
  142. }
  143.  
  144. //mesage to vips
  145.  
  146. stock MessageToVips(color, const string[])
  147. {
  148. foreach(Player,i)
  149. {
  150. if(IsPlayerConnected(i) == 1)
  151. if(PlayerInfo[i][Vip] >= 1)
  152. SendClientMessage(i,color,string);
  153. }
  154. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement