SA-MP Forums Archive
[Pedido] Comando ligar 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: [Pedido] Comando ligar carro! (/showthread.php?tid=405270)



Comando ligar carro! - Kasura - 06.01.2013

Como seria uma funзгo que quando o player entrar no carro o motor ficar desligado e sу ligar se a pessoa digitar /ligar?


Re: Comando ligar carro! - Larceny - 06.01.2013

ManualVehicleEngineAndLights();

Uma funзгo que pode lhe ser ъtil:
pawn Код:
// Funзгo para ligar/desligar motor de um veнculo
stock SetVehicleEngineState(vid, setstate)
{
     new engine,lights,alarm,doors,bonnet,boot,objective;
     GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
     if(setstate) SetVehicleParamsEx(vid,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
     else SetVehicleParamsEx(vid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
}
Retirada do vehicleutil.inc.


Re: Comando ligar carro! - Joao Pedro - 06.01.2013

OuOOoOoo um Deviling *-*


Re: Comando ligar carro! - Jefferson Santos - 07.01.2013

Toma ae cara...


pawn Код:
//Topo GM
new LigadoDesligado2[MAX_VEHICLES] = 0;
new motor[MAX_PLAYERS];

//OnPlayerCommandText
if(strcmp("/chavecarro",cmdtext,true,6)==0)
    {
        if(!IsPlayerInAnyVehicle(playerid))
        {
            SendClientMessage(playerid,0x33FF00FF,"Vocк precisa estar em um veнculo!");
            return 1;
        }
        new mot, lu, alar, por, cap, porma, ob;
        new carro = GetPlayerVehicleID(playerid);

        if(LigadoDesligado2[vid] == 0)
        {
            motor[playerid] = 0;
        }
        if(carro != INVALID_VEHICLE_ID)
        {
            if(motor[playerid] == 0)
            {
                GetVehicleParamsEx(carro, mot, lu, alar, por, cap, porma, ob);
                SetVehicleParamsEx(carro, VEHICLE_PARAMS_ON, lu, alar, por, cap, porma, ob);
                motor[playerid] = 1;
                LigadoDesligado2[carro] = 1;
                SendClientMessage(playerid, 0x33FF00FF, "Veiculo ligado");
            }
            else
            {
                GetVehicleParamsEx(carro, mot, lu, alar, por, cap, porma, ob);
                SetVehicleParamsEx(carro, VEHICLE_PARAMS_OFF, lu, alar, por, cap, porma, ob);
                motor[playerid] = 0;
                LigadoDesligado2[carro] = 0;
                SendClientMessage(playerid, 0x33FF00FF, "Veiculo desligado");
            }
        }
        return 1;
    }
   
//Fim
forward LigadoDesligado(carid);

stock LigadoDesligado(carid)
{
    new txt[20];
    if(LigadoDesligado2[carid] == 0)
    {
        format(txt, sizeof(txt),"~r~Desligado");
    }
    else if(LigadoDesligado2[carid] == 1)
    {
        format(txt, sizeof(txt),"Ligado");
    }
    return txt;
}



Re: Comando ligar carro! - TreePuncher - 07.01.2013

@krayvhusfrom

Pra que usar uma forward, isso dali deveria ser usado para publics...


Re: Comando ligar carro! - LuxuN - 07.01.2013

Quote:
Originally Posted by krayvhusfrom
Посмотреть сообщение
Toma ae cara...


pawn Код:
//Topo GM
new LigadoDesligado2[MAX_VEHICLES] = 0;
new motor[MAX_PLAYERS];

//OnPlayerCommandText
if(strcmp("/chavecarro",cmdtext,true,6)==0)
    {
        if(!IsPlayerInAnyVehicle(playerid))
        {
            SendClientMessage(playerid,0x33FF00FF,"Vocк precisa estar em um veнculo!");
            return 1;
        }
        new mot, lu, alar, por, cap, porma, ob;
        new carro = GetPlayerVehicleID(playerid);

        if(LigadoDesligado2[vid] == 0)
        {
            motor[playerid] = 0;
        }
        if(carro != INVALID_VEHICLE_ID)
        {
            if(motor[playerid] == 0)
            {
                GetVehicleParamsEx(carro, mot, lu, alar, por, cap, porma, ob);
                SetVehicleParamsEx(carro, VEHICLE_PARAMS_ON, lu, alar, por, cap, porma, ob);
                motor[playerid] = 1;
                LigadoDesligado2[carro] = 1;
                SendClientMessage(playerid, 0x33FF00FF, "Veiculo ligado");
            }
            else
            {
                GetVehicleParamsEx(carro, mot, lu, alar, por, cap, porma, ob);
                SetVehicleParamsEx(carro, VEHICLE_PARAMS_OFF, lu, alar, por, cap, porma, ob);
                motor[playerid] = 0;
                LigadoDesligado2[carro] = 0;
                SendClientMessage(playerid, 0x33FF00FF, "Veiculo desligado");
            }
        }
        return 1;
    }
   
//Fim
forward LigadoDesligado(carid);

stock LigadoDesligado(carid)
{
    new txt[20];
    if(LigadoDesligado2[carid] == 0)
    {
        format(txt, sizeof(txt),"~r~Desligado");
    }
    else if(LigadoDesligado2[carid] == 1)
    {
        format(txt, sizeof(txt),"Ligado");
    }
    return txt;
}
alйm da forward inutil ali
nгo funcionavel!


Re: Comando ligar carro! - VenoN - 07.01.2013

Quote:
Originally Posted by Larceny
Посмотреть сообщение
ManualVehicleEngineAndLights();

Uma funзгo que pode lhe ser ъtil:
pawn Код:
// Funзгo para ligar/desligar motor de um veнculo
stock SetVehicleEngineState(vid, setstate)
{
     new engine,lights,alarm,doors,bonnet,boot,objective;
     GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
     if(setstate) SetVehicleParamsEx(vid,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
     else SetVehicleParamsEx(vid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
}
Retirada do vehicleutil.inc.
como usaria isso?


Re: Comando ligar carro! - Larceny - 07.01.2013

Quote:
Originally Posted by Alex_Kidds
Посмотреть сообщение
como usaria isso?
pawn Код:
stock SetVehicleEngineState(vid, setstate)
{
     new engine,lights,alarm,doors,bonnet,boot,objective;
     GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
     if(setstate) SetVehicleParamsEx(vid,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
     else SetVehicleParamsEx(vid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
}

CMD:ligarmotor(playerid, params[])
{
    if(!IsPlayerInAnyVehicle(playerid))
        return SendClientMessage(playerid, -1, "* Vocк nгo estб em um veнculo.");

    SetVehicleEngineState(GetPlayerVehicleID(playerid), 1);
    SendClientMessage(playerid, -1, "* Vocк ligou o motor do veнculo.");
    return 1;
}

CMD:desligarmotor(playerid, params[])
{
    if(!IsPlayerInAnyVehicle(playerid))
        return SendClientMessage(playerid, -1, "* Vocк nгo estб em um veнculo.");

    SetVehicleEngineState(GetPlayerVehicleID(playerid), 0);
    SendClientMessage(playerid, -1, "* Vocк desligou o motor do veнculo.");
    return 1;
}