[Ajuda]Salario Org
#1

Eu estou adptando esse sistema ao meu gm, mais eu gostaria que quando o lider desse /liberarpagamento ele liberasse automaticamente para os membros da org. E tambйm o lider poderia modificar o valor do pagamento.
Defines:

#define SALARIO_CARGO1 1000 //Valor Inicial
#define SALARIO_CARGO2 2000 //Valor Inicial
#define SALARIO_CARGO3 3000 //Valor Inicial
#define SALARIO_CARGO4 4000 //Valor Inicial
#define SALARIO_CARGO5 5000 //Valor Inicial

Comando:

pawn Код:
if(strcmp(cmd, "/pagamento", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            PassadoUmDia = 0;
            SendClientMessage(playerid, 0x33CCFFAA, "Vocк liberou o salбrio dos Membros da Org.");
            for(new playerid = 0; playerid < MAX_PLAYERS; playerid++)
            {
                if(PlayerInfo[playerid][pRecebeuSalario] != char)
                {
                    PlayerInfo[playerid][pRecebeuSalario] = char;
                }
            }
        }
        return 1;
    }
Reply
#2

Se vocк quer alterar, й melhor usar new, em vez de define.

Ex:
pawn Код:
new Salario[5] = {1000, 2000, 3000, 4000, 5000}; // Quantidade de cargos

//Comando
GivePlayerMoney(ID,Salario[CARGO_DO_JOGADOR]);
Reply
#3

mais tipo como faзo para que este salario seja setado somente para a org do lider?
Reply
#4

Qual a variбvel de Org, Lider e Cargo?
Reply
#5

Fiz da forma mais simples que consegui.
Nada optimizado
PS: Nao costumo usar strcmp + strtok por isso pode ter alguns erros no /editarsalario

pawn Код:
new SalarioCargo1 = 1000,
    SalarioCargo2 = 2000,
    SalarioCargo3 = 3000,
    SalarioCargo4 = 4000,
    SalarioCargo5 = 5000
;

if(!strcmp(cmd,"/pagamento",true))
{
    PassadoUmDia = 0;
    SendClientMessage(playerid, 0x33CCFFAA, "Vocк liberou o salбrio dos Membros da Org.");
    for(new xxx = 0; xxx < MAX_PLAYERS; xxx++)
    {
        if(IsPlayerConnected(xxx) && PlayerInfo[xxx][pRecebeuSalario] != char)
        {
            PlayerInfo[xxx][pRecebeuSalario] = char;
        }
        if(IsPlayerConnected(xxx) && PlayerInfo[xxx][pCargo] == 1)
        {
            GivePlayerMoney(xxx, SalarioCargo1);
        }
        if(IsPlayerConnected(xxx) && PlayerInfo[xxx][pCargo] == 2)
        {
            GivePlayerMoney(xxx, SalarioCargo2);
        }
        if(IsPlayerConnected(xxx) && PlayerInfo[xxx][pCargo] == 3)
        {
            GivePlayerMoney(xxx, SalarioCargo3);
        }
        if(IsPlayerConnected(xxx) && PlayerInfo[xxx][pCargo] == 4)
        {
            GivePlayerMoney(xxx, SalarioCargo4);
        }
        if(IsPlayerConnected(xxx) && PlayerInfo[xxx][pCargo] == 5)
        {
            GivePlayerMoney(xxx, SalarioCargo5);
        }
    }
    return true;
}

if(!strcmp(cmd,"/editarsalario",true))
{
    new tmp[50], Salario[10];
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp)) return SendClientMessage(playerid,-1,"Use /editarsalario [Cargo(1-5)][Salario]");
    Salario = strtok(cmdtext, idx);
    if(!strlen(Salario)) return SendClientMessage(playerid,-1,"Use /editarsalario [Cargo(1-5)][Salario]");
    if(tmp == 1) SalarioCargo1 = Salario;
    if(tmp == 2) SalarioCargo2 = Salario;
    if(tmp == 3) SalarioCargo3 = Salario;
    if(tmp == 4) SalarioCargo4 = Salario;
    if(tmp == 5) SalarioCargo5 = Salario;
    SendClientMessage(playerid,-1,"Salario editado.");
    return true;
}
Reply
#6

variavel de lider: pLider.
variavel de Cargo: pCargo.
variavel de Cargo: pMembro.

meu gm ele й estilo BMG. entao tu deve saber os da org.
Reply
#7

Ta ae :
pawn Код:
if(strcmp(cmd, "/pagamento", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            PassadoUmDia = 0;
            SendClientMessage(playerid, 0x33CCFFAA, "Vocк liberou o salбrio dos Membros da Org.");
            for(new i; i < i; i++)
            {
                if(PlayerInfo[i][pRecebeuSalario] != char)
                {
                    if(PlayerInfo[i][pMembro] == PlayerInfo[playerid][pMembro] || PlayerInfo[i][pLider]])
                    {
                        PlayerInfo[i][pRecebeuSalario] = char;
                    }
                }
            }
        }
        return 1;
    }
Reply
#8

pawn Код:
new Salario[10][5] = { // 10 = Nъmero de orgs
{1000, 2000, 3000, 4000, 5000} // Salбrios da org 1
{1000, 2000, 3000, 4000, 5000} // Salбrios da org 2
{1000, 2000, 3000, 4000, 5000} // Salбrios da org 3
{1000, 2000, 3000, 4000, 5000} // Salбrios da org 4
{1000, 2000, 3000, 4000, 5000} // Salбrios da org 5
{1000, 2000, 3000, 4000, 5000} // Salбrios da org 6
{1000, 2000, 3000, 4000, 5000} // Salбrios da org 7
{1000, 2000, 3000, 4000, 5000} // Salбrios da org 8
{1000, 2000, 3000, 4000, 5000} // Salбrios da org 9
{1000, 2000, 3000, 4000, 5000} // Salбrios da org 10
};


if(strcmp(cmd, "/pagamento", true) == 0)
{
    SendClientMessage(playerid, 0x33CCFFAA, "Vocк liberou o salбrio dos Membros da Org.");
    for(new i, j = GetMaxPlayers(); i != j; i++)
        if(IsPlayerConnected(i))
            if(PlayerInfo[playerid][pLider] == PlayerInfo[i][pMembro])
            {
                SendClientMessage(i,-1,"Seu lнder liberou o pagamento.");
                GivePlayerMoney(i,Salario[PlayerInfo[i][pMembro]-1][PlayerInfo[i][pCargo]-1]);
            }

    return 1;
}
Reply
#9

vini como faзo para definir o pagamento.
Reply
#10

Como assim?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)