SA-MP Forums Archive
[Ajuda] Serб que estб funcionando corretamente? (Sistema de gasolina) - 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] Serб que estб funcionando corretamente? (Sistema de gasolina) (/showthread.php?tid=533315)



Serб que estб funcionando corretamente? (Sistema de gasolina) - Duun - 23.08.2014

Entгo galera, to terminando o sistema de gasolina do meu servidor, e , ele й assim :
Quando o player entra no carro, dispara um time que vai ir diminuindo a gasolina do carro aos poucos. Porйm, eu percebi que estava muito padronizado, ou seja a gasolina descia num tempo muito certinho, coisa que nгo й assim na vida real. Entгo, pra "despadrozinar" a queima do combustнvel, eu criei uma engine random, se cair 1 queima a gasolina, se der 0, acontece nada.

Sу que nгo sei se ta funcionando.
Queria que vocкs dessem olha olhada pra ver se funciona isso que eu fiz:

pawn Код:
new RandomCase[] =
{
    10,
    01,
    10
};
tem trкs chances de sucesso e trкs de fracasso /\


pawn Код:
public Combustivel(vehicleid, playerid)
{
    if(GetPlayerState(playerid == PLAYER_STATE_DRIVER))
    {
        new a, b, c, d, e, f, g;
        GetVehicleParamsEx(vehicleid, a, b, c, d, e, f, g);

        if(a)
        {
            new Random = random(sizeof(RandomCase)); // isso seria pra "sortear" a chance
            if ( RandomCase[Random] == 0) return 0; // se der 0 й igual a fracasso e o combustнvel nгo queimarб

            else // se der 1 queima a gasolina
            {
                Gasolina[vehicleid] --;
                if(Gasolina[vehicleid] == 0)
                {
                    SetVehicleParamsEx(vehicleid, false, b, c, d, e, f, g);
                    SetTimerEx("EndText", 8000, false, "i", playerid);
                    TextDrawShowForPlayer(playerid, Fuel[2]);
                    TextDrawShowForPlayer(playerid, Fuel[3]);
                }
            }
        }
    }
    return 1;
}
queria saber se esse mйtodo estб certo e se funcionarб
obs: essa public Combustivel й chamada a cada 4.5 segundos. ( ou seja ela estб constantemente em atualizaзгo )


Eu estou testando esse sistema, e aparentemente estб funcionando.
A gasolina nгo estб mais sendo queimada de forma padronizada !
Comentem ai


Re: serб que estб funcionando corretamente ? - Pocahontas - 23.08.2014

Seria melhor fazer um simples calculo de distancia, para gastar 1 litro de gasolina a cada quantidade x de metros.
Nгo й muito complicado, mas acredito que seu script esteja correto.