[Ajuda] Pagamento
#1

Olб.

Bom estou criando um pagamento de gangzone, eu ja fiz tudo normal pб
so que a mensagem + dinheiro acabam floodando.

OLhem o codigo
pawn Код:
// Em OnPlayerConnect:

SetTimerEx("PagamentoAtual", 12000, true, "d", playerid);

// Public
forward PagamentoAtual();
public PagamentoAtual()
{
for (new b = 0; b != MAX_PLAYERS; b++)
{
if(LiderdaGang == GetPlayerColor(b))
{
if(IsPlayerConnected(b))
{
SendClientMessage(b,-1,"Voce ganhou 300 real por manter gangzones dominada");            
GivePlayerMoney(b,300);
}
}
return 1;
}
Eu quero que a cada 2 minutos ganhe dinheiro
Reply
#2

Nгo entendi,se vocк melhora-se o portuguкs.
Abraзos.

pawn Код:
// Em OnPlayerConnect:

SetTimerEx("PagamentoAtual", 120000, true, "d", playerid); // 120000 = 2 Minutos

// Public
forward PagamentoAtual();
public PagamentoAtual()
{
for (new b = 0; b != MAX_PLAYERS; b++)
{
if(LiderdaGang == GetPlayerColor(b))
{
if(IsPlayerConnected(b))
{
SendClientMessage(b,-1,"Voce ganhou 300 real por manter gangzones dominada");            
GivePlayerMoney(b,300);
}
}
return 1;
}
Reply
#3

AFF.
Olha nao adiantou Victor.

ERRO : Esta funcionando o codigo certo. So que em vez de mandar a mensagem e o dinheiro a cada 2 minutos, esta floodando, tipo eu recebo 1 pagamento agora dai 5 seg recebo outro.

Nгo e erro de tempo.
Reply
#4

pawn Код:
// Em OnPlayerConnect:

SetTimerEx("PagamentoAtual", 120000, true, "d", playerid); // 120000 = 2 Minutos
SetTimerEx("TempoAtual", 120000, true, "d", playerid); // 120000 = 2 Minutos

// Public
forward TempoAtual();
public TempoAtual();
{
for (new b = 0; b != MAX_PLAYERS; b++)
GivePlayerMoney(b, 300);
return 1;
}
forward PagamentoAtual();
public PagamentoAtual()
{
for (new b = 0; b != MAX_PLAYERS; b++)
{
if(LiderdaGang == GetPlayerColor(b))
{
if(IsPlayerConnected(b))
{
SendClientMessage(b,-1,"Voce ganhou 300 real por manter gangzones dominada");            
TempoAtual(playerid);
}
}
return 1;
}
Reply
#5

Nao deu. Fica floodando ainda mesma coisa
Reply
#6

So tirar o
pawn Код:
SendClientMessage(b,-1,"Voce ganhou 300 real por manter gangzones dominada");
E Bota na public TempoAtual
Reply
#7

Vocк nгo entendeu.


- O Cara ganha dinheiro normal so que depois de uns 5 segundos ganha denovo. ISSO SO ACONTEЗE QUANDO TEM 2 PLAYERS + ONLINE. Sozinho ganha normal
Reply
#8

Tenta mudar "b" por "playerid"
Reply
#9

Tente:
pawn Код:
// Em OnPlayerConnect:

SetTimerEx("PagamentoAtual", 2*1000*60, true, "i", playerid);

// Public
forward PagamentoAtual();
public PagamentoAtual()
{
for (new b; b < MAX_PLAYERS; b++)
{
if(LiderdaGang == GetPlayerColor(b))
{
if(!IsPlayerConnected(b))
{
SendClientMessage(b,-1,"Voce ganhou 300 real por manter gangzones dominada");
GivePlayerMoney(b,300);
}
}
return 1;
}
Reply
#10

pawn Код:
SetTimerEx("PagamentoAtual", (1000 * (60)) * 2, true, "d", playerid);

// Public
forward PagamentoAtual();
public PagamentoAtual()
{
    for(new i, e = GetMaxPlayers(); i != e; ++i)
    {
        if(LiderdaGang == GetPlayerColor(b))
        {
            if(IsPlayerConnected(b))
            {
                SendClientMessage(b,-1,"Voce ganhou 300 real por manter gangzones dominada");
                GivePlayerMoney(b,300);
            }
    }
    return 1;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)