Advertisement
Swit_Cj

[FS] Portão Automático SAMP 0.3z

Jul 3rd, 2014
359
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 1.73 KB | None | 0 0
  1. /*Esse portão irar abrir quando o player estiver no raio de distancia correto,
  2. e fechara quando o player sair do raio, mas se o player continuar no raio,
  3. o portão não fechara com ele perto e sim quando ele sair. Não ira ficar bugando
  4. como os portões que tem tempo para fexar sozinho, ele so fechara quando sair do
  5. raio de distancia do portão...*/
  6.  
  7. #include <a_samp>
  8. #include <streamer>
  9.  
  10. new Portao;
  11.  
  12. forward CheckGate();
  13.  
  14. public OnFilterScriptInit()
  15. {
  16.     print("\n--------------------------------------");
  17.     print("        Poratão Automatico              ");
  18.     print("--------------------------------------\n");
  19.     SetTimer("CheckGate",200,true);
  20.     Portao = CreateDynamicObject(980, posX, posY, posZ, rotX, rotY, rotZ); //object (airportgate) (1)
  21.     return 1;
  22. }
  23.  
  24. public OnFilterScriptExit()
  25. {
  26.     return 1;
  27. }
  28.  
  29. public CheckGate()
  30. {
  31.     new mygate_status;
  32.     for(new i;i<MAX_PLAYERS;i++)
  33.     {
  34.         if(IsPlayerAdmin(i))//Configure aki quem poderar passar doportão
  35.         {
  36.           if(!IsPlayerConnected(i)) continue;
  37.                            //Distancia ||
  38.           if(IsPlayerInRangeOfPoint(i, 35, posX, posY, posZ))mygate_status=1; //raio em que oportao que ira abrirar
  39.         }
  40.         if(mygate_status)MoveDynamicObject(Portao, -posX, posY, posZ, rotX, rotY, rotZ);//coordenadasdo portão Aberto
  41.         else MoveDynamicObject(Portao, posX, posY, posZ, rotX, rotY, rotZ);//coordenadasdo portão fechado
  42.     }
  43. }
  44.  
  45. #if !defined IsPlayerInRangeOfPoint
  46. stock IsPlayerInRangeOfPoint(playerid, Float:radius, Float:X, Float:Y, Float:Z)
  47. {
  48.     new Float:px,Float:py,Float:pz;
  49.     GetPlayerPos(playerid,px,py,pz);
  50.     return ( ( ((px-X)*(px-X))+((py-Y)*(py-Y))+((pz-Z)*(pz-Z)) ) >= radius*radius );
  51. }
  52. #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement