Mensagem para varios players sem loop -
frenetico - 24.12.2010
Eai pessoal Blz ?
Vim aqui pedi uma idйia, como eu posso mandar uma mensagem para varios players que tenha uma variбvel setada para 1, sem ser com loop e SendClientMessage, porque terб momentos que essa funзхes serб executada mais de duas vezes por segundo e ficara meio lento o server.
Exemplo como seria o loop com SendClientMessage:
Код:
for(new i=0; i<MAX_SLOTS; i++)
{
SetPVarInt(playerid,"Ativo",1);
{
SendClientMessage(playerid,Verde,"Olб Mundo ,rsrs");
}
}
Obrigado desde jб!
Re: Mensagem para varios players sem loop -
zSuYaNw - 24.12.2010
Sim te uma,
Variavel de repetiзгo.
pawn Код:
new numero = 0;
while(numero <= 10) // Repitir o numero 10veses
{
format(string, sizeof(string),"Numero :%d", numero);
SendClientMessage(playerid, -1,string);
numero++;
if(numero == 5) break; // Se numero chegar a 5 ele para.
}
Re: Mensagem para varios players sem loop -
frenetico - 24.12.2010
Mais aonde que entra a parte de verificar a variavel e mandar a mensagem somente para os players que estгo com ela setada para um valor verdadeiro?
Re: Mensagem para varios players sem loop -
zSuYaNw - 24.12.2010
Talvez funcione.
pawn Код:
new numero = 0;
while(numero <= 10) // Repitir o numero 10veses
{
format(string, sizeof(string),"Numero :%d", numero);
SendClientMessage(SetPVarInt(playerid,"Ativo",1), -1,string);
numero++;
if(numero == 5) break; // Se numero chegar a 5 ele para.
}
Re: Mensagem para varios players sem loop -
frenetico - 24.12.2010
Bem pelo o que eu entendi ele vai ficar verificando atй um valor estipulado em uma variбvel, isso parece ser уtimo pois posso setar essa variбvel com a quantidade de players que tem em certo lugar e quando chega a essa quantidade ele para de funcionar,mais se por exemplo o server tem 100 players e 5 estгo em uma arena entre eles tem o id de numero 96 entгo atй essa verificaзгo chegar lб para dar os 5 e fazer ela para vai ser quase um looop que iria atй o 100.
Entгo gostaria de saber se nгo tem uma maneira mais eficaz como salvar o id de todos que vгo pra lб, nгo sei se hб essa possibilidade mais acho que seria melhor se desse.
Re: Mensagem para varios players sem loop -
$$zig@$$ - 24.12.2010
Quote:
Originally Posted by $$zig@$$
|
i need that
Re: Mensagem para varios players sem loop -
zSuYaNw - 24.12.2010
O comando se explica:
pawn Код:
new bool:tente_assim_que_talves_funcione[SLOTS];
new caracas = 0;
new number = 0;
// COmando
tente_assim_que_talves_funcione[playerid] = true;
caracas++;
// OnPlayerDeath < Se for o caso
if(tente_assim_que_talves_funcione[playerid] == true)
{
caracas--;
}
// Para Checar
while(number <= caracas) //
{
format(string, sizeof(string),"Numero :%d", numero);
SendClientMessage(SetPVarInt(playerid,"Ativo",1), -1,string);
numero++;
if(numero == 5) break; //
}
ou usa INVALID_PLAYER_ID.
Re: Mensagem para varios players sem loop -
frenetico - 24.12.2010
Entendi essa parte realmente usar
while й mais eficaz que o
for e se ele achar logo o valor que ele quer ele para , Mas pensando diferente tenho um comando /Arena e gostaria que todos os players que fossem para essa arena ficassem com o seu id/nick setados em uma variбvel ou algo do tipo,para que quando algum deles morrer uma mensagem ao demais que estavam na arena seja mandada mais sem esses loop cabuloso.
Exemplo id: 7,16,25,30,32 estгo na arena e o id 32 morrer , uma mensagem que ele morreu seja enviada para os outros que estavam na arena ou seja para o id 7,16,25,30 ,й como se fosse um loop mais que executa somente nesses ids.
viajando um pouco seria mais ou menos assim:
Код:
for(new i = 0; i < 7,16,25,30; i++) //Nгo da certo, mais se desse seria assim
Re: Mensagem para varios players sem loop -
zSuYaNw - 24.12.2010
entra no msn que te dou uma iideia.
Re: Mensagem para varios players sem loop -
sergio_xd - 24.12.2010
mensagem para geral sem loop:
pawn Код:
//
SendClientMessage(1, Branco, "Sua MSG");
SendClientMessage(2, Branco, "Sua MSG");
SendClientMessage(3, Branco, "Sua MSG");
SendClientMessage(4, Branco, "Sua MSG");
SendClientMessage(5, Branco, "Sua MSG");
SendClientMessage(6, Branco, "Sua MSG");
SendClientMessage(7, Branco, "Sua MSG");
SendClientMessage(8, Branco, "Sua MSG");
SendClientMessage(9, Branco, "Sua MSG");
SendClientMessage(10, Branco, "Sua MSG");
SendClientMessage(11, Branco, "Sua MSG");
SendClientMessage(12, Branco, "Sua MSG");
SendClientMessage(13, Branco, "Sua MSG");
SendClientMessage(14, Branco, "Sua MSG");
SendClientMessage(15, Branco, "Sua MSG");
SendClientMessage(16, Branco, "Sua MSG");
SendClientMessage(17, Branco, "Sua MSG");
SendClientMessage(18, Branco, "Sua MSG");
SendClientMessage(19, Branco, "Sua MSG");
SendClientMessage(20, Branco, "Sua MSG");
ai vocк coloca um
SendClientMessage para cada player do seu server, da trabalho mais nao da lag!.
Feliz Natal Para Todos!!!