[Ajuda] Comando
#1

Eu queria que quando o player usasse esse comando ele sу pudesse usar o comando novamente depois de 1 minuto..

pawn Код:
COMMAND:mecanico(playerid, params[])
{
    // Setup local variables
    new bool:AssistOnline = false, Msg[128], Name[24];

    // Send the command to all admins so they can see it
    SendAdminText(playerid, "/mecanico", params);

    // Check if the player has logged in
    if (APlayerData[playerid][LoggedIn] == true)
    {
        // Get the player's name
        GetPlayerName(playerid, Name, sizeof(Name));
        // Preset the message that needs to be sent to assistance players
        format(Msg, 128, "{00FF00}O jogador {FFFF00}%s{00FF00} precisa de assistкncia mecвnica.", Name);

        // Check if there is at least one assistance player online
        for (new i; i < MAX_PLAYERS; i++)
        {
            // Check if this player is connected
            if (IsPlayerConnected(i))
            {
                // Check if this player is assistance class
                if (APlayerData[i][PlayerClass] == ClassAssistance)
                {
                    // Set the flag to indicate that at least one assistance player is online
                    AssistOnline = true;
                    // Send the assistance player a message to inform him who needs assistance
                    SendClientMessage(i, 0xFFFFFFFF, Msg);
                }
            }
        }

        // Check if there is at least one assistance player online
        if (AssistOnline == true)
        {
            // Set yourself as "AssistanceNeeded"
            APlayerData[playerid][AssistanceNeeded] = true;
            // Let the player know he called for assistance
            SendClientMessage(playerid, 0xFFFFFFFF, "{00FF00}Vocк acabou de pedir assistencia mecanica.");
        }
        else // No assistance is online
        {
            // Check if the player is the driver of a vehicle
            if (GetPlayerVehicleSeat(playerid) == 0)
            {
                // Fully repair the vehicle (damage value and bodywork)
                RepairVehicle(GetPlayerVehicleID(playerid));
                // Also re-fuel the vehicle
                AVehicleData[GetPlayerVehicleID(playerid)][Fuel] = MaxFuel;
                // Let the player pay for the repairs and refuel (default $700)
                RewardPlayer(playerid, -700, 0);
                // Let the player know he spent $2000 for auto-repair because there were no assistance players online
                SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Seu veнculo foi reparado e abastecido por R$700.");
                SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Nгo hа mecвnico online.");
            }
        }
    }
    else
        return 0;

    // Let the server know that this was a valid command
    return 1;
}
Reply
#2

quer uma chupeta tbm ?
Reply
#3

pawn Код:
new bool:MecLiberado[MAX_PLAYERS];

public OnPlayerConnect(playerid) MecLiberado[playerid] = false;

COMMAND:mecanico(playerid, params[])
{
    new bool:AssistOnline = false, Msg[128], Name[24];
    SendAdminText(playerid, "/mecanico", params);
    if(MecLiberado[playerid] == true) SendClientMessage(playerid, -1, "** Vocк sу pode pedir assistкncia apуs 1 minuto!");
    if (APlayerData[playerid][LoggedIn] == true)
    {
        GetPlayerName(playerid, Name, sizeof(Name));
        format(Msg, 128, "{00FF00}O jogador {FFFF00}%s{00FF00} precisa de assistкncia mecвnica.", Name);
        for (new i; i < MAX_PLAYERS; i++)
        {
            if (IsPlayerConnected(i))
            {
                if (APlayerData[i][PlayerClass] == ClassAssistance)
                {
                    AssistOnline = true;
                    SendClientMessage(i, 0xFFFFFFFF, Msg);
                }
            }
        }
        if (AssistOnline == true)
        {
            APlayerData[playerid][AssistanceNeeded] = true;
            SendClientMessage(playerid, 0xFFFFFFFF, "{00FF00}Vocк acabou de pedir assistencia mecanica.");
            MecLiberado[playerid] = true;    
            SetTimerEx("LiberarMecanico", 60000, false, "i", playerid);  
        }
        else
        {
            if (GetPlayerVehicleSeat(playerid) == 0)
            {
                RepairVehicle(GetPlayerVehicleID(playerid));
                AVehicleData[GetPlayerVehicleID(playerid)][Fuel] = MaxFuel;
                RewardPlayer(playerid, -700, 0);
                SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Seu veнculo foi reparado e abastecido por R$700.");
                SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Nгo hа mecвnico online.");
            }
        }
    }
    else return 0;
    return 1;
}

forward LiberarMecanico(playerid);
public LiberarMecanico(playerid) MecLiberado[playerid] = false;
Reply
#4

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

public OnPlayerConnect(playerid) MecLiberado[playerid] = false;

COMMAND:mecanico(playerid, params[])
{
    new bool:AssistOnline = false, Msg[128], Name[24];
    SendAdminText(playerid, "/mecanico", params);
    if(MecLiberado[playerid] == true) SendClientMessage(playerid, -1, "** Vocк sу pode pedir assistкncia apуs 1 minuto!");
    if (APlayerData[playerid][LoggedIn] == true)
    {
        GetPlayerName(playerid, Name, sizeof(Name));
        format(Msg, 128, "{00FF00}O jogador {FFFF00}%s{00FF00} precisa de assistкncia mecвnica.", Name);
        for (new i; i < MAX_PLAYERS; i++)
        {
            if (IsPlayerConnected(i))
            {
                if (APlayerData[i][PlayerClass] == ClassAssistance)
                {
                    AssistOnline = true;
                    SendClientMessage(i, 0xFFFFFFFF, Msg);
                }
            }
        }
        if (AssistOnline == true)
        {
            APlayerData[playerid][AssistanceNeeded] = true;
            SendClientMessage(playerid, 0xFFFFFFFF, "{00FF00}Vocк acabou de pedir assistencia mecanica.");
            MecLiberado[playerid] = true;    
            SetTimerEx("LiberarMecanico", 60000, false, "i", playerid);  
        }
        else
        {
            if (GetPlayerVehicleSeat(playerid) == 0)
            {
                RepairVehicle(GetPlayerVehicleID(playerid));
                AVehicleData[GetPlayerVehicleID(playerid)][Fuel] = MaxFuel;
                RewardPlayer(playerid, -700, 0);
                SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Seu veнculo foi reparado e abastecido por R$700.");
                SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Nгo hа mecвnico online.");
            }
        }
    }
    else return 0;
    return 1;
}

forward LiberarMecanico(playerid);
public LiberarMecanico(playerid) MecLiberado[playerid] = false;
Eu nгo tou conseguindo compila meu gamemode pq ta dando que nгo esta respondendo e eu nгo posso reiniciar pc agora...
Depois que eu reiniciar eu tento compila mais vlw por tentar ajudar
Reply
#5

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

public OnPlayerConnect(playerid) MecLiberado[playerid] = false;

COMMAND:mecanico(playerid, params[])
{
    new bool:AssistOnline = false, Msg[128], Name[24];
    SendAdminText(playerid, "/mecanico", params);
    if(MecLiberado[playerid] == true) SendClientMessage(playerid, -1, "** Vocк sу pode pedir assistкncia apуs 1 minuto!");
    if (APlayerData[playerid][LoggedIn] == true)
    {
        GetPlayerName(playerid, Name, sizeof(Name));
        format(Msg, 128, "{00FF00}O jogador {FFFF00}%s{00FF00} precisa de assistкncia mecвnica.", Name);
        for (new i; i < MAX_PLAYERS; i++)
        {
            if (IsPlayerConnected(i))
            {
                if (APlayerData[i][PlayerClass] == ClassAssistance)
                {
                    AssistOnline = true;
                    SendClientMessage(i, 0xFFFFFFFF, Msg);
                }
            }
        }
        if (AssistOnline == true)
        {
            APlayerData[playerid][AssistanceNeeded] = true;
            SendClientMessage(playerid, 0xFFFFFFFF, "{00FF00}Vocк acabou de pedir assistencia mecanica.");
            MecLiberado[playerid] = true;    
            SetTimerEx("LiberarMecanico", 60000, false, "i", playerid);  
        }
        else
        {
            if (GetPlayerVehicleSeat(playerid) == 0)
            {
                RepairVehicle(GetPlayerVehicleID(playerid));
                AVehicleData[GetPlayerVehicleID(playerid)][Fuel] = MaxFuel;
                RewardPlayer(playerid, -700, 0);
                SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Seu veнculo foi reparado e abastecido por R$700.");
                SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Nгo hа mecвnico online.");
            }
        }
    }
    else return 0;
    return 1;
}

forward LiberarMecanico(playerid);
public LiberarMecanico(playerid) MecLiberado[playerid] = false;
O seu nгo funfou lek.
Alguem ajuda ae?
Reply
#6

^^
pawn Код:
new pexemplo;// coloca no topo do gm
forward exemplo;//coloca no topo do GM


    if(strcmp(cmd, "/exemplo", true) == 0) // seu cmd (ONPLAYERCOMMAND...)
    {
    if(IsPlayerConnected(playerid))
        {
         if(pexemplo == 1)//aqui й que o comando ja foi utilizado e tem q esperar
                {
                    SendClientMessage(playerid,0xFFFFFFFF,"Espere 60 para usa denovo!");
                    return 1;
                }
            else
            {
        SendClientMessageToAll(0xFFFFFFFF, "Teste CMD");//aqui sera o que o comando ira fazer
        pexemplo = 1; // Vc colocarб o que definiu no TOPO do GM
        SetTimer("exemplo", 60000, 0);//6000 й o tempo para anunciar no caso 60 seg e colocamos o nome q esta no forward
        return 1;
            }
            }
        return 1;
    }
   
public exemplo() // cria essa public com o nome da forward e do settime
{
       SendClientMessageToAll(0x33FF00FF, "COMANDO EXEMPLO LIBERADO");
        pexemplo = 0;
}
Reply
#7

http://forum.sa-mp.com/showpost.php?...01&postcount=2
http://forum.sa-mp.com/showpost.php?...50&postcount=5
Reply
#8

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

public OnPlayerConnect(playerid) MecLiberado[playerid] = false;

COMMAND:mecanico(playerid, params[])
{
    new bool:AssistOnline = false, Msg[128], Name[24];
    SendAdminText(playerid, "/mecanico", params);
    if(MecLiberado[playerid] == true) SendClientMessage(playerid, -1, "** Vocк sу pode pedir assistкncia apуs 1 minuto!");
    if (APlayerData[playerid][LoggedIn] == true)
    {
        GetPlayerName(playerid, Name, sizeof(Name));
        format(Msg, 128, "{00FF00}O jogador {FFFF00}%s{00FF00} precisa de assistкncia mecвnica.", Name);
        for (new i; i < MAX_PLAYERS; i++)
        {
            if (IsPlayerConnected(i))
            {
                if (APlayerData[i][PlayerClass] == ClassAssistance)
                {
                    AssistOnline = true;
                    SendClientMessage(i, 0xFFFFFFFF, Msg);
                }
            }
        }
        if (AssistOnline == true)
        {
            APlayerData[playerid][AssistanceNeeded] = true;
            SendClientMessage(playerid, 0xFFFFFFFF, "{00FF00}Vocк acabou de pedir assistencia mecanica.");
            MecLiberado[playerid] = true;    
            SetTimerEx("LiberarMecanico", 60000, false, "i", playerid);  
        }
        else
        {
            if (GetPlayerVehicleSeat(playerid) == 0)
            {
                RepairVehicle(GetPlayerVehicleID(playerid));
                AVehicleData[GetPlayerVehicleID(playerid)][Fuel] = MaxFuel;
                RewardPlayer(playerid, -700, 0);
                SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Seu veнculo foi reparado e abastecido por R$700.");
                SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Nгo hа mecвnico online.");
            }
        }
    }
    else return 0;
    return 1;
}

forward LiberarMecanico(playerid);
public LiberarMecanico(playerid) MecLiberado[playerid] = false;
Onde eu coloco essas duas ultimas linhas:
pawn Код:
forward LiberarMecanico(playerid);
public LiberarMecanico(playerid) MecLiberado[playerid] = false;
Alguem ajuda?
Reply
#9

Quote:
Originally Posted by ThiagoMK
Посмотреть сообщение
Onde eu coloco essas duas ultimas linhas:
pawn Код:
forward LiberarMecanico(playerid);
public LiberarMecanico(playerid) MecLiberado[playerid] = false;
Alguem ajuda?
Coloque a {forward LiberarMecanico} abaixo das defines do deu gm.
public LiberarMecanico coloque ela abaixo do comando,. Se nгo der coloque ela fora de uma callback
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)