Portal SAMP
[Ajuda] Bug de carros bugando com outros empregos/corp/org - 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] Bug de carros bugando com outros empregos/corp/org (/showthread.php?tid=1749)



Bug de carros bugando com outros empregos/corp/org - [JEFERSON_GAMES] - 20/10/2021

Bom eu tava arrumando a minha GM, faz tempo aí quando fui testa empregos descobri que alguns carros, exemplo de taxista da mensagem dizendo que e de uma cop aí quando dou RC aquele bug volta ao normal e funciona normalmente, não sei se e normal ou APK mas e uma coisa bastante chata, se alguém sabe o motivo agradeço


RE: Bug de carros bugando com outros empregos/corp/org - enige - 20/10/2021

Parece que de alguma forma os IDS dos veículos da sua gamemode estão se embaralhando. Pode colocar o código referente ao spawn dos veículos e checagem dos mesmos?


RE: Bug de carros bugando com outros empregos/corp/org - SrBlue - 20/10/2021

opa, bem provavel você fez alguma alteração na criação de veiculos na ongamemodeinit, e esqueceu de alterar os ids dos futuros veiculos.

normalmente os ids do veiculo segue ordem linear exemplo:
CreateVehicle(...,...,..) // id 0
CreateVehicle(...,...,..) // id 1
CreateVehicle(...,...,..) // id 2
.
.
.
.
.
.
CreateVehicle(...,...,..) // id 257,

na sua gm bem provavel possui alguma stock ou alguma public com verificação exemplo:
stock isACarX(carid){
if(carid > xxx && carid < xx)..... return 1.
else return 0...
}


RE: Bug de carros bugando com outros empregos/corp/org - [JEFERSON_GAMES] - 21/10/2021

Bom todas as verificacoes estão assim

public IsAGICar(carid)
{
if((carid >= 97) && (carid <= 114))
{
return true;
}
return 0;
}

E claro que id e nome muda mas o resto e igual


RE: Bug de carros bugando com outros empregos/corp/org - k2bi_YT - 21/10/2021

(21/10/2021 00:19)[JEFERSON_GAMES] Escreveu: Bom todas as verificacoes estão assim

public IsAGICar(carid)
{
if((carid >= 97) && (carid <= 114))
{
return true;
}
return 0;
}

E claro que id e nome muda mas o resto e igual

Essa função não está "completa", isso pode ocasionar varios problemas.

Exemplo.

Dependendo de quais carros, ao  iniciar a gamemode, são criados primeiros, se os carros pertencente a função IsAGICar, não forem entre o ID 97 e 114, irá ocasionar problemas/conflitos, desde não sendo o modelo do veículo para essa Org/Emprego dentre outros..

Um métodos mais "correto" de ser feito é o seguinte:
Código PHP:
//Primeiro criaremos a variavel que ira ser definida os veiculos de cada org/emprego

new VehPoliciaMilitar[MAX_VEHICLES];//Não é necessario ser MAX_VEHICLES, apenas o suficiente para a quantia desejada de veículos que queira.


//Feito isso, iremos criar o veículo;

public OnGameModeInit()
{
    VehPoliciaMilitar[0] = CreateVehicle(....);
    VehPoliciaMilitar[1] = CreateVehicle(....);
    VehPoliciaMilitar[2] = CreateVehicle(....);
    VehPoliciaMilitar[3] = CreateVehicle(....);
    VehPoliciaMilitar[4] = CreateVehicle(....);
    VehPoliciaMilitar[5] = CreateVehicle(....);
    return ;
}

//Iremos criar uma função para checar se o veiculo que o jogador está faz parte da variavel VehPoliciaMilitar

IsAPMCar(vehicleid)
{
    if(IsPlayerInVehicle(playeridVehPoliciaMilitar[vehicleid])) 
        return SendClientMessage(playerid, -1"Você entrou no veiculo da Policia Militar.");
    return 0;


Claro que pode ser feito uma checagem mais optimizada conforme o jeito que você quer usar, mas isso é como base.


RE: Bug de carros bugando com outros empregos/corp/org - [JEFERSON_GAMES] - 22/10/2021

Essa função não está "completa", isso pode ocasionar varios problemas.

Exemplo.

Dependendo de quais carros, ao  iniciar a gamemode, são criados primeiros, se os carros pertencente a função IsAGICar, não forem entre o ID 97 e 114, irá ocasionar problemas/conflitos, desde não sendo o modelo do veículo para essa Org/Emprego dentre outros..

Um métodos mais "correto" de ser feito é o seguinte:
Código PHP:
//Primeiro criaremos a variavel que ira ser definida os veiculos de cada org/emprego

new VehPoliciaMilitar[MAX_VEHICLES];//Não é necessario ser MAX_VEHICLES, apenas o suficiente para a quantia desejada de veículos que queira.


//Feito isso, iremos criar o veículo;

public OnGameModeInit()
{
    VehPoliciaMilitar[0] = CreateVehicle(....);
    VehPoliciaMilitar[1] = CreateVehicle(....);
    VehPoliciaMilitar[2] = CreateVehicle(....);
    VehPoliciaMilitar[3] = CreateVehicle(....);
    VehPoliciaMilitar[4] = CreateVehicle(....);
    VehPoliciaMilitar[5] = CreateVehicle(....);
    return ;
}

//Iremos criar uma função para checar se o veiculo que o jogador está faz parte da variavel VehPoliciaMilitar

IsAPMCar(vehicleid)
{
    if(IsPlayerInVehicle(playeridVehPoliciaMilitar[vehicleid])) 
        return SendClientMessage(playerid, -1"Você entrou no veiculo da Policia Militar.");
    return 0;


Claro que pode ser feito uma checagem mais optimizada conforme o jeito que você quer usar, mas isso é como base.
[/quote]


---------------------------------------------------------------------------------------------------------------


Bom em uma GM antiga minha a verificação era deste tipo mas estava acontecendo o mesmo bug ou erro! Aí fiz por id e bug parou mas quando estava mais de 4 player on no serve aí bugo


RE: Bug de carros bugando com outros empregos/corp/org - [JEFERSON_GAMES] - 14/09/2022

Quero dizer que faz alguns meses que descobri o motivo do bug e já está arrumado, muito obrigado a todos que me ajudo de verdade.