Advertisement
jlalt

hush

Apr 24th, 2018
382
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 5.10 KB | None | 0 0
  1. #define FILTERSCRIPT
  2. #include <a_samp>
  3. #include <zcmd>
  4. #include <sscanf2>
  5.  
  6.  
  7. public OnFilterScriptInit()
  8. {
  9.     print("\n--------------------------------------");
  10.     print("~'BlueSeas'['EventSystem']'");
  11.     print("--------------------------------------\n");
  12.     return 1;
  13. }
  14.  
  15. enum pInfo {
  16. pEventor,
  17. pE,
  18. };
  19. new PlayerInfo[MAX_PLAYERS][pInfo];
  20.  
  21. new eheadline[50];
  22. new ereward;
  23. new eweapx;
  24. new eammox;
  25. new eavailable=0;
  26. //new sevent=0;
  27. new bool:InEvent[MAX_PLAYERS];
  28. new PlayerParticipated[MAX_PLAYERS]=0;
  29.  
  30.  
  31.  
  32. #define COLOR_RED 0x0000BBAA
  33.  
  34. /*strtok(const string[], &index)
  35. {
  36.     new length = strlen(string);
  37.     while ((index < length) && (string[index] <= ' '))
  38.     {
  39.         index++;
  40.     }
  41.  
  42.     new offset = index;
  43.     new result[20];
  44.     while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
  45.     {
  46.         result[index - offset] = string[index];
  47.         index++;
  48.     }
  49.     result[index - offset] = EOS;
  50.     return result;
  51. }*/
  52.  
  53.  
  54. public OnPlayerConnect(playerid)
  55. {
  56.     InEvent[playerid] = false;
  57.     return 1;
  58. }
  59.  
  60.  
  61. public OnPlayerDeath(playerid, killerid, reason)
  62. {
  63.     SetPlayerScore(killerid, GetPlayerScore(killerid)+1);
  64.     SetPlayerScore(playerid, GetPlayerScore(killerid)-1);
  65.     SetPlayerPos(playerid,-1662.9398,-163.1523,15.8525);
  66.     ResetPlayerWeapons(playerid);
  67.     SetPlayerVirtualWorld(playerid, 0);
  68.     return 1;
  69. }
  70.  
  71. CMD:ewinner(playerid,params[])
  72. {
  73.     if(PlayerInfo[playerid][pEventor])
  74.     {
  75.         new targetid;
  76.         if(eavailable==0) return SendClientMessage(playerid,COLOR_RED,"[ServerBoT]:{FFFFFF}There's no event in the current time!");
  77.         if(sscanf(params,"u",targetid)) return SendClientMessage(playerid,COLOR_RED,"[Context]:{FFFFFF} /ewinner [ID/PlayerName].");
  78.         if(PlayerParticipated[targetid]==0) return SendClientMessage(playerid,COLOR_RED,"[ServerBoT]:{FFFFFF}This player you mentioned wasnt even in the event!");
  79.         if(targetid==INVALID_PLAYER_ID) return SendClientMessage(playerid,COLOR_RED,"[ServerBoT]:{FFFFFF}There's no such player in the server! ");
  80.         new a7a[MAX_PLAYER_NAME];
  81.         GetPlayerName(playerid,a7a,MAX_PLAYER_NAME);
  82.         new str[128];
  83.         format(str,128,"[Event]{FFFFFF}'%s' has won the event '%s' and received $%d!",a7a,eheadline,ereward);
  84.         SendClientMessageToAll(COLOR_RED,str);
  85.         SendClientMessage(targetid,COLOR_RED,"[Event]{FFFFFF}Congratulations, you have earned your prize now, thanks for participating!");
  86.         new string[64];
  87.         format(string,64,"Congratulations!",eheadline);
  88.         GameTextForPlayer(targetid,string,5,5000);
  89.         GivePlayerMoney(targetid,ereward);
  90.         eavailable=0;
  91.         new st[128];
  92.         format(st,128,"[Event]{FFFFFF}The event '%s' is ended!",eheadline);
  93.         SendClientMessageToAll(COLOR_RED,st);
  94.         SetPlayerPos(playerid,-1662.9398,-163.1523,15.8525);
  95.         SetPlayerPos(targetid,-1662.9398,-163.1523,15.8525);
  96.         ResetPlayerWeapons(playerid);
  97.         ResetPlayerWeapons(targetid);
  98.         SetPlayerInterior(playerid, 0);
  99.     }
  100.     return 1;
  101. }
  102.  
  103.  
  104.  
  105.  
  106. forward CountDown(playerid, seconds);
  107. public CountDown(playerid, seconds)
  108. {
  109.     new string[256];
  110.     if(seconds > 0)
  111.     {
  112.         new Float:X, Float:Y, Float:Z;
  113.         GetPlayerPos(playerid, X, Y, Z);
  114.         PlayerPlaySound(playerid, 1056, X, Y, Z);
  115.         format(string, sizeof(string), "~R~%d", seconds);
  116.         GameTextForPlayer(playerid, string, 1000, 3);
  117.         seconds = seconds -1;
  118.         SetTimerEx("CountDown", 1000, 0, "ii", playerid, seconds);
  119.         return 1;
  120.     }
  121.     if(seconds == 0)
  122.     {
  123.         new Float:X, Float:Y, Float:Z;
  124.         GetPlayerPos(playerid, X, Y, Z);
  125.         PlayerPlaySound(playerid, 1057, X, Y, Z);
  126.         GameTextForPlayer(playerid, "~G~Start!!!", 1000, 3);
  127.         TogglePlayerControllable(playerid, 1);
  128.         return 1;
  129.     }
  130.     return 1;
  131. }
  132.  
  133. CMD:eannounce(playerid,params[])
  134. {
  135.     if(PlayerInfo[playerid][pEventor])
  136.     {
  137.         new string[128];
  138.         if(InEvent[playerid] == true)
  139.         {
  140.             SendClientMessage(playerid,COLOR_RED,"[ServerBoT]{FFFFFF}Event has already started!");
  141.             return 1;
  142.         }
  143.         if(eavailable==0) return SendClientMessage(playerid,COLOR_RED,"[ServerBoT]{FFFFFF}There's/'re no events running now!");
  144.         format(string,128,"[Event]{FFFFFF}'%s' event is going to start! Try /ejoin to join the event and have fun [Reward is: '%d']",eheadline,ereward);
  145.         SendClientMessageToAll(COLOR_RED,string);
  146.     }
  147.     return 1;
  148. }
  149.  
  150.  
  151.  
  152. CMD:cevent(playerid,params[])
  153. {
  154.     if(PlayerInfo[playerid][pEventor])
  155.     {
  156. //        new string[128];
  157. //      new sstring[128];
  158.         if(eavailable==1) return SendClientMessage(playerid,COLOR_RED,"[ServerBoT]{FFFFFF}There is already an event running right now!");
  159.         if(sscanf(params,"s[128]iiiiii",eheadline,eweapx,eammox,ereward))
  160.             return  SendClientMessage(playerid,COLOR_RED,"[Context]:{FFFFFF} /cevent [Event name] [Weapon] [Ammo] [Reward]");
  161.         if(eweapx > 39 || eweapx < 0)
  162.             return SendClientMessage(playerid,COLOR_RED,"smth");
  163.     }
  164.     return true;
  165. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement