whiplk

[FilterScript] - Sistema de Evento v1

Apr 13th, 2012
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 5.77 KB | None | 0 0
  1. //Idealizador e criador da versão Original, Don_Speed
  2. //Essa versão foi feita por mim, Willian_Luigi.
  3. #include <a_samp>
  4. #include <jCmd>
  5. #include <sscanf2>
  6. #define vermelho    0xFF230AFF
  7.  
  8. new
  9.     bool:sys_evento_on,
  10.     bool:sys_in_evento[MAX_PLAYERS],
  11.     Float:sys_pre_evento[3];
  12.  
  13. public OnPlayerConnect(playerid)
  14. {
  15.     sys_evento_on = false;
  16.     sys_in_evento[playerid] = false;
  17.     return true;
  18. }
  19.  
  20. public OnPlayerSpawn(playerid)
  21. {
  22.     sys_in_evento[playerid] = false;
  23.     return true;
  24. }
  25.  
  26. public OnPlayerDeath(playerid, killerid, reason)
  27. {
  28.     sys_in_evento[playerid] = false;
  29.     return true;
  30. }
  31.  
  32. newCmd:abrirevento(playerid)
  33. {
  34.     if(!IsPlayerAdmin(playerid))
  35.         return SendClientMessage(playerid, vermelho, "Você não é um admin Rcon");
  36.  
  37.     if(sys_evento_on)
  38.         return SendClientMessage(playerid, vermelho, "Evento já criado, use /destruirevento");
  39.        
  40.     GetPlayerPos(playerid, sys_pre_evento[0], sys_pre_evento[1], sys_pre_evento[2]);
  41.     sys_evento_on = true;
  42.     SendClientMessageToAll( -1, "Evento aberto pelo admin, /irev(ento) para ir ao evento");
  43.     return true;
  44. }
  45. newCmd:irevento(playerid)
  46. {
  47.     if(!sys_evento_on)
  48.         return SendClientMessage(playerid, vermelho, "Nenhum evento aberto, aguarde o admin abrir um evento.");
  49.        
  50.     if(sys_in_evento[playerid])
  51.         return SendClientMessage(playerid, vermelho, "Você já está em um evento.");
  52.        
  53.     SetPlayerPos(playerid, sys_pre_evento[0], sys_pre_evento[1], sys_pre_evento[2]);
  54.     sys_in_evento[playerid] = true;
  55.     SendClientMessage(playerid, -1, "Você foi até o evento.");
  56.     return true;
  57. }
  58. newCmd:irev(playerid)
  59. {
  60.     return @irevento(playerid);
  61. }
  62. newCmd:ajudaevento(playerid)
  63. {
  64.     if(!IsPlayerAdmin(playerid))
  65.         return SendClientMessage(playerid, vermelho, "Você não é um admin Rcon");
  66.        
  67.     SendClientMessage(playerid, vermelho, "");
  68.     SendClientMessage(playerid, vermelho, "|---------------| Sistema Evento |---------------------|");
  69.     SendClientMessage(playerid, vermelho, "| Comandos Ajuda                                       |");
  70.     SendClientMessage(playerid, vermelho, "| /abrirevento /skinevento /armaevento /vidaevento     |");
  71.     SendClientMessage(playerid, vermelho, "| /coleteevento /irevento /sairevento /destruirevento  |");
  72.     SendClientMessage(playerid, vermelho, "|  Apenas Jogadores Logados Na Rcon                    |");
  73.     SendClientMessage(playerid, vermelho, "|--------------| Sistema Evento |----------------------|");
  74.     return true;
  75. }
  76. newCmd:ae(playerid)
  77. {
  78.     return @ajudaevento(playerid);
  79. }
  80. newCmd:sairevento(playerid)
  81. {
  82.     if(!sys_in_evento[playerid])
  83.         return SendClientMessage(playerid, vermelho, "Você não está em um evento.");
  84.  
  85.     sys_in_evento[playerid] = false;
  86.     SpawnPlayer(playerid);
  87.     SendClientMessage(playerid, -1, "Você saiu do evento.");
  88.     return true;
  89. }
  90. newCmd:sairev(playerid)
  91. {
  92.     return @sairevento(playerid);
  93. }
  94. newCmd:vidaevento(playerid)
  95. {
  96.     if(!IsPlayerAdmin(playerid))
  97.         return SendClientMessage(playerid, vermelho, "Você não é um admin Rcon");
  98.  
  99.     if(!sys_evento_on)
  100.         return SendClientMessage(playerid, vermelho, "Nenhum evento criado, use /abrirevento");
  101.        
  102.     new sys_loop;
  103.     while(sys_loop < MAX_PLAYERS)
  104.     {
  105.         if(sys_in_evento[sys_loop])
  106.         {
  107.             SetPlayerHealth(sys_loop, 100);
  108.             SendClientMessage(sys_loop, -1, "O admin deu vida à todos no evento.");
  109.             return true;
  110.         }
  111.     }
  112.     return true;
  113. }
  114. newCmd:coleteevento(playerid)
  115. {
  116.     if(!IsPlayerAdmin(playerid))
  117.         return SendClientMessage(playerid, vermelho, "Você não é um admin Rcon");
  118.  
  119.     if(!sys_evento_on)
  120.         return SendClientMessage(playerid, vermelho, "Nenhum evento criado, use /abrirevento");
  121.        
  122.     new sys_loop;
  123.     while(sys_loop < MAX_PLAYERS)
  124.     {
  125.         if(sys_in_evento[sys_loop])
  126.         {
  127.             SetPlayerArmour(sys_loop, 100);
  128.             SendClientMessage(sys_loop, -1, "O admin deu colete à todos no evento.");
  129.             return true;
  130.         }
  131.     }
  132.     return true;
  133. }
  134. newCmd:armaevento(playerid, params[])
  135. {
  136.     if(!IsPlayerAdmin(playerid))
  137.         return SendClientMessage(playerid, vermelho, "Você não é um admin Rcon");
  138.        
  139.     if(!sys_evento_on)
  140.         return SendClientMessage(playerid, vermelho, "Nenhum evento criado, use /abrirevento");
  141.        
  142.     new arma, sys_loop;
  143.     if(sscanf(params, "d", arma))
  144.         return SendClientMessage(playerid, -1, "Correct use: /armaevento [id da arma]");
  145.        
  146.     if(arma > 0 || arma < 35)
  147.     {
  148.         while(sys_loop < MAX_PLAYERS)
  149.         {
  150.             if(sys_in_evento[sys_loop])
  151.             {
  152.                 GivePlayerWeapon(sys_loop, arma, 9999999);
  153.                 SendClientMessage(sys_loop, -1, "O admin deu arma à todos no evento.");
  154.                 return true;
  155.             }
  156.         }
  157.     }
  158.     return true;
  159. }
  160. newCmd:destruirevento(playerid)
  161. {
  162.     if(!IsPlayerAdmin(playerid))
  163.         return SendClientMessage(playerid, vermelho, "Você não é um admin Rcon");
  164.        
  165.     if(!sys_evento_on)
  166.         return SendClientMessage(playerid, vermelho, "Nenhum evento criado, use /abrirevento");
  167.        
  168.     sys_evento_on = false;
  169.     SendClientMessageToAll(-1, "Evento destruido pelo admin!");
  170.    
  171.     new sys_loop;
  172.     while(sys_loop < MAX_PLAYERS)
  173.     {
  174.         if(sys_in_evento[sys_loop])
  175.         {
  176.             SpawnPlayer(sys_loop);
  177.             return true;
  178.         }
  179.     }
  180.     return true;
  181. }
  182. newCmd:skinevento(playerid, params[])
  183. {
  184.     if(!IsPlayerAdmin(playerid))
  185.         return SendClientMessage(playerid, vermelho, "Você não é um admin Rcon");
  186.  
  187.     if(!sys_evento_on)
  188.         return SendClientMessage(playerid, vermelho, "Nenhum evento criado, use /abrirevento");
  189.        
  190.     new skin, sys_loop;
  191.     if(sscanf(params, "d", skin))
  192.         return SendClientMessage(playerid, vermelho, "Correct use: /skinevento [id da skin]");
  193.  
  194.     if(skin >= 0 || skin < 300)
  195.     {
  196.         while(sys_loop < MAX_PLAYERS)
  197.         {
  198.             if(sys_in_evento[sys_loop])
  199.             {
  200.                 SetPlayerSkin(sys_loop, skin);
  201.                 SendClientMessage(sys_loop, -1, "O admin mudou a skin de todos no evento.");
  202.                 return true;
  203.             }
  204.         }
  205.     }
  206.     return true;
  207. }
Advertisement
Add Comment
Please, Sign In to add comment