Portal SAMP
[Ajuda] Como spawnar um veículo na posição do player? - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] Como spawnar um veículo na posição do player? (/showthread.php?tid=4237)



Como spawnar um veículo na posição do player? - Mkzinn_. - 25/11/2023

Eu quero spawnar um veículo, na posição que o player está, um exemplo
/Carroat e spawnar um Sultan na posição que o player que digitou o comando está.


RE: Como spawnar um veículo na posição do player? - Luiz - 25/11/2023

Código PHP:
CMD:sultan(playerid)
{
    
SendClientMessage(playerid, -1"Você spawnou um Sultan.");

    new 
Float:XFloat:YFloat:ZFloat:Avehicle;
    
GetPlayerFacingAngle(playeridFloat:A);
    
GetPlayerPos(playeridFloat:XFloat:YFloat:Z);

    
vehicle CreateVehicle(560Float:XFloat:YFloat:ZFloat:A009999);
    
PutPlayerInVehicle(playeridvehicle0);
    return 
1;




RE: Como spawnar um veículo na posição do player? - White_Blue - 25/11/2023

Basta utilizar a função GetPlayerPos para armazenar as coordenadas atuais do jogador em variáveis e criar o veículo nas coordenadas do jogador.

Exemplo:
Código PHP:
new Float:pos[4]; // Cria uma array com 4 posições para salvar as coordenadas X Y Z e R(Rotação) do jogador.
GetPlayerPos(playeridpos[0], pos[1], pos[2]); // Armazena as coordenadas X Y Z do jogador nas 3 posições da array.
GetPlayerFacingAngle(playeridpos[3]); // Armazena a rotação/ângulo do jogador na 4ª posição da array.
CreateVehicle(560pos[0], pos[1], pos[2], pos[3], -1, -1, -1); // Cria um Sultan preto sem tempo de respawn com as coordenadas e ângulo do jogador (Documentação da função CreateVehicle: https://www.open.mp/docs/scripting/functions/CreateVehicle). 



RE: Como spawnar um veículo na posição do player? - zBreno - 25/11/2023

Código:
#define VEHI_DIS 5.0

CMD:522(playerid, params[])
{
new Float:x, Float:y, Float:z, Float:a;
GetPlayerPos(playerid, x, y, z);
GetXYInFrontOfPlayer(playerid, x, y, VEHI_DIS);
GetVehicleZAngle(GetPlayerVehicleID(playerid), a);
GetPlayerFacingAngle(playerid, a);
CreateVehicle(522, x, y, z + 2.0, a + 90.0, -1, -1, -1);
return 1;
}

GetXYInFrontOfPlayer(playerid, &Float:x, &Float:y, Float:distance)
{

new Float:a;
GetPlayerPos(playerid, x, y, a);
GetPlayerFacingAngle(playerid, a);

if (GetPlayerVehicleID(playerid))
{
GetVehicleZAngle(GetPlayerVehicleID(playerid), a);
}

x += (distance * floatsin(-a, degrees));
y += (distance * floatcos(-a, degrees));
}



RE: Como spawnar um veículo na posição do player? - Mkzinn_. - 25/11/2023

(25/11/2023 19:46)White_Blue Escreveu: Basta utilizar a função GetPlayerPos para armazenar as coordenadas atuais do jogador em variáveis e criar o veículo nas coordenadas do jogador.

Exemplo:
Código PHP:
new Float:pos[4]; // Cria uma array com 4 posições para salvar as coordenadas X Y Z e R(Rotação) do jogador.
GetPlayerPos(playeridpos[0], pos[1], pos[2]); // Armazena as coordenadas X Y Z do jogador nas 3 posições da array.
GetPlayerFacingAngle(playeridpos[3]); // Armazena a rotação/ângulo do jogador na 4ª posição da array.
CreateVehicle(560pos[0], pos[1], pos[2], pos[3], -1, -1, -1); // Cria um Sultan preto sem tempo de respawn com as coordenadas de ângulo do jogador (Documentação da função CreateVehicle: https://www.open.mp/docs/scripting/functions/CreateVehicle). 
Fiz isso, porém o veículo está sendo spawnado sem combustível...


RE: Como spawnar um veículo na posição do player? - White_Blue - 25/11/2023

(25/11/2023 21:53)Mkzinn_. Escreveu:
(25/11/2023 19:46)White_Blue Escreveu: Basta utilizar a função GetPlayerPos para armazenar as coordenadas atuais do jogador em variáveis e criar o veículo nas coordenadas do jogador.

Exemplo:
Código PHP:
new Float:pos[4]; // Cria uma array com 4 posições para salvar as coordenadas X Y Z e R(Rotação) do jogador.
GetPlayerPos(playeridpos[0], pos[1], pos[2]); // Armazena as coordenadas X Y Z do jogador nas 3 posições da array.
GetPlayerFacingAngle(playeridpos[3]); // Armazena a rotação/ângulo do jogador na 4ª posição da array.
CreateVehicle(560pos[0], pos[1], pos[2], pos[3], -1, -1, -1); // Cria um Sultan preto sem tempo de respawn com as coordenadas de ângulo do jogador (Documentação da função CreateVehicle: https://www.open.mp/docs/scripting/functions/CreateVehicle). 
Fiz isso, porém o veículo está sendo spawnado sem combustível...

Aí depende do seu sistema, pois os veículos do SA-MP e do GTA San Andreas por padrão não têm combustíveis. Você pode pegar o código acima e adaptá-lo de acordo com a gamemode que está utilizando.


RE: Como spawnar um veículo na posição do player? - guigowbr - 01/12/2023

Pesquisa na sua GM se não tem nenhuma variável chamada Gás ou combustível, se tiver, declare ela para o valor para esse veículo.