SA-MP Forums Archive
[Ajuda] Verificar se jб tem motorista no carro - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Verificar se jб tem motorista no carro (/showthread.php?tid=663998)



Verificar se jб tem motorista no carro - SmokeKiLL - 16.02.2019

Como eu verifico em OnPlayerEnterVehicle se tem motorista jб? Para o player nгo pode entrar


Re: Verificar se jб tem motorista no carro - willttoonn - 16.02.2019

Faзa um loop nos jogadores online e verifique se algum jogador estб dentro do veнculo, caso sim, verifique se ele й o motorista. Use GetPlayerState para pegar se ele estб como motorista usando o valor PLAYER_STATE_DRIVER.


Re: Verificar se jб tem motorista no carro - wearLy - 17.02.2019

PHP код:
public OnPlayerEnterVehicle(playeridvehicleidispassenger)
{
    if (
VeiculoOcupado(vehicleid)) {

        new 
Float:Pos[4];

        
GetPlayerPos(playeridPos[0], Pos[1], Pos[2]);
        
SetPlayerPos(playeridPos[0], Pos[1], Pos[2]);

        return 
SendClientMessage(playerid, -1"Este veнculo estб ocupado.");
    }
    return 
1;
}

stock VeiculoOcupado(vehicleid)
{
    for(new 
i!= MAX_PLAYERS; ++i) {
        if (
GetPlayerVehicleID(i) == vehicleid && GetPlayerState(i) == PLAYER_STATE_DRIVER) return true;
    }
    return 
false;

Uma base par vocк, usando dessa forma vai evitar do player entrar no veнculo caso tenha um motorista.


Re: Verificar se jб tem motorista no carro - SmokeKiLL - 18.02.2019

Quote:
Originally Posted by wearLy
Посмотреть сообщение
PHP код:
public OnPlayerEnterVehicle(playeridvehicleidispassenger)
{
    if (
VeiculoOcupado(vehicleid)) {
        new 
Float:Pos[4];
        
GetPlayerPos(playeridPos[0], Pos[1], Pos[2]);
        
SetPlayerPos(playeridPos[0], Pos[1], Pos[2]);
        return 
SendClientMessage(playerid, -1"Este veнculo estб ocupado.");
    }
    return 
1;
}
stock VeiculoOcupado(vehicleid)
{
    for(new 
i!= MAX_PLAYERS; ++i) {
        if (
GetPlayerVehicleID(i) == vehicleid && GetPlayerState(i) == PLAYER_STATE_DRIVER) return true;
    }
    return 
false;

Uma base par vocк, usando dessa forma vai evitar do player entrar no veнculo caso tenha um motorista.
Mas isso ai nгo pode da merda nгo? Tipo... se um monte de gente tentar entrar em um carro, nгo precisa ser nem no mesmo carro... isso ai nгo pode largar o servidor? Ou atй mesmo cair? Ou estou errado?


Re: Verificar se jб tem motorista no carro - ipsLuan - 18.02.2019

Quote:
Originally Posted by SmokeKiLL
Посмотреть сообщение
Mas isso ai nгo pode da merda nгo? Tipo... se um monte de gente tentar entrar em um carro, nгo precisa ser nem no mesmo carro... isso ai nгo pode largar o servidor? Ou atй mesmo cair? Ou estou errado?
Tб errado.


Re: Verificar se jб tem motorista no carro - SmokeKiLL - 18.02.2019

Eu estava esperando uma explicaзгo, mas ok...


Re: Verificar se jб tem motorista no carro - ipsLuan - 18.02.2019

Jб que soube pedir, vou explicar...
Nгo irб lentar e nem fazer cair o servidor por um motivo: O cуdigo й simples, nгo demanda muito dos recursos do servidor, visto que nгo irб ter mais de 50 pessoas tentando entrar em um ъnico carro.

Porйm, caso ainda nгo se sinta seguro quanto a isso, vocк pode fazer da seguinte forma: Quando o veнculo estiver cheio, vocк 'fecha as portas'. Sendo assim, o jogador nгo irб realizar a aзгo de entrar no veнculo.

Ou entгo, use um timer pra bloquear o jogador de entrar no vehicleid a cada 10 segundos (um exemplo).


Re: Verificar se jб tem motorista no carro - SmokeKiLL - 18.02.2019

Hum... Entendi, vlw.