[DUV] Bloquear Settimer para um player sу. -
[NWD]Tweener_ - 24.08.2010
E ae emada
Queria saber se hб a possibilidade de bloquear um Settimer global somente para 1 player, e depois retomar esse settimer atravez de um cmd. Tem como isso?
Re: [DUV] Bloquear Settimer para um player sу. -
BiieL - 24.08.2010
KillTimer ?
Re: [DUV] Bloquear Settimer para um player sу. -
[NWD]Tweener_ - 24.08.2010
Mais ai nгo seria para todos?
Re: [DUV] Bloquear Settimer para um player sу. -
CyNiC - 24.08.2010
Dб.
Suponhamos que seja um loop e funзхes como as abaixo:
pawn Код:
for(new i=0; i<MAX_PLAYERS; i++)
if(i == playerexcluido) goto saltarfuncoes;
SetPlayerHealth(i,1.0);
GivePlayerWeapon(i,24,1000);
saltarfuncoes:
Para o playerexluido isso nгo irб acontecer.
Re: [DUV] Bloquear Settimer para um player sу. -
[NWD]Tweener_ - 24.08.2010
Й um Settimer normal =)
Essa й a funзгo toda:
pawn Код:
forward AumentarLevel(playerid);
//OnGameModInit
SetTimer("AumentarLevel", 600000, true);
public AumentarLevel(playerid)
{
for(new i=0; i <= MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
Experiencia[i] ++;
GameTextForPlayer(playerid, "~w~UP", 2000, 6);
if(Experiencia[playerid] == 6)
{
Level[i]++;
new str[256];
format(str,sizeof(str),"Level UP! Vocк ganhou 1 level. Somando um total de %d Level's.",Level[playerid]);
SendClientMessage(i,0xFF0000AA,str);
Experiencia[playerid] = pap_SalvarInt(playerid, "Experiencia", 0);
}
}
}
return 1;
}
Re: [DUV] Bloquear Settimer para um player sу. -
CyNiC - 24.08.2010
Quem vocк quer que nгo receba experiкncia?
Faзa como eu fiz ali, crie uma variбvel global pra armazenar o id do excluido.
Re: [DUV] Bloquear Settimer para um player sу. -
[NWD]Tweener_ - 24.08.2010
Se eu fizer assim serб que funciona?
pawn Код:
public AumentarLevel(playerid)
{
for(new i=0; i <= MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(afk[playerid]==1){
SendClientMessage(playerid,COLOR_RED, "[ERRO] Vocк nгo upo pois estava afk.");
return 1;
}
if(afk[playerid]==0)
{
Experiencia[i] ++;
GameTextForPlayer(playerid, "~w~UP", 2000, 6);
if(Experiencia[playerid] == 6)
{
Level[i]++;
new str[256];
format(str,sizeof(str),"Level UP! Vocк ganhou 1 level. Somando um total de %d Level's.",Level[playerid]);
SendClientMessage(i,0xFF0000AA,str);
Experiencia[playerid] = pap_SalvarInt(playerid, "Experiencia", 0);
}
}
}
}
return 1;
}
Re: [DUV] Bloquear Settimer para um player sу. -
CyNiC - 24.08.2010
Como AumentarLevel й uma funзгo que irб chamar um loop nгo precisa de playerid, e do jeito que fez nгo funcionaria porque playerid vai ser sempre 0.
pawn Код:
public AumentarLevel(playerid)
{
for(new i=0; i <= MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(afk[i]==1){
SendClientMessage(playerid,COLOR_RED, "[ERRO] Vocк nгo upo pois estava afk.");
return 1;
}
if(afk[i]==0)
{
Experiencia[i] ++;
GameTextForPlayer(i, "~w~UP", 2000, 6);
if(Experiencia[i] == 6)
{
Level[i]++;
new str[256];
format(str,sizeof(str),"Level UP! Vocк ganhou 1 level. Somando um total de %d Level's.",Level[i]);
SendClientMessage(i,0xFF0000AA,str);
Experiencia[i] = pap_SalvarInt(i, "Experiencia", 0);
}
}
}
}
return 1;
}
Re: [DUV] Bloquear Settimer para um player sу. -
[NWD]Tweener_ - 24.08.2010
Sim, dei um exemplo
mais vlw. Vou testar aqui. . .
Re: [DUV] Bloquear Settimer para um player sу. -
LeLeTe - 24.08.2010
Eu sugiro usar SetTimerEx pra essa funзгo.