Portal SAMP
[Ajuda] Ajuda com OnPlayerEnterVehicle - 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] Ajuda com OnPlayerEnterVehicle (/showthread.php?tid=4780)



Ajuda com OnPlayerEnterVehicle - Alfarr Heimrik - 25/05/2024

Olá. Eu estou com uma ideia, mas não tenho ideia de como usar a função OnPlayerEnterVehicle, por isso gostaria da ajuda dos senhores.

Minha ideia é fazer com que o SetPlayerCheckpoint inicie em OnPlayerEnterVehicle. Porque se continuar do jeito que está,
basta que o player pegue quaquer outro veiculo e vá ate o destino para completar a rota e ganhar o dinheiro.
Como eu faço para que o jogador só consiga iniciar o trabalho estando montado no veiculo da profissão?
Atualmente o jogador precisa escolher a rota estando fora do veiculo ( Escolha minha )
Código PHP:
if(dialogid == Dialog_RotasT)
    {
    
    if(response)
    
    {
    
        if(listitem == 0)
    
        {
                if(
Trabalhando[playerid] == false) return SendClientMessage(playerid, -1"{CFCFCF}||{FF0000}ERRO{CFCFCF}|| Voce nao bateu ponto (Cartao), portanto nao podera iniciar nenhuma rota, nem solicitar a saida de nenyum veiculo.");
                if(
CCarregado[playerid] == true) return SendClientMessage(playerid, -1"{CFCFCF}||{FF0000}ERRO{CFCFCF}|| Voce ja solicitou uma viagem. Conclua a atual para solicitar mais uma.");
                if(
CaminhaoTransportador[playerid] == 0) return SendClientMessage(playerid, -1"{CFCFCF}||{FF0000}ERRO{CFCFCF}|| Voce ainda nao solicitou um veiculo.");
                
CCarregado[playerid] = true;
                
SendClientMessage(playerid, -1"{CFCFCF}||{00FF00}K{CFCFCF}|| Rota (Medicamentos HPC - LS > SF) iniciada.");
                
SendClientMessage(playerid, -1"{CFCFCF}||{00FF00}K{CFCFCF}|| Suba em seu caminhao e va ate o destino.");
                
SetPlayerCheckpoint(playerid, -2645.0540559.756714.46093.0);
    
        }
    
    }
    } 



RE: Ajuda com OnPlayerEnterVehicle - BitSain - 25/05/2024

Pra fazer que o PJ inicie a rota estando no veículo da profissão:

Código PHP:
public OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    if(dialogid == Dialog_RotasT)
    {
        if(response)
        {
            if(listitem == 0)
            {
                // Verifica se o jogador está dentro do veículo correto
                if(GetPlayerVehicleID(playerid) == CaminhaoTransportador[playerid])
                {
                    // Coloque aqui o código para iniciar a rota
                    CCarregado[playerid] = true;
                    SendClientMessage(playerid, -1"{CFCFCF}||{00FF00}K{CFCFCF}|| Rota (Medicamentos HPC - LS > SF) iniciada.");
                    SendClientMessage(playerid, -1"{CFCFCF}||{00FF00}K{CFCFCF}|| Suba em seu caminhao e va ate o destino.");
                    SetPlayerCheckpoint(playerid, -2645.0540559.756714.46093.0);
                }
                else
                {
                    SendClientMessage(playerid, -1"{CFCFCF}||{FF0000}ERRO{CFCFCF}|| Voce precisa estar dentro do veiculo correto para iniciar esta rota.");
                }
            }
        }
    }




RE: Ajuda com OnPlayerEnterVehicle - samuelmatheus0502 - 26/05/2024

Onde está o código de criação do veículo? você irá precisar da variável dele, aí você faria uma verificação no onplayerentervehicle exemplo: if(CCarregado[playerid] == true && vehicleid == veiculodaprof) aí executa seu comando.

Se você fornecer seu código de criação do veículo será mais fácil de ajudar