Advertisement
kenon125

Gang Zones dominaveis

Nov 20th, 2011
293
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 5.78 KB | None | 0 0
  1. Criando Ganga Zones Dominaveis By:ZeuS
  2. >No topo do GM coloque:
  3.  
  4. new Groove;
  5. new Ballas;
  6.  
  7. #define COR_GROOVE 0x00800096
  8. #define COR_BALLAS 0xFF00CDFF
  9.  
  10. forward DominarGrooveGroove(playerid);
  11. forward DominarGrooveBallas(playerid);
  12. forward DominarBallasBallas(playerid);
  13. forward DominarBallasGroove(playerid);
  14. forward DinheiroGZ(playerid);
  15.  
  16.  
  17. >Explicaçao code:
  18. new Groove; --> Para podermos criar a GZ
  19. new Ballas; --> Para podermos criar a GZ
  20.  
  21. #define COR_GROOVE 0x00800096 --> Definimos a cor de Groove
  22. #define COR_BALLAS 0xFF00CDFF --> Definimos a cor de Ballas
  23.  
  24. forward DominarGrooveGroove(playerid); --> Para o SetTimer depois
  25. forward DominarGrooveBallas(playerid); --> Para o SetTimer depois
  26. forward DominarBallasBallas(playerid); --> Para o SetTimer depois
  27. forward DominarBallasGroove(playerid); --> Para o SetTimer depois
  28. forward DinheiroGZ(playerid); --> Para o SetTimer dps para dar a grana
  29.  
  30. Agora, também entre public (aconselho ser no fim ou topo do GM)
  31.  
  32. >pawn Code:
  33.  
  34. stock IsPlayerInPlace(playerid,Float:XMin,Float:YMin,Float:XMax,Float:YMax )
  35. {
  36. new RetValue = 0;
  37. new Float:X,Float:Y,Float:Z;
  38. GetPlayerPos(playerid,X,Y,Z );
  39.  
  40. if( X >= XMin && Y >= YMin && X < XMax && Y < YMax )
  41. {
  42.   RetValue = 1;
  43. }
  44. return RetValue;
  45. }
  46.  
  47.  
  48.  
  49. >Explicando o Code:
  50.  
  51. Isto já é um bocado avançado, vou ser breve:
  52.  
  53. stock IsPlayerInPlace(playerid,Float:XMin,Float:YMin,Float:XMax,Float:YMax ) --> Cria a função e define a definição para usarmos no /dominar
  54. GetPlayerPos(playerid,X,Y,Z ); --> Pega a posição do player
  55.  
  56. OBS: Sem esta ultima parte, o /dominar não irá funcionar
  57.  
  58.  
  59. >No OnGameModeInit:
  60.  
  61. Groove = GangZoneCreate(2239.024, -1721.339, 2512.828, -1638.437);
  62.     Ballas = GangZoneCreate(2282.1401,2425.7576,3.4692,357.7160);
  63.  
  64.  
  65. >Explicaçao Code:
  66.  
  67. Groove = GangZoneCreate(2239.024, -1721.339, 2512.828, -1638.437); --> Cria a GangZone no Servidor
  68. Ballas = GangZoneCreate(2282.1401,2425.7576,3.4692,357.7160); --> Cria a GangZone no Servidor
  69.  
  70.  
  71. >No OnPlayerSpawn:
  72.  
  73. GangZoneShowForPlayer(playerid, Groove, COR_GROOVE);
  74.     GangZoneShowForPlayer(playerid, Ballas, COR_BALLAS);
  75.  
  76.  
  77.  
  78. >Explicaçao Code:
  79.  
  80.     GangZoneShowForPlayer(playerid, Groove, COR_GROOVE); --> Mostra a GangZone para o Player quando ele spawnar
  81.     GangZoneShowForPlayer(playerid, Ballas, COR_BALLAS); --> Mostra a GangZone para o Player quando ele spawnar
  82.  
  83.  
  84. >No OnPlayerCommandText:
  85.  
  86. if (strcmp("/dominar", cmdtext, true, 10) == 0)
  87.     {
  88.         if(IsPlayerInPlace(playerid,2239.024,-1721.339, 2512.828, -1638.437))
  89.           {
  90.           if(gTeam == BALLAS)
  91.             {
  92.             GangZoneFlashForAll(Groove,COR_BALLAS);
  93.             SetTimer("DominarBallasGroove",60000,false);
  94.             }
  95.             else if(gTeam == GROOVE)
  96.               {
  97.               GangZoneFlashForAll(Groove,COR_GROOVE);
  98.               SetTimer("DominarGrooveGroove",60000,false);
  99.               }
  100.           }
  101.         else if(IsPlayerInPlace(playerid,2282.1401,2425.7576,3.4692,357.7160))
  102.           {
  103.           if(gTeam == BALLAS)
  104.             {
  105.             GangZoneFlashForAll(Groove,COR_BALLAS);
  106.             SetTimer("DominarBallasBallas",60000,false);
  107.             }
  108.             else if(gTeam == GROOVE)
  109.               {
  110.               GangZoneFlashForAll(Groove,COR_GROOVE);
  111.               SetTimer("DominarGrooveBallas",60000,false);
  112.               }
  113.           }
  114.          
  115.         return 1;
  116.     }
  117.  
  118.  
  119.  
  120. >Explicaçao Code:
  121.  
  122. if (strcmp("/dominar", cmdtext, true, 10) == 0) --> Definimos o comando para ser /dominar
  123.  
  124. if(IsPlayerInPlace(playerid,2239.024,-1721.339, 2512.828, -1638.437)) --> Verifica se o player está na GangZone
  125.  
  126. if(gTeam == BALLAS) --> Verifica se o player é dos Ballas
  127.  
  128. GangZoneFlashForAll(Groove,COR_BALLAS); --> Faz A GangZone começar a piscar
  129.  
  130. SetTimer("DominarBallasGroove",60000,false); --> Comeca o tempo para a GangZone ficar dominada
  131.  
  132. else if(gTeam == GROOVE) --> Verifica se o player é da Groove
  133.  
  134. GangZoneFlashForAll(Groove,COR_GROOVE); --> Faz A GangZone começar a piscar
  135.  
  136. SetTimer("DominarGrooveGroove",60000,false); --> Comeca o tempo para a GangZone ficar dominada
  137.  
  138.  
  139.  
  140. >Agora Entre public's (não pode estar dentro de nenhum public, pois é um.. xD)
  141.  
  142.  
  143. public DominarGrooveGroove(playerid)
  144. {
  145.  
  146. GangZoneHideForAll(Groove);
  147. GangZoneShowForAll(Groove, COR_GROOVE);
  148. SetTimer("DinheiroGZ",3*60*1000,false);
  149.  
  150. return 1;
  151. }
  152.  
  153.  
  154. public DominarGrooveBallas(playerid)
  155. {
  156.  
  157. GangZoneHideForAll(Groove);
  158. GangZoneShowForAll(Groove, COR_BALLAS);
  159. SetTimer("DinheiroGZ",3*60*1000,false);
  160.  
  161. return 1;
  162. }
  163.  
  164.  
  165. public DominarBallasBallas(playerid)
  166. {
  167.  
  168. GangZoneHideForAll(Ballas);
  169. GangZoneShowForAll(Ballas, COR_BALLAS);
  170. SetTimer("DinheiroGZ",3*60*1000,false);
  171.  
  172. return 1;
  173. }
  174.  
  175.  
  176. public DominarBallasGroove(playerid)
  177. {
  178.  
  179. GangZoneHideForAll(Ballas);
  180. GangZoneShowForAll(Ballas, COR_GROOVE);
  181. SetTimer("DinheiroGZ",3*60*1000,false);
  182.  
  183. return 1;
  184. }
  185.  
  186.  
  187. >Explicaçao Code:
  188.  
  189. public DominarBallasGroove(playerid) --> É a public que definimos no forward e que usamos no SetTimer do /dominar
  190. GangZoneHideForAll(Ballas); --> Esconde a GangZone (para ficar sem Cor e nós redefinirmos a cor dela de novo)
  191. GangZoneShowForAll(Ballas, COR_GROOVE); --> Cria a GangZone com a cor desejada
  192. SetTimer("DinheiroGZ",3*60*1000,false); --> Activa para dar o dinheiro a cada 3 minutos ao player
  193.  
  194.  
  195. >No final do GM:
  196.  
  197. public DinheiroGZ(playerid)
  198. {
  199. GivePlayerMoney(playerid,3000);
  200. SendClientMessage(playerid,0xFFFF00FF,"Você ganhou 3000$ por dominar a gangzone");
  201. SetTimer("DinheiroGZ",3*60*1000,false);
  202. return 1;
  203. }
  204.  
  205.  
  206.  
  207. >Explicaçao Code:
  208.  
  209. GivePlayerMoney(playerid,3000); ---> Dá o dinheiro para o Player
  210. SendClientMessage(playerid,0xFFFF00FF,"Você ganhou 3000$ por dominar a gangzone"); ---> Manda uma mensagem
  211. SetTimer("DinheiroGZ",3*60*1000,false); ---> Volta a activar o Timer para voltar a dar dinheiro ao fim de
  212.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement