[Ajuda] Bloquear Nitro em tal comando.
#1

exemplo quero que ninguem use o nitro ou qualquer tecla pra acionar mod cleo ou etc.. nessas corrida!!

variavel nitro

pawn Код:
forward AddNitro(playerid);
public AddNitro(playerid)
{
    if(IsPlayerInAnyVehicle(playerid))
    {
        switch(GetVehicleModel(GetPlayerVehicleID(playerid)))
        {
            case 448,461,462,463,468,471,509,510,521,522,523,581,586,449: return;
        }
        AddVehicleComponent(GetPlayerVehicleID(playerid),1010);
    }
}

comando /race

pawn Код:
CMD:race(playerid, params[])
{

        if(getCheckpointType(playerid)!=TT_START)
        {
            Msg(playerid,Vermelho,"{FFFFFF}Vocк deve estar no local de partida.");
            return 1;
        }
        if(!IsAnElegy(GetPlayerVehicleID(playerid)))
        {
            Msg(playerid, Vermelho, "Vocк deve ter um Elegy {FFFFFF}Para Iniciar essa Corrida.");
            return 1;
        }
        else
        {
            PutPlayerInVehicle(playerid, 562, 0);
            new pname[MAX_PLAYER_NAME];
            GetPlayerName(playerid, pname, MAX_PLAYER_NAME);
            format(String, sizeof(String), "{3cff00}%s {FFFFFF}Boa Sorte!!! Comeзando...", pname);
            Msg(playerid, -1, String);
            Msg(playerid, Cinza, "Para cancelar o Record Drift Digite: /Crace");
            SetCameraBehindPlayer(playerid);
            new Rand = random(1000);
            SetPlayerVirtualWorld(playerid, Rand);
            SetVehicleVirtualWorld(GetPlayerVehicleID(playerid), Rand);
            TogglePlayerControllable(playerid,0);
            Motocountdown[playerid] = 6;
            SetPlayerRaceCheckpoint(playerid,0,racecheckpoints[0][0],racecheckpoints[0][1],racecheckpoints[0][2],racecheckpoints[1][0],racecheckpoints[1][1],racecheckpoints[1][2],10);
            DisablePlayerCheckpoint(playerid);
            SetVehiclePos(GetPlayerVehicleID(playerid),-302.7141,1509.6632,75.0188);
            SetVehicleZAngle(GetPlayerVehicleID(playerid), 182.8436);
        }
        return 1;
}
obs: O PLAYER NГO PODE USAR NITRO ESTANDO NA CORRIDA...
Reply
#2

RemoveVehicleComponent
Se quer um "anti-NOS" efetivo durante toda a corrida, deve criar um timer.
Reply
#3

Quote:
Originally Posted by F1N4L
Посмотреть сообщение
RemoveVehicleComponent
Se quer um "anti-NOS" efetivo durante toda a corrida, deve criar um timer.
como eu faria ? pode por um exemplo?
Reply
#4

Quote:
Originally Posted by best95
Посмотреть сообщение
como eu faria ? pode por um exemplo?
Cara, alйm da wiki dar um exemplo de uso, neste em especнfico ainda mostra removendo o NOS...
Siga os argumentos corretamente e verб quгo fбcil й!

Quote:

RemoveVehicleComponent(vehicleid, componentid);

Reply
#5

Quote:
Originally Posted by F1N4L
Посмотреть сообщение
Cara, alйm da wiki dar um exemplo de uso, neste em especнfico ainda mostra removendo o NOS...
Siga os argumentos corretamente e verб quгo fбcil й!
eu poderia por AddNitro(playerid) = false; mais da erro.. com timer nгo consigo fazer.. nгo tem outra meneira??
Reply
#6

pawn Код:
new
EventoTimer[MAX_PLAYERS],
bool:pRace[MAX_PLAYERS]
;

cmd:lala(playerid)
{
    pRace[playerid] = true; // entrou no evento;
    EventoTimer[playerid] = SetTimerEx("AddNitro", 1000, true, "i", playerid);
    return 1;
}

/*
Final do Evento;
pRace[playerid] = false;
KillTimer(EventoTimer[playerid]);

*/


forward AddNitro(playerid);
public AddNitro(playerid){
    /* se estiver no evento */
    if(pRace[playerid] == true){
        switch(GetVehicleComponentInSlot(GetPlayerVehicleID(playerid), CARMODTYPE_NITRO))
        {

            case 1008: RemoveVehicleComponent(GetPlayerVehicleID(playerid), 1008);
            case 1009: RemoveVehicleComponent(GetPlayerVehicleID(playerid), 1009);
            case 1010: RemoveVehicleComponent(GetPlayerVehicleID(playerid), 1010);
        }
        return 1;
    }
    /* se nгo */
    if(IsPlayerInAnyVehicle(playerid))
    {

        switch(GetVehicleModel(GetPlayerVehicleID(playerid)))
        {

            case 448,461,462,463,468,471,509,510,521,522,523,581,586,449: return 0;
        }
        AddVehicleComponent(GetPlayerVehicleID(playerid),1010);
    }
    return 1;
}
Reply
#7

Quote:
Originally Posted by Whoo
Посмотреть сообщение
pawn Код:
new
EventoTimer[MAX_PLAYERS],
bool:pRace[MAX_PLAYERS]
;

cmd:lala(playerid)
{
    pRace[playerid] = true; // entrou no evento;
    EventoTimer[playerid] = SetTimerEx("AddNitro", 1000, true, "i", playerid);
    return 1;
}

/*
Final do Evento;
pRace[playerid] = false;
KillTimer(EventoTimer[playerid]);

*/


forward AddNitro(playerid);
public AddNitro(playerid){
    /* se estiver no evento */
    if(pRace[playerid] == true){
        switch(GetVehicleComponentInSlot(GetPlayerVehicleID(playerid), CARMODTYPE_NITRO))
        {

            case 1008: RemoveVehicleComponent(GetPlayerVehicleID(playerid), 1008);
            case 1009: RemoveVehicleComponent(GetPlayerVehicleID(playerid), 1009);
            case 1010: RemoveVehicleComponent(GetPlayerVehicleID(playerid), 1010);
        }
        return 1;
    }
    /* se nгo */
    if(IsPlayerInAnyVehicle(playerid))
    {

        switch(GetVehicleModel(GetPlayerVehicleID(playerid)))
        {

            case 448,461,462,463,468,471,509,510,521,522,523,581,586,449: return 0;
        }
        AddVehicleComponent(GetPlayerVehicleID(playerid),1010);
    }
    return 1;
}
funciono porem o ID 1 fica com nitro desativado. somente o ID 1
Reply
#8

se eu colocar pRace[playerid] = false; em onplayerconnect nгo resolveria?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)