Vuk7

Specijal za 100 pretplatnik Chat Bubble #1

Jan 10th, 2017
230
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 6.99 KB | None | 0 0
  1. #include <a_samp>
  2. #include <zcmd>
  3. #include <ysi\y_ini>
  4. #include <sscanf2>
  5.  
  6. #define IGRACI_FOLDER "/Korisnici/%s.ini"
  7. #define SCM SendClientMessage
  8. #define SCMTA SendClientMessageToAll
  9.  
  10. new sduty[MAX_PLAYERS];
  11.  
  12. stock GetName(playerid) { new name[MAX_PLAYER_NAME]; GetPlayerName(playerid,name,sizeof(name)); return name; }
  13.  
  14. enum pInfo
  15. {
  16.     pNovac,
  17.     pSupporter
  18. }
  19. new PlayerInfo[MAX_PLAYERS][pInfo];
  20.  
  21. forward LoadUser_data(playerid,name[],value[]);
  22. public LoadUser_data(playerid,name[],value[])
  23. {
  24.     INI_Int("Novac",PlayerInfo[playerid][pNovac]);
  25.     INI_Int("Supporter",PlayerInfo[playerid][pSupporter]);
  26.     return 1;
  27. }
  28. stock UserPath(playerid)
  29. {
  30.     new str[120];
  31.     format(str,sizeof(str),IGRACI_FOLDER,GetName(playerid));
  32.     return str;
  33. }
  34. stock SacuvajIgraca(playerid)
  35. {
  36.     new INI:File = INI_Open(UserPath(playerid));
  37.     INI_SetTag(File,"data");
  38.     INI_WriteInt(File,"Novac",GetPlayerMoney(playerid));
  39.     INI_WriteInt(File,"Supporter",PlayerInfo[playerid][pSupporter]);
  40.     INI_Close(File);
  41. }
  42. main()
  43. {
  44.     print("\n----------------------------------");
  45.     print(" ");
  46.     print("----------------------------------\n");
  47. }
  48.  
  49. public OnGameModeInit()
  50. {
  51.     SetGameModeText("Supporter system by Vuk");
  52.     AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
  53.     SetTimer("bubble",10000,true);
  54.     return 1;
  55. }
  56.  
  57. public OnGameModeExit()
  58. {
  59.     return 1;
  60. }
  61.  
  62. public OnPlayerRequestClass(playerid, classid)
  63. {
  64.     SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
  65.     SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
  66.     SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
  67.     return 1;
  68. }
  69.  
  70. public OnPlayerConnect(playerid)
  71. {
  72.     if(fexist(UserPath(playerid)))
  73.     {
  74.         INI_ParseFile(UserPath(playerid),"LoadUser_%s", .bExtra = true, .extra = playerid);
  75.     }
  76.     else
  77.     {
  78.         new INI:File = INI_Open(UserPath(playerid));
  79.         INI_SetTag(File,"data");
  80.         INI_WriteInt(File,"Novac",0);
  81.         INI_WriteInt(File,"Supporter",0);
  82.         INI_Close(File);
  83.     }
  84.     return 1;
  85. }
  86.  
  87. public OnPlayerDisconnect(playerid, reason)
  88. {
  89.     SacuvajIgraca(playerid);
  90.     return 1;
  91. }
  92.  
  93. public OnPlayerSpawn(playerid)
  94. {
  95.     return 1;
  96. }
  97. public OnPlayerDeath(playerid, killerid, reason)
  98. {
  99.     return 1;
  100. }
  101.  
  102. //------------------------------------------------------
  103. //komande
  104. CMD:makesupporter(playerid,params[])
  105. {
  106.     if(IsPlayerAdmin(playerid) || PlayerInfo[playerid][pSupporter] == 3)
  107.     {
  108.         new id,level;
  109.         if(sscanf(params,"ud",id,level)) return SCM(playerid,-1,"Koristi:/makesupporter [name/id][level]");
  110.         if(!IsPlayerConnected(id)) return SCM(playerid, -1,"Igrac nije konektovac");
  111.         if(level < 1 || level > 3) return SCM(playerid,-1,"minimum 1 maksimum 3");
  112.         PlayerInfo[id][pSupporter] = level;
  113.         new str[120],str1[120];
  114.         format(str,sizeof(str),"Admin/Supporter %s ti je posatio supportera level %d",GetName(playerid),level);
  115.         SCM(id,-1,str);
  116.         format(str1,sizeof(str1),"Igracu %s si posatavio supporter level na %d",GetName(id),level);
  117.         SCM(id,-1,str1);
  118.     }
  119.     else
  120.     {
  121.         SCM(playerid,-1,"Nisi ovlasten!");
  122.     }
  123.     return 1;
  124. }
  125. CMD:cc(playerid,params[])
  126. {
  127.     if(sduty[playerid] == 0) return SCM(playerid,-1,"Nisi na duznosti!");
  128.     if(PlayerInfo[playerid][pSupporter] >= 1)
  129.     {
  130.         for(new i=0;i<120;i++)
  131.         {
  132.             SendClientMessageToAll(-1,"");
  133.         }
  134.         new str[120];
  135.         format(str,sizeof(str),"Admin/Supporter %s je ocistio chat!",GetName(playerid));
  136.         SendClientMessageToAll(-1,str);
  137.     }
  138.     else
  139.     {
  140.         SCM(playerid,-1,"Nisi ovlasten!");
  141.     }
  142.     return 1;
  143. }
  144. CMD:sc(playerid,params[])
  145. {
  146.     if(sduty[playerid] == 0) return SCM(playerid,-1,"Nisi na duznosti!");
  147.     if(PlayerInfo[playerid][pSupporter] >= 1)
  148.     {
  149.         new text[120];
  150.         if(sscanf(params,"s[120]",text)) return SCM(playerid,-1,"Koristi:/sc [tekst]");
  151.         new str[154];
  152.         format(str,sizeof(str),"|SC| %s | %s |",GetName(playerid),text);
  153.         for(new i=0;i<MAX_PLAYERS;i++)
  154.         {
  155.             if(PlayerInfo[i][pSupporter] >= 1)
  156.             {
  157.                 SCM(i,-1,str);
  158.             }
  159.         }
  160.     }
  161.     else
  162.     {
  163.         SCM(playerid,-1,"Nisi ovlasten!");
  164.     }
  165.     return 1;
  166. }
  167. CMD:so(playerid,params[])
  168. {
  169.     if(sduty[playerid] == 0) return SCM(playerid,-1,"Nisi na duznosti!");
  170.     if(PlayerInfo[playerid][pSupporter] >= 1)
  171.     {
  172.         new text[120];
  173.         if(sscanf(params,"s[120]",text)) return SCM(playerid,-1,"Koristi:/sc [tekst]");
  174.         new str[200];
  175.         format(str,sizeof(str),"((OOC | Supporter %s | %s |))",GetName(playerid),text);
  176.         SCMTA(-1,str);
  177.     }
  178.     else
  179.     {
  180.         SCM(playerid,-1,"Nisi ovlasten!");
  181.     }
  182.     return 1;
  183. }
  184. CMD:sduty(playerid,params[])
  185. {
  186.     if(PlayerInfo[playerid][pSupporter] >= 1)
  187.     {
  188.         if(sduty[playerid] == 0)
  189.         {
  190.             new str[100];
  191.             format(str,sizeof(str),"Supporter %s je na duznosti!",GetName(playerid));
  192.             SCMTA(-1,str);
  193.             SetPlayerHealth(playerid,99);
  194.             SetPlayerArmour(playerid,99);
  195.             sduty[playerid] = 1;
  196.         }
  197.         else if(sduty[playerid] == 1)
  198.         {
  199.             new str1[100];
  200.             format(str1,sizeof(str1),"Supporter %s vise nije na duznosti!",GetName(playerid));
  201.             SCMTA(-1,str1);
  202.             sduty[playerid] = 0;
  203.         }
  204.     }
  205.     return 1;
  206. }
  207. CMD:goto(playerid,params[])
  208. {
  209.     if(sduty[playerid] == 0) return SCM(playerid,-1,"Nisi na duznosti!");
  210.     if(PlayerInfo[playerid][pSupporter] >= 1)
  211.     {
  212.         new id;
  213.         if(sscanf(params,"u",id)) return SCM(playerid,-1,"Koristi:/goto [name/id]");
  214.         if(!IsPlayerConnected(id)) return SCM(playerid,-1,"Igrac nije konektovan!");
  215.         new Float:x,Float:y,Float:z;
  216.         GetPlayerPos(id,x,y,z);
  217.         if(IsPlayerInAnyVehicle(playerid))
  218.         {
  219.             SetVehiclePos(GetPlayerVehicleID(playerid),x,y,z);
  220.         }
  221.         else if(!IsPlayerInAnyVehicle(playerid))
  222.         {
  223.             SetPlayerPos(playerid,x,y,z);
  224.         }
  225.     }
  226.     return 1;
  227. }
  228. CMD:bring(playerid,params[])
  229. {
  230.     if(sduty[playerid] == 0) return SCM(playerid,-1,"Nisi na duznosti!");
  231.     if(PlayerInfo[playerid][pSupporter] >= 1)
  232.     {
  233.         new id;
  234.         if(sscanf(params,"u",id)) return SCM(playerid,-1,"Koristi:/goto [name/id]");
  235.         if(!IsPlayerConnected(id)) return SCM(playerid,-1,"Igrac nije konektovan!");
  236.         new Float:x,Float:y,Float:z;
  237.         GetPlayerPos(playerid,x,y,z);
  238.         if(IsPlayerInAnyVehicle(id))
  239.         {
  240.             SetVehiclePos(GetPlayerVehicleID(id),x,y,z);
  241.         }
  242.         else if(!IsPlayerInAnyVehicle(id))
  243.         {
  244.             SetPlayerPos(id,x,y,z);
  245.         }
  246.     }
  247.     return 1;
  248. }
  249. public OnPlayerStateChange(playerid, newstate, oldstate)
  250. {
  251.     return 1;
  252. }
  253.  
  254. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  255. {
  256.     return 1;
  257. }
  258.  
  259. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  260. {
  261.     return 1;
  262. }
  263.  
  264. forward bubble();
  265. public bubble()
  266. {
  267.     for(new i=0;i<MAX_PLAYERS;i++)
  268.     {
  269.         if(PlayerInfo[i][pSupporter] == 1) { SetPlayerChatBubble(i, "[ SUPPORTER 1 ]", 0xFF0000FF, 100.0, 10000); }
  270.         else if(PlayerInfo[i][pSupporter] == 2) { SetPlayerChatBubble(i, "[ SUPPORTER 2 ]", 0xFF0000FF, 100.0, 10000); }
  271.         else if(PlayerInfo[i][pSupporter] == 3) { SetPlayerChatBubble(i, "[ SUPPORTER 3 ]", 0xFF0000FF, 100.0, 10000); }
  272.         else if(IsPlayerAdmin(i)) { SetPlayerChatBubble(i, "[ ADMIN ]", 0xFF0000FF, 100.0, 10000); }
  273.     }
  274.     return 1;
  275. }
Advertisement
Add Comment
Please, Sign In to add comment