Advertisement
Nyft_

Marcar veículos perto do jogador ~NYFT

May 9th, 2022 (edited)
1,794
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 2.03 KB | None | 0 0
  1. #include a_samp
  2. #include sscanf2
  3. #include streamer
  4. #include pawn.cmd
  5. #include <YSI_Coding\y_va>
  6.  
  7. static const Float:STREAM_DISTANCE = 100.0;
  8.  
  9. static bool:playerActiveStreamIn[MAX_PLAYERS];
  10. static Text3D:playerActiveStreamLabel[MAX_PLAYERS][MAX_VEHICLES];
  11.  
  12. main(){}
  13.  
  14. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  15. {
  16.     if((newkeys & KEY_YES) && !playerActiveStreamIn[playerid])
  17.     {
  18.         new label[32], Float:x, Float:y, Float:z, Float:distance;
  19.  
  20.         playerActiveStreamIn[playerid] = true;
  21.  
  22.         for(new i = (GetVehiclePoolSize() + 1); i != 0; --i) // foreach
  23.         {
  24.             GetVehiclePos(i, x, y, z);
  25.  
  26.             if((distance = GetPlayerDistanceFromPoint(playerid, x, y, z)) <= STREAM_DISTANCE)
  27.             {
  28.                 format(label, sizeof(label), "(%i) - Distância: %.1f", i, distance);
  29.                 playerActiveStreamLabel[playerid][i] = CreateDynamic3DTextLabel(label, -1, 0.0, 0.0, 0.5, STREAM_DISTANCE, .attachedvehicle = i, .playerid = playerid);
  30.             }
  31.         }
  32.     }
  33.     if((newkeys & KEY_NO) && playerActiveStreamIn[playerid])
  34.     {
  35.         playerActiveStreamIn[playerid] = false;
  36.  
  37.         for(new i = (GetVehiclePoolSize() + 1); i != 0; --i) // foreach
  38.             if(IsValidDynamic3DTextLabel(playerActiveStreamLabel[playerid][i]))
  39.                   DestroyDynamic3DTextLabel(playerActiveStreamLabel[playerid][i]);
  40.     }
  41.     return 1;
  42. }
  43.  
  44. CMD:v(playerid, params[])
  45. {
  46.     new modelid, color[2];
  47.  
  48.     if(sscanf(params, "iii", modelid, color[0], color[1]))
  49.         return SendClientMessage(playerid, -1, "* /v (modelo) (cor-1) (cor-2)");
  50.  
  51.     if(!(400 <= modelid <= 611))
  52.         return SendClientMessage(playerid, -1, "* Modelo inexistente.");
  53.  
  54.     new vehicleid, Float:x, Float:y, Float:z, Float:a;
  55.     GetPlayerPos(playerid, x, y, z);
  56.     GetPlayerFacingAngle(playerid, a);
  57.  
  58.     vehicleid = CreateVehicle(modelid, x, y, z, a, color[0], color[1], -1);
  59.     PutPlayerInVehicle(playerid, vehicleid, 0);
  60.     va_SendClientMessage(playerid, -1, "* Você criou o veículo %i com as cores %i e %i.", modelid, color[0], color[1]);
  61.     return 1;
  62. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement