[Ajuda] Criar comando /curativo para paramйdico PPC_Trucking
#1

Boa noite galera, estou aqui com mais um problema, dessa vez nгo consigo criar um comando de curar vida para apenas os paramйdicos e os admins usarem. Tentei seguir esse tutorial https://sampforum.blast.hk/showthread.php?tid=394173 e copiar o comando de outro GM mas deu Bad, sйra que alguй pode me ajudar nessa?

PS:. Se vocк me ensinar a criar ou criar o comando eu boto seu nome nos crйditos do server ^^ e no post do fуrum
Reply
#2

й sу vocк usar as variaveis de paramedicos e admins!

seria mais ou menos assim (com as minhas variaveis)

ZCMD - SSCANF
pawn Код:
CMD:curar(playerid, params[])
{
    if(PlayerInfo[playerid][pOrg] == 1 || PlayerInfo[playerid][pAdmin] >= 1) // se for da org de medico ou for um admin
    {
         SetPlayerHealth(playerid, 100);
    }
    return 1;
}
STRCMP
pawn Код:
if(strcmp(cmd, "/curar", true) == 0)
{
    if(PlayerInfo[playerid][pOrg] == 1 || PlayerInfo[playerid][pAdmin] >= 1)
    {
         SetPlayerHealth(playerid, 100);
    }
    return 1;
}

Tenta ae
Reply
#3

Nгo funcionou, tentei modificar pra ficar igual aos comandos do server mas tbm nгo foi. Ficou assim:
Quote:

COMMAND:curativo(playerid, params[])
{
SendAdminText(playerid, "/curativo", params);
if (APlayerData[playerid][LoggedIn] == true)
{
if (APlayerData[playerid][PlayerLevel] >= 1)
{
SetPlayerHealth(playerid, 100);
}

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

Ai sempre que boto da erro no comando abaixo . Aqui й o comando de reparar, vai que vcs querem ver pr ater uma ideia sei la haha
Quote:

COMMAND:reparar(playerid, params[])
{
SendAdminText(playerid, "/reparar", params);
if (APlayerData[playerid][LoggedIn] == true)
{
if (APlayerData[playerid][PlayerLevel] >= 1)
{
if(!IsPlayerInAnyVehicle(playerid))
return SendClientMessage(playerid, 0xFF0000FF, "Vocк nгo estб em um veнculo!");
RepairVehicle(GetPlayerVehicleID(playerid));
SendClientMessage(playerid, 0x00FF00FF, "Veнculo reparado!");
}
else
return 0;
}
else
return 0;
return 1;
}

Reply
#4

Quote:
Originally Posted by GhhamM
Посмотреть сообщение
Nгo funcionou, tentei modificar pra ficar igual aos comandos do server mas tbm nгo foi. Ficou assim:


Ai sempre que boto da erro no comando abaixo . Aqui й o comando de reparar, vai que vcs querem ver pr ater uma ideia sei la haha
Procure Identar seu cуdigo para ficar melhor a visualizaзгo.
pawn Код:
COMMAND:curativo(playerid, params[])
{
    SendAdminText(playerid, "/curativo", params);
    if (APlayerData[playerid][LoggedIn] == true)
    {
        if (APlayerData[playerid][PlayerLevel] >= 1)
        {
            SetPlayerHealth(playerid, 100);
        }
    }
    return 1;
}
pawn Код:
COMMAND:reparar(playerid, params[])
{
    SendAdminText(playerid, "/reparar", params);
    if (APlayerData[playerid][LoggedIn] == true)
    {
        if (APlayerData[playerid][PlayerLevel] >= 1)
        {
            if(!IsPlayerInAnyVehicle(playerid)) { return SendClientMessage(playerid, 0xFF0000FF, "Vocк nгo estб em um veнculo!"); }
            RepairVehicle(GetPlayerVehicleID(playerid));
            SendClientMessage(playerid, 0x00FF00FF, "Veнculo reparado!");
        }
        return 1;
    }
    return 1;
}
Tenta ai.
Reply
#5

pawn Код:
COMMAND:curar(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, "/curar", 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, "{808080}O Player {FFFFFF}%s{808080} Pediu Assistencia medica!", 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, "{808080}Voce pediu um assistencia medico.");
        }
        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 $2000)
                RewardPlayer(playerid, -2000, 0);
                // Let the player know he spent $2000 for auto-repair because there were no assistance players online
                SendClientMessage(playerid, 0xFFFFFFFF, "{808080}Sua vida foi recuperada por R$:2000.");
                SendClientMessage(playerid, 0xFFFFFFFF, "{808080}Porque nao tem medicos online.");
            }
        }
    }
    else
        return 0;

    // Let the server know that this was a valid command
    return 1;
}
Basta vocк substitui a variavel de reparar o veiculo pela variavel de dar vida ao player..
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)